/* dcss.css: the core sheet
   SPDX-License-Identifier: MIT
   SPDX-FileCopyrightText: 2026 noscript.ing contributors */
/* dcss.css: computation in CSS layout, no script.

   The idea. A grid's tracks are an array: layout sizes each track from the boxes in it, and sums, maxima, sorts and
   packings fall out of the track sizing and placement algorithms (css-grid-2 8.5, 12). A reader is a box laid over
   some tracks; it is a size container, so what is inside it gets the tracks' width back as a number (100cqw / 1px),
   in the same frame as the numbers that went in.

   <div class="dcss-array">                                   the grid: one computation (machinery)
     <b class="dcss-out">                                     the port: where readers live (display: contents)
       <b class="dcss-at" style="--dcss-i: 2"><u></u></b>      a reader of entry 2; its <u> gets --dcss-value
     </b>
     <i style="--dcss-n: 40"></i>                             entries: each sizes one track
     <i style="--dcss-n: 90"></i>
     <i style="--dcss-n: 25"></i>
   </div>

     tracks   | 40 |     90     | 25 |
     reader        [ --dcss-i: 2 ]                --dcss-value: 90

   Tags are fixed so every rule can key on them: entries <i>; readers, the port and other machinery boxes <b>; what is
   inside a reader <u>. The grid is machinery; content goes only inside a reader's <u> (it inherits the number).
   To use a result anywhere else, name a box (anchor-name) and size another by anchor-size().

   The modes below each use one layout mechanism; SPEC.md has their markup and checks. */

@property --dcss-n { syntax: '<number>'; inherits: false; initial-value: 0; }
@property --dcss-i { syntax: '<number>'; inherits: false; initial-value: 1; }
@property --dcss-j { syntax: '<number>'; inherits: false; initial-value: 0; }
@property --dcss-ok { syntax: '<integer>'; inherits: true; initial-value: 1; }
@property --dcss-array-length { syntax: '<integer>'; inherits: true; initial-value: 0; }
@property --dcss-value { syntax: '<number>'; inherits: true; initial-value: 0; }
@property --dcss-before { syntax: '<number>'; inherits: true; initial-value: 0; }
@property --dcss-high { syntax: '<number>'; inherits: true; initial-value: 0; }
@property --dcss-p { syntax: '<number>'; inherits: false; initial-value: 0; }
@property --dcss-grow { syntax: '<number>'; inherits: false; initial-value: 0; }
@property --dcss-shrink { syntax: '<number>'; inherits: false; initial-value: 1; }
@property --dcss-flex-min { syntax: '<number>'; inherits: false; initial-value: 0; }
@property --dcss-flex-max { syntax: '<number>'; inherits: false; initial-value: 1000000; }
@property --dcss-parts { syntax: '<integer>'; inherits: false; initial-value: 1; }
@property --dcss-parity { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-low { syntax: '<number>'; inherits: true; initial-value: 0; }
@property --dcss-bin { syntax: '<integer>'; inherits: true; initial-value: 1; }
@property --dcss-track-count { syntax: '<number>'; inherits: true; initial-value: 0; }
@property --dcss-rank { syntax: '<number>'; inherits: true; initial-value: 0; }
@property --dcss-m { syntax: '<number>'; inherits: false; initial-value: 0; }
@property --dcss-r { syntax: '<number>'; inherits: false; initial-value: 0; }
@property --dcss-value-y { syntax: '<number>'; inherits: true; initial-value: 0; }
@property --dcss-key { syntax: '<integer>'; inherits: true; initial-value: 0; }
@property --dcss-below { syntax: '<number>'; inherits: true; initial-value: 0; }
@property --dcss-p-bv { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-p-bs { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-p-be { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-p-bw { syntax: '<number>'; inherits: false; initial-value: 0; }
@property --dcss-p-rv { syntax: '<number>'; inherits: false; initial-value: 0; }
@property --dcss-w { syntax: '<integer>'; inherits: true; initial-value: 1; }
@property --dcss-span { syntax: '<integer>'; inherits: true; initial-value: 1; }
@property --dcss-row { syntax: '<number>'; inherits: true; initial-value: 0; }
@property --dcss-column { syntax: '<number>'; inherits: true; initial-value: 0; }
@property --dcss-x { syntax: '<number>'; inherits: true; initial-value: 0; }
@property --dcss-turn-tick { syntax: '<number>'; inherits: true; initial-value: 0; }
@property --dcss-bit { syntax: '<integer>'; inherits: false; initial-value: 1; }
@property --dcss-from { syntax: '<integer>'; inherits: true; initial-value: 0; }
@property --dcss-to { syntax: '<integer>'; inherits: true; initial-value: -1; }
@property --dcss-not { syntax: '<integer>'; inherits: true; initial-value: 0; }
@property --dcss-top1 { syntax: '<integer>'; inherits: true; initial-value: 0; }
@property --dcss-top2 { syntax: '<integer>'; inherits: true; initial-value: 0; }
@property --dcss-top3 { syntax: '<integer>'; inherits: true; initial-value: 0; }
@property --dcss-top4 { syntax: '<integer>'; inherits: true; initial-value: 0; }
@property --dcss-top5 { syntax: '<integer>'; inherits: true; initial-value: 0; }
@property --dcss-top6 { syntax: '<integer>'; inherits: true; initial-value: 0; }
@property --dcss-p-rm1 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-p-rm2 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-p-rm3 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-p-rm4 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-p-rm5 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-p-rm6 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-p-rm7 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-p-rh1 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-p-rb1 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-p-rh2 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-p-rb2 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-p-rh3 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-p-rb3 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-p-rh4 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-p-rb4 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-p-rh5 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-p-rb5 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-p-rh6 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-p-rb6 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-turn-tick-2 { syntax: '<number>'; inherits: true; initial-value: 0; }
@property --dcss-y { syntax: '<number>'; inherits: true; initial-value: 0; }
@property --dcss-place { syntax: '<number>'; inherits: true; initial-value: 0; }
@property --dcss-columns { syntax: '<integer>'; inherits: true; initial-value: 8; }
@property --dcss-rows { syntax: '<integer>'; inherits: true; initial-value: 8; }
@property --dcss-width { syntax: '<number>'; inherits: true; initial-value: 0; }
@property --dcss-height { syntax: '<number>'; inherits: true; initial-value: 0; }
@property --dcss-fits { syntax: '<number>'; inherits: true; initial-value: 0; }
@property --dcss-h { syntax: '<integer>'; inherits: true; initial-value: 1; }
@property --dcss-target { syntax: '<number>'; inherits: true; initial-value: 0; }
@property --dcss-wall { syntax: '<number>'; inherits: true; initial-value: 0; }
@property --dcss-p-pi { syntax: '<integer>'; inherits: true; initial-value: 1; }
@property --dcss-lower { syntax: '<number>'; inherits: true; initial-value: 0; }
@property --dcss-upper { syntax: '<number>'; inherits: true; initial-value: 0; }
@property --dcss-frequency { syntax: '<number>'; inherits: true; initial-value: 0; }
@property --dcss-member { syntax: '<number>'; inherits: true; initial-value: 0; }
@property --dcss-min-key { syntax: '<integer>'; inherits: true; initial-value: -1000; }
@property --dcss-max-key { syntax: '<integer>'; inherits: true; initial-value: 1000; }
@property --dcss-p-ml { syntax: '<integer>'; inherits: false; initial-value: 1; }
@property --dcss-tracks { syntax: '*'; inherits: false; initial-value: none; }
@property --dcss-tracks-y { syntax: '*'; inherits: false; initial-value: none; }
@property --dcss-k { syntax: '*'; inherits: false; initial-value: 1fr; }
@property --dcss-k1 { syntax: '<number>'; inherits: true; initial-value: 0; }
@property --dcss-k2 { syntax: '<number>'; inherits: true; initial-value: 0; }
@property --dcss-k3 { syntax: '<number>'; inherits: true; initial-value: 0; }
@property --dcss-k4 { syntax: '<number>'; inherits: true; initial-value: 0; }
@property --dcss-k5 { syntax: '<number>'; inherits: true; initial-value: 0; }
@property --dcss-k6 { syntax: '<number>'; inherits: true; initial-value: 0; }
@property --dcss-k7 { syntax: '<number>'; inherits: true; initial-value: 0; }
@property --dcss-k8 { syntax: '<number>'; inherits: true; initial-value: 0; }
@property --dcss-k9 { syntax: '<number>'; inherits: true; initial-value: 0; }
@property --dcss-k10 { syntax: '<number>'; inherits: true; initial-value: 0; }
@property --dcss-k11 { syntax: '<number>'; inherits: true; initial-value: 0; }
@property --dcss-k12 { syntax: '<number>'; inherits: true; initial-value: 0; }
@property --dcss-k13 { syntax: '<number>'; inherits: true; initial-value: 0; }
@property --dcss-k14 { syntax: '<number>'; inherits: true; initial-value: 0; }
@property --dcss-k15 { syntax: '<number>'; inherits: true; initial-value: 0; }
@property --dcss-k16 { syntax: '<number>'; inherits: true; initial-value: 0; }
@property --dcss-more { syntax: '*'; inherits: false; initial-value: 0fr; }
@property --dcss-c { syntax: '<number>'; inherits: false; initial-value: 0; }
@property --dcss-f { syntax: '<number>'; inherits: false; initial-value: 1; }
@property --dcss-p-r0 { syntax: '<number>'; inherits: false; initial-value: 1; }
@property --dcss-p-r { syntax: '<integer>'; inherits: false; initial-value: 1; }
@property --dcss-p-rs { syntax: '<integer>'; inherits: false; initial-value: 1; }
@property --dcss-p-i { syntax: '<integer>'; inherits: false; initial-value: 1; }
@property --dcss-p-k { syntax: '<integer>'; inherits: false; initial-value: 1; }
@property --dcss-p-lo { syntax: '<integer>'; inherits: false; initial-value: 1; }
@property --dcss-p-hi { syntax: '<integer>'; inherits: false; initial-value: 1; }
@property --dcss-p-s { syntax: '<integer>'; inherits: false; initial-value: 1; }
@property --dcss-p-n { syntax: '<integer>'; inherits: false; initial-value: 1; }
@property --dcss-p-ent { syntax: '<integer>'; inherits: true; initial-value: 0; }
@property --dcss-p-counted { syntax: '<integer>'; inherits: true; initial-value: 0; }
@property --dcss-p-m8 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-p-m9 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-p-m5 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-p-m7 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-p-m11 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-p-m13 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-p-port { syntax: '<integer>'; inherits: true; initial-value: 0; }
@property --dcss-p-length-known { syntax: '<integer>'; inherits: true; initial-value: 0; }
@property --dcss-p-w { syntax: '<integer>'; inherits: true; initial-value: 0; }
@property --dcss-p-lon { syntax: '<integer>'; inherits: true; initial-value: 0; }
@property --dcss-p-u { syntax: '<integer>'; inherits: true; initial-value: 999999; }

/* Every grid is read from its own top-left corner, in its own writing mode. An author's padding or border would move
   every reader, and an inherited vertical-rl would turn every read sideways, so all four are reset here. Names and the
   counted length also reset, so a grid nested in a reader computes on its own. */
.dcss-array, .dcss-bins, .dcss-shares, .dcss-pack, .dcss-sort, .dcss-map, .dcss-slide, .dcss-tiles, .dcss-push, .dcss-groups, .dcss-overlap, .dcss-lines, .dcss-cycle { padding: 0 !important; border: 0 !important; writing-mode: horizontal-tb; direction: ltr; --dcss-of: initial; --dcss-p-counted: 0; --dcss-p-ent: 0; }
/* What a reader's index needs from its grid, worked out once per grid and inherited by every reader in it:
     --dcss-p-length-known   1 when the length is known (count, or --dcss-array-length)
     --dcss-p-w              where a negative index turns round: length + 1, so -1 is the last entry
     --dcss-p-u              the highest index that exists (999999 when the length is unknown)
     --dcss-p-lon            1 when an index below 1 is invalid */
.dcss-array, .dcss-bins, .dcss-shares, .dcss-pack, .dcss-sort, .dcss-map, .dcss-slide, .dcss-tiles, .dcss-push, .dcss-groups, .dcss-cycle, .dcss-window {
  --dcss-p-length-known: max(var(--dcss-p-counted), sign(var(--dcss-array-length))); --dcss-p-w: calc((var(--dcss-array-length) + 1) * sign(var(--dcss-array-length)));
  --dcss-p-u: calc(var(--dcss-array-length) * var(--dcss-p-length-known) + (1 - var(--dcss-p-length-known)) * 999999); --dcss-p-lon: max(var(--dcss-p-length-known), var(--dcss-p-ent)); }

/* An array of child entries: each <i> is a column of its own, as wide as its --dcss-n (max-content tracks: a track is
   as wide as what is in it). A packed array has no children: --dcss-tracks is its track list, written by the author. */
.dcss-array { display: grid; contain: layout; grid-auto-flow: column; grid-auto-columns: max-content; grid-template-rows: auto; --dcss-array-length: 0; --dcss-p-port: 0; }
.dcss-array > i, .dcss-array > .dcss-width-sum, .dcss-array > .dcss-largest, .dcss-array > .dcss-scale { grid-row: 1; width: calc(var(--dcss-n) * 1px); box-sizing: border-box; margin: 0; }
/* The count of entries, from selectors alone. The grid asks which remainder its last child's position leaves for each
   of 8, 9, 5, 7, 11 and 13 (:has(> :last-child:nth-child(8n + 3)) and so on); those remainders fix one number below
   8 x 9 x 5 x 7 x 11 x 13 = 360,360 (the Chinese remainder theorem), and the port, also a child, is taken off.
     last child is the 1,000th   ->  1000 mod 8 = 0, mod 9 = 1, mod 5 = 0, ...  ->  1000
   No sibling-count(): WebKit recounts it every time an element restyles. */
.dcss-out { display: contents; font-weight: inherit; }
/* The handoff. Each machinery tag would bring its browser default (an <i>'s italic, a <b>'s bold, a <u>'s underline)
   to whatever the author puts in a reader's <u>; here each one hands its parent's font on instead. */
.dcss-array > i, .dcss-bins > i, .dcss-shares > i, .dcss-pack > i, .dcss-sort > i, .dcss-map > i, .dcss-slide > i, .dcss-tiles > i, .dcss-push > i, .dcss-groups > i, .dcss-overlap > i, .dcss-lines > i, .dcss-cycle > i { font-style: inherit; }
.dcss-array { --dcss-p-ent: 1; } .dcss-array.dcss-packed { --dcss-p-ent: 0; }
/* An array with count and no entries has length 0, which is different from an array whose length is unknown. */
.dcss-array.dcss-track-count { --dcss-p-counted: 1; }
.dcss-array:has(> .dcss-out) { --dcss-p-port: 1; }
.dcss-array.dcss-track-count:has(> :last-child:nth-child(8n + 1)) { --dcss-p-m8: 1; }
.dcss-array.dcss-track-count:has(> :last-child:nth-child(8n + 2)) { --dcss-p-m8: 2; }
.dcss-array.dcss-track-count:has(> :last-child:nth-child(8n + 3)) { --dcss-p-m8: 3; }
.dcss-array.dcss-track-count:has(> :last-child:nth-child(8n + 4)) { --dcss-p-m8: 4; }
.dcss-array.dcss-track-count:has(> :last-child:nth-child(8n + 5)) { --dcss-p-m8: 5; }
.dcss-array.dcss-track-count:has(> :last-child:nth-child(8n + 6)) { --dcss-p-m8: 6; }
.dcss-array.dcss-track-count:has(> :last-child:nth-child(8n + 7)) { --dcss-p-m8: 7; }
.dcss-array.dcss-track-count:has(> :last-child:nth-child(8n + 8)) { --dcss-p-m8: 0; }
.dcss-array.dcss-track-count:has(> :last-child:nth-child(9n + 1)) { --dcss-p-m9: 1; }
.dcss-array.dcss-track-count:has(> :last-child:nth-child(9n + 2)) { --dcss-p-m9: 2; }
.dcss-array.dcss-track-count:has(> :last-child:nth-child(9n + 3)) { --dcss-p-m9: 3; }
.dcss-array.dcss-track-count:has(> :last-child:nth-child(9n + 4)) { --dcss-p-m9: 4; }
.dcss-array.dcss-track-count:has(> :last-child:nth-child(9n + 5)) { --dcss-p-m9: 5; }
.dcss-array.dcss-track-count:has(> :last-child:nth-child(9n + 6)) { --dcss-p-m9: 6; }
.dcss-array.dcss-track-count:has(> :last-child:nth-child(9n + 7)) { --dcss-p-m9: 7; }
.dcss-array.dcss-track-count:has(> :last-child:nth-child(9n + 8)) { --dcss-p-m9: 8; }
.dcss-array.dcss-track-count:has(> :last-child:nth-child(9n + 9)) { --dcss-p-m9: 0; }
.dcss-array.dcss-track-count:has(> :last-child:nth-child(5n + 1)) { --dcss-p-m5: 1; }
.dcss-array.dcss-track-count:has(> :last-child:nth-child(5n + 2)) { --dcss-p-m5: 2; }
.dcss-array.dcss-track-count:has(> :last-child:nth-child(5n + 3)) { --dcss-p-m5: 3; }
.dcss-array.dcss-track-count:has(> :last-child:nth-child(5n + 4)) { --dcss-p-m5: 4; }
.dcss-array.dcss-track-count:has(> :last-child:nth-child(5n + 5)) { --dcss-p-m5: 0; }
.dcss-array.dcss-track-count:has(> :last-child:nth-child(7n + 1)) { --dcss-p-m7: 1; }
.dcss-array.dcss-track-count:has(> :last-child:nth-child(7n + 2)) { --dcss-p-m7: 2; }
.dcss-array.dcss-track-count:has(> :last-child:nth-child(7n + 3)) { --dcss-p-m7: 3; }
.dcss-array.dcss-track-count:has(> :last-child:nth-child(7n + 4)) { --dcss-p-m7: 4; }
.dcss-array.dcss-track-count:has(> :last-child:nth-child(7n + 5)) { --dcss-p-m7: 5; }
.dcss-array.dcss-track-count:has(> :last-child:nth-child(7n + 6)) { --dcss-p-m7: 6; }
.dcss-array.dcss-track-count:has(> :last-child:nth-child(7n + 7)) { --dcss-p-m7: 0; }
.dcss-array.dcss-track-count:has(> :last-child:nth-child(11n + 1)) { --dcss-p-m11: 1; }
.dcss-array.dcss-track-count:has(> :last-child:nth-child(11n + 2)) { --dcss-p-m11: 2; }
.dcss-array.dcss-track-count:has(> :last-child:nth-child(11n + 3)) { --dcss-p-m11: 3; }
.dcss-array.dcss-track-count:has(> :last-child:nth-child(11n + 4)) { --dcss-p-m11: 4; }
.dcss-array.dcss-track-count:has(> :last-child:nth-child(11n + 5)) { --dcss-p-m11: 5; }
.dcss-array.dcss-track-count:has(> :last-child:nth-child(11n + 6)) { --dcss-p-m11: 6; }
.dcss-array.dcss-track-count:has(> :last-child:nth-child(11n + 7)) { --dcss-p-m11: 7; }
.dcss-array.dcss-track-count:has(> :last-child:nth-child(11n + 8)) { --dcss-p-m11: 8; }
.dcss-array.dcss-track-count:has(> :last-child:nth-child(11n + 9)) { --dcss-p-m11: 9; }
.dcss-array.dcss-track-count:has(> :last-child:nth-child(11n + 10)) { --dcss-p-m11: 10; }
.dcss-array.dcss-track-count:has(> :last-child:nth-child(11n + 11)) { --dcss-p-m11: 0; }
.dcss-array.dcss-track-count:has(> :last-child:nth-child(13n + 1)) { --dcss-p-m13: 1; }
.dcss-array.dcss-track-count:has(> :last-child:nth-child(13n + 2)) { --dcss-p-m13: 2; }
.dcss-array.dcss-track-count:has(> :last-child:nth-child(13n + 3)) { --dcss-p-m13: 3; }
.dcss-array.dcss-track-count:has(> :last-child:nth-child(13n + 4)) { --dcss-p-m13: 4; }
.dcss-array.dcss-track-count:has(> :last-child:nth-child(13n + 5)) { --dcss-p-m13: 5; }
.dcss-array.dcss-track-count:has(> :last-child:nth-child(13n + 6)) { --dcss-p-m13: 6; }
.dcss-array.dcss-track-count:has(> :last-child:nth-child(13n + 7)) { --dcss-p-m13: 7; }
.dcss-array.dcss-track-count:has(> :last-child:nth-child(13n + 8)) { --dcss-p-m13: 8; }
.dcss-array.dcss-track-count:has(> :last-child:nth-child(13n + 9)) { --dcss-p-m13: 9; }
.dcss-array.dcss-track-count:has(> :last-child:nth-child(13n + 10)) { --dcss-p-m13: 10; }
.dcss-array.dcss-track-count:has(> :last-child:nth-child(13n + 11)) { --dcss-p-m13: 11; }
.dcss-array.dcss-track-count:has(> :last-child:nth-child(13n + 12)) { --dcss-p-m13: 12; }
.dcss-array.dcss-track-count:has(> :last-child:nth-child(13n + 13)) { --dcss-p-m13: 0; }
.dcss-array.dcss-track-count { --dcss-array-length: calc(mod(var(--dcss-p-m8) * 225225 + var(--dcss-p-m9) * 320320 + var(--dcss-p-m5) * 216216 + var(--dcss-p-m7) * 205920 + var(--dcss-p-m11) * 196560 + var(--dcss-p-m13) * 277200, 360360) - var(--dcss-p-port)); }
.dcss-array.dcss-track-count:has(> :is(.dcss-at, .dcss-window):last-child) { --dcss-array-length: 0; }
/* A packed array: the tracks are the author's list, in one property, any length, line names included:
     <div class="dcss-array dcss-packed" style="--dcss-tracks: [--x] 90px 70px [--x] calc(var(--a) * 1px); --dcss-array-length: 3">
   Water filling is a packed array whose tracks are minmax(0, cap) in a box of the water's width: free space goes to
   every column equally, each freezing at its cap (Maximize Tracks, css-grid-2 12.6):
     caps     | 50 |     120     |    400    |    width 300
     level 130: columns 50, 120, 130  ->  column k reads min(cap k, level) */
.dcss-array.dcss-packed { grid-template-columns: var(--dcss-tracks); }

/* Hops: a second and a third pass in the same grid. A hop is an in-flow worker in the port, a size container in the
   inline axis, so it adds nothing to the tracks it reads; what is inside its <u> reads them as --dcss-value and writes
   --dcss-put (default: the value), and the hop takes that size on the other axis, so it sizes a track of its own:
     columns    | e1 | e2 | e3 | ...                  pass 1: the entries
     row 1      [ hop: --dcss-i 1, --dcss-j 2 ]  put     pass 2: .dcss-hop, --dcss-r its row; one row holds the largest put
     column N+1 (a .dcss-hop-y over rows --dcss-i..--dcss-j, writing its width)   pass 3: back into columns, --dcss-r its column
   .dcss-at-y reads rows --dcss-i..--dcss-j (their sum, 100cqh); .dcss-at-x reads hop columns the same way (100cqw).
   css-grid-2 12.1 sizes columns, rows, then columns again once: Chrome settles these three passes, WebKit more.
   A .dcss-hop-y's columns come after the entries, so the array needs --dcss-array-length (count, or written). */
.dcss-array > .dcss-hop, .dcss-array > .dcss-out > .dcss-hop { grid-column: max(1, var(--dcss-i)) / span max(1, calc(var(--dcss-j) - var(--dcss-i) + 1)); grid-row: calc(max(1, var(--dcss-r)) + 1); container-type: inline-size; min-width: 0 !important; margin: 0; padding: 0 !important; border: 0; font-weight: inherit; }
.dcss-array > .dcss-hop > u, .dcss-array > .dcss-out > .dcss-hop > u { display: block !important; --dcss-value: calc(100cqw / 1px); height: calc(max(0, var(--dcss-put, var(--dcss-value))) * 1px); text-decoration: none; }
.dcss-array > .dcss-hop-y, .dcss-array > .dcss-out > .dcss-hop-y { writing-mode: vertical-lr; grid-row: calc(max(1, var(--dcss-i)) + 1) / span max(1, calc(var(--dcss-j) - var(--dcss-i) + 1)); grid-column: calc(var(--dcss-array-length) + max(1, var(--dcss-r))); container-type: inline-size; min-height: 0; margin: 0; padding: 0 !important; border: 0; font-weight: inherit; }
.dcss-array > .dcss-hop-y > u, .dcss-array > .dcss-out > .dcss-hop-y > u { display: block !important; --dcss-value: calc(100cqi / 1px); width: calc(max(0, var(--dcss-put, var(--dcss-value))) * 1px); text-decoration: none; }
.dcss-array > .dcss-at-y, .dcss-array > .dcss-out > .dcss-at-y { position: fixed !important; inset: 0; grid-column: 1 / span 1; grid-row: calc(max(1, var(--dcss-i)) + 1) / span max(1, calc(var(--dcss-j) - var(--dcss-i) + 1)); container-type: size; padding: 0 !important; border: 0; font-weight: inherit; }
.dcss-array > .dcss-at-x, .dcss-array > .dcss-out > .dcss-at-x { position: fixed !important; inset: 0; grid-row: 1 / span 1; grid-column: calc(var(--dcss-array-length) + max(1, var(--dcss-i))) / span max(1, calc(var(--dcss-j) - var(--dcss-i) + 1)); container-type: inline-size; padding: 0 !important; border: 0; font-weight: inherit; }
.dcss-array > .dcss-at-y > u, .dcss-array > .dcss-out > .dcss-at-y > u { --dcss-value: calc(100cqh / 1px); text-decoration: none; }
/* Firefox (FF, its 32-bit calc()) sizes a row a collapse in a hop's <u> makes 1 or 2 px too tall, or a frame late
   (check 65, Firefox 159: 46 for 44), and no rule sees which row a reader spans: every row reader of a port that
   holds such a hop fails there, --dcss-err 1 and --dcss-value 0 */
.dcss-array:has(> .dcss-hop > u > .dcss-collapse) > .dcss-at-y, .dcss-array > .dcss-out:has(> .dcss-hop > u > .dcss-collapse) > .dcss-at-y { --dcss-err-above: var(--dcss-err); }
.dcss-array:has(> .dcss-hop > u > .dcss-collapse) > .dcss-at-y > u, .dcss-array > .dcss-out:has(> .dcss-hop > u > .dcss-collapse) > .dcss-at-y > u { --dcss-value: calc(100cqh / 1px * ((16777216 + 1) - 16777216)); --dcss-err: max(var(--dcss-err-above), (1 - ((16777216 + 1) - 16777216))); }
.dcss-array > .dcss-at-x > u, .dcss-array > .dcss-out > .dcss-at-x > u { --dcss-value: calc(100cqw / 1px); text-decoration: none; }


/* A reader is placed over the lines of entries --dcss-i to --dcss-j and reads what is between them:
       lines    1    2         3    4
       tracks   | 40 |    90   | 25 |
       --dcss-i: 2; --dcss-j: 3   ->  lines 2 to 4  ->  115
   A negative index counts from the end (-1 is the last). Invalid indices (0, a fraction, past an end) set --dcss-ok to 0,
   and the reader gets max-width 0, so what is inside reads 0 without any extra calc() on every restyle. */
.dcss-at { position: fixed; inset: 0; container-type: inline-size; grid-row: 1 / span 1; padding: 0 !important; border: 0; max-width: calc(var(--dcss-ok) * 1e9px); font-weight: inherit; }
/* Map readers are placed by key further down, plain readers by their index as it is, and a formula node's or a collapse's
   reader is the node itself (--dcss-ok: 1), so the index math stays off them. */
.dcss-at:not(:where(.dcss-map > .dcss-at, .dcss-map > * > .dcss-at, .dcss-scan > .dcss-at, .dcss-plain > .dcss-at, .dcss-plain > * > .dcss-at, .dcss-width-sum > .dcss-at, .dcss-largest > .dcss-at, .dcss-scale > .dcss-at, .dcss-cap > .dcss-at, .dcss-rest > .dcss-at, .dcss-width-min > .dcss-at, .dcss-stack > .dcss-at, .dcss-tallest > .dcss-at, .dcss-times > .dcss-at, .dcss-collapse > .dcss-at, .dcss-baseline > .dcss-at, .dcss-columns > .dcss-at, .dcss-alternate > .dcss-at)) {
  --dcss-p-i: calc(var(--dcss-i) + (1 - sign(var(--dcss-i))) / 2 * var(--dcss-p-w));
  --dcss-p-k: calc(var(--dcss-p-i) + abs(sign(var(--dcss-j))) * (var(--dcss-j) + (1 - sign(var(--dcss-j))) / 2 * var(--dcss-p-w) - var(--dcss-p-i)));
  --dcss-p-lo: min(var(--dcss-p-i), var(--dcss-p-k)); --dcss-p-hi: max(var(--dcss-p-i), var(--dcss-p-k));
  --dcss-p-s: calc(var(--dcss-p-lo) - (1 - sign(var(--dcss-p-lo))) / 2);
  --dcss-p-n: calc(var(--dcss-p-hi) + (1 + sign(var(--dcss-p-hi))) / 2 - var(--dcss-p-s));
  grid-column: var(--dcss-p-s) var(--dcss-of,) / span var(--dcss-p-n);
  --dcss-ok: calc((1 - sign(abs(rem(var(--dcss-i), 1)) + abs(rem(var(--dcss-j), 1)))) * abs(sign(var(--dcss-i)))
    * (1 - (1 - clamp(0, var(--dcss-p-lo), 1)) * var(--dcss-p-lon)) * clamp(0, var(--dcss-p-u) + 1 - var(--dcss-p-hi), 1)); }
.dcss-at > u { --dcss-value: calc(100cqw / 1px); text-decoration: none; }
/* Plain indices: on a grid marked .dcss-plain every reader's --dcss-i (and --dcss-j) is whole and 1 to the length, so the
   reader is placed by them as they are, with no index math and no validity: 3 var() a reader where the math holds 26,
   which every restyle works out again (300 readers: Chrome 3, WebKit 5 to 6 ms an update; vs-calc/trials/lean.mjs). */
.dcss-plain > .dcss-at, .dcss-plain > * > .dcss-at { grid-column: var(--dcss-i) var(--dcss-of,) / span max(1, calc(var(--dcss-j) - var(--dcss-i) + 1)); max-width: none !important; }

/* xy, two numbers an entry: entry k sits at column k and row k, so its width sizes column k and its height (--dcss-m)
   sizes row k. A reader is a size container over its column and row: --dcss-value is the width, --dcss-value-y the height.
   A packed xy array takes its columns from --dcss-tracks and its rows from --dcss-tracks-y.
     | e1 |    |    |
     |    | e2 |    |      the k-th entry on the diagonal
     |    |    | e3 | */
.dcss-array.dcss-xy { grid-template-rows: none; grid-auto-rows: max-content; }
.dcss-array.dcss-xy > i { height: calc(var(--dcss-m) * 1px); }
.dcss-array.dcss-xy > i { grid-area: calc(sibling-index() - var(--dcss-p-port)) / calc(sibling-index() - var(--dcss-p-port)); }
/* cells: entries placed by --dcss-i (column) and --dcss-r (row) instead of on the diagonal. Each column is as wide as its
   widest entry and each row as tall as its tallest, so one grid gives every column max and every row max at once. */
.dcss-array.dcss-xy.dcss-cells > i { grid-area: max(1, var(--dcss-r)) / max(1, var(--dcss-i)); }
.dcss-array.dcss-xy.dcss-packed { grid-template-rows: var(--dcss-tracks-y); }
.dcss-array.dcss-xy > .dcss-at, .dcss-array.dcss-xy > * > .dcss-at { container-type: size;
  --dcss-p-r0: calc(var(--dcss-r) + (1 - abs(sign(var(--dcss-r)))) * var(--dcss-i));
  --dcss-p-r: calc(var(--dcss-p-r0) + (1 - sign(var(--dcss-p-r0))) / 2 * var(--dcss-p-w));
  --dcss-p-rs: calc(var(--dcss-p-r) - (1 - sign(var(--dcss-p-r))) / 2);
  grid-row: var(--dcss-p-rs) var(--dcss-of,) / span 1;
  --dcss-ok: calc(calc((1 - sign(abs(rem(var(--dcss-i), 1)) + abs(rem(var(--dcss-j), 1)))) * abs(sign(var(--dcss-i)))
    * (1 - (1 - clamp(0, var(--dcss-p-lo), 1)) * var(--dcss-p-lon)) * clamp(0, var(--dcss-p-u) + 1 - var(--dcss-p-hi), 1)) * (1 - sign(abs(rem(var(--dcss-p-r0), 1)))) * abs(sign(var(--dcss-p-r0)))
    * (1 - (1 - clamp(0, var(--dcss-p-r), 1)) * var(--dcss-p-lon)) * clamp(0, var(--dcss-p-u) + 1 - var(--dcss-p-r), 1)); }
.dcss-array.dcss-xy > .dcss-at > u, .dcss-array.dcss-xy > * > .dcss-at > u { --dcss-value-y: calc(100cqh / 1px * var(--dcss-ok)); }
/* A plain xy array: rows as plain as the columns, a reader's row its --dcss-r (unset: its --dcss-i) as it is, no row math
   (the row math's registered steps cost WebKit about 12 us a reader a frame). */
.dcss-plain.dcss-xy > .dcss-at, .dcss-plain.dcss-xy > * > .dcss-at { grid-row: calc(var(--dcss-r) + (1 - sign(var(--dcss-r))) * var(--dcss-i)) / span 1; --dcss-ok: 1;
  --dcss-p-r0: 1; --dcss-p-r: 1; --dcss-p-rs: 1; }   /* constants win the cascade, so the registered row math is never worked out */

/* A cyclic array: no explicit columns; the implicit ones repeat --dcss-tracks, forwards after line 1 and backwards before
   it (css-grid-2 7.6), so with three tracks index 5 is track 2 and -1 is track 3. Readers are in flow: they make the tracks. */
.dcss-cycle { display: grid; contain: layout; grid-template-columns: none; grid-auto-columns: var(--dcss-tracks); grid-template-rows: auto; --dcss-array-length: 0; }
.dcss-cycle > .dcss-at { position: static !important; }

/* A scan: prefix sums. Each <i> is an entry on the diagonal, at column k and row k + 1, as wide and as tall as its
   --dcss-n, so columns 1..k add up to the sum of entries 1 to k and rows 1..k (row 1 is empty) to the sum before entry k.
   A reader after the entries, <b class="dcss-at" style="--dcss-i: k"><u></u></b>, is a size container over those
   columns and rows: its <u> gets --dcss-value, the sum through entry k, and --dcss-before, the sum before it.
     columns   | 12 | 40 | 25 |            reader --dcss-i: 2  ->  --dcss-value 52, --dcss-before 12
   A scan reader has no index math (k is 1 to the length, whole), so it costs a bare reader: two sums a reader. */
.dcss-scan { display: grid; contain: layout; grid-template: none; grid-auto-columns: max-content; grid-auto-rows: max-content; width: max-content; padding: 0 !important; border: 0 !important; writing-mode: horizontal-tb; direction: ltr; }
.dcss-scan > i { grid-area: calc(sibling-index() + 1) / sibling-index(); width: calc(var(--dcss-n) * 1px); height: calc(var(--dcss-n) * 1px); }
.dcss-scan > .dcss-at { grid-area: 1 / 1 / span var(--dcss-i) / span var(--dcss-i); container-type: size; max-width: none !important; }
.dcss-scan > .dcss-at > u { --dcss-before: calc(100cqh / 1px); }

/* Rank within a bin: each child goes in its --dcss-bin column; dense placement puts it in the first free row there, so
   the k-th child of a bin lands in row k. Row k is k px tall, and the child, stretched to its row, reads its height:
     bin  1   2   3
          a   c   e      a, b: rank 1, 2 in bin 1
          b   d
   Bounds, each error 1: a child's bin is whole and 1 or more, or the child is in no other child's answer and its own
   are error 1 (a fraction written as a number is not an <integer>, so it inherits the grid's 0; calc() rounds, as CSS
   rounds an <integer>). Such a child goes in a column before line 1, 0 px wide, that no bin and no reader is on. A bin
   past the box's width (or past 32 in a max) is in no answer but its own rank. Row k is k px tall to 32, then 0 px to
   row 1,024, so a rank past 32 reads 0 and is error 1; a grid of more than 1,024 children gives every rank error 1. */
.dcss-bins { display: grid; contain: layout; grid-auto-flow: row dense; grid-template-columns: repeat(auto-fit, 1px); grid-auto-columns: 0px; grid-auto-rows: 1px 2px 3px 4px 5px 6px 7px 8px 9px 10px 11px 12px 13px 14px 15px 16px 17px 18px 19px 20px 21px 22px 23px 24px 25px 26px 27px 28px 29px 30px 31px 32px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px 0px; --dcss-bin: 0; }
.dcss-bins > i, .dcss-bins > .dcss-width-sum, .dcss-bins > .dcss-largest, .dcss-bins > .dcss-scale, .dcss-bins.dcss-bin-max .dcss-nest > i { --dcss-p-bv: clamp(0, var(--dcss-bin), 1); --dcss-p-bs: calc(var(--dcss-bin) * var(--dcss-p-bv)); --dcss-p-be: calc(1 - var(--dcss-p-bv));
  grid-column-start: var(--dcss-p-bs); grid-column-end: var(--dcss-p-be); }
.dcss-bins > i, .dcss-bins > .dcss-width-sum, .dcss-bins > .dcss-largest, .dcss-bins > .dcss-scale { container-type: size; }
.dcss-bins > i > u { --dcss-p-rv: calc(100cqh / 1px * clamp(0, var(--dcss-bin), 1)); --dcss-rank: var(--dcss-p-rv); --dcss-err: calc(1 - sign(var(--dcss-p-rv))); text-decoration: none; }
.dcss-bins:has(> :nth-child(1025)) > i > u { --dcss-p-rv: 0; }
.dcss-bins > .dcss-track-count { position: fixed !important; inset: 0; container-type: inline-size; grid-row: 1 / span 1; grid-column: 1 / -1; font-weight: inherit; }
.dcss-bins > .dcss-track-count > u { --dcss-track-count: calc(100cqw / 1px); text-decoration: none; }

/* Max in a bin: 32 max-content columns, each as wide as the widest child in it. */
.dcss-bins.dcss-bin-max { grid-template-columns: repeat(32, max-content); grid-template-rows: repeat(32, max-content); grid-auto-rows: 0px; --dcss-array-length: 32; }
/* nest: entries at any depth. A .dcss-nest is a subgrid over all 32 columns, so its <i> children size the outer
   columns as if they were the grid's own (css-grid-2 9). Its padding would be added to the edge tracks, so it has none. */
.dcss-bins.dcss-bin-max .dcss-nest { display: grid !important; grid-template-columns: subgrid; grid-column: 1 / -1; grid-template-rows: subgrid; grid-row: 1 / -1; margin: 0; padding: 0 !important; border: 0 !important; }
/* A max's bounds: --dcss-n whole, from 0, bins 1 to 32, and an answer (a max, or a range's sum of them) under 10^6, as a
   registered number keeps 6 digits through var() in Chrome. A number past them makes its column 2^20 px wide, so a
   reader over it reads past 999,999 and is error 1, as is any answer past it; a child with a bin past them is 0 px
   wide, in no answer. Rows are bins too (32 max-content rows, a child 1 px tall in row --dcss-bin, the grid 0 px tall):
   a bin with a child has a 1 px row, a bin with none a 0 px row, d3.max's undefined, error 2 for a reader of that one
   bin (its row read by 100cqh; a range sums the maxima, d3.sum skipping it). So the columns hold the maxima alone and
   the grid's width is their sum, exact, where a formula node holds it as a leaf (A38; a child 0.02 px wider carried a
   64th a bin into that sum until 2026-11-04; that 64th also kept round(down) off a column read a hair under its whole px,
   which Chrome gives for 29, 57 and 33 more widths to 300, 100cqw / 1px being 100 x (W / 100) in doubles there
   (facts/container-type/chrome-cqw-hundredths.mjs), so a reader rounds to the nearest px now). A child in a bin-max grid
   has no rank: its rows are bins, not places. */
.dcss-bins.dcss-bin-max .dcss-nest > i { margin: 0; font-style: inherit; }
.dcss-bins.dcss-bin-max > i, .dcss-bins.dcss-bin-max > .dcss-width-sum, .dcss-bins.dcss-bin-max > .dcss-largest, .dcss-bins.dcss-bin-max > .dcss-scale { width: calc(var(--dcss-n) * 1px); }
.dcss-bins.dcss-bin-max > i, .dcss-bins.dcss-bin-max .dcss-nest > i { width: calc(var(--dcss-p-bw) * 1px); grid-row: var(--dcss-p-bs) / span 1;
  height: calc(var(--dcss-p-bv) * sign(max(0, 33 - var(--dcss-bin))) * (1 - sign(abs(round(var(--dcss-bin)) - var(--dcss-bin)))) * 1px);
  --dcss-p-bw: calc(var(--dcss-p-bv) * sign(max(0, 33 - var(--dcss-bin))) * (1048576 - (1048576 - var(--dcss-n)) * clamp(0, sign(var(--dcss-n)) + 1, 1)
    * (1 - sign(abs(round(var(--dcss-n)) - var(--dcss-n)))) * sign(max(0, 1000000 - var(--dcss-n))))); }
/* a reader inside a .dcss-nest reads the same tracks (the subgrid's lines are the grid's): placed as the grid's own readers
   are; it gave error 1 until 2026-11-04 */
.dcss-bins.dcss-bin-max > .dcss-at, .dcss-bins.dcss-bin-max .dcss-nest > .dcss-at { --dcss-p-bj: var(--dcss-j); grid-row: var(--dcss-p-s) / span 1; container-type: size; }
.dcss-bins.dcss-bin-max > i > u, .dcss-bins.dcss-bin-max .dcss-nest > i > u { --dcss-rank: 0; --dcss-err: 1; }
.dcss-bins.dcss-bin-max > .dcss-at > u, .dcss-bins.dcss-bin-max .dcss-nest > .dcss-at > u { --dcss-err: max(sign(max(0, 100cqw / 1px - 999999)), 2 * (1 - sign(abs(var(--dcss-p-bj, 0)))) * (1 - sign(100cqh / 1px))); --dcss-value: calc(round(100cqw / 1px) * (1 - sign(max(0, 100cqw / 1px - 999999)))); }

/* A sort: grid items are placed in order-modified document order (8.5), so with order: --dcss-key the k-th column holds
   the k-th smallest key (equal keys in markup order). Readers are placed by line, not by order. */
.dcss-array.dcss-sort > i { order: var(--dcss-key); }

/* Bins below a child: the bins grid has 1 px columns that collapse when empty (auto-fit, 7.2.3.2). A reader from the
   grid's edge to the child's own bin is then as wide as the bins in use before it. */
.dcss-bins:not(.dcss-bin-max) > .dcss-below, .dcss-bins:not(.dcss-bin-max) > * > .dcss-below { position: fixed !important; inset: 0; container-type: inline-size; grid-row: 1 / span 1; grid-column: auto / var(--dcss-bin); padding: 0 !important; border: 0; font-weight: inherit; }
.dcss-bins:not(.dcss-bin-max) > .dcss-below > u, .dcss-bins:not(.dcss-bin-max) > * > .dcss-below > u { text-decoration: none; --dcss-below: calc(100cqw / 1px * clamp(0, var(--dcss-bin), 1)); --dcss-err: calc(1 - clamp(0, var(--dcss-bin), 1)); }

/* Fair shares with floors: each child spans --dcss-w columns of minmax(min-content, 1fr). Its min-width, the floor,
   is spread over its columns; then the fr grows until the width is full (12.7.1), so a child gets max(floor, w x fr).
   The child stretches over its columns, and its <u> reads its own width. */
.dcss-shares { display: grid; contain: layout; grid-auto-flow: column; grid-auto-columns: minmax(min-content, 1fr); grid-template-rows: auto; }
.dcss-shares > i { grid-row: 1; grid-column: span max(1, var(--dcss-w)); min-width: calc(var(--dcss-n) * 1px) !important; width: auto; box-sizing: border-box; margin: 0; padding: 0 !important; border: 0; container-type: inline-size; }
.dcss-shares > i > u { --dcss-value: calc(100cqw / 1px); text-decoration: none; }

/* Where a child is. Each child of a grid names itself --dcss-where, in its own scope; its .dcss-where is a box
   absolutely positioned from the grid's top-left corner to the child's (anchor()), so the box's size is the child's
   offset. Its first <u> is a size container as big as the box; the inner <u> reads --dcss-x and --dcss-y.
       grid (0,0) +---- x ----+
                  |           y
                  +-----------+ the child */
/* Only entries that hold a .dcss-where name an anchor; an empty <i> cannot hold one, so it skips the rule. */
:is(.dcss-array, .dcss-bins, .dcss-shares, .dcss-pack, .dcss-sort, .dcss-slide, .dcss-tiles, .dcss-groups, .dcss-overlap, .dcss-lines, .dcss-baseline, .dcss-columns) > :where(i:not(:empty)), .dcss-map > :where(i:not(:empty)):has(.dcss-where) { anchor-name: --dcss-where; anchor-scope: --dcss-where; }
.dcss-where { position: absolute; top: 0; left: 0; right: anchor(--dcss-where left); bottom: anchor(--dcss-where top); margin: 0; padding: 0 !important; border: 0; pointer-events: none; font-weight: inherit; }
.dcss-where > u, .dcss-where > u > u { text-decoration: none; }
.dcss-where > u { display: block !important; width: 100%; height: 100%; container-type: size; margin: 0; padding: 0 !important; border: 0; }
.dcss-where > u > u { --dcss-x: calc(100cqw / 1px); --dcss-y: calc(100cqh / 1px); }

/* First-fit packing: columns and rows of 1 px; each child spans --dcss-w columns, and dense placement puts it in the
   first row where they are all free (8.5). Its .dcss-where reads its column and row. */
.dcss-pack { display: grid; contain: layout; grid-auto-flow: row dense; grid-template-columns: repeat(max(1, var(--dcss-columns)), 1px); grid-auto-rows: 1px; width: max-content; }
:where(.dcss-pack) > i { grid-column: span max(1, var(--dcss-w)); margin: 0; padding: 0 !important; border: 0; }
.dcss-pack > .dcss-where > u > u, .dcss-pack > * > .dcss-where > u > u { --dcss-column: calc(var(--dcss-x) + 1); --dcss-row: calc(var(--dcss-y) + 1); }

/* Places in a sort: 1 px entries in key order, so a child's offset from the start is how many come before it. */
.dcss-sort:not(.dcss-array) { display: grid; contain: layout; grid-auto-flow: column; grid-auto-columns: max-content; grid-template-rows: 1px; width: max-content; anchor-scope: --dcss-lo, --dcss-hi; }
.dcss-sort:not(.dcss-array) > i { order: var(--dcss-key); width: 1px; margin: 0; padding: 0 !important; border: 0; }
.dcss-sort:not(.dcss-array) > .dcss-where > u > u, .dcss-sort:not(.dcss-array) > * > .dcss-where > u > u { --dcss-place: calc(var(--dcss-x) + 1); }
/* Search in a sort: a .dcss-lo probe sits before the entries equal to its key and a .dcss-hi probe after them (equal
   keys keep markup order). Their offsets count the keys below and up to the key; a .dcss-between from one to the other
   reads how many are equal.
     | 3 | 5 |lo| 7 | 7 |hi| 9 |      lower 2, upper 4, frequency 2 */
.dcss-sort:not(.dcss-array) > .dcss-lo, .dcss-sort:not(.dcss-array) > .dcss-hi { width: 0; }
.dcss-sort > .dcss-lo { anchor-name: --dcss-where, --dcss-lo; } .dcss-sort > .dcss-hi { anchor-name: --dcss-where, --dcss-hi; }
.dcss-sort:not(.dcss-array) > .dcss-lo > .dcss-where > u > u { --dcss-lower: var(--dcss-x); }
.dcss-sort:not(.dcss-array) > .dcss-hi > .dcss-where > u > u { --dcss-upper: var(--dcss-x); }
.dcss-sort:not(.dcss-array) > .dcss-between, .dcss-sort:not(.dcss-array) > * > .dcss-between { position: absolute !important; top: 0; height: 1px; left: anchor(--dcss-lo right); right: anchor(--dcss-hi left); margin: 0; padding: 0 !important; border: 0; pointer-events: none; font-weight: inherit; }
.dcss-sort:not(.dcss-array) > .dcss-between > u, .dcss-sort:not(.dcss-array) > * > .dcss-between > u { display: block !important; width: 100%; height: 100%; container-type: size; margin: 0; padding: 0 !important; border: 0; text-decoration: none; }
.dcss-sort:not(.dcss-array) > .dcss-between > u > u, .dcss-sort:not(.dcss-array) > * > .dcss-between > u > u { --dcss-frequency: calc(100cqw / 1px); --dcss-member: min(1, var(--dcss-frequency)); text-decoration: none; }

/* Grouped sums: each child is in its --dcss-bin column and --dcss-n rows of 1 px tall. Dense placement stacks it under
   the earlier children of its bin (8.5), so its offset down is the sum of theirs. */
.dcss-groups { display: grid; contain: layout; grid-auto-flow: row dense; grid-auto-columns: 1px; grid-auto-rows: 1px; width: max-content; }
:where(.dcss-groups) > i { grid-column: max(1, var(--dcss-bin)) / span 1; grid-row: span max(1, var(--dcss-n)); margin: 0; padding: 0 !important; border: 0; }
/* The most intervals at one point: each child is an interval, --dcss-span 1 px columns from --dcss-i, ordered by start.
   Dense placement puts each in the first row free over its columns (8.5); first fit by start never uses more rows than
   the most intervals that overlap, so the grid's height is that number, and a child's row is its lane.
     row 0  [1-4]   [6---10]
     row 1    [3-5]    [8-9]        at most 2 at one point */
.dcss-overlap { display: grid; contain: layout; grid-auto-flow: row dense; grid-auto-columns: 1px; grid-auto-rows: 1px; width: max-content; }
.dcss-overlap > i { grid-column: max(1, var(--dcss-i)) / span max(1, var(--dcss-span)); order: calc(var(--dcss-i)); height: 1px; margin: 0; padding: 0 !important; border: 0; }
/* Next-fit lines: children --dcss-n px wide in a row --dcss-columns px wide that wraps. A line takes children while
   they fit (css-flexbox-1 9.3); each child is 1 px tall, so the row's height is the number of lines.
     | 5 | 7 | 4 |        width 20
     | 6 | 9 | 3 |        a child's .dcss-where: --dcss-y its line, --dcss-x what comes before it */
.dcss-lines { display: flex; flex-wrap: wrap; align-content: flex-start; align-items: flex-start; contain: layout; width: calc(var(--dcss-columns) * 1px); }
.dcss-lines > i { flex: none; width: calc(var(--dcss-n) * 1px); height: 1px; margin: 0; padding: 0 !important; border: 0; box-sizing: border-box; }
.dcss-overlap > .dcss-track-count, .dcss-lines > .dcss-track-count { position: absolute !important; inset: 0; container-type: size; font-weight: inherit; }
.dcss-overlap > .dcss-track-count > u, .dcss-lines > .dcss-track-count > u { --dcss-track-count: calc(100cqh / 1px); text-decoration: none; }
/* A tile map: --dcss-areas is grid-template-areas, the map's row strings in one property, over --dcss-columns x
   --dcss-rows tiles of 1 px. A child placed by an area name is a size container over that area; its .dcss-where reads
   where it is and how big. An area the map lacks puts the child outside the tiles, and --dcss-fits reads 0. */
.dcss-tiles { display: grid; contain: layout; grid-template-columns: repeat(max(1, var(--dcss-columns)), 1px); grid-template-rows: repeat(max(1, var(--dcss-rows)), 1px);
  grid-auto-columns: 1px; grid-auto-rows: 1px; grid-template-areas: var(--dcss-areas); width: max-content; }
.dcss-tiles > i { container-type: size; margin: 0; padding: 0 !important; border: 0; }
.dcss-tiles > .dcss-where, .dcss-tiles > * > .dcss-where { --dcss-width: calc(100cqw / 1px); --dcss-height: calc(100cqh / 1px); }
.dcss-tiles > .dcss-where > u > u, .dcss-tiles > * > .dcss-where > u > u { --dcss-fits: calc(clamp(0, var(--dcss-columns) - var(--dcss-x), 1) * clamp(0, var(--dcss-rows) - var(--dcss-y), 1) * clamp(0, var(--dcss-columns) - var(--dcss-x) - var(--dcss-width) + 1, 1) * clamp(0, var(--dcss-rows) - var(--dcss-y) - var(--dcss-height) + 1, 1)); }

/* 2D packing around walls: the named children (walls) are placed first; the rest auto-place in row dense flow, each
   --dcss-w by --dcss-h tiles, at the first spot where it overlaps nothing. One that does not fit lands below the map. */
:where(.dcss-tiles.dcss-pack) > i { grid-row: span max(1, var(--dcss-h)); }
/* The push, 1D non-penetration: each child's ::before is its box (--dcss-h wide) and its ::after its target (--dcss-target
   wide from the start). The columns alternate gap and box; spans are sized smallest first (12.5), so the gaps before
   target i are already settled when it is, and box i lands at max(target i, end of box i - 1):
     | gap 1 | box 1 | gap 2 | box 2 | ...
     [ target 1 ]
     [ target 2 ------------]           the .dcss-where reads where box i starts */
.dcss-push { display: grid; contain: layout; grid-auto-flow: column; grid-auto-columns: auto; grid-template-rows: 0; width: max-content; justify-content: start; }
.dcss-push > i { display: contents !important; --dcss-p-pi: sibling-index(); }
.dcss-push > i::before { content: ''; grid-row: 1; grid-column: calc(2 * var(--dcss-p-pi)) / span 1; width: calc(max(0, var(--dcss-h)) * 1px); }
.dcss-push > i::after { content: ''; grid-row: 1; grid-column: 1 / span calc(2 * var(--dcss-p-pi) - 1); width: calc(max(0, var(--dcss-target)) * 1px); }
.dcss-push > .dcss-where, .dcss-push > * > .dcss-where { inset: 0; grid-row: 1; grid-column: 1 / calc(2 * var(--dcss-p-pi)); }
/* The push from the end: the same right to left, against a wall at --dcss-wall. */
.dcss-push.dcss-end { direction: rtl; width: calc(var(--dcss-wall) * 1px); }
.dcss-push.dcss-end > i { --dcss-p-pi: calc(sibling-count() - sibling-index() + 1); }
.dcss-push.dcss-end > i::after { width: calc(max(0, var(--dcss-wall) - var(--dcss-target) - var(--dcss-h)) * 1px); }
.dcss-push.dcss-end > .dcss-where > u > u, .dcss-push.dcss-end > * > .dcss-where > u > u { --dcss-x: calc(var(--dcss-wall) - 100cqw / 1px - var(--dcss-h)); }
/* The same pushes on children nested in each other (each <i> holds the next, its .dcss-where its first child): one
   block a child where the grid's span groups are O(n^2); 300 children are 1.2 against 12 ms of layout in Chrome
   (probes/nest-push.mjs). HTML parsers stop nesting at 512 elements deep, so a few hundred children at most.
   The push, top down: in a zero-wide box, right to left, child k fills its parent's content box up to wall - target_k
   (the first is that wide); its start padding (the left) is its box, so its left edge is max(target_k, end of box
   k - 1) less the wall. Its .dcss-where is as wide as its content box: the wall less the end of box k. The wall
   (2^16 px, targets and ends below it: Chrome resolves percentages of a box 2^20 px wide 1/16 px off, and container
   units are float32) is off the page, never drawn:
     [wall ........ | box k-1 | content of k - 1 ............]
                    [  max(...) |box k| content of k ........]  all flush with the right edge */
.dcss-push.dcss-nested { display: block; direction: rtl; width: 0; height: 0; --dcss-p-wall: 65536; }
.dcss-push.dcss-nested i { display: block !important; box-sizing: border-box; height: 0; margin: 0; border: 0; padding: 0 0 0 calc(max(0, var(--dcss-h)) * 1px) !important; width: auto; max-width: calc((var(--dcss-p-wall) - var(--dcss-target)) * 1px) !important; font-style: inherit; }
.dcss-push.dcss-nested > i { width: calc((var(--dcss-p-wall) - var(--dcss-target)) * 1px); max-width: none !important; }
.dcss-push.dcss-nested > i::before, .dcss-push.dcss-nested > i::after { content: none; }
/* A reader here is its .dcss-where alone (its outer <u> is display: contents) and reads no --dcss-y: the middle box
   and 100cqh (which looks past every level for a container with a height) cost 1.1 and 1.2 ms at 300 in Chrome. */
.dcss-push.dcss-nested i > .dcss-where { position: static !important; inset: auto; display: block !important; width: auto; height: 0; container-type: inline-size; }
.dcss-push.dcss-nested i > .dcss-where > u { display: contents !important; container-type: normal; }
.dcss-push.dcss-nested i > .dcss-where > u > u { display: block !important; --dcss-x: calc(var(--dcss-p-wall) - var(--dcss-h) - 100cqw / 1px); --dcss-y: initial; }
/* The push from the end, bottom up: child k is a row at least wall - target_k wide, its start padding its box, the
   next child flush with its end: its width is the wall less where box k starts. Its .dcss-where, as wide as its
   content box (a percentage, so it adds nothing to the row's size), sits before the next child. */
.dcss-push.dcss-end.dcss-nested { display: flex; direction: ltr; justify-content: flex-end; width: calc(var(--dcss-wall) * 1px); }
.dcss-push.dcss-end.dcss-nested i { display: flex !important; justify-content: flex-end; flex: none; width: auto; max-width: none !important; min-width: calc((var(--dcss-wall) - var(--dcss-target)) * 1px) !important; }
.dcss-push.dcss-end.dcss-nested i > .dcss-where { flex: none; width: 100%; }
.dcss-push.dcss-end.dcss-nested i > .dcss-where > u > u { --dcss-x: calc(var(--dcss-wall) - var(--dcss-h) - 100cqw / 1px); }
/* The sorted group total: <div class="dcss-ranked" style="--dcss-bins: G">, first G <b class="dcss-group"><b class="dcss-group-total"></b></b>,
   then <b class="dcss-bars"> holding G <b>, then the items <i style="--dcss-bin: 1..G; --dcss-n: amount; --dcss-key: any number on the 1/64 grid from -131,072 to 131,071">; --dcss-desc: 1 ranks the largest
   first. Each bar's top is its rank times --dcss-band (2 px), its left and right its group's total's ends. Up to 16 groups, 32 with .dcss-wide.
   .dcss-bin-max ranks each group's largest --dcss-n instead; a <b> in an item is its segment of its group's bar. */
@property --dcss-rk-g { syntax: '<integer>'; inherits: true; initial-value: 0; }
@property --dcss-rk-b { syntax: '<integer>'; inherits: true; initial-value: 0; }
@property --dcss-rk-l { syntax: '<integer>'; inherits: true; initial-value: 16; }
@property --dcss-rk-o { syntax: '<integer>'; inherits: true; initial-value: 0; }
@property --dcss-rk-i { syntax: '<integer>'; inherits: true; initial-value: 0; }
@property --dcss-rk-j { syntax: '<integer>'; inherits: true; initial-value: 0; }
@property --dcss-rk-s { syntax: '<integer>'; inherits: true; initial-value: 0; }
.dcss-ranked { position: relative; display: flex; flex-wrap: wrap; align-content: flex-start; --dcss-p-rk: 16777216; --dcss-p-rd: calc(2 * var(--dcss-desc, 0) - 1); --dcss-p-rn: calc(var(--dcss-p-rd) * -33554432px);
  --dcss-bin: 0; --dcss-rk-g: 0; --dcss-rk-l: 16;
  --dcss-rk-o: calc(clamp(0, var(--dcss-rk-g), 1) * clamp(0, var(--dcss-rk-l) - var(--dcss-rk-g) + 1, 1)); }
.dcss-ranked.dcss-wide:not(.dcss-copy) { --dcss-rk-l: 32; }
.dcss-ranked:is(:has(> .dcss-group:nth-child(1) + :not(.dcss-group)), :has(> .dcss-group:nth-child(1):last-child)) { --dcss-rk-g: 1; }
.dcss-ranked:is(:has(> .dcss-group:nth-child(2) + :not(.dcss-group)), :has(> .dcss-group:nth-child(2):last-child)) { --dcss-rk-g: 2; }
.dcss-ranked:is(:has(> .dcss-group:nth-child(3) + :not(.dcss-group)), :has(> .dcss-group:nth-child(3):last-child)) { --dcss-rk-g: 3; }
.dcss-ranked:is(:has(> .dcss-group:nth-child(4) + :not(.dcss-group)), :has(> .dcss-group:nth-child(4):last-child)) { --dcss-rk-g: 4; }
.dcss-ranked:is(:has(> .dcss-group:nth-child(5) + :not(.dcss-group)), :has(> .dcss-group:nth-child(5):last-child)) { --dcss-rk-g: 5; }
.dcss-ranked:is(:has(> .dcss-group:nth-child(6) + :not(.dcss-group)), :has(> .dcss-group:nth-child(6):last-child)) { --dcss-rk-g: 6; }
.dcss-ranked:is(:has(> .dcss-group:nth-child(7) + :not(.dcss-group)), :has(> .dcss-group:nth-child(7):last-child)) { --dcss-rk-g: 7; }
.dcss-ranked:is(:has(> .dcss-group:nth-child(8) + :not(.dcss-group)), :has(> .dcss-group:nth-child(8):last-child)) { --dcss-rk-g: 8; }
.dcss-ranked:is(:has(> .dcss-group:nth-child(9) + :not(.dcss-group)), :has(> .dcss-group:nth-child(9):last-child)) { --dcss-rk-g: 9; }
.dcss-ranked:is(:has(> .dcss-group:nth-child(10) + :not(.dcss-group)), :has(> .dcss-group:nth-child(10):last-child)) { --dcss-rk-g: 10; }
.dcss-ranked:is(:has(> .dcss-group:nth-child(11) + :not(.dcss-group)), :has(> .dcss-group:nth-child(11):last-child)) { --dcss-rk-g: 11; }
.dcss-ranked:is(:has(> .dcss-group:nth-child(12) + :not(.dcss-group)), :has(> .dcss-group:nth-child(12):last-child)) { --dcss-rk-g: 12; }
.dcss-ranked:is(:has(> .dcss-group:nth-child(13) + :not(.dcss-group)), :has(> .dcss-group:nth-child(13):last-child)) { --dcss-rk-g: 13; }
.dcss-ranked:is(:has(> .dcss-group:nth-child(14) + :not(.dcss-group)), :has(> .dcss-group:nth-child(14):last-child)) { --dcss-rk-g: 14; }
.dcss-ranked:is(:has(> .dcss-group:nth-child(15) + :not(.dcss-group)), :has(> .dcss-group:nth-child(15):last-child)) { --dcss-rk-g: 15; }
.dcss-ranked:is(:has(> .dcss-group:nth-child(16) + :not(.dcss-group)), :has(> .dcss-group:nth-child(16):last-child)) { --dcss-rk-g: 16; }
.dcss-ranked:is(:has(> .dcss-group:nth-child(17) + :not(.dcss-group)), :has(> .dcss-group:nth-child(17):last-child)) { --dcss-rk-g: 17; }
.dcss-ranked:is(:has(> .dcss-group:nth-child(18) + :not(.dcss-group)), :has(> .dcss-group:nth-child(18):last-child)) { --dcss-rk-g: 18; }
.dcss-ranked:is(:has(> .dcss-group:nth-child(19) + :not(.dcss-group)), :has(> .dcss-group:nth-child(19):last-child)) { --dcss-rk-g: 19; }
.dcss-ranked:is(:has(> .dcss-group:nth-child(20) + :not(.dcss-group)), :has(> .dcss-group:nth-child(20):last-child)) { --dcss-rk-g: 20; }
.dcss-ranked:is(:has(> .dcss-group:nth-child(21) + :not(.dcss-group)), :has(> .dcss-group:nth-child(21):last-child)) { --dcss-rk-g: 21; }
.dcss-ranked:is(:has(> .dcss-group:nth-child(22) + :not(.dcss-group)), :has(> .dcss-group:nth-child(22):last-child)) { --dcss-rk-g: 22; }
.dcss-ranked:is(:has(> .dcss-group:nth-child(23) + :not(.dcss-group)), :has(> .dcss-group:nth-child(23):last-child)) { --dcss-rk-g: 23; }
.dcss-ranked:is(:has(> .dcss-group:nth-child(24) + :not(.dcss-group)), :has(> .dcss-group:nth-child(24):last-child)) { --dcss-rk-g: 24; }
.dcss-ranked:is(:has(> .dcss-group:nth-child(25) + :not(.dcss-group)), :has(> .dcss-group:nth-child(25):last-child)) { --dcss-rk-g: 25; }
.dcss-ranked:is(:has(> .dcss-group:nth-child(26) + :not(.dcss-group)), :has(> .dcss-group:nth-child(26):last-child)) { --dcss-rk-g: 26; }
.dcss-ranked:is(:has(> .dcss-group:nth-child(27) + :not(.dcss-group)), :has(> .dcss-group:nth-child(27):last-child)) { --dcss-rk-g: 27; }
.dcss-ranked:is(:has(> .dcss-group:nth-child(28) + :not(.dcss-group)), :has(> .dcss-group:nth-child(28):last-child)) { --dcss-rk-g: 28; }
.dcss-ranked:is(:has(> .dcss-group:nth-child(29) + :not(.dcss-group)), :has(> .dcss-group:nth-child(29):last-child)) { --dcss-rk-g: 29; }
.dcss-ranked:is(:has(> .dcss-group:nth-child(30) + :not(.dcss-group)), :has(> .dcss-group:nth-child(30):last-child)) { --dcss-rk-g: 30; }
.dcss-ranked:is(:has(> .dcss-group:nth-child(31) + :not(.dcss-group)), :has(> .dcss-group:nth-child(31):last-child)) { --dcss-rk-g: 31; }
.dcss-ranked:is(:has(> .dcss-group:nth-child(32) + :not(.dcss-group)), :has(> .dcss-group:nth-child(32):last-child)) { --dcss-rk-g: 32; }
.dcss-ranked > i, .dcss-segments > i { --dcss-rk-i: calc(clamp(0, var(--dcss-bin), 1) * clamp(0, var(--dcss-rk-g) - var(--dcss-bin) + 1, 1)); --dcss-rk-j: clamp(-8388608, round(var(--dcss-key, 0) * 64), 8388605);
  --dcss-rk-s: calc(var(--dcss-rk-o) * var(--dcss-rk-i) * (1 - min(1, abs(var(--dcss-key, 0) * 64 - var(--dcss-rk-j)))) * (1 - sign(abs(round(var(--dcss-n)) - var(--dcss-n))))); }
.dcss-ranked > i > b, .dcss-segments > i > b { --dcss-err: calc((1 - var(--dcss-rk-s)) * (1 + var(--dcss-rk-o) * (1 - var(--dcss-rk-i)))); }
.dcss-ranked > :is(.dcss-bars, .dcss-labels) > b { --dcss-err: calc(1 - var(--dcss-rk-o) * (2 * clamp(0, var(--dcss-rk-g) - sibling-index() + 1, 1) - 1)); }
.dcss-ranked > i { flex: none; height: 1px; order: calc(var(--dcss-rk-i) * (var(--dcss-p-rk) * (var(--dcss-bin) - 1) + 8388608 + var(--dcss-rk-j)) + (1 - var(--dcss-rk-i)) * var(--dcss-p-rk) * 33); width: calc(abs(var(--dcss-n)) * 1px); margin: 0 calc(min(0, var(--dcss-n)) * 1px); padding: 0 !important; border: 0; }
.dcss-ranked > .dcss-group { display: contents !important; }
.dcss-ranked > .dcss-group::before { content: ''; flex: none; width: 0; height: 1px; order: calc(var(--dcss-p-rk) * sibling-index() - 2); }
.dcss-ranked > .dcss-group::after { content: ''; flex: none; flex-basis: calc(100% + var(--dcss-off, 65536) * 1px); height: 0; order: calc(var(--dcss-p-rk) * sibling-index() - 1); }
.dcss-ranked > .dcss-group > .dcss-group-total { position: absolute !important; left: calc(-1 * var(--dcss-off, 65536) * 1px); top: 0; height: 0; margin: 0; padding: 0 !important; border: 0; }
.dcss-ranked > .dcss-bars { display: contents !important; }
.dcss-ranked > .dcss-bars > b { position: absolute !important; left: min(anchor(left) + var(--dcss-off, 65536) * 1px, anchor(right)); right: min(anchor(left) - var(--dcss-off, 65536) * 1px, anchor(right)); height: var(--dcss-band, 2px); margin: 0; padding: 0 !important; border: 0; }
.dcss-wide > .dcss-group:nth-child(17)::before { anchor-name: --dcss-end-17; } .dcss-wide > .dcss-group:nth-child(17) > .dcss-group-total { anchor-name: --dcss-total-17; position-anchor: --dcss-end-17; right: anchor(left); }
.dcss-ranked.dcss-wide > .dcss-bars > b:nth-child(17) { anchor-name: --dcss-bar-17; position-anchor: --dcss-total-17; }
.dcss-ranked.dcss-wide > .dcss-labels > b:nth-child(17) { top: anchor(--dcss-bar-17 top); }
.dcss-wide > .dcss-group:nth-child(18)::before { anchor-name: --dcss-end-18; } .dcss-wide > .dcss-group:nth-child(18) > .dcss-group-total { anchor-name: --dcss-total-18; position-anchor: --dcss-end-18; right: anchor(left); }
.dcss-ranked.dcss-wide > .dcss-bars > b:nth-child(18) { anchor-name: --dcss-bar-18; position-anchor: --dcss-total-18; }
.dcss-ranked.dcss-wide > .dcss-labels > b:nth-child(18) { top: anchor(--dcss-bar-18 top); }
.dcss-wide > .dcss-group:nth-child(19)::before { anchor-name: --dcss-end-19; } .dcss-wide > .dcss-group:nth-child(19) > .dcss-group-total { anchor-name: --dcss-total-19; position-anchor: --dcss-end-19; right: anchor(left); }
.dcss-ranked.dcss-wide > .dcss-bars > b:nth-child(19) { anchor-name: --dcss-bar-19; position-anchor: --dcss-total-19; }
.dcss-ranked.dcss-wide > .dcss-labels > b:nth-child(19) { top: anchor(--dcss-bar-19 top); }
.dcss-wide > .dcss-group:nth-child(20)::before { anchor-name: --dcss-end-20; } .dcss-wide > .dcss-group:nth-child(20) > .dcss-group-total { anchor-name: --dcss-total-20; position-anchor: --dcss-end-20; right: anchor(left); }
.dcss-ranked.dcss-wide > .dcss-bars > b:nth-child(20) { anchor-name: --dcss-bar-20; position-anchor: --dcss-total-20; }
.dcss-ranked.dcss-wide > .dcss-labels > b:nth-child(20) { top: anchor(--dcss-bar-20 top); }
.dcss-wide > .dcss-group:nth-child(21)::before { anchor-name: --dcss-end-21; } .dcss-wide > .dcss-group:nth-child(21) > .dcss-group-total { anchor-name: --dcss-total-21; position-anchor: --dcss-end-21; right: anchor(left); }
.dcss-ranked.dcss-wide > .dcss-bars > b:nth-child(21) { anchor-name: --dcss-bar-21; position-anchor: --dcss-total-21; }
.dcss-ranked.dcss-wide > .dcss-labels > b:nth-child(21) { top: anchor(--dcss-bar-21 top); }
.dcss-wide > .dcss-group:nth-child(22)::before { anchor-name: --dcss-end-22; } .dcss-wide > .dcss-group:nth-child(22) > .dcss-group-total { anchor-name: --dcss-total-22; position-anchor: --dcss-end-22; right: anchor(left); }
.dcss-ranked.dcss-wide > .dcss-bars > b:nth-child(22) { anchor-name: --dcss-bar-22; position-anchor: --dcss-total-22; }
.dcss-ranked.dcss-wide > .dcss-labels > b:nth-child(22) { top: anchor(--dcss-bar-22 top); }
.dcss-wide > .dcss-group:nth-child(23)::before { anchor-name: --dcss-end-23; } .dcss-wide > .dcss-group:nth-child(23) > .dcss-group-total { anchor-name: --dcss-total-23; position-anchor: --dcss-end-23; right: anchor(left); }
.dcss-ranked.dcss-wide > .dcss-bars > b:nth-child(23) { anchor-name: --dcss-bar-23; position-anchor: --dcss-total-23; }
.dcss-ranked.dcss-wide > .dcss-labels > b:nth-child(23) { top: anchor(--dcss-bar-23 top); }
.dcss-wide > .dcss-group:nth-child(24)::before { anchor-name: --dcss-end-24; } .dcss-wide > .dcss-group:nth-child(24) > .dcss-group-total { anchor-name: --dcss-total-24; position-anchor: --dcss-end-24; right: anchor(left); }
.dcss-ranked.dcss-wide > .dcss-bars > b:nth-child(24) { anchor-name: --dcss-bar-24; position-anchor: --dcss-total-24; }
.dcss-ranked.dcss-wide > .dcss-labels > b:nth-child(24) { top: anchor(--dcss-bar-24 top); }
.dcss-wide > .dcss-group:nth-child(25)::before { anchor-name: --dcss-end-25; } .dcss-wide > .dcss-group:nth-child(25) > .dcss-group-total { anchor-name: --dcss-total-25; position-anchor: --dcss-end-25; right: anchor(left); }
.dcss-ranked.dcss-wide > .dcss-bars > b:nth-child(25) { anchor-name: --dcss-bar-25; position-anchor: --dcss-total-25; }
.dcss-ranked.dcss-wide > .dcss-labels > b:nth-child(25) { top: anchor(--dcss-bar-25 top); }
.dcss-wide > .dcss-group:nth-child(26)::before { anchor-name: --dcss-end-26; } .dcss-wide > .dcss-group:nth-child(26) > .dcss-group-total { anchor-name: --dcss-total-26; position-anchor: --dcss-end-26; right: anchor(left); }
.dcss-ranked.dcss-wide > .dcss-bars > b:nth-child(26) { anchor-name: --dcss-bar-26; position-anchor: --dcss-total-26; }
.dcss-ranked.dcss-wide > .dcss-labels > b:nth-child(26) { top: anchor(--dcss-bar-26 top); }
.dcss-wide > .dcss-group:nth-child(27)::before { anchor-name: --dcss-end-27; } .dcss-wide > .dcss-group:nth-child(27) > .dcss-group-total { anchor-name: --dcss-total-27; position-anchor: --dcss-end-27; right: anchor(left); }
.dcss-ranked.dcss-wide > .dcss-bars > b:nth-child(27) { anchor-name: --dcss-bar-27; position-anchor: --dcss-total-27; }
.dcss-ranked.dcss-wide > .dcss-labels > b:nth-child(27) { top: anchor(--dcss-bar-27 top); }
.dcss-wide > .dcss-group:nth-child(28)::before { anchor-name: --dcss-end-28; } .dcss-wide > .dcss-group:nth-child(28) > .dcss-group-total { anchor-name: --dcss-total-28; position-anchor: --dcss-end-28; right: anchor(left); }
.dcss-ranked.dcss-wide > .dcss-bars > b:nth-child(28) { anchor-name: --dcss-bar-28; position-anchor: --dcss-total-28; }
.dcss-ranked.dcss-wide > .dcss-labels > b:nth-child(28) { top: anchor(--dcss-bar-28 top); }
.dcss-wide > .dcss-group:nth-child(29)::before { anchor-name: --dcss-end-29; } .dcss-wide > .dcss-group:nth-child(29) > .dcss-group-total { anchor-name: --dcss-total-29; position-anchor: --dcss-end-29; right: anchor(left); }
.dcss-ranked.dcss-wide > .dcss-bars > b:nth-child(29) { anchor-name: --dcss-bar-29; position-anchor: --dcss-total-29; }
.dcss-ranked.dcss-wide > .dcss-labels > b:nth-child(29) { top: anchor(--dcss-bar-29 top); }
.dcss-wide > .dcss-group:nth-child(30)::before { anchor-name: --dcss-end-30; } .dcss-wide > .dcss-group:nth-child(30) > .dcss-group-total { anchor-name: --dcss-total-30; position-anchor: --dcss-end-30; right: anchor(left); }
.dcss-ranked.dcss-wide > .dcss-bars > b:nth-child(30) { anchor-name: --dcss-bar-30; position-anchor: --dcss-total-30; }
.dcss-ranked.dcss-wide > .dcss-labels > b:nth-child(30) { top: anchor(--dcss-bar-30 top); }
.dcss-wide > .dcss-group:nth-child(31)::before { anchor-name: --dcss-end-31; } .dcss-wide > .dcss-group:nth-child(31) > .dcss-group-total { anchor-name: --dcss-total-31; position-anchor: --dcss-end-31; right: anchor(left); }
.dcss-ranked.dcss-wide > .dcss-bars > b:nth-child(31) { anchor-name: --dcss-bar-31; position-anchor: --dcss-total-31; }
.dcss-ranked.dcss-wide > .dcss-labels > b:nth-child(31) { top: anchor(--dcss-bar-31 top); }
.dcss-wide > .dcss-group:nth-child(32)::before { anchor-name: --dcss-end-32; } .dcss-wide > .dcss-group:nth-child(32) > .dcss-group-total { anchor-name: --dcss-total-32; position-anchor: --dcss-end-32; right: anchor(left); }
.dcss-ranked.dcss-wide > .dcss-bars > b:nth-child(32) { anchor-name: --dcss-bar-32; position-anchor: --dcss-total-32; }
.dcss-ranked.dcss-wide > .dcss-labels > b:nth-child(32) { top: anchor(--dcss-bar-32 top); }
.dcss-ranked > .dcss-group:nth-child(1)::before { anchor-name: --dcss-end-1; } .dcss-ranked > .dcss-group:nth-child(1) > .dcss-group-total { anchor-name: --dcss-total-1; position-anchor: --dcss-end-1; right: anchor(left); }
.dcss-ranked > .dcss-bars > b:nth-child(1) { anchor-name: --dcss-bar-1; position-anchor: --dcss-total-1; top: calc((clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-2 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-3 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-4 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-5 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-6 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-7 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-8 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-9 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-10 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-11 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-12 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-13 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-14 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-15 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-16 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1)) * var(--dcss-band, 2px)); }
.dcss-ranked > .dcss-group:nth-child(2)::before { anchor-name: --dcss-end-2; } .dcss-ranked > .dcss-group:nth-child(2) > .dcss-group-total { anchor-name: --dcss-total-2; position-anchor: --dcss-end-2; right: anchor(left); }
.dcss-ranked > .dcss-bars > b:nth-child(2) { anchor-name: --dcss-bar-2; position-anchor: --dcss-total-2; top: calc((clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-1 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-3 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-4 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-5 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-6 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-7 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-8 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-9 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-10 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-11 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-12 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-13 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-14 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-15 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-16 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1)) * var(--dcss-band, 2px)); }
.dcss-ranked > .dcss-group:nth-child(3)::before { anchor-name: --dcss-end-3; } .dcss-ranked > .dcss-group:nth-child(3) > .dcss-group-total { anchor-name: --dcss-total-3; position-anchor: --dcss-end-3; right: anchor(left); }
.dcss-ranked > .dcss-bars > b:nth-child(3) { anchor-name: --dcss-bar-3; position-anchor: --dcss-total-3; top: calc((clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-1 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-2 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-4 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-5 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-6 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-7 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-8 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-9 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-10 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-11 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-12 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-13 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-14 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-15 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-16 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1)) * var(--dcss-band, 2px)); }
.dcss-ranked > .dcss-group:nth-child(4)::before { anchor-name: --dcss-end-4; } .dcss-ranked > .dcss-group:nth-child(4) > .dcss-group-total { anchor-name: --dcss-total-4; position-anchor: --dcss-end-4; right: anchor(left); }
.dcss-ranked > .dcss-bars > b:nth-child(4) { anchor-name: --dcss-bar-4; position-anchor: --dcss-total-4; top: calc((clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-1 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-2 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-3 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-5 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-6 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-7 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-8 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-9 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-10 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-11 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-12 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-13 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-14 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-15 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-16 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1)) * var(--dcss-band, 2px)); }
.dcss-ranked > .dcss-group:nth-child(5)::before { anchor-name: --dcss-end-5; } .dcss-ranked > .dcss-group:nth-child(5) > .dcss-group-total { anchor-name: --dcss-total-5; position-anchor: --dcss-end-5; right: anchor(left); }
.dcss-ranked > .dcss-bars > b:nth-child(5) { anchor-name: --dcss-bar-5; position-anchor: --dcss-total-5; top: calc((clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-1 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-2 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-3 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-4 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-6 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-7 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-8 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-9 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-10 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-11 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-12 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-13 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-14 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-15 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-16 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1)) * var(--dcss-band, 2px)); }
.dcss-ranked > .dcss-group:nth-child(6)::before { anchor-name: --dcss-end-6; } .dcss-ranked > .dcss-group:nth-child(6) > .dcss-group-total { anchor-name: --dcss-total-6; position-anchor: --dcss-end-6; right: anchor(left); }
.dcss-ranked > .dcss-bars > b:nth-child(6) { anchor-name: --dcss-bar-6; position-anchor: --dcss-total-6; top: calc((clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-1 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-2 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-3 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-4 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-5 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-7 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-8 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-9 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-10 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-11 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-12 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-13 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-14 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-15 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-16 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1)) * var(--dcss-band, 2px)); }
.dcss-ranked > .dcss-group:nth-child(7)::before { anchor-name: --dcss-end-7; } .dcss-ranked > .dcss-group:nth-child(7) > .dcss-group-total { anchor-name: --dcss-total-7; position-anchor: --dcss-end-7; right: anchor(left); }
.dcss-ranked > .dcss-bars > b:nth-child(7) { anchor-name: --dcss-bar-7; position-anchor: --dcss-total-7; top: calc((clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-1 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-2 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-3 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-4 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-5 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-6 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-8 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-9 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-10 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-11 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-12 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-13 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-14 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-15 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-16 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1)) * var(--dcss-band, 2px)); }
.dcss-ranked > .dcss-group:nth-child(8)::before { anchor-name: --dcss-end-8; } .dcss-ranked > .dcss-group:nth-child(8) > .dcss-group-total { anchor-name: --dcss-total-8; position-anchor: --dcss-end-8; right: anchor(left); }
.dcss-ranked > .dcss-bars > b:nth-child(8) { anchor-name: --dcss-bar-8; position-anchor: --dcss-total-8; top: calc((clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-1 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-2 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-3 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-4 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-5 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-6 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-7 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-9 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-10 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-11 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-12 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-13 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-14 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-15 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-16 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1)) * var(--dcss-band, 2px)); }
.dcss-ranked > .dcss-group:nth-child(9)::before { anchor-name: --dcss-end-9; } .dcss-ranked > .dcss-group:nth-child(9) > .dcss-group-total { anchor-name: --dcss-total-9; position-anchor: --dcss-end-9; right: anchor(left); }
.dcss-ranked > .dcss-bars > b:nth-child(9) { anchor-name: --dcss-bar-9; position-anchor: --dcss-total-9; top: calc((clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-1 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-2 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-3 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-4 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-5 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-6 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-7 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-8 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-10 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-11 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-12 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-13 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-14 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-15 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-16 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1)) * var(--dcss-band, 2px)); }
.dcss-ranked > .dcss-group:nth-child(10)::before { anchor-name: --dcss-end-10; } .dcss-ranked > .dcss-group:nth-child(10) > .dcss-group-total { anchor-name: --dcss-total-10; position-anchor: --dcss-end-10; right: anchor(left); }
.dcss-ranked > .dcss-bars > b:nth-child(10) { anchor-name: --dcss-bar-10; position-anchor: --dcss-total-10; top: calc((clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-1 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-2 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-3 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-4 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-5 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-6 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-7 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-8 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-9 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-11 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-12 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-13 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-14 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-15 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-16 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1)) * var(--dcss-band, 2px)); }
.dcss-ranked > .dcss-group:nth-child(11)::before { anchor-name: --dcss-end-11; } .dcss-ranked > .dcss-group:nth-child(11) > .dcss-group-total { anchor-name: --dcss-total-11; position-anchor: --dcss-end-11; right: anchor(left); }
.dcss-ranked > .dcss-bars > b:nth-child(11) { anchor-name: --dcss-bar-11; position-anchor: --dcss-total-11; top: calc((clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-1 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-2 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-3 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-4 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-5 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-6 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-7 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-8 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-9 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-10 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-12 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-13 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-14 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-15 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-16 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1)) * var(--dcss-band, 2px)); }
.dcss-ranked > .dcss-group:nth-child(12)::before { anchor-name: --dcss-end-12; } .dcss-ranked > .dcss-group:nth-child(12) > .dcss-group-total { anchor-name: --dcss-total-12; position-anchor: --dcss-end-12; right: anchor(left); }
.dcss-ranked > .dcss-bars > b:nth-child(12) { anchor-name: --dcss-bar-12; position-anchor: --dcss-total-12; top: calc((clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-1 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-2 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-3 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-4 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-5 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-6 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-7 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-8 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-9 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-10 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-11 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-13 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-14 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-15 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-16 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1)) * var(--dcss-band, 2px)); }
.dcss-ranked > .dcss-group:nth-child(13)::before { anchor-name: --dcss-end-13; } .dcss-ranked > .dcss-group:nth-child(13) > .dcss-group-total { anchor-name: --dcss-total-13; position-anchor: --dcss-end-13; right: anchor(left); }
.dcss-ranked > .dcss-bars > b:nth-child(13) { anchor-name: --dcss-bar-13; position-anchor: --dcss-total-13; top: calc((clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-1 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-2 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-3 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-4 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-5 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-6 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-7 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-8 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-9 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-10 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-11 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-12 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-14 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-15 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-16 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1)) * var(--dcss-band, 2px)); }
.dcss-ranked > .dcss-group:nth-child(14)::before { anchor-name: --dcss-end-14; } .dcss-ranked > .dcss-group:nth-child(14) > .dcss-group-total { anchor-name: --dcss-total-14; position-anchor: --dcss-end-14; right: anchor(left); }
.dcss-ranked > .dcss-bars > b:nth-child(14) { anchor-name: --dcss-bar-14; position-anchor: --dcss-total-14; top: calc((clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-1 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-2 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-3 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-4 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-5 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-6 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-7 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-8 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-9 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-10 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-11 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-12 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-13 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-15 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-16 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1)) * var(--dcss-band, 2px)); }
.dcss-ranked > .dcss-group:nth-child(15)::before { anchor-name: --dcss-end-15; } .dcss-ranked > .dcss-group:nth-child(15) > .dcss-group-total { anchor-name: --dcss-total-15; position-anchor: --dcss-end-15; right: anchor(left); }
.dcss-ranked > .dcss-bars > b:nth-child(15) { anchor-name: --dcss-bar-15; position-anchor: --dcss-total-15; top: calc((clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-1 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-2 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-3 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-4 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-5 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-6 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-7 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-8 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-9 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-10 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-11 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-12 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-13 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-14 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-16 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128, 1)) * var(--dcss-band, 2px)); }
.dcss-ranked > .dcss-group:nth-child(16)::before { anchor-name: --dcss-end-16; } .dcss-ranked > .dcss-group:nth-child(16) > .dcss-group-total { anchor-name: --dcss-total-16; position-anchor: --dcss-end-16; right: anchor(left); }
.dcss-ranked > .dcss-bars > b:nth-child(16) { anchor-name: --dcss-bar-16; position-anchor: --dcss-total-16; top: calc((clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-1 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-2 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-3 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-4 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-5 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-6 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-7 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-8 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-9 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-10 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-11 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-12 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-13 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-14 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-15 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + 1, 1)) * var(--dcss-band, 2px)); }
.dcss-ranked.dcss-wide > .dcss-bars > b { top: calc((clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-1 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + clamp(0, sibling-index() - 1, 1), 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-2 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + clamp(0, sibling-index() - 2, 1), 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-3 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + clamp(0, sibling-index() - 3, 1), 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-4 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + clamp(0, sibling-index() - 4, 1), 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-5 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + clamp(0, sibling-index() - 5, 1), 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-6 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + clamp(0, sibling-index() - 6, 1), 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-7 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + clamp(0, sibling-index() - 7, 1), 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-8 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + clamp(0, sibling-index() - 8, 1), 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-9 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + clamp(0, sibling-index() - 9, 1), 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-10 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + clamp(0, sibling-index() - 10, 1), 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-11 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + clamp(0, sibling-index() - 11, 1), 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-12 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + clamp(0, sibling-index() - 12, 1), 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-13 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + clamp(0, sibling-index() - 13, 1), 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-14 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + clamp(0, sibling-index() - 14, 1), 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-15 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + clamp(0, sibling-index() - 15, 1), 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-16 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + clamp(0, sibling-index() - 16, 1), 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-17 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + clamp(0, sibling-index() - 17, 1), 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-18 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + clamp(0, sibling-index() - 18, 1), 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-19 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + clamp(0, sibling-index() - 19, 1), 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-20 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + clamp(0, sibling-index() - 20, 1), 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-21 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + clamp(0, sibling-index() - 21, 1), 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-22 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + clamp(0, sibling-index() - 22, 1), 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-23 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + clamp(0, sibling-index() - 23, 1), 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-24 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + clamp(0, sibling-index() - 24, 1), 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-25 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + clamp(0, sibling-index() - 25, 1), 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-26 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + clamp(0, sibling-index() - 26, 1), 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-27 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + clamp(0, sibling-index() - 27, 1), 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-28 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + clamp(0, sibling-index() - 28, 1), 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-29 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + clamp(0, sibling-index() - 29, 1), 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-30 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + clamp(0, sibling-index() - 30, 1), 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-31 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + clamp(0, sibling-index() - 31, 1), 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-total-32 width, var(--dcss-p-rn)) - anchor-size(width)) / 1px * 128 + clamp(0, sibling-index() - 32, 1), 1)) * var(--dcss-band, 2px)); }
.dcss-ranked > .dcss-labels { display: contents !important; }
.dcss-ranked > .dcss-labels > b { position: absolute !important; right: calc(100% + var(--dcss-gap, 0px)); margin: 0; padding: 0 !important; border: 0; }
.dcss-ranked > .dcss-labels > b:nth-child(1) { top: anchor(--dcss-bar-1 top); }
.dcss-ranked > .dcss-labels > b:nth-child(2) { top: anchor(--dcss-bar-2 top); }
.dcss-ranked > .dcss-labels > b:nth-child(3) { top: anchor(--dcss-bar-3 top); }
.dcss-ranked > .dcss-labels > b:nth-child(4) { top: anchor(--dcss-bar-4 top); }
.dcss-ranked > .dcss-labels > b:nth-child(5) { top: anchor(--dcss-bar-5 top); }
.dcss-ranked > .dcss-labels > b:nth-child(6) { top: anchor(--dcss-bar-6 top); }
.dcss-ranked > .dcss-labels > b:nth-child(7) { top: anchor(--dcss-bar-7 top); }
.dcss-ranked > .dcss-labels > b:nth-child(8) { top: anchor(--dcss-bar-8 top); }
.dcss-ranked > .dcss-labels > b:nth-child(9) { top: anchor(--dcss-bar-9 top); }
.dcss-ranked > .dcss-labels > b:nth-child(10) { top: anchor(--dcss-bar-10 top); }
.dcss-ranked > .dcss-labels > b:nth-child(11) { top: anchor(--dcss-bar-11 top); }
.dcss-ranked > .dcss-labels > b:nth-child(12) { top: anchor(--dcss-bar-12 top); }
.dcss-ranked > .dcss-labels > b:nth-child(13) { top: anchor(--dcss-bar-13 top); }
.dcss-ranked > .dcss-labels > b:nth-child(14) { top: anchor(--dcss-bar-14 top); }
.dcss-ranked > .dcss-labels > b:nth-child(15) { top: anchor(--dcss-bar-15 top); }
.dcss-ranked > .dcss-labels > b:nth-child(16) { top: anchor(--dcss-bar-16 top); }
.dcss-ranked.dcss-bin-max { display: grid; grid-auto-columns: max-content; grid-template-rows: 1px 0; justify-content: start; }
.dcss-ranked.dcss-bin-max > i { width: calc(max(0, var(--dcss-n)) * 1px); height: 0; margin: 0 0 0 calc((var(--dcss-off, 65536) + min(0, var(--dcss-n))) * 1px); grid-row-start: 1; grid-column-start: calc(var(--dcss-rk-i) * var(--dcss-bin) + (1 - var(--dcss-rk-i)) * 34); }
.dcss-ranked.dcss-bin-max > .dcss-group::before { grid-row-start: 2; grid-column-start: sibling-index(); width: auto; height: 0; }
.dcss-ranked.dcss-bin-max > .dcss-group::after { content: none; }
.dcss-ranked.dcss-bin-max > .dcss-group > .dcss-group-total { right: calc(100% - (anchor(left) - anchor(right)) + var(--dcss-off, 65536) * 1px - (1 - sign(anchor-size(width))) * (1 - var(--dcss-desc, 0)) * 16777216px); }
.dcss-ranked.dcss-bin-max > .dcss-bars > b { left: calc(min(anchor(left) + var(--dcss-off, 65536) * 1px, anchor(right)) * (1 - max(1 - sign(anchor-size(width)), sign(max(0px, anchor-size(width) - 8388608px)))));
  right: calc(min(anchor(left) - var(--dcss-off, 65536) * 1px, anchor(right)) + max(1 - sign(anchor-size(width)), sign(max(0px, anchor-size(width) - 8388608px))) * 33554432px); }
.dcss-ranked.dcss-bin-max > i > b { left: 0; }
.dcss-ranked > i > b { position: absolute !important; height: var(--dcss-band, 2px); width: inherit; margin: 0; padding: 0 !important; border: 0;
  top: calc(anchor(--dcss-bar-1 top, 0px) * max(0, 1 - abs(var(--dcss-bin) - 1)) + anchor(--dcss-bar-2 top, 0px) * max(0, 1 - abs(var(--dcss-bin) - 2)) + anchor(--dcss-bar-3 top, 0px) * max(0, 1 - abs(var(--dcss-bin) - 3)) + anchor(--dcss-bar-4 top, 0px) * max(0, 1 - abs(var(--dcss-bin) - 4)) + anchor(--dcss-bar-5 top, 0px) * max(0, 1 - abs(var(--dcss-bin) - 5)) + anchor(--dcss-bar-6 top, 0px) * max(0, 1 - abs(var(--dcss-bin) - 6)) + anchor(--dcss-bar-7 top, 0px) * max(0, 1 - abs(var(--dcss-bin) - 7)) + anchor(--dcss-bar-8 top, 0px) * max(0, 1 - abs(var(--dcss-bin) - 8)) + anchor(--dcss-bar-9 top, 0px) * max(0, 1 - abs(var(--dcss-bin) - 9)) + anchor(--dcss-bar-10 top, 0px) * max(0, 1 - abs(var(--dcss-bin) - 10)) + anchor(--dcss-bar-11 top, 0px) * max(0, 1 - abs(var(--dcss-bin) - 11)) + anchor(--dcss-bar-12 top, 0px) * max(0, 1 - abs(var(--dcss-bin) - 12)) + anchor(--dcss-bar-13 top, 0px) * max(0, 1 - abs(var(--dcss-bin) - 13)) + anchor(--dcss-bar-14 top, 0px) * max(0, 1 - abs(var(--dcss-bin) - 14)) + anchor(--dcss-bar-15 top, 0px) * max(0, 1 - abs(var(--dcss-bin) - 15)) + anchor(--dcss-bar-16 top, 0px) * max(0, 1 - abs(var(--dcss-bin) - 16))); }
.dcss-ranked.dcss-wide > i > b { top: calc(anchor(--dcss-bar-1 top, 0px) * max(0, 1 - abs(var(--dcss-bin) - 1)) + anchor(--dcss-bar-2 top, 0px) * max(0, 1 - abs(var(--dcss-bin) - 2)) + anchor(--dcss-bar-3 top, 0px) * max(0, 1 - abs(var(--dcss-bin) - 3)) + anchor(--dcss-bar-4 top, 0px) * max(0, 1 - abs(var(--dcss-bin) - 4)) + anchor(--dcss-bar-5 top, 0px) * max(0, 1 - abs(var(--dcss-bin) - 5)) + anchor(--dcss-bar-6 top, 0px) * max(0, 1 - abs(var(--dcss-bin) - 6)) + anchor(--dcss-bar-7 top, 0px) * max(0, 1 - abs(var(--dcss-bin) - 7)) + anchor(--dcss-bar-8 top, 0px) * max(0, 1 - abs(var(--dcss-bin) - 8)) + anchor(--dcss-bar-9 top, 0px) * max(0, 1 - abs(var(--dcss-bin) - 9)) + anchor(--dcss-bar-10 top, 0px) * max(0, 1 - abs(var(--dcss-bin) - 10)) + anchor(--dcss-bar-11 top, 0px) * max(0, 1 - abs(var(--dcss-bin) - 11)) + anchor(--dcss-bar-12 top, 0px) * max(0, 1 - abs(var(--dcss-bin) - 12)) + anchor(--dcss-bar-13 top, 0px) * max(0, 1 - abs(var(--dcss-bin) - 13)) + anchor(--dcss-bar-14 top, 0px) * max(0, 1 - abs(var(--dcss-bin) - 14)) + anchor(--dcss-bar-15 top, 0px) * max(0, 1 - abs(var(--dcss-bin) - 15)) + anchor(--dcss-bar-16 top, 0px) * max(0, 1 - abs(var(--dcss-bin) - 16)) + anchor(--dcss-bar-17 top, 0px) * max(0, 1 - abs(var(--dcss-bin) - 17)) + anchor(--dcss-bar-18 top, 0px) * max(0, 1 - abs(var(--dcss-bin) - 18)) + anchor(--dcss-bar-19 top, 0px) * max(0, 1 - abs(var(--dcss-bin) - 19)) + anchor(--dcss-bar-20 top, 0px) * max(0, 1 - abs(var(--dcss-bin) - 20)) + anchor(--dcss-bar-21 top, 0px) * max(0, 1 - abs(var(--dcss-bin) - 21)) + anchor(--dcss-bar-22 top, 0px) * max(0, 1 - abs(var(--dcss-bin) - 22)) + anchor(--dcss-bar-23 top, 0px) * max(0, 1 - abs(var(--dcss-bin) - 23)) + anchor(--dcss-bar-24 top, 0px) * max(0, 1 - abs(var(--dcss-bin) - 24)) + anchor(--dcss-bar-25 top, 0px) * max(0, 1 - abs(var(--dcss-bin) - 25)) + anchor(--dcss-bar-26 top, 0px) * max(0, 1 - abs(var(--dcss-bin) - 26)) + anchor(--dcss-bar-27 top, 0px) * max(0, 1 - abs(var(--dcss-bin) - 27)) + anchor(--dcss-bar-28 top, 0px) * max(0, 1 - abs(var(--dcss-bin) - 28)) + anchor(--dcss-bar-29 top, 0px) * max(0, 1 - abs(var(--dcss-bin) - 29)) + anchor(--dcss-bar-30 top, 0px) * max(0, 1 - abs(var(--dcss-bin) - 30)) + anchor(--dcss-bar-31 top, 0px) * max(0, 1 - abs(var(--dcss-bin) - 31)) + anchor(--dcss-bar-32 top, 0px) * max(0, 1 - abs(var(--dcss-bin) - 32))); }
@property --dcss-dcss-ff{syntax:'<number>';inherits:true;initial-value:0}:root{--dcss-dcss-ff:calc((1 - ((16777216 + 1) - 16777216)))}@container style(--dcss-dcss-ff: 0){
@container style(--dcss-bin: 1) { .dcss-ranked > i > b { top: anchor(--dcss-bar-1 top); } }
@container style(--dcss-bin: 2) { .dcss-ranked > i > b { top: anchor(--dcss-bar-2 top); } }
@container style(--dcss-bin: 3) { .dcss-ranked > i > b { top: anchor(--dcss-bar-3 top); } }
@container style(--dcss-bin: 4) { .dcss-ranked > i > b { top: anchor(--dcss-bar-4 top); } }
@container style(--dcss-bin: 5) { .dcss-ranked > i > b { top: anchor(--dcss-bar-5 top); } }
@container style(--dcss-bin: 6) { .dcss-ranked > i > b { top: anchor(--dcss-bar-6 top); } }
@container style(--dcss-bin: 7) { .dcss-ranked > i > b { top: anchor(--dcss-bar-7 top); } }
@container style(--dcss-bin: 8) { .dcss-ranked > i > b { top: anchor(--dcss-bar-8 top); } }
@container style(--dcss-bin: 9) { .dcss-ranked > i > b { top: anchor(--dcss-bar-9 top); } }
@container style(--dcss-bin: 10) { .dcss-ranked > i > b { top: anchor(--dcss-bar-10 top); } }
@container style(--dcss-bin: 11) { .dcss-ranked > i > b { top: anchor(--dcss-bar-11 top); } }
@container style(--dcss-bin: 12) { .dcss-ranked > i > b { top: anchor(--dcss-bar-12 top); } }
@container style(--dcss-bin: 13) { .dcss-ranked > i > b { top: anchor(--dcss-bar-13 top); } }
@container style(--dcss-bin: 14) { .dcss-ranked > i > b { top: anchor(--dcss-bar-14 top); } }
@container style(--dcss-bin: 15) { .dcss-ranked > i > b { top: anchor(--dcss-bar-15 top); } }
@container style(--dcss-bin: 16) { .dcss-ranked > i > b { top: anchor(--dcss-bar-16 top); } }
}
@property --dcss-sk-c0 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-c1 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-c2 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-c3 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-c4 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-c5 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-c6 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-c7 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-c8 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-c9 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-c10 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-c11 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-c12 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-c13 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-c14 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-c15 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p1-0 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p2-0 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p2-1 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p3-0 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p3-1 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p3-2 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p4-0 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p4-1 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p4-2 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p4-3 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p5-0 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p5-1 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p5-2 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p5-3 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p5-4 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p6-0 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p6-1 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p6-2 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p6-3 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p6-4 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p6-5 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p7-0 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p7-1 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p7-2 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p7-3 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p7-4 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p7-5 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p7-6 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p8-0 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p8-1 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p8-2 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p8-3 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p8-4 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p8-5 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p8-6 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p8-7 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p9-0 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p9-1 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p9-2 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p9-3 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p9-4 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p9-5 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p9-6 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p9-7 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p9-8 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p10-0 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p10-1 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p10-2 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p10-3 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p10-4 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p10-5 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p10-6 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p10-7 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p10-8 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p10-9 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p11-0 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p11-1 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p11-2 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p11-3 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p11-4 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p11-5 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p11-6 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p11-7 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p11-8 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p11-9 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p11-10 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p12-0 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p12-1 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p12-2 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p12-3 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p12-4 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p12-5 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p12-6 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p12-7 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p12-8 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p12-9 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p12-10 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p12-11 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p13-0 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p13-1 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p13-2 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p13-3 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p13-4 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p13-5 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p13-6 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p13-7 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p13-8 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p13-9 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p13-10 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p13-11 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p13-12 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p14-0 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p14-1 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p14-2 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p14-3 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p14-4 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p14-5 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p14-6 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p14-7 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p14-8 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p14-9 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p14-10 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p14-11 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p14-12 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p14-13 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p15-0 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p15-1 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p15-2 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p15-3 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p15-4 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p15-5 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p15-6 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p15-7 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p15-8 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p15-9 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p15-10 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p15-11 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p15-12 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p15-13 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-p15-14 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-k0 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-k1 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-k2 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-k3 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-k4 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-k5 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-k6 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-k7 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-k8 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-k9 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-k10 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-k11 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-k12 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-k13 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-k14 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-k15 { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-sk-r0 { syntax: '<number>'; inherits: true; initial-value: 0; }
@property --dcss-sk-r1 { syntax: '<number>'; inherits: true; initial-value: 0; }
@property --dcss-sk-r2 { syntax: '<number>'; inherits: true; initial-value: 0; }
@property --dcss-sk-r3 { syntax: '<number>'; inherits: true; initial-value: 0; }
@property --dcss-sk-g { syntax: '<integer>'; inherits: true; initial-value: 0; }
@property --dcss-sk-gk { syntax: '<integer>'; inherits: true; initial-value: 0; }
@property --dcss-sk-gj { syntax: '<integer>'; inherits: true; initial-value: 0; }
.dcss-ranked.dcss-copy > .dcss-group::before { flex: 1 0 0; }
.dcss-ranked.dcss-copy > i { order: calc(var(--dcss-rk-i) * var(--dcss-p-rk) * (var(--dcss-bin) - 1) + (1 - var(--dcss-rk-i)) * var(--dcss-p-rk) * 33); }
.dcss-ranked.dcss-copy > .dcss-ranks { position: absolute !important; right: 100%; bottom: 100%; container-type: size; margin: 0; padding: 0 !important; border: 0; width: calc(((clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-1 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-2 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-1 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-3 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-1 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-4 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-1 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-5 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-1 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-6 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-1 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-7 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-1 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-8 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-1 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-9 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-1 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-10 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-1 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-11 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-1 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-12 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-1 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-13 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-1 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-14 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-1 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-15 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-1 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-16 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1)) * 1 + (clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-2 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-3 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-2 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-4 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-2 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-5 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-2 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-6 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-2 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-7 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-2 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-8 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-2 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-9 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-2 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-10 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-2 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-11 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-2 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-12 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-2 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-13 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-2 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-14 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-2 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-15 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-2 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-16 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1)) * 16 + (clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-3 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-4 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-3 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-5 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-3 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-6 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-3 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-7 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-3 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-8 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-3 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-9 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-3 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-10 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-3 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-11 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-3 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-12 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-3 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-13 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-3 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-14 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-3 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-15 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-3 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-16 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1)) * 240 + (clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-4 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-5 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-4 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-6 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-4 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-7 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-4 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-8 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-4 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-9 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-4 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-10 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-4 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-11 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-4 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-12 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-4 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-13 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-4 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-14 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-4 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-15 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-4 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-16 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1)) * 3360 + (clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-5 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-6 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-5 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-7 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-5 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-8 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-5 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-9 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-5 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-10 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-5 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-11 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-5 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-12 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-5 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-13 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-5 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-14 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-5 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-15 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-5 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-16 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1)) * 43680 + (clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-6 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-7 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-6 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-8 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-6 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-9 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-6 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-10 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-6 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-11 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-6 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-12 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-6 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-13 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-6 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-14 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-6 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-15 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-6 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-16 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1)) * 524160) * 1px); height: calc(((clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-7 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-8 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-7 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-9 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-7 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-10 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-7 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-11 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-7 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-12 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-7 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-13 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-7 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-14 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-7 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-15 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-7 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-16 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1)) * 1 + (clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-8 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-9 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-8 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-10 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-8 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-11 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-8 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-12 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-8 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-13 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-8 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-14 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-8 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-15 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-8 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-16 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1)) * 10 + (clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-9 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-10 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-9 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-11 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-9 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-12 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-9 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-13 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-9 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-14 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-9 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-15 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-9 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-16 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1)) * 90 + (clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-10 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-11 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-10 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-12 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-10 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-13 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-10 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-14 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-10 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-15 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-10 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-16 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1)) * 720 + (clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-11 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-12 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-11 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-13 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-11 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-14 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-11 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-15 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-11 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-16 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1)) * 5040 + (clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-12 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-13 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-12 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-14 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-12 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-15 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-12 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-16 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1)) * 30240 + (clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-13 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-14 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-13 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-15 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-13 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-16 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1)) * 151200 + (clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-14 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-15 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1) + clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-14 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-16 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1)) * 604800 + (clamp(0, var(--dcss-p-rd) * (anchor-size(--dcss-end-15 width, calc(var(--dcss-p-rd) * 33554432px)) - anchor-size(--dcss-end-16 width, calc(var(--dcss-p-rd) * 33554432px))) / 1px * 128, 1)) * 1814400) * 1px); }
.dcss-ranks > b { display: block !important; margin: 0; padding: 0 !important; border: 0;
  --dcss-sk-c0: calc(mod(round(down, round(100cqw, 1px) / 1, 1px), 16px) / 1px);
  --dcss-sk-c1: calc(mod(round(down, round(100cqw, 1px) / 16, 1px), 15px) / 1px);
  --dcss-sk-c2: calc(mod(round(down, round(100cqw, 1px) / 240, 1px), 14px) / 1px);
  --dcss-sk-c3: calc(mod(round(down, round(100cqw, 1px) / 3360, 1px), 13px) / 1px);
  --dcss-sk-c4: calc(mod(round(down, round(100cqw, 1px) / 43680, 1px), 12px) / 1px);
  --dcss-sk-c5: calc(mod(round(down, round(100cqw, 1px) / 524160, 1px), 11px) / 1px);
  --dcss-sk-c6: calc(mod(round(down, round(100cqh, 1px) / 1, 1px), 10px) / 1px);
  --dcss-sk-c7: calc(mod(round(down, round(100cqh, 1px) / 10, 1px), 9px) / 1px);
  --dcss-sk-c8: calc(mod(round(down, round(100cqh, 1px) / 90, 1px), 8px) / 1px);
  --dcss-sk-c9: calc(mod(round(down, round(100cqh, 1px) / 720, 1px), 7px) / 1px);
  --dcss-sk-c10: calc(mod(round(down, round(100cqh, 1px) / 5040, 1px), 6px) / 1px);
  --dcss-sk-c11: calc(mod(round(down, round(100cqh, 1px) / 30240, 1px), 5px) / 1px);
  --dcss-sk-c12: calc(mod(round(down, round(100cqh, 1px) / 151200, 1px), 4px) / 1px);
  --dcss-sk-c13: calc(mod(round(down, round(100cqh, 1px) / 604800, 1px), 3px) / 1px);
  --dcss-sk-c14: calc(mod(round(down, round(100cqh, 1px) / 1814400, 1px), 2px) / 1px);
  --dcss-sk-c15: 0;
  
  --dcss-sk-p1-0: calc(var(--dcss-sk-c1) + clamp(0, var(--dcss-sk-c1) - var(--dcss-sk-c0) + 1, 1));
  --dcss-sk-p2-1: calc(var(--dcss-sk-c2) + clamp(0, var(--dcss-sk-c2) - var(--dcss-sk-c1) + 1, 1)); --dcss-sk-p2-0: calc(var(--dcss-sk-p2-1) + clamp(0, var(--dcss-sk-p2-1) - var(--dcss-sk-c0) + 1, 1));
  --dcss-sk-p3-2: calc(var(--dcss-sk-c3) + clamp(0, var(--dcss-sk-c3) - var(--dcss-sk-c2) + 1, 1)); --dcss-sk-p3-1: calc(var(--dcss-sk-p3-2) + clamp(0, var(--dcss-sk-p3-2) - var(--dcss-sk-c1) + 1, 1)); --dcss-sk-p3-0: calc(var(--dcss-sk-p3-1) + clamp(0, var(--dcss-sk-p3-1) - var(--dcss-sk-c0) + 1, 1));
  --dcss-sk-p4-3: calc(var(--dcss-sk-c4) + clamp(0, var(--dcss-sk-c4) - var(--dcss-sk-c3) + 1, 1)); --dcss-sk-p4-2: calc(var(--dcss-sk-p4-3) + clamp(0, var(--dcss-sk-p4-3) - var(--dcss-sk-c2) + 1, 1)); --dcss-sk-p4-1: calc(var(--dcss-sk-p4-2) + clamp(0, var(--dcss-sk-p4-2) - var(--dcss-sk-c1) + 1, 1)); --dcss-sk-p4-0: calc(var(--dcss-sk-p4-1) + clamp(0, var(--dcss-sk-p4-1) - var(--dcss-sk-c0) + 1, 1));
  --dcss-sk-p5-4: calc(var(--dcss-sk-c5) + clamp(0, var(--dcss-sk-c5) - var(--dcss-sk-c4) + 1, 1)); --dcss-sk-p5-3: calc(var(--dcss-sk-p5-4) + clamp(0, var(--dcss-sk-p5-4) - var(--dcss-sk-c3) + 1, 1)); --dcss-sk-p5-2: calc(var(--dcss-sk-p5-3) + clamp(0, var(--dcss-sk-p5-3) - var(--dcss-sk-c2) + 1, 1)); --dcss-sk-p5-1: calc(var(--dcss-sk-p5-2) + clamp(0, var(--dcss-sk-p5-2) - var(--dcss-sk-c1) + 1, 1)); --dcss-sk-p5-0: calc(var(--dcss-sk-p5-1) + clamp(0, var(--dcss-sk-p5-1) - var(--dcss-sk-c0) + 1, 1));
  --dcss-sk-p6-5: calc(var(--dcss-sk-c6) + clamp(0, var(--dcss-sk-c6) - var(--dcss-sk-c5) + 1, 1)); --dcss-sk-p6-4: calc(var(--dcss-sk-p6-5) + clamp(0, var(--dcss-sk-p6-5) - var(--dcss-sk-c4) + 1, 1)); --dcss-sk-p6-3: calc(var(--dcss-sk-p6-4) + clamp(0, var(--dcss-sk-p6-4) - var(--dcss-sk-c3) + 1, 1)); --dcss-sk-p6-2: calc(var(--dcss-sk-p6-3) + clamp(0, var(--dcss-sk-p6-3) - var(--dcss-sk-c2) + 1, 1)); --dcss-sk-p6-1: calc(var(--dcss-sk-p6-2) + clamp(0, var(--dcss-sk-p6-2) - var(--dcss-sk-c1) + 1, 1)); --dcss-sk-p6-0: calc(var(--dcss-sk-p6-1) + clamp(0, var(--dcss-sk-p6-1) - var(--dcss-sk-c0) + 1, 1));
  --dcss-sk-p7-6: calc(var(--dcss-sk-c7) + clamp(0, var(--dcss-sk-c7) - var(--dcss-sk-c6) + 1, 1)); --dcss-sk-p7-5: calc(var(--dcss-sk-p7-6) + clamp(0, var(--dcss-sk-p7-6) - var(--dcss-sk-c5) + 1, 1)); --dcss-sk-p7-4: calc(var(--dcss-sk-p7-5) + clamp(0, var(--dcss-sk-p7-5) - var(--dcss-sk-c4) + 1, 1)); --dcss-sk-p7-3: calc(var(--dcss-sk-p7-4) + clamp(0, var(--dcss-sk-p7-4) - var(--dcss-sk-c3) + 1, 1)); --dcss-sk-p7-2: calc(var(--dcss-sk-p7-3) + clamp(0, var(--dcss-sk-p7-3) - var(--dcss-sk-c2) + 1, 1)); --dcss-sk-p7-1: calc(var(--dcss-sk-p7-2) + clamp(0, var(--dcss-sk-p7-2) - var(--dcss-sk-c1) + 1, 1)); --dcss-sk-p7-0: calc(var(--dcss-sk-p7-1) + clamp(0, var(--dcss-sk-p7-1) - var(--dcss-sk-c0) + 1, 1));
  --dcss-sk-p8-7: calc(var(--dcss-sk-c8) + clamp(0, var(--dcss-sk-c8) - var(--dcss-sk-c7) + 1, 1)); --dcss-sk-p8-6: calc(var(--dcss-sk-p8-7) + clamp(0, var(--dcss-sk-p8-7) - var(--dcss-sk-c6) + 1, 1)); --dcss-sk-p8-5: calc(var(--dcss-sk-p8-6) + clamp(0, var(--dcss-sk-p8-6) - var(--dcss-sk-c5) + 1, 1)); --dcss-sk-p8-4: calc(var(--dcss-sk-p8-5) + clamp(0, var(--dcss-sk-p8-5) - var(--dcss-sk-c4) + 1, 1)); --dcss-sk-p8-3: calc(var(--dcss-sk-p8-4) + clamp(0, var(--dcss-sk-p8-4) - var(--dcss-sk-c3) + 1, 1)); --dcss-sk-p8-2: calc(var(--dcss-sk-p8-3) + clamp(0, var(--dcss-sk-p8-3) - var(--dcss-sk-c2) + 1, 1)); --dcss-sk-p8-1: calc(var(--dcss-sk-p8-2) + clamp(0, var(--dcss-sk-p8-2) - var(--dcss-sk-c1) + 1, 1)); --dcss-sk-p8-0: calc(var(--dcss-sk-p8-1) + clamp(0, var(--dcss-sk-p8-1) - var(--dcss-sk-c0) + 1, 1));
  --dcss-sk-p9-8: calc(var(--dcss-sk-c9) + clamp(0, var(--dcss-sk-c9) - var(--dcss-sk-c8) + 1, 1)); --dcss-sk-p9-7: calc(var(--dcss-sk-p9-8) + clamp(0, var(--dcss-sk-p9-8) - var(--dcss-sk-c7) + 1, 1)); --dcss-sk-p9-6: calc(var(--dcss-sk-p9-7) + clamp(0, var(--dcss-sk-p9-7) - var(--dcss-sk-c6) + 1, 1)); --dcss-sk-p9-5: calc(var(--dcss-sk-p9-6) + clamp(0, var(--dcss-sk-p9-6) - var(--dcss-sk-c5) + 1, 1)); --dcss-sk-p9-4: calc(var(--dcss-sk-p9-5) + clamp(0, var(--dcss-sk-p9-5) - var(--dcss-sk-c4) + 1, 1)); --dcss-sk-p9-3: calc(var(--dcss-sk-p9-4) + clamp(0, var(--dcss-sk-p9-4) - var(--dcss-sk-c3) + 1, 1)); --dcss-sk-p9-2: calc(var(--dcss-sk-p9-3) + clamp(0, var(--dcss-sk-p9-3) - var(--dcss-sk-c2) + 1, 1)); --dcss-sk-p9-1: calc(var(--dcss-sk-p9-2) + clamp(0, var(--dcss-sk-p9-2) - var(--dcss-sk-c1) + 1, 1)); --dcss-sk-p9-0: calc(var(--dcss-sk-p9-1) + clamp(0, var(--dcss-sk-p9-1) - var(--dcss-sk-c0) + 1, 1));
  --dcss-sk-p10-9: calc(var(--dcss-sk-c10) + clamp(0, var(--dcss-sk-c10) - var(--dcss-sk-c9) + 1, 1)); --dcss-sk-p10-8: calc(var(--dcss-sk-p10-9) + clamp(0, var(--dcss-sk-p10-9) - var(--dcss-sk-c8) + 1, 1)); --dcss-sk-p10-7: calc(var(--dcss-sk-p10-8) + clamp(0, var(--dcss-sk-p10-8) - var(--dcss-sk-c7) + 1, 1)); --dcss-sk-p10-6: calc(var(--dcss-sk-p10-7) + clamp(0, var(--dcss-sk-p10-7) - var(--dcss-sk-c6) + 1, 1)); --dcss-sk-p10-5: calc(var(--dcss-sk-p10-6) + clamp(0, var(--dcss-sk-p10-6) - var(--dcss-sk-c5) + 1, 1)); --dcss-sk-p10-4: calc(var(--dcss-sk-p10-5) + clamp(0, var(--dcss-sk-p10-5) - var(--dcss-sk-c4) + 1, 1)); --dcss-sk-p10-3: calc(var(--dcss-sk-p10-4) + clamp(0, var(--dcss-sk-p10-4) - var(--dcss-sk-c3) + 1, 1)); --dcss-sk-p10-2: calc(var(--dcss-sk-p10-3) + clamp(0, var(--dcss-sk-p10-3) - var(--dcss-sk-c2) + 1, 1)); --dcss-sk-p10-1: calc(var(--dcss-sk-p10-2) + clamp(0, var(--dcss-sk-p10-2) - var(--dcss-sk-c1) + 1, 1)); --dcss-sk-p10-0: calc(var(--dcss-sk-p10-1) + clamp(0, var(--dcss-sk-p10-1) - var(--dcss-sk-c0) + 1, 1));
  --dcss-sk-p11-10: calc(var(--dcss-sk-c11) + clamp(0, var(--dcss-sk-c11) - var(--dcss-sk-c10) + 1, 1)); --dcss-sk-p11-9: calc(var(--dcss-sk-p11-10) + clamp(0, var(--dcss-sk-p11-10) - var(--dcss-sk-c9) + 1, 1)); --dcss-sk-p11-8: calc(var(--dcss-sk-p11-9) + clamp(0, var(--dcss-sk-p11-9) - var(--dcss-sk-c8) + 1, 1)); --dcss-sk-p11-7: calc(var(--dcss-sk-p11-8) + clamp(0, var(--dcss-sk-p11-8) - var(--dcss-sk-c7) + 1, 1)); --dcss-sk-p11-6: calc(var(--dcss-sk-p11-7) + clamp(0, var(--dcss-sk-p11-7) - var(--dcss-sk-c6) + 1, 1)); --dcss-sk-p11-5: calc(var(--dcss-sk-p11-6) + clamp(0, var(--dcss-sk-p11-6) - var(--dcss-sk-c5) + 1, 1)); --dcss-sk-p11-4: calc(var(--dcss-sk-p11-5) + clamp(0, var(--dcss-sk-p11-5) - var(--dcss-sk-c4) + 1, 1)); --dcss-sk-p11-3: calc(var(--dcss-sk-p11-4) + clamp(0, var(--dcss-sk-p11-4) - var(--dcss-sk-c3) + 1, 1)); --dcss-sk-p11-2: calc(var(--dcss-sk-p11-3) + clamp(0, var(--dcss-sk-p11-3) - var(--dcss-sk-c2) + 1, 1)); --dcss-sk-p11-1: calc(var(--dcss-sk-p11-2) + clamp(0, var(--dcss-sk-p11-2) - var(--dcss-sk-c1) + 1, 1)); --dcss-sk-p11-0: calc(var(--dcss-sk-p11-1) + clamp(0, var(--dcss-sk-p11-1) - var(--dcss-sk-c0) + 1, 1));
  --dcss-sk-p12-11: calc(var(--dcss-sk-c12) + clamp(0, var(--dcss-sk-c12) - var(--dcss-sk-c11) + 1, 1)); --dcss-sk-p12-10: calc(var(--dcss-sk-p12-11) + clamp(0, var(--dcss-sk-p12-11) - var(--dcss-sk-c10) + 1, 1)); --dcss-sk-p12-9: calc(var(--dcss-sk-p12-10) + clamp(0, var(--dcss-sk-p12-10) - var(--dcss-sk-c9) + 1, 1)); --dcss-sk-p12-8: calc(var(--dcss-sk-p12-9) + clamp(0, var(--dcss-sk-p12-9) - var(--dcss-sk-c8) + 1, 1)); --dcss-sk-p12-7: calc(var(--dcss-sk-p12-8) + clamp(0, var(--dcss-sk-p12-8) - var(--dcss-sk-c7) + 1, 1)); --dcss-sk-p12-6: calc(var(--dcss-sk-p12-7) + clamp(0, var(--dcss-sk-p12-7) - var(--dcss-sk-c6) + 1, 1)); --dcss-sk-p12-5: calc(var(--dcss-sk-p12-6) + clamp(0, var(--dcss-sk-p12-6) - var(--dcss-sk-c5) + 1, 1)); --dcss-sk-p12-4: calc(var(--dcss-sk-p12-5) + clamp(0, var(--dcss-sk-p12-5) - var(--dcss-sk-c4) + 1, 1)); --dcss-sk-p12-3: calc(var(--dcss-sk-p12-4) + clamp(0, var(--dcss-sk-p12-4) - var(--dcss-sk-c3) + 1, 1)); --dcss-sk-p12-2: calc(var(--dcss-sk-p12-3) + clamp(0, var(--dcss-sk-p12-3) - var(--dcss-sk-c2) + 1, 1)); --dcss-sk-p12-1: calc(var(--dcss-sk-p12-2) + clamp(0, var(--dcss-sk-p12-2) - var(--dcss-sk-c1) + 1, 1)); --dcss-sk-p12-0: calc(var(--dcss-sk-p12-1) + clamp(0, var(--dcss-sk-p12-1) - var(--dcss-sk-c0) + 1, 1));
  --dcss-sk-p13-12: calc(var(--dcss-sk-c13) + clamp(0, var(--dcss-sk-c13) - var(--dcss-sk-c12) + 1, 1)); --dcss-sk-p13-11: calc(var(--dcss-sk-p13-12) + clamp(0, var(--dcss-sk-p13-12) - var(--dcss-sk-c11) + 1, 1)); --dcss-sk-p13-10: calc(var(--dcss-sk-p13-11) + clamp(0, var(--dcss-sk-p13-11) - var(--dcss-sk-c10) + 1, 1)); --dcss-sk-p13-9: calc(var(--dcss-sk-p13-10) + clamp(0, var(--dcss-sk-p13-10) - var(--dcss-sk-c9) + 1, 1)); --dcss-sk-p13-8: calc(var(--dcss-sk-p13-9) + clamp(0, var(--dcss-sk-p13-9) - var(--dcss-sk-c8) + 1, 1)); --dcss-sk-p13-7: calc(var(--dcss-sk-p13-8) + clamp(0, var(--dcss-sk-p13-8) - var(--dcss-sk-c7) + 1, 1)); --dcss-sk-p13-6: calc(var(--dcss-sk-p13-7) + clamp(0, var(--dcss-sk-p13-7) - var(--dcss-sk-c6) + 1, 1)); --dcss-sk-p13-5: calc(var(--dcss-sk-p13-6) + clamp(0, var(--dcss-sk-p13-6) - var(--dcss-sk-c5) + 1, 1)); --dcss-sk-p13-4: calc(var(--dcss-sk-p13-5) + clamp(0, var(--dcss-sk-p13-5) - var(--dcss-sk-c4) + 1, 1)); --dcss-sk-p13-3: calc(var(--dcss-sk-p13-4) + clamp(0, var(--dcss-sk-p13-4) - var(--dcss-sk-c3) + 1, 1)); --dcss-sk-p13-2: calc(var(--dcss-sk-p13-3) + clamp(0, var(--dcss-sk-p13-3) - var(--dcss-sk-c2) + 1, 1)); --dcss-sk-p13-1: calc(var(--dcss-sk-p13-2) + clamp(0, var(--dcss-sk-p13-2) - var(--dcss-sk-c1) + 1, 1)); --dcss-sk-p13-0: calc(var(--dcss-sk-p13-1) + clamp(0, var(--dcss-sk-p13-1) - var(--dcss-sk-c0) + 1, 1));
  --dcss-sk-p14-13: calc(var(--dcss-sk-c14) + clamp(0, var(--dcss-sk-c14) - var(--dcss-sk-c13) + 1, 1)); --dcss-sk-p14-12: calc(var(--dcss-sk-p14-13) + clamp(0, var(--dcss-sk-p14-13) - var(--dcss-sk-c12) + 1, 1)); --dcss-sk-p14-11: calc(var(--dcss-sk-p14-12) + clamp(0, var(--dcss-sk-p14-12) - var(--dcss-sk-c11) + 1, 1)); --dcss-sk-p14-10: calc(var(--dcss-sk-p14-11) + clamp(0, var(--dcss-sk-p14-11) - var(--dcss-sk-c10) + 1, 1)); --dcss-sk-p14-9: calc(var(--dcss-sk-p14-10) + clamp(0, var(--dcss-sk-p14-10) - var(--dcss-sk-c9) + 1, 1)); --dcss-sk-p14-8: calc(var(--dcss-sk-p14-9) + clamp(0, var(--dcss-sk-p14-9) - var(--dcss-sk-c8) + 1, 1)); --dcss-sk-p14-7: calc(var(--dcss-sk-p14-8) + clamp(0, var(--dcss-sk-p14-8) - var(--dcss-sk-c7) + 1, 1)); --dcss-sk-p14-6: calc(var(--dcss-sk-p14-7) + clamp(0, var(--dcss-sk-p14-7) - var(--dcss-sk-c6) + 1, 1)); --dcss-sk-p14-5: calc(var(--dcss-sk-p14-6) + clamp(0, var(--dcss-sk-p14-6) - var(--dcss-sk-c5) + 1, 1)); --dcss-sk-p14-4: calc(var(--dcss-sk-p14-5) + clamp(0, var(--dcss-sk-p14-5) - var(--dcss-sk-c4) + 1, 1)); --dcss-sk-p14-3: calc(var(--dcss-sk-p14-4) + clamp(0, var(--dcss-sk-p14-4) - var(--dcss-sk-c3) + 1, 1)); --dcss-sk-p14-2: calc(var(--dcss-sk-p14-3) + clamp(0, var(--dcss-sk-p14-3) - var(--dcss-sk-c2) + 1, 1)); --dcss-sk-p14-1: calc(var(--dcss-sk-p14-2) + clamp(0, var(--dcss-sk-p14-2) - var(--dcss-sk-c1) + 1, 1)); --dcss-sk-p14-0: calc(var(--dcss-sk-p14-1) + clamp(0, var(--dcss-sk-p14-1) - var(--dcss-sk-c0) + 1, 1));
  --dcss-sk-p15-14: calc(var(--dcss-sk-c15) + clamp(0, var(--dcss-sk-c15) - var(--dcss-sk-c14) + 1, 1)); --dcss-sk-p15-13: calc(var(--dcss-sk-p15-14) + clamp(0, var(--dcss-sk-p15-14) - var(--dcss-sk-c13) + 1, 1)); --dcss-sk-p15-12: calc(var(--dcss-sk-p15-13) + clamp(0, var(--dcss-sk-p15-13) - var(--dcss-sk-c12) + 1, 1)); --dcss-sk-p15-11: calc(var(--dcss-sk-p15-12) + clamp(0, var(--dcss-sk-p15-12) - var(--dcss-sk-c11) + 1, 1)); --dcss-sk-p15-10: calc(var(--dcss-sk-p15-11) + clamp(0, var(--dcss-sk-p15-11) - var(--dcss-sk-c10) + 1, 1)); --dcss-sk-p15-9: calc(var(--dcss-sk-p15-10) + clamp(0, var(--dcss-sk-p15-10) - var(--dcss-sk-c9) + 1, 1)); --dcss-sk-p15-8: calc(var(--dcss-sk-p15-9) + clamp(0, var(--dcss-sk-p15-9) - var(--dcss-sk-c8) + 1, 1)); --dcss-sk-p15-7: calc(var(--dcss-sk-p15-8) + clamp(0, var(--dcss-sk-p15-8) - var(--dcss-sk-c7) + 1, 1)); --dcss-sk-p15-6: calc(var(--dcss-sk-p15-7) + clamp(0, var(--dcss-sk-p15-7) - var(--dcss-sk-c6) + 1, 1)); --dcss-sk-p15-5: calc(var(--dcss-sk-p15-6) + clamp(0, var(--dcss-sk-p15-6) - var(--dcss-sk-c5) + 1, 1)); --dcss-sk-p15-4: calc(var(--dcss-sk-p15-5) + clamp(0, var(--dcss-sk-p15-5) - var(--dcss-sk-c4) + 1, 1)); --dcss-sk-p15-3: calc(var(--dcss-sk-p15-4) + clamp(0, var(--dcss-sk-p15-4) - var(--dcss-sk-c3) + 1, 1)); --dcss-sk-p15-2: calc(var(--dcss-sk-p15-3) + clamp(0, var(--dcss-sk-p15-3) - var(--dcss-sk-c2) + 1, 1)); --dcss-sk-p15-1: calc(var(--dcss-sk-p15-2) + clamp(0, var(--dcss-sk-p15-2) - var(--dcss-sk-c1) + 1, 1)); --dcss-sk-p15-0: calc(var(--dcss-sk-p15-1) + clamp(0, var(--dcss-sk-p15-1) - var(--dcss-sk-c0) + 1, 1));
  --dcss-sk-k0: var(--dcss-sk-c0);
  --dcss-sk-k1: var(--dcss-sk-p1-0);
  --dcss-sk-k2: var(--dcss-sk-p2-0);
  --dcss-sk-k3: var(--dcss-sk-p3-0);
  --dcss-sk-k4: var(--dcss-sk-p4-0);
  --dcss-sk-k5: var(--dcss-sk-p5-0);
  --dcss-sk-k6: var(--dcss-sk-p6-0);
  --dcss-sk-k7: var(--dcss-sk-p7-0);
  --dcss-sk-k8: var(--dcss-sk-p8-0);
  --dcss-sk-k9: var(--dcss-sk-p9-0);
  --dcss-sk-k10: var(--dcss-sk-p10-0);
  --dcss-sk-k11: var(--dcss-sk-p11-0);
  --dcss-sk-k12: var(--dcss-sk-p12-0);
  --dcss-sk-k13: var(--dcss-sk-p13-0);
  --dcss-sk-k14: var(--dcss-sk-p14-0);
  --dcss-sk-k15: var(--dcss-sk-p15-0);
  --dcss-sk-r0: calc(var(--dcss-sk-k0) * 1 + var(--dcss-sk-k1) * 16 + var(--dcss-sk-k2) * 256 + var(--dcss-sk-k3) * 4096);
  --dcss-sk-r1: calc(var(--dcss-sk-k4) * 1 + var(--dcss-sk-k5) * 16 + var(--dcss-sk-k6) * 256 + var(--dcss-sk-k7) * 4096);
  --dcss-sk-r2: calc(var(--dcss-sk-k8) * 1 + var(--dcss-sk-k9) * 16 + var(--dcss-sk-k10) * 256 + var(--dcss-sk-k11) * 4096);
  --dcss-sk-r3: calc(var(--dcss-sk-k12) * 1 + var(--dcss-sk-k13) * 16 + var(--dcss-sk-k14) * 256 + var(--dcss-sk-k15) * 4096); }
.dcss-ranks > b > .dcss-segments { position: absolute !important; right: 0; bottom: 0; display: flex !important; flex-wrap: wrap; align-content: flex-start; width: var(--dcss-copy-width); height: calc(var(--dcss-rk-g) * var(--dcss-band, 2px)); padding: 0 !important; border: 0;
  margin: 0 calc(-1 * var(--dcss-copy-width)) calc(-1 * var(--dcss-rk-g) * var(--dcss-band, 2px)) 0; }
.dcss-segments > i { flex: none; height: var(--dcss-band, 2px); order: calc(var(--dcss-rk-i) * (var(--dcss-p-rk) * (var(--dcss-bin) - 1) + 8388608 + var(--dcss-rk-j)) + (1 - var(--dcss-rk-i)) * var(--dcss-p-rk) * 33); width: calc(abs(var(--dcss-n)) * 1px); margin: 0 calc(min(0, var(--dcss-n)) * 1px); padding: 0 !important; border: 0;
  --dcss-sk-g: calc(max(1, var(--dcss-bin)) - 1); --dcss-sk-gk: round(down, var(--dcss-sk-g) / 4, 1); --dcss-sk-gj: mod(var(--dcss-sk-g), 4); }
.dcss-segments > i > b { display: block !important; position: relative !important; height: 100%; margin: 0; padding: 0 !important; border: 0; top: calc((mod(round(down, (var(--dcss-sk-r0) * max(0, 1 - abs(var(--dcss-sk-gk) - 0)) + var(--dcss-sk-r1) * max(0, 1 - abs(var(--dcss-sk-gk) - 1)) + var(--dcss-sk-r2) * max(0, 1 - abs(var(--dcss-sk-gk) - 2)) + var(--dcss-sk-r3) * max(0, 1 - abs(var(--dcss-sk-gk) - 3))) / pow(16, var(--dcss-sk-gj)), 1), 16) - var(--dcss-sk-g)) * var(--dcss-band, 2px)); }
.dcss-segments > .dcss-group { display: contents !important; }
.dcss-segments > .dcss-group::before { content: ''; flex: none; width: 0; height: var(--dcss-band, 2px); order: calc(var(--dcss-p-rk) * sibling-index() - 2); }
.dcss-segments > .dcss-group::after { content: ''; flex: none; flex-basis: calc(100% + 65536px); height: 0; order: calc(var(--dcss-p-rk) * sibling-index() - 1); }

/* A window: a subgrid over --dcss-span of the array's columns from --dcss-i, in a second row. Readers inside it count
   lines from its first column (9), so window entry 1 is array entry --dcss-i. */
.dcss-window { font-weight: inherit; grid-row: 2; grid-column: var(--dcss-i) / span max(1, var(--dcss-span)); display: grid; grid-template-columns: subgrid; grid-template-rows: auto; position: relative; margin: 0; padding: 0 !important; border: 0; --dcss-array-length: max(1, var(--dcss-span)); }
.dcss-window > .dcss-at { position: absolute !important; }

/* A keyed map: each child sizes the column of its key, and a column is as wide as its widest child. Key k is line k
   from 1 up and line k - 2 from 0 down, so every whole key, negative too, has its own implicit column; a reader at the
   same line reads it. A key nothing uses has no column and reads 0. */
/* An entry fills one track; the max-content minimum keeps the track at its largest entry even in a narrow box. */
.dcss-map { display: grid; contain: layout; grid-template-columns: none; grid-auto-columns: minmax(max-content, 0px); grid-template-rows: auto; width: max-content; }
.dcss-map > i, .dcss-map > .dcss-width-sum, .dcss-map > .dcss-largest, .dcss-map > .dcss-scale { grid-row: 1; width: calc(var(--dcss-n) * 1px); box-sizing: border-box; margin: 0; --dcss-p-ml: calc(var(--dcss-key) - 2 * (1 - clamp(0, var(--dcss-key), 1))); grid-column-start: var(--dcss-p-ml); grid-column-end: span 1; }
/* Two empty sentinels at --dcss-min-key and --dcss-max-key make every key between them a column (a reader past the
   implicit grid would read the whole grid). */
.dcss-map::before, .dcss-map::after { content: ''; grid-row: 1; width: 0; }
.dcss-map::before { grid-column: calc(var(--dcss-min-key) - 2 * (1 - clamp(0, var(--dcss-min-key), 1))) / span 1; }
.dcss-map::after { grid-column: calc(var(--dcss-max-key) - 2 * (1 - clamp(0, var(--dcss-max-key), 1))) / span 1; }
.dcss-map > .dcss-at, .dcss-map > * > .dcss-at { --dcss-p-ml: calc(var(--dcss-key) - 2 * (1 - clamp(0, var(--dcss-key), 1))); grid-column-start: var(--dcss-p-ml); grid-column-end: span 1; --dcss-ok: calc(clamp(0, var(--dcss-key) - var(--dcss-min-key) + 1, 1) * clamp(0, var(--dcss-max-key) - var(--dcss-key) + 1, 1)); }

/* Packed keyed map: the keys are explicit tracks, one per key from --dcss-min-key, each minmax(n px, max-content), so
   a map of thousands of keys needs no child per key. Child entries may still add to a key. */
.dcss-map.dcss-packed { grid-template-columns: var(--dcss-tracks); min-width: max-content; }
.dcss-map.dcss-packed > i, .dcss-map.dcss-packed > .dcss-width-sum, .dcss-map.dcss-packed > .dcss-largest, .dcss-map.dcss-packed > .dcss-scale { --dcss-p-ml: clamp(1, var(--dcss-key) - var(--dcss-min-key) + 1, max(1, var(--dcss-max-key) - var(--dcss-min-key) + 1)); width: calc(var(--dcss-n) * clamp(0, var(--dcss-key) - var(--dcss-min-key) + 1, 1) * clamp(0, var(--dcss-max-key) - var(--dcss-key) + 1, 1) * 1px); }
.dcss-map.dcss-packed::before { grid-column: 1 / span 1; }
.dcss-map.dcss-packed::after { grid-column: max(1, var(--dcss-max-key) - var(--dcss-min-key) + 1) / span 1; }
.dcss-map.dcss-packed > .dcss-at, .dcss-map.dcss-packed > * > .dcss-at { --dcss-p-ml: max(1, var(--dcss-key) - var(--dcss-min-key) + 1); }

/* Formulas: a box's max-content width is an item's width for the box around it, in the same layout, so boxes nest
   into formulas of sums and maxima:
     .dcss-width-sum        [ a ][ b ][ c ]        a + b + c       (a flex row)
     .dcss-largest    [ a     ]
                     [ b        ]           max(a, b, c)    (a flex column)
                     [ c  ]
   A leaf is an <i>, --dcss-n px wide; any computation (an array, a map...) is a leaf as wide as its result. A reader in
   a node covers the node and reads its width. */
.dcss-width-sum, .dcss-largest, .dcss-scale { display: inline-grid; grid-template-rows: max-content; width: max-content; contain: layout; position: relative; vertical-align: top; margin: 0; padding: 0 !important; border: 0 !important; writing-mode: horizontal-tb; direction: ltr; }
/* Sum and largest are flex boxes: a row's max-content width is its items' sum, a column's the widest (css-flexbox-1
   9.9.1), the same algebra as grid tracks and cheaper to lay out. */
.dcss-width-sum, .dcss-largest { display: inline-flex; align-items: flex-start; }
.dcss-width-sum { flex-direction: row; }
.dcss-largest { flex-direction: column; }
.dcss-width-sum > i, .dcss-width-sum > .dcss-width-sum, .dcss-width-sum > .dcss-largest, .dcss-width-sum > .dcss-scale, .dcss-width-sum > .dcss-cap, .dcss-width-sum > .dcss-width-min, .dcss-width-sum > .dcss-stack, .dcss-width-sum > .dcss-tallest, .dcss-width-sum > .dcss-times, .dcss-width-sum > .dcss-minus, .dcss-width-sum > .dcss-array, .dcss-width-sum > .dcss-bins, .dcss-width-sum > .dcss-shares, .dcss-width-sum > .dcss-pack, .dcss-width-sum > .dcss-sort, .dcss-width-sum > .dcss-map, .dcss-width-sum > .dcss-slide, .dcss-width-sum > .dcss-tiles, .dcss-width-sum > .dcss-push, .dcss-width-sum > .dcss-groups, .dcss-width-sum > .dcss-overlap, .dcss-width-sum > .dcss-lines, .dcss-width-sum > .dcss-cycle, .dcss-largest > i, .dcss-largest > .dcss-width-sum, .dcss-largest > .dcss-largest, .dcss-largest > .dcss-scale, .dcss-largest > .dcss-cap, .dcss-largest > .dcss-width-min, .dcss-largest > .dcss-stack, .dcss-largest > .dcss-tallest, .dcss-largest > .dcss-times, .dcss-largest > .dcss-minus, .dcss-largest > .dcss-array, .dcss-largest > .dcss-bins, .dcss-largest > .dcss-shares, .dcss-largest > .dcss-pack, .dcss-largest > .dcss-sort, .dcss-largest > .dcss-map, .dcss-largest > .dcss-slide, .dcss-largest > .dcss-tiles, .dcss-largest > .dcss-push, .dcss-largest > .dcss-groups, .dcss-largest > .dcss-overlap, .dcss-largest > .dcss-lines, .dcss-largest > .dcss-cycle { flex: 0 0 auto; }
/* Scale: the child sits in a minmax(0, k fr) column beside an empty minmax(0, more fr) one. Sizing the node to its
   max-content, 1fr becomes the child's width (12.7.1), so the node is (k + more) x the child: --dcss-k: 0.5fr halves,
   --dcss-more: 1fr doubles. The factors are written fr values; a number cannot become an fr. */
.dcss-scale { grid-template-columns: minmax(0, var(--dcss-k)) minmax(0, var(--dcss-more)); }
.dcss-scale > i, .dcss-scale > .dcss-width-sum, .dcss-scale > .dcss-largest, .dcss-scale > .dcss-scale, .dcss-scale > .dcss-cap, .dcss-scale > .dcss-width-min, .dcss-scale > .dcss-stack, .dcss-scale > .dcss-tallest, .dcss-scale > .dcss-times, .dcss-scale > .dcss-minus, .dcss-scale > .dcss-array, .dcss-scale > .dcss-bins, .dcss-scale > .dcss-shares, .dcss-scale > .dcss-pack, .dcss-scale > .dcss-sort, .dcss-scale > .dcss-map, .dcss-scale > .dcss-slide, .dcss-scale > .dcss-tiles, .dcss-scale > .dcss-push, .dcss-scale > .dcss-groups, .dcss-scale > .dcss-overlap, .dcss-scale > .dcss-lines, .dcss-scale > .dcss-cycle { grid-area: 1 / 1; min-width: 0 !important; }
/* Cap: min(E, c) on the width side, c data (--dcss-c px). E sits in a <b> slot in a fit-content(c) track:
   fit-content is max(min, min(c, max-content)), and overflow: hidden makes the slot's min 0 (6.6), so the track is
   min(E, c). E straight in the track would not clamp: its width is fixed. */
.dcss-cap { display: inline-grid; grid-template-columns: fit-content(calc(var(--dcss-c) * 1px)); grid-template-rows: max-content; contain: layout; position: relative; vertical-align: top; margin: 0; padding: 0 !important; border: 0 !important; writing-mode: horizontal-tb; direction: ltr; }
.dcss-cap > b:not(.dcss-at) { grid-area: 1 / 1; display: flex !important; align-items: flex-start; min-width: 0 !important; overflow: hidden; margin: 0; padding: 0 !important; border: 0; font-weight: inherit; }
.dcss-cap > b:not(.dcss-at) > i, .dcss-cap > b:not(.dcss-at) > .dcss-width-sum, .dcss-cap > b:not(.dcss-at) > .dcss-largest, .dcss-cap > b:not(.dcss-at) > .dcss-scale, .dcss-cap > b:not(.dcss-at) > .dcss-cap, .dcss-cap > b:not(.dcss-at) > .dcss-width-min, .dcss-cap > b:not(.dcss-at) > .dcss-stack, .dcss-cap > b:not(.dcss-at) > .dcss-tallest, .dcss-cap > b:not(.dcss-at) > .dcss-times, .dcss-cap > b:not(.dcss-at) > .dcss-minus, .dcss-cap > b:not(.dcss-at) > .dcss-array, .dcss-cap > b:not(.dcss-at) > .dcss-bins, .dcss-cap > b:not(.dcss-at) > .dcss-shares, .dcss-cap > b:not(.dcss-at) > .dcss-pack, .dcss-cap > b:not(.dcss-at) > .dcss-sort, .dcss-cap > b:not(.dcss-at) > .dcss-map, .dcss-cap > b:not(.dcss-at) > .dcss-slide, .dcss-cap > b:not(.dcss-at) > .dcss-tiles, .dcss-cap > b:not(.dcss-at) > .dcss-push, .dcss-cap > b:not(.dcss-at) > .dcss-groups, .dcss-cap > b:not(.dcss-at) > .dcss-overlap, .dcss-cap > b:not(.dcss-at) > .dcss-lines, .dcss-cap > b:not(.dcss-at) > .dcss-cycle { flex: 0 0 auto; }
.dcss-cap > b:not(.dcss-at) > i { width: calc(var(--dcss-n) * 1px); height: calc(max(0, -1 * sign(var(--dcss-n))) * 1px); margin: 0; padding: 0 !important; border: 0; box-sizing: border-box; }
/* Validity rides in the height: a negative leaf is 1 px tall (and 0 wide), every other leaf 0 tall. A row is as tall as
   its tallest item, so a node is 0 tall exactly when every leaf in it is valid, and its reader's --dcss-ok says which. */
.dcss-width-sum > i, .dcss-largest > i, .dcss-scale > i { width: calc(var(--dcss-n) * 1px); height: calc(max(0, -1 * sign(var(--dcss-n))) * 1px); margin: 0; padding: 0 !important; border: 0; box-sizing: border-box; }
/* Firefox lays out in 1/60 px, so a leaf off that grid (eighths) reads up to 0.03 off: there a leaf off that grid is
   invalid too, so the node above it reads --dcss-ok 0, not a near number (check.mjs 46) */
@property --dcss-dcss-ff{syntax:'<number>';inherits:true;initial-value:0}:root{--dcss-dcss-ff:calc((1 - ((16777216 + 1) - 16777216)))}@container style(--dcss-dcss-ff: 1){.dcss-width-sum > i, .dcss-largest > i, .dcss-scale > i, .dcss-cap > b:not(.dcss-at) > i { height: calc(max(0, -1 * sign(var(--dcss-n)), sign(abs(rem(var(--dcss-n) * 60, 1)))) * 1px); }}
.dcss-width-sum > .dcss-at, .dcss-largest > .dcss-at, .dcss-scale > .dcss-at, .dcss-cap > .dcss-at, .dcss-rest > .dcss-at { grid-area: auto; --dcss-ok: 1; container-type: size; }
.dcss-width-sum > .dcss-at > u, .dcss-largest > .dcss-at > u, .dcss-scale > .dcss-at > u, .dcss-cap > .dcss-at > u, .dcss-rest > .dcss-at > u { --dcss-ok: calc(1 - sign(100cqh / 1px)); --dcss-value: calc(100cqw / 1px * var(--dcss-ok)); }
/* A formula used as an entry is as wide as its result, not its --dcss-n. */
.dcss-array > .dcss-width-sum, .dcss-map > .dcss-width-sum, .dcss-bins.dcss-bin-max > .dcss-width-sum:not(.dcss-at):not(.dcss-track-count), .dcss-array > .dcss-largest, .dcss-map > .dcss-largest, .dcss-bins.dcss-bin-max > .dcss-largest:not(.dcss-at):not(.dcss-track-count), .dcss-array > .dcss-scale, .dcss-map > .dcss-scale, .dcss-bins.dcss-bin-max > .dcss-scale:not(.dcss-at):not(.dcss-track-count) { width: max-content; }
/* A bins entry is a size container, and size containment would make a formula entry 0 wide. */
.dcss-bins.dcss-bin-max > .dcss-width-sum:not(.dcss-at):not(.dcss-track-count), .dcss-bins.dcss-bin-max > .dcss-largest:not(.dcss-at):not(.dcss-track-count), .dcss-bins.dcss-bin-max > .dcss-scale:not(.dcss-at):not(.dcss-track-count) { container-type: normal; }
.dcss-width-sum > .dcss-array, .dcss-largest > .dcss-array, .dcss-scale > .dcss-array, .dcss-width-sum > .dcss-bins, .dcss-largest > .dcss-bins, .dcss-scale > .dcss-bins, .dcss-width-sum > .dcss-shares, .dcss-largest > .dcss-shares, .dcss-scale > .dcss-shares, .dcss-width-sum > .dcss-pack, .dcss-largest > .dcss-pack, .dcss-scale > .dcss-pack, .dcss-width-sum > .dcss-sort, .dcss-largest > .dcss-sort, .dcss-scale > .dcss-sort, .dcss-width-sum > .dcss-map, .dcss-largest > .dcss-map, .dcss-scale > .dcss-map, .dcss-width-sum > .dcss-slide, .dcss-largest > .dcss-slide, .dcss-scale > .dcss-slide, .dcss-width-sum > .dcss-tiles, .dcss-largest > .dcss-tiles, .dcss-scale > .dcss-tiles, .dcss-width-sum > .dcss-push, .dcss-largest > .dcss-push, .dcss-scale > .dcss-push, .dcss-width-sum > .dcss-groups, .dcss-largest > .dcss-groups, .dcss-scale > .dcss-groups, .dcss-width-sum > .dcss-overlap, .dcss-largest > .dcss-overlap, .dcss-scale > .dcss-overlap, .dcss-width-sum > .dcss-lines, .dcss-largest > .dcss-lines, .dcss-scale > .dcss-lines, .dcss-width-sum > .dcss-cycle, .dcss-largest > .dcss-cycle, .dcss-scale > .dcss-cycle { margin: 0; height: 0; min-height: 0; }

/* Least: min(E1, E2), turned into a height. A grid of one max-content column: E1 sizes the column; the slot, in a
   second row, adds nothing to the column and is stretched to it, so it is E1 wide; E2 in the slot shrinks to fit and
   is as tall as it is wide (aspect-ratio 1). The second row is laid out after the column, so it is min(E1, E2) tall:
     column   [ E1 ......................... ]       row 1, 0 px
     slot     [ E2 square ][ .dcss-rest      ]       row 2: min(E1, E2) tall
   .dcss-rest takes the rest of the slot: max(0, E1 - E2). Stack adds heights, tallest takes the largest. Through layout
   alone WebKit never sizes a column again from a row, so here heights end a formula (a vertical container-query worker
   in flow would turn one back). */
.dcss-width-min, .dcss-stack, .dcss-tallest { contain: layout; position: relative; vertical-align: top; margin: 0; padding: 0 !important; border: 0 !important; writing-mode: horizontal-tb; direction: ltr; }
.dcss-width-min { display: inline-grid; grid-template-columns: max-content; grid-template-rows: 0px max-content; }
.dcss-width-min > i, .dcss-width-min > .dcss-width-sum, .dcss-width-min > .dcss-largest, .dcss-width-min > .dcss-scale, .dcss-width-min > .dcss-cap, .dcss-width-min > .dcss-width-min, .dcss-width-min > .dcss-stack, .dcss-width-min > .dcss-tallest, .dcss-width-min > .dcss-times, .dcss-width-min > .dcss-minus, .dcss-width-min > .dcss-array, .dcss-width-min > .dcss-bins, .dcss-width-min > .dcss-shares, .dcss-width-min > .dcss-pack, .dcss-width-min > .dcss-sort, .dcss-width-min > .dcss-map, .dcss-width-min > .dcss-slide, .dcss-width-min > .dcss-tiles, .dcss-width-min > .dcss-push, .dcss-width-min > .dcss-groups, .dcss-width-min > .dcss-overlap, .dcss-width-min > .dcss-lines, .dcss-width-min > .dcss-cycle { grid-row: 1; grid-column: 1; }
.dcss-width-min > b:not(.dcss-at) { font-weight: inherit; grid-row: 2; grid-column: 1; contain: inline-size; min-width: 0 !important; margin: 0; padding: 0 !important; border: 0; display: flex !important; align-items: flex-start; }
.dcss-width-min > b:not(.dcss-at) > i, .dcss-width-min > b:not(.dcss-at) > .dcss-width-sum, .dcss-width-min > b:not(.dcss-at) > .dcss-largest, .dcss-width-min > b:not(.dcss-at) > .dcss-scale, .dcss-width-min > b:not(.dcss-at) > .dcss-cap, .dcss-width-min > b:not(.dcss-at) > .dcss-width-min, .dcss-width-min > b:not(.dcss-at) > .dcss-stack, .dcss-width-min > b:not(.dcss-at) > .dcss-tallest, .dcss-width-min > b:not(.dcss-at) > .dcss-times, .dcss-width-min > b:not(.dcss-at) > .dcss-minus, .dcss-width-min > b:not(.dcss-at) > .dcss-array, .dcss-width-min > b:not(.dcss-at) > .dcss-bins, .dcss-width-min > b:not(.dcss-at) > .dcss-shares, .dcss-width-min > b:not(.dcss-at) > .dcss-pack, .dcss-width-min > b:not(.dcss-at) > .dcss-sort, .dcss-width-min > b:not(.dcss-at) > .dcss-map, .dcss-width-min > b:not(.dcss-at) > .dcss-slide, .dcss-width-min > b:not(.dcss-at) > .dcss-tiles, .dcss-width-min > b:not(.dcss-at) > .dcss-push, .dcss-width-min > b:not(.dcss-at) > .dcss-groups, .dcss-width-min > b:not(.dcss-at) > .dcss-overlap, .dcss-width-min > b:not(.dcss-at) > .dcss-lines, .dcss-width-min > b:not(.dcss-at) > .dcss-cycle { flex: 0 1 auto; min-width: 0 !important; aspect-ratio: 1; overflow: hidden; }
/* E2's height is the min itself, not a validity flag. */
.dcss-width-min > b:not(.dcss-at) > :not(.dcss-rest) > .dcss-at > u { --dcss-ok: 1; }
.dcss-width-min > b:not(.dcss-at) > .dcss-rest { font-weight: inherit; flex: 1 0 0px; min-width: 0 !important; height: 0; position: relative !important; contain: layout; margin: 0; padding: 0 !important; border: 0; }
.dcss-width-min > b:not(.dcss-at) > i, .dcss-width-min > i { display: block !important; width: calc(var(--dcss-n) * 1px); margin: 0; padding: 0 !important; border: 0; box-sizing: border-box; }
/* E1 as a leaf is 0 tall (its row is 0 px); E2 as a leaf gets its height from aspect-ratio. */
.dcss-width-min > i { height: 0; }
.dcss-stack, .dcss-tallest { display: inline-flex; align-items: flex-start; }
.dcss-stack { flex-direction: column; }
.dcss-tallest { flex-direction: row; }
.dcss-stack > i, .dcss-stack > .dcss-width-min, .dcss-stack > .dcss-stack, .dcss-stack > .dcss-tallest, .dcss-stack > .dcss-times, .dcss-tallest > i, .dcss-tallest > .dcss-width-min, .dcss-tallest > .dcss-stack, .dcss-tallest > .dcss-tallest, .dcss-tallest > .dcss-times { flex: 0 0 auto; }
/* Times: f x E as a height, f data (--dcss-f). A flex row as wide as E with aspect-ratio 1 / f is f times as tall
   (css-sizing-4), and no line box or content keeps it taller. In a stack the heights add, so a sum of data-weighted
   results is one layout:
     +-- E --+
     |       |  f x E
     +-------+ */
.dcss-times { display: inline-flex; align-items: flex-start; min-height: 0; aspect-ratio: 1 / var(--dcss-f); contain: layout; position: relative; vertical-align: top; margin: 0; padding: 0 !important; border: 0 !important; writing-mode: horizontal-tb; direction: ltr; }
.dcss-times > i, .dcss-times > .dcss-width-sum, .dcss-times > .dcss-largest, .dcss-times > .dcss-scale, .dcss-times > .dcss-array, .dcss-times > .dcss-bins, .dcss-times > .dcss-shares, .dcss-times > .dcss-pack, .dcss-times > .dcss-sort, .dcss-times > .dcss-map, .dcss-times > .dcss-slide, .dcss-times > .dcss-tiles, .dcss-times > .dcss-push, .dcss-times > .dcss-groups, .dcss-times > .dcss-overlap, .dcss-times > .dcss-lines, .dcss-times > .dcss-cycle { flex: 0 0 auto; }
.dcss-times > i { width: calc(var(--dcss-n) * 1px); height: 0; margin: 0; padding: 0 !important; border: 0; box-sizing: border-box; }
.dcss-stack > i, .dcss-tallest > i { width: 0; height: calc(var(--dcss-n) * 1px); margin: 0; padding: 0 !important; border: 0; box-sizing: border-box; }
.dcss-width-min > .dcss-at, .dcss-stack > .dcss-at, .dcss-tallest > .dcss-at, .dcss-times > .dcss-at { grid-area: auto; --dcss-ok: 1; container-type: size; }
.dcss-width-min > .dcss-at > u, .dcss-stack > .dcss-at > u, .dcss-tallest > .dcss-at > u, .dcss-times > .dcss-at > u { --dcss-ok: 1; --dcss-value: calc(100cqh / 1px); }

/* Calc: the algebra between results. Name results with anchor-name; a .dcss-calc after them in the markup takes a
   width in calc() of their anchor-size()s: products, quotients, min, max, chained (css-anchor-position-1 2.3: the
   anchor must be laid out first). Its first <u> is a size container, the inner <u> reads the width; WebKit reads 0
   when the anchored box is the container itself.
     <b class="dcss-calc" style="width: calc(anchor-size(--a width) * anchor-size(--b width) / 1px)"><u><u></u></u></b> */
.dcss-calc { position: absolute; top: 0; left: 0; height: 0; margin: 0; padding: 0 !important; border: 0; pointer-events: none; font-weight: inherit; }
.dcss-calc > u { display: block !important; width: 100%; height: 1px; container-type: inline-size; text-decoration: none; --dcss-err-above: var(--dcss-err); }
/* Firefox keeps an anchor-size() at the anchor's first size (QUIRKS Q3), a stale number no rule can tell from a fresh one:
   there (FF, its 32-bit calc()) the answer fails, --dcss-err 1 and --dcss-value 0; an error from above is kept
   (--dcss-err-above, read one element up, since --dcss-err inherits) */
.dcss-calc > u > u { display: block !important; --dcss-value: calc(100cqw / 1px * ((16777216 + 1) - 16777216)); --dcss-err: max(var(--dcss-err-above), (1 - ((16777216 + 1) - 16777216))); text-decoration: none; }

/* Stages: when a formula needs more than layout gives in one pass, the next pass is laid out inside a reader of the
   last. style="--dcss-k1: var(--dcss-value)" on what is inside the reader keeps its value for everything in it, so later
   leaves can use it (--dcss-n: var(--dcss-k1)). formula.mjs writes these. */

/* Sliding-window maxima: entry i spans --dcss-span columns from column i. Items of one span are sized together, each
   track taking the largest share any of them asks (12.5.1), so column j is the largest entry whose window covers it. */
.dcss-slide { display: grid; contain: layout; grid-template-columns: none; grid-auto-columns: minmax(min-content, 0px); grid-template-rows: auto; width: max-content; --dcss-array-length: 0; }
.dcss-slide > i { grid-row: 1; grid-column: calc(sibling-index()) / span max(1, var(--dcss-span)); width: calc(var(--dcss-n) * max(1, var(--dcss-span)) * 1px); box-sizing: border-box; margin: 0; }

/* Collapse: margin collapsing (css2 8.3.1) as a sum of signed numbers' extremes. Each <i> is an empty block whose top
   margin is its number (--dcss-n px, signed) or --dcss-p percent of the width it sits in; adjoining margins become one,
   max(0, the largest) + min(0, the smallest): over positives a max, over negatives a min, one of each a difference.
   A width is laid out: the formula children (.dcss-width-sum, .dcss-largest, .dcss-scale) float, so they make their box as
   wide as they are and stay out of the margins' way. A <b class="dcss-scope"> is a box with a width of its own (the
   widest formula or scope in it), its own margin like an entry's (a percentage of its parent's width), and entries
   whose percentages take its width: through a scope two laid-out widths meet in one collapse, with no reader.
     <div class="dcss-collapse"><div class="dcss-width-sum">... W1</div>       the collapse is max(W1, W2) wide
       <b class="dcss-scope" style="--dcss-p: 50"><div class="dcss-width-sum">... W2</div>
         <i style="--dcss-p: -100"></i></b>                              -100% of the scope's width W2
       <b class="dcss-at"><u></u></b></div>                             --dcss-value: W1 / 2 - W2 (when W1 > W2)
   The sheet frames the margins between a 10,000 px block and a 1 px one, so a collapse reads from -10,000 up. As a
   child of a .dcss-stack or a .dcss-tallest the frame is taken off (a -10,001 px margin), so the collapse counts
   there as its value: the result goes on in layout with no reader. */
.dcss-collapse { display: flow-root; position: relative; width: max-content; margin: 0; padding: 0 !important; border: 0 !important; writing-mode: horizontal-tb; direction: ltr; }
.dcss-collapse::before { content: ""; display: block !important; height: 10000px; margin: 0; }
.dcss-collapse::after { content: ""; display: block !important; height: 1px; margin: 0; clear: none; }
.dcss-collapse > i, .dcss-scope > i { display: block !important; height: 0; margin: calc(var(--dcss-n) * 1px + var(--dcss-p) * 1%) 0 0; padding: 0 !important; border: 0; }
.dcss-collapse > .dcss-scope, .dcss-scope > .dcss-scope { display: block !important; width: max-content; height: auto; margin: calc(var(--dcss-n) * 1px + var(--dcss-p) * 1%) 0 0; padding: 0 !important; border: 0; font-weight: inherit; }
.dcss-collapse > .dcss-width-sum, .dcss-collapse > .dcss-largest, .dcss-collapse > .dcss-scale, .dcss-scope > .dcss-width-sum, .dcss-scope > .dcss-largest, .dcss-scope > .dcss-scale { float: left; height: 0; margin: 0; }
.dcss-collapse > .dcss-at { position: absolute !important; inset: 0; container-type: size; max-width: none !important; --dcss-ok: 1; }
.dcss-collapse > .dcss-at > u { --dcss-value: calc(100cqh / 1px - 10001); }
.dcss-stack > .dcss-collapse, .dcss-tallest > .dcss-collapse { flex: 0 0 auto; margin-top: -10001px; }
/* Minus: max(0, A - B) of two widths, a width, with no reader and no turn (css-grid-2 12.5 step 3 and 12.5.1:
   an item spanning tracks adds what it needs beyond their sizes to the tracks that can still grow). A spans an
   empty first track and B's track; B's track is B (its base and limit both B, so it takes nothing), so the empty
   track grows to max(0, A - B). A 2^20 px item over B's track and a third brings the first track's size up into the
   grid's width, A - B + 2^20, and a margin of -2^20 px takes the constant off where a node counts the width.
     <div class="dcss-minus"><div class="dcss-width-sum">... A</div><b><div class="dcss-width-sum">... B</div></b></div>
   so min(a, b) = minus(a + b, max(a, b)) and |a - b| = minus(a, b) + minus(b, a), all on the width side.
   B must stay under 2^20 px. Exact live in both engines (probes/novel/loops/grid-distribute.mjs). */
.dcss-minus { display: inline-grid; grid-template-columns: auto auto auto; grid-template-rows: 0px; height: 0; position: relative; vertical-align: top; font-size: 0; line-height: 0; margin: 0 -1048576px 0 0; padding: 0 !important; border: 0 !important; writing-mode: horizontal-tb; direction: ltr; }
.dcss-minus::after { content: ""; display: block !important; grid-row: 1; grid-column: 2 / span 2; width: 1048576px; height: 0; }
.dcss-minus > i, .dcss-minus > .dcss-width-sum, .dcss-minus > .dcss-largest, .dcss-minus > .dcss-scale, .dcss-minus > .dcss-cap, .dcss-minus > .dcss-width-min, .dcss-minus > .dcss-stack, .dcss-minus > .dcss-tallest, .dcss-minus > .dcss-times, .dcss-minus > .dcss-minus, .dcss-minus > .dcss-array, .dcss-minus > .dcss-bins, .dcss-minus > .dcss-shares, .dcss-minus > .dcss-pack, .dcss-minus > .dcss-sort, .dcss-minus > .dcss-map, .dcss-minus > .dcss-slide, .dcss-minus > .dcss-tiles, .dcss-minus > .dcss-push, .dcss-minus > .dcss-groups, .dcss-minus > .dcss-overlap, .dcss-minus > .dcss-lines, .dcss-minus > .dcss-cycle { grid-row: 1; grid-column: 1 / span 2; }
.dcss-minus > b { display: block !important; grid-row: 1; grid-column: 2; height: 0; }
.dcss-collapse > .dcss-minus, .dcss-scope > .dcss-minus { float: left; height: 0; }
/* Range: which entries have a key in [from, to], as a bit mask of their bits and their six highest bits. The entries
   are one grid row with a column for each key and bit, column 19 key + bit (keys below 1 by negative lines, as a
   map's), each entry 2^(bit - 1) px wide in its own column. A query is an absolutely placed box over the columns of
   keys from to to, a size container: its width is the mask (css-grid-2 9.4: an abspos item's lines; no anchors). Its
   ::before, 0 wide at its first column, makes that line exist: a start line past the last entry would be the grid's
   start edge, and the box would read the whole row.
     <div class="dcss-key-range">
       <i style="--dcss-key: 7; --dcss-bit: 3"></i> ...                     an entry: its key, its bit (1 to 19)
       <b class="dcss-in" style="--dcss-from: 5; --dcss-to: 9"><b><u><u></u></u></b></b>     a query, anywhere in the row
     </div>
   The inner <u> gets --dcss-value (the mask: the sum of 2^(bit - 1) over the entries in range, less --dcss-not's bit
   when it is among them) and --dcss-top1 .. --dcss-top6 (the highest bits, 0 when fewer). A range marked .dcss-mask
   gets the mask only: the six highest bits cost a query more than its mask and its box together (100 queries:
   Chrome 1.1 to 9.8 ms, WebKit 4 to 11; vs-calc/trials/range.mjs). An entry and a query may sit together in a <div>
   (display: contents), so a body brings its entries and its query (newt.css's neighbours: each body three times, at
   keys shifted by a row, so its 3 x 3 cells are one range). The mask stays under 2^19, six digits through var(): 19
   bits a range at most; an entry's bit is its own in its key (two with one key and bit count once). Every column
   between the lowest and the highest key is a track: WebKit pays about 4 ms for 19,000 empty ones (1,000 keys),
   Chrome nothing measurable. Exact live in both engines (probes/algos/range.mjs). */
.dcss-key-range { display: grid; grid-auto-columns: max-content; grid-template-rows: 0; position: relative; width: max-content; height: 0; margin: 0; padding: 0 !important; border: 0 !important; writing-mode: horizontal-tb; direction: ltr; }
.dcss-key-range > div { display: contents !important; }
.dcss-key-range > i, .dcss-key-range > div > i { display: block !important; grid-row: 1; grid-column: calc(19 * var(--dcss-key) + var(--dcss-bit) - 2 * (1 - clamp(0, 19 * var(--dcss-key) + var(--dcss-bit), 1))) / span 1; width: calc(pow(2, var(--dcss-bit) - 1) * 1px); height: 0; margin: 0; padding: 0 !important; border: 0; }
.dcss-key-range > .dcss-in, .dcss-key-range > div > .dcss-in { display: contents !important; }
.dcss-key-range > .dcss-in::before, .dcss-key-range > div > .dcss-in::before { content: ""; display: block !important; grid-row: 1; grid-column: calc(19 * var(--dcss-from) + 1 - 2 * (1 - clamp(0, 19 * var(--dcss-from) + 1, 1))) / span 1; width: 0; height: 0; }
.dcss-in > b { display: block !important; position: absolute !important; inset: 0; grid-row: 1; grid-column: calc(19 * var(--dcss-from) + 1 - 2 * (1 - clamp(0, 19 * var(--dcss-from) + 1, 1))) / calc(19 * var(--dcss-to) + 20 - 2 * (1 - clamp(0, 19 * var(--dcss-to) + 20, 1)));
  max-width: calc(clamp(0, var(--dcss-to) - var(--dcss-from) + 1, 1) * 1e9px) !important; visibility: hidden; pointer-events: none; margin: 0; padding: 0 !important; border: 0; }
.dcss-in > b > u { display: block !important; height: 0; container-type: inline-size; text-decoration: none; }
.dcss-in > b > u > u { display: block !important; width: 0; height: 0; text-decoration: none;
  --dcss-value: calc(round(100cqw / 1px) - sign(var(--dcss-not)) * mod(round(down, round(100cqw / 1px) / pow(2, var(--dcss-not) - 1)), 2) * pow(2, var(--dcss-not) - 1)); }
.dcss-key-range:not(.dcss-mask) > .dcss-in > b > u > u, .dcss-key-range:not(.dcss-mask) > div > .dcss-in > b > u > u { --dcss-p-rm1: var(--dcss-value);
  --dcss-p-rh1: round(down, log(max(var(--dcss-p-rm1), 1), 2)); --dcss-p-rb1: calc(var(--dcss-p-rh1) + sign(max(0, max(var(--dcss-p-rm1), 1) - pow(2, var(--dcss-p-rh1) + 1) + 1)) - sign(max(0, pow(2, var(--dcss-p-rh1)) - max(var(--dcss-p-rm1), 1))));
  --dcss-top1: calc(sign(var(--dcss-p-rm1)) * (var(--dcss-p-rb1) + 1)); --dcss-p-rm2: calc(var(--dcss-p-rm1) - sign(var(--dcss-p-rm1)) * pow(2, var(--dcss-p-rb1)));
  --dcss-p-rh2: round(down, log(max(var(--dcss-p-rm2), 1), 2)); --dcss-p-rb2: calc(var(--dcss-p-rh2) + sign(max(0, max(var(--dcss-p-rm2), 1) - pow(2, var(--dcss-p-rh2) + 1) + 1)) - sign(max(0, pow(2, var(--dcss-p-rh2)) - max(var(--dcss-p-rm2), 1))));
  --dcss-top2: calc(sign(var(--dcss-p-rm2)) * (var(--dcss-p-rb2) + 1)); --dcss-p-rm3: calc(var(--dcss-p-rm2) - sign(var(--dcss-p-rm2)) * pow(2, var(--dcss-p-rb2)));
  --dcss-p-rh3: round(down, log(max(var(--dcss-p-rm3), 1), 2)); --dcss-p-rb3: calc(var(--dcss-p-rh3) + sign(max(0, max(var(--dcss-p-rm3), 1) - pow(2, var(--dcss-p-rh3) + 1) + 1)) - sign(max(0, pow(2, var(--dcss-p-rh3)) - max(var(--dcss-p-rm3), 1))));
  --dcss-top3: calc(sign(var(--dcss-p-rm3)) * (var(--dcss-p-rb3) + 1)); --dcss-p-rm4: calc(var(--dcss-p-rm3) - sign(var(--dcss-p-rm3)) * pow(2, var(--dcss-p-rb3)));
  --dcss-p-rh4: round(down, log(max(var(--dcss-p-rm4), 1), 2)); --dcss-p-rb4: calc(var(--dcss-p-rh4) + sign(max(0, max(var(--dcss-p-rm4), 1) - pow(2, var(--dcss-p-rh4) + 1) + 1)) - sign(max(0, pow(2, var(--dcss-p-rh4)) - max(var(--dcss-p-rm4), 1))));
  --dcss-top4: calc(sign(var(--dcss-p-rm4)) * (var(--dcss-p-rb4) + 1)); --dcss-p-rm5: calc(var(--dcss-p-rm4) - sign(var(--dcss-p-rm4)) * pow(2, var(--dcss-p-rb4)));
  --dcss-p-rh5: round(down, log(max(var(--dcss-p-rm5), 1), 2)); --dcss-p-rb5: calc(var(--dcss-p-rh5) + sign(max(0, max(var(--dcss-p-rm5), 1) - pow(2, var(--dcss-p-rh5) + 1) + 1)) - sign(max(0, pow(2, var(--dcss-p-rh5)) - max(var(--dcss-p-rm5), 1))));
  --dcss-top5: calc(sign(var(--dcss-p-rm5)) * (var(--dcss-p-rb5) + 1)); --dcss-p-rm6: calc(var(--dcss-p-rm5) - sign(var(--dcss-p-rm5)) * pow(2, var(--dcss-p-rb5)));
  --dcss-p-rh6: round(down, log(max(var(--dcss-p-rm6), 1), 2)); --dcss-p-rb6: calc(var(--dcss-p-rh6) + sign(max(0, max(var(--dcss-p-rm6), 1) - pow(2, var(--dcss-p-rh6) + 1) + 1)) - sign(max(0, pow(2, var(--dcss-p-rh6)) - max(var(--dcss-p-rm6), 1))));
  --dcss-top6: calc(sign(var(--dcss-p-rm6)) * (var(--dcss-p-rb6) + 1)); --dcss-p-rm7: calc(var(--dcss-p-rm6) - sign(var(--dcss-p-rm6)) * pow(2, var(--dcss-p-rb6))); }
/* Turn: a height as a width, live (css-writing-modes-4 7.3: an orthogonal box's block size is what its parent counts
   on its inline axis). A 0-tall grid holds a vertical-lr block with aspect-ratio 1, which holds a horizontal box
   asked for its width (max-content, at most 0) around the height H: the block's inline size (physical height) is H,
   so its block size (physical width) is H, and the grid is H wide.
     <div class="dcss-width-sum"><b class="dcss-turn"><b><b>H</b></b></b></div>
   WebKit sizes an orthogonal child from its last layout unless a style of the vertical block itself changes when
   the inputs do: the tick. Put --dcss-turn-tick (and --dcss-turn-tick-2) on a box around the turn, a number that changes
   whenever an input under it does (an input itself; two inputs one each). With the inputs still, the tick is still
   and the turn idles. Exact live in both engines, nested, under .dcss-largest, .dcss-width-min, a collapse
   (probes/novel/live-turn: ortho-turn.mjs, tick-traps.mjs, tick-inputs.mjs, rest-cost.mjs). */
.dcss-turn { display: grid; grid-template-columns: max-content; align-items: start; flex: none; height: 0; margin: 0; padding: 0 !important; border: 0; font-weight: inherit; writing-mode: horizontal-tb; }
.dcss-turn > b { display: block !important; writing-mode: vertical-lr; height: max-content; aspect-ratio: 1; max-height: calc(1000000px + var(--dcss-turn-tick) * 1px); max-width: calc(1000000px + var(--dcss-turn-tick-2) * 1px) !important; margin: 0; padding: 0 !important; border: 0; font-weight: inherit; }
.dcss-turn > b > b { display: flex !important; writing-mode: horizontal-tb; align-items: flex-start; width: max-content; max-width: 0 !important; margin: 0; padding: 0 !important; border: 0; font-weight: inherit; }
.dcss-turn > b > b > i, .dcss-turn > b > b > .dcss-width-sum, .dcss-turn > b > b > .dcss-largest, .dcss-turn > b > b > .dcss-scale, .dcss-turn > b > b > .dcss-cap, .dcss-turn > b > b > .dcss-width-min, .dcss-turn > b > b > .dcss-stack, .dcss-turn > b > b > .dcss-tallest, .dcss-turn > b > b > .dcss-times, .dcss-turn > b > b > .dcss-minus, .dcss-turn > b > b > .dcss-collapse, .dcss-turn > b > b > .dcss-array, .dcss-turn > b > b > .dcss-bins, .dcss-turn > b > b > .dcss-shares, .dcss-turn > b > b > .dcss-pack, .dcss-turn > b > b > .dcss-sort, .dcss-turn > b > b > .dcss-map, .dcss-turn > b > b > .dcss-slide, .dcss-turn > b > b > .dcss-tiles, .dcss-turn > b > b > .dcss-push, .dcss-turn > b > b > .dcss-groups, .dcss-turn > b > b > .dcss-overlap, .dcss-turn > b > b > .dcss-lines, .dcss-turn > b > b > .dcss-cycle { flex: none; }
.dcss-turn > b > b > .dcss-collapse { margin-top: -10001px; }
/* In an array's port a collapse is an item like a hop: in row --dcss-r + 1 (that row is as tall as its value), over
   columns --dcss-i to --dcss-j, as wide as they are (contained, so it adds nothing to them): a percentage at its top level
   takes that span's width, so a column a .dcss-hop-y wrote from an earlier row can be subtracted again. A .dcss-hop-y over
   its row turns its value back into a column: the result goes on as a width. */
/* A collapse in a hop's <u>, the hop over a .dcss-hop-y's column: the collapse fills the column (its percentages take
   its width) and the hop's row is as tall as its value, at least 0. Firefox lays a collapse that is itself a grid item in
   that column out with the column from the frame before (QUIRKS Q5); in the hop its own reader is on time there. */
.dcss-array > .dcss-hop > u:has(> .dcss-collapse), .dcss-array > .dcss-out > .dcss-hop > u:has(> .dcss-collapse) { height: auto; }
.dcss-array > .dcss-hop > u > .dcss-collapse, .dcss-array > .dcss-out > .dcss-hop > u > .dcss-collapse { width: auto; min-height: 10001px; margin-top: -10001px; }
/* Any height as a row: a <b class="dcss-row"> in the port holds a height node (.dcss-width-min, .dcss-stack, .dcss-tallest, a
   collapse) and is a row item as tall as it (row --dcss-r + 1, over columns --dcss-i to --dcss-j, adding nothing to them),
   so a .dcss-hop-y over its row turns the height into a column. */
.dcss-array > .dcss-row, .dcss-array > .dcss-out > .dcss-row { display: flex !important; align-items: flex-start; grid-column: max(1, var(--dcss-i)) / span max(1, calc(var(--dcss-j) - var(--dcss-i) + 1)); grid-row: calc(max(1, var(--dcss-r)) + 1); contain: inline-size; min-width: 0 !important; margin: 0; padding: 0 !important; border: 0; font-weight: inherit; }
.dcss-row > .dcss-width-min, .dcss-row > .dcss-stack, .dcss-row > .dcss-tallest { flex: none; }
.dcss-row > .dcss-collapse { flex: none; margin-top: -10001px; }
.dcss-array > .dcss-collapse, .dcss-array > .dcss-out > .dcss-collapse { grid-column: max(1, var(--dcss-i)) / span max(1, calc(var(--dcss-j) - var(--dcss-i) + 1)); grid-row: calc(max(1, var(--dcss-r)) + 1); width: auto; contain: inline-size; margin-top: -10001px; }

/* Zoom: a factor in flow (css-viewport-1 4). A node or a leaf with .dcss-zoom and --dcss-zoom: f is f times its laid-out
   size wherever it counts, so an array or a formula above it adds f x E; factors nest (f1 x (a + f2 x b)). The
   width side of .dcss-times. Each zoomed length floors to 1/64 px (exact for factors in quarters, eighths ...); f
   must be more than 0 (zoom: 0 counts as 1). */
.dcss-zoom { zoom: var(--dcss-zoom, 1); }

/* Baseline: a row of items aligned on their baselines (css-inline-3 4, css-align-3 9.3). Item j has --dcss-n (a, above
   its baseline) and --dcss-m (d, below); the row is max(a) + max(d) tall, and each item sits max(a) - a_j down: the
   group's largest a handed back to every item in the same layout (its .dcss-where reads it as --dcss-y).
     <div class="dcss-baseline"><b class="dcss-at"><u></u></b>        --dcss-value: max(a) + max(d)
       <i style="--dcss-n: 12; --dcss-m: 3"><b class="dcss-where"><u><u></u></u></b></i> ...   --dcss-y: max(a) - 12 */
.dcss-baseline { display: flex; align-items: baseline; contain: layout; position: relative; width: max-content; padding: 0 !important; border: 0 !important; font-size: 0; line-height: 0; writing-mode: horizontal-tb; direction: ltr; }
.dcss-baseline > i { display: block !important; flex: none; padding: calc(var(--dcss-n) * 1px) 0 calc(var(--dcss-m) * 1px) !important; margin: 0; border: 0; font-size: 0; line-height: 0; }
.dcss-baseline > i::before { content: ""; display: inline-block !important; }
.dcss-baseline > .dcss-at { position: absolute !important; inset: 0; container-type: size; max-width: none !important; --dcss-ok: 1; }
.dcss-baseline > .dcss-at > u { --dcss-value: calc(100cqh / 1px); }

/* Columns: multicol balancing (css-multicol-1 7.1) as an optimal partition. Blocks of --dcss-n px in --dcss-parts columns,
   none split, are balanced to the least height that fits them: the smallest possible tallest part over every split
   of the sequence into K contiguous parts. A reader reads that height; a block's .dcss-where reads its column times 16
   (--dcss-x) and its top in the column (--dcss-y). WebKit floors the height at the last layout's tallest block, so when
   the heights change put two copies in a .dcss-alternate and flip --dcss-parity (0, 1) with each change: the copy shown
   was not laid out the frame before, and the .dcss-alternate's own reader reads the one shown.
     <div class="dcss-alternate" style="--dcss-parity: mod(step, 2)"><b class="dcss-at"><u></u></b>
       <div class="dcss-columns" style="--dcss-parts: 3"><i style="--dcss-n: 40"></i>...</div>
       <div class="dcss-columns" style="--dcss-parts: 3"> the same </div></div> */
.dcss-columns { column-count: var(--dcss-parts); column-gap: 0; column-fill: balance; width: calc(var(--dcss-parts) * 16px); position: relative; padding: 0 !important; border: 0 !important; margin: 0; writing-mode: horizontal-tb; direction: ltr; }
.dcss-columns > i { display: block !important; height: calc(var(--dcss-n) * 1px); break-inside: avoid; margin: 0; padding: 0 !important; border: 0; }
.dcss-columns > .dcss-at { position: absolute !important; inset: 0; container-type: size; max-width: none !important; --dcss-ok: 1; }
.dcss-columns > .dcss-at > u { --dcss-value: calc(100cqh / 1px); }
.dcss-alternate { position: relative; width: max-content; margin: 0; padding: 0 !important; border: 0 !important; }
.dcss-alternate > .dcss-at { position: absolute !important; inset: 0; container-type: size; max-width: none !important; --dcss-ok: 1; }
.dcss-alternate > .dcss-at > u { --dcss-value: calc(100cqh / 1px); }
@container style(--dcss-parity: 1) { .dcss-alternate > .dcss-columns:not(.dcss-columns + .dcss-columns) { display: none !important; } }
@container not style(--dcss-parity: 1) { .dcss-alternate > .dcss-columns + .dcss-columns { display: none !important; } }

/* Flex: shares by the flex algorithm (css-flexbox-1 9.7). Each <i> starts at --dcss-n px, grows by --dcss-grow, shrinks by
   --dcss-shrink (times its start), stays between --dcss-flex-min and --dcss-flex-max px, in a row as wide as the .dcss-flex (set its
   width): weighted, capped, shrinking shares in one layout, to 1/64 px. What is inside an <i> reads its width. */
.dcss-flex { display: flex; contain: layout; flex-wrap: nowrap; padding: 0 !important; border: 0 !important; writing-mode: horizontal-tb; direction: ltr; }
.dcss-flex > i { flex: var(--dcss-grow) var(--dcss-shrink) calc(var(--dcss-n) * 1px); min-width: calc(var(--dcss-flex-min) * 1px) !important; max-width: calc(var(--dcss-flex-max) * 1px) !important; box-sizing: border-box; margin: 0; padding: 0 !important; border: 0; container-type: inline-size; }
.dcss-flex > i > u { display: block !important; --dcss-value: calc(100cqw / 1px); text-decoration: none; }

/* Text: numbers as CSS counters, printed in a font whose glyphs draw nothing and are as wide as a table says, so the
   text is as wide as the numbers. The counters are the author's own (counter-reset, counter-increment, written in
   style attributes: whole numbers, 0 or more); --dcss-text says what to print. One line is the sum of what it prints,
   and with 'a' between them each line stands alone, so the text is as wide as its widest line: the max (of sums).
   The inner <u> gets --dcss-value, the width, and --dcss-err 1 where the text isn't in its font at 128px.
     <b class="dcss-text" style="counter-reset: a 12 b 40; --dcss-text: counter(a, dcss-tally) counter(b, dcss-tally)"><u><u></u></u></b>
     ::before   [ 12 px ][      40 px      ]                    --dcss-value: 52

   dcss-tally prints any whole number as the additive letters Z I X C M (0, 1, 10, 100, 1000 px), 10000 and 30000 as
   runs of glyphs 2^k px wide, none over 4,096 px (Chrome lays out no glyph wider than 32,767 px, CSS zoom included).
   The text is printed at 128px in fonts of 128 units an em: no browser's minimum font size setting reaches it.
   dcss-table prints k (0 to 999) as the one glyph U+E000 + k, and the font says how wide that glyph is: the same table
   in the markup and the font. dcss-text (the default) makes it k px; .dcss-sq round(k^2 / 1000) and .dcss-sqrt
   round(sqrt(1000 k)), or any font lut.mjs writes, named by --dcss-font. Past 999 dcss-table falls back to dcss-tally.
     <b class="dcss-text dcss-sq" style="counter-reset: a 300 b 40; --dcss-text: counter(a, dcss-table) counter(b, dcss-table)">
                                                                 --dcss-value: 90 + 2
   A table of records: each <tr> counter-increments the columns' counters by its numbers (style="counter-increment:
   a 12 b 7"), and a text anywhere after prints the totals so far; a text in a row prints the running total. An
   <i class="dcss-text"> as an entry of an array or a formula is its text wide, so the grid takes it from there.
   The fonts are in the sheet (WOFF in data: URIs, under 3 KB each), so they arrive with it: right from the first or
   second frame however slow the network, where font files read the fallback font's widths until they arrive, preload
   or not (probes/text-cold.mjs). For the first frame too, preload the same data: URIs from the page's <head>
   (dcss-preload.html has their <link>s; probes/text-first.mjs). lut.mjs prints the @font-face of any other table.

   Operators, each exact in both engines (probes/text-ops.mjs, 2026-10-19):
     two numbers   a pair counter p = 64 a + b + 65 (a, b 0..31) printed by dcss-pair-min, dcss-pair-max, dcss-pair-product,
                   dcss-pair-difference (|a - b|) or dcss-pair-greater (1 when a > b) is two glyphs, A_a then B_b, and the default
                   font kerns B_b after A_a by that table: g(a, b) wide. Pairs on a line add up, any mix of tables: a
                   dot product is one text. Each table has its own glyphs, so pairs side by side never kern into
                   each other
     a x b         counter(a, dcss-unary) prints a 1-px glyphs; --dcss-each: b spaces each by b - 1 more: a x b
     floor(a / b)  .dcss-divide, counter(a, dcss-tally4) '\9' with --dcss-tab: b: a tab to the next multiple of 32b px
                   (32 px a unit: at 128px Chrome skips a stop closer than 16 px, WebKit 18); the reader reads the quotient
     |a - b| ...   a counter d = a - b (counter-reset: d a; counter-increment: d -b) printed by dcss-abs (|d|), dcss-sign
                   (|d| + 1 when d < 0) or dcss-relu (max(0, d))
     a and b       .dcss-two, counter(a, dcss-kilo) counter(b, dcss-tally) (b 0..999): 1000 a + b wide, and the reader
                   unpacks --dcss-high (a) and --dcss-low (b) */
@font-face { font-family: dcss-text; src: url(data:font/woff;base64,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) format('woff'); font-display: block; }
@font-face { font-family: dcss-sq; src: url(data:font/woff;base64,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) format('woff'); font-display: block; }
@font-face { font-family: dcss-sqrt; src: url(data:font/woff;base64,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) format('woff'); font-display: block; }
@font-face { font-family: dcss-dcss-bits; src: url(data:font/woff;base64,d09GRgABAAAAAAJYAAoAAAAAAsAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABPUy8yAAAA9AAAACoAAABgURpQE2NtYXAAAAEgAAAAMwAAADTN7xmdZ2x5ZgAAAVQAAAAfAAAAIgGCAgRoZWFkAAABdAAAACYAAAA2X549/WhoZWEAAAGcAAAAGgAAACQBAUASaG10eAAAAbgAAAAnAAAARICAAABsb2NhAAAB4AAAAA0AAAAkAIgAmW1heHAAAAHwAAAAGAAAACAAEwAGbmFtZQAAAggAAABBAAAAVgO8E4Rwb3N0AAACTAAAAAwAAAAgAAMAAHjaY2BhaGCcwMDKQDLw8/dzZXBgUPj/n6EBLNCAJNkA5ikwMAAA+FAGyQAAeNodyrERgCAUBbB85Kg8ezewZP8tmIIxnp6pg3IonLoHQ1eaua8Ec0uy7vavzwuT+ghvAHjaY2BkAIEGhgYGZgYGRkZGRjCP4X8DVJwBADFIA4gAeNpjYGRgYGBkYJjZN681nt/mKwM3QwMDNtAAFudgYAJxAMaYBYEAAHjaY2BkYGBoAGIGBwYwaGBgZEAFggAf6QFUAAB42n3JoREAIAgAwJcjGB3BURiN0S1mwqfXWF8gsXFwUei5H0icAgAAeNpjYGAQJAQBE1UBIgAAAHjaY2BkYGAQZGBhANEMDEwMaAAAAqcAGnjaLcixCYBAEADBeX0OTIyMLMQqjOzAQD4xEr9/QS5ZhkW1GZU6KYL0YBbpKizpEFa77nW4NN3t9OT7+wGY9gdRAAAAeNpjYGbACwAAfQAE) format('woff'); font-display: block; }
/* ROM: f(k) of a number k at style time (SPEC.md A50). A font whose "0" is f(k) units wide at axis
   position k (rom/make-rom.py, one gvar tent an entry), so at font-size 1000px round(1ch / 1px) is f(k): no text, no
   reader, no layout, one element.
     <i class="dcss-rom dcss-sqrt" style="--dcss-k: 300"><u></u></i>          the <u> gets --dcss-value: 548
   k a whole number from 0 to 999, any CSS number (var(), calc()). The read is on the child: Firefox 158 resolves ch in a
   registered property against the parent's font, so the <u>'s parent is the font. Do not animate the axis on the element
   itself: WebKit reads ch stale there (an animated input inherited from an ancestor is fine). */
@font-face { font-family: dcss-rom-sq; src: url(data:font/woff;base64,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) format('woff'); }
@font-face { font-family: dcss-rom-sqrt; src: url(data:font/woff;base64,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) format('woff'); }
@font-face { font-family: dcss-rom-pair1; src: url(data:font/woff;base64,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K7a1mjdsazXv2NZqctjWaj5qcrW2VhuuLaq1tdoItrXaKLa12hi2tdo4trXaBLa12iS2tdoUtrXaNLa12gy2tdostrXaMWxrtePY1monsK3VTmJbq53CtlY7jW2tdgbbWu0strXaOWxrtfPY1moXsK3VLmJbq13Ctla7jG2tdgXbWu0qtrXaNWxrtevY1mo3sK3VbmJbq92u3aq1tdodbGu1u9jWavewrdXuY1urPcC2VnuIba32CNta7TG2tdoTbGu1p9jWas+wrdWeY1urvcC2VnuJba32Ctta7TW2tdobbGu1t9jWau+wrdXeY1urfcC2VvuIba32Cdta7TO2tdoXbGu1r9jWat+wrdW+Y1urzWFbq/2ozcVsLRaOFcVsLRbBthaLYluLxbCtxeLY1mIJbGuxJLa1WArbWiyNbS2WwbYWy2Jbi41hW4uNY1uLTWBbi01iW4tNYVuLTWNbi81gW4vNYluLzWFbi81jW4stYFuLLWJbiy1hW4stY1uLrWBbi61iW4utYVuLrWNbi21gW4ttYluLbeFttY2tLraDrS62i60utoetLraPrS52gK0udoitLnaErS52jK0udoKtLnaKrS52hq0udo6tLnaBrS52ia0udoWtLnaNrS52g60udoutLnaHrS52j60u9oCtLvaIrS72hK0u9oytLvaCrS72iq0u9oatLvaOrS6Ww1YX+4jl6qyuDteFVbiuqM7+6iLY/uqi2P7qYtj+6uLY/uoS2P7qktj+6lLY/urS2P7qMtj+6rLY/urGsP3VjWP7q5vA9lc3ie2vbgrbX900tr+6GWx/dbPY/urmsP3VzWP7q1vA9le3iO2vbgnbX90ytr+6FWx/davY/urWsP3VrWP7q9vA9le3ie2vbgvbX902tr+6HWx/dbvY/ur2sP3V7WP7qzvA9ld3iO2v7gjbX90xtr+6E2x/dafY/urOsP3VnWP7q7vA9ld3ie2v7grbX901tr+6G2x/dbfY/urusP3V3WP7q3vA9lf3iO2v7gnbX90ztr+6F2x/da/Y/uresP3VvWP7q8th+6v7qMvV2189rre/+nB9Ub391Uew/dVHsf3Vx7D91cex/dUnsP3VJ7H91aew/dWnsf3VZ7D91Wex/dWPYfurH8f2Vz+B7a9+Ettf/RS2v/ppbH/1M9j+6mex/dXPYfurn8f2V7+A7a9+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2P4637H9deaw/XV+dOZS9pfaTm2l3LXUDnbXUrvYXUvtYXcttY/dtdQBdtdSh9hdSx1hdy11jN211Al211Kn2F1LnWF3LXWO3bXUBXbXUpfYXUtdYXctdY3dtdQNdtdSt9hdS91hdy11j9211AN211KP2F1LPWF3LfWM3bXUC3bXUq/YXUu9YXct9Y7dtVQOu2upj1Suy13rCncVdXmvdkWw92pXFHuvdsWw92pXHHuvdiWw92pXEnuvdqWw92pXGnuvdmWw92pXFnuvdo1h79Wucey92jWBvVe7JrH3atcU9l7tmsbeq10z2Hu1axZ7r3bNYe/Vrnnsvdq1gL1Xuxax92rXEvZe7VrG3qtdK9h7tWsVe692rWHv1a517L3atYG9V7s2sfdq13bXVpetde1gW+vaxbbWtYdtrWsf21rXAba1rkNsa11H2Na6jrGtdZ1gW+s6xbbWdYZtresc21rXBba1rktsa11X2Na6rrGtdd1gW+u6xbbWdYdtrese21rXA7a1rkdsa11P2Na6nrGtdb1gW+t6xbbW9YZtresd21pXDtta10dXrtvWusPdRd221h3BttYdxbbWHcO21h3HttadwLbWncS21p3CttadxrbWncG21p3FttY9hm2texzbWvcEtrXuSWxr3VPY1rqnsa11z2Bb657FttY9h22tex7bWvcCtrXuRWxr3UvY1rqXsa11r2Bb617Ftta9hm2tex3bWvcGtrXuTWxr3dvdW9221r2Dba17F9ta9x62te59bGvdB9jWug+xrXUfYVvrPsa21n2Cba37FNta9xm2te5zbGvdF9jWui+xrXVfYVvrvsa21n2Dba37Ftta9x22te57bGvdD9jWuh+xrXU/YVvrfsYvRWXoBb+qV/ym3vC7esc5lcMf6qM712NrPeGeoh5b64lgW+uJYlvriWFb64ljW+tJYFvrSWJb60lhW+tJY1vryWBb68liW+sZw7bWM45trWcC21rPJLa1nilsaz3T2NZ6ZrCt9cxiW+uZw7bWM48XPv9tPQt4US3iJbWEl9UyXlEreFWt4jW1htfVOt5QG3hTbWJb69nu2eqxtZ4dbGs9u9jWevawrfXsY1vrOcC21nOIba3nCNtazzG2tZ4TbGs9p9jWes6wrfWcY1vrucC21nOJba3nCttazzW2tZ4bfOvqb/GdusP36h4/qAf8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) format('woff'); }
@font-face { font-family: dcss-rom-pair2; src: url(data:font/woff;base64,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7GGrhX1stXCArRYOsdXCEbZaOMZWCyfYauEUWy2cYauFT9hq4TO2WviCrRa+YquFb9hq4RxbLVyE85zVcjhntVyYC3JWy0XYarkYWy1XxlbLVbDVclVstVyCrZarYW9drpGr56yWa2Kr5VrYark2tlqug62W62Kr5XrYark+tlpugK2WG2Kr5UbYarkxtlpugq2Wm2Kr5WbYarknbLXcM7Za7gVbLfeKrZZ7w1bLzbHVcovcPG+1PM5bLR/mg7zV8hG2Wj7GVsuXsdXyFWy1fBVbLZ9gq+Vr2Gr5OvbW5Zv5Rt5q+Ra2Wr6NrZbvYKvlu9hq+R62Wr6PrZYfYKvlh9hq+RG2Wn6MrZafYKvlp9hq+Rm2Wv4JWy3/jK2Wf8FWy79iq+XfsNXyc2y1/CI/X7XaKl612mq4GqxabTXCVluNsdVWy9hqqxVstdUqttpqgq22WsNWW61jq602sLdutbXaXLXaahtbbbWDrbbaxVZb7WGrrfax1VYH2GqrQ2y11RG22uoYW211gq22OsVWW51hq60+YautPmOrrb5gq62+YqutvmGrrc6x1VYXq/M1q63hNauthWvBmtXWImy1tRhbba2MrbZWwVZbq2KrrSXYams1bLW1OrbaWgNbba2JvXVr7bXWmtXWOthqa11stbUettpaH1ttbYCttjbEVlsbYautjbHV1ibYamtTbLW1Gbba2hO22tozttraC7ba2iu22tobttraHFttbbE2X7faOl632nq4HqxbbT3CVluPsdXWy9hq6xVstfUqttp6gq22XsNWW69jq603sNXWm9hq6y3srVvvrLfXrbbexVZb72Grrfex1dYH2GrrQ2y19RG22voYW219gq22PsVWW59hq60/YautP2Orrb9gq62/Yqutv2Grrc+x1dYX6/MNq23gDatthBvBhtU2Imy1jRhbbaOMrbZRwVbbqGKrbSTYahs1bLWNOrbaRgNbbaOJrbbRwlbbaGNv3UZ3o7NhtY0ettpGH1ttY4CttjHEVtsYYattjLHVNibYahtTbLWNGbbaxhO22sYzttrGC7baxiu22sYbttrGHFttY7Ex37TaJt602ma4GWxabTPCVtuMsdU2y9hqmxVstc0qttpmgq22WcNW26xjq202sNU2m9hqmy1stc02ttpmB3vrNnub3U2rbfax1TYH2GqbQ2y1zRG22uYYW21zgq22OcVW25xhq20+YattPmOrbb5gq22+YqttvmGrbc6x1TYXm/PIahGOrBbxxVpktSjCVotibLWojK0WVbDVoiq2WpRgq0U1bLWojq0WNbDVoia2WtTCVova2GpRB1st6mJvXdSPepHVogG2WjTEVotG2GrRGFstmmCrRVNstWiGrRY9YatFz9hq0Qu2WvSKrRa9YatFc2y1aBHNt6y2hbesthVuBVtW24qw1bZibLWtMrbaVgVbbauKrbaVYKtt1bDVturYalsNbLWtJrbaVgtbbauNrbbVwVbb6mKrbfWwt25rsNXfstrWEFtta4SttjXGVtuaYKttTbHVtmbYaltP2Gpbz9hqWy/Yaluv2Gpbb9hqW3Nsta3F1rxgtQIuWK0QFoKC1QoRtlohxlYrlLHVChVstUIVW62QYKsVathqhTq2WqGBrVZoYqsVWthqhTa2WqGDrVboYqsVethqhT721hWGhUHBaoURtlphjK1WmGCrFabYaoUZtlrhCVut8IytVnjBViu8YqsV3rDVCnNstcKiMN+22jbettp2uB1sW207wlbbjrHVtsvYatsVbLXtKrbadoKttl3DVtuuY6ttN7DVtpvYatstbLXtNrbadgdbbbuLrbbdw1bb7mOrbQ+wt257tD3cttr2GFtte4Kttj3FVtueYattP2GrbT9jq22/YKttv2Krbb9hq23PsdW2F9vzHavt4B2r7YQ7wY7VdiJstZ0YW22njK22U8FW26liq+0k2Go7NWy1nTq22k4DW22nia2208JW22ljq+10sNV2uthqOz1stZ0+ttrOAFttZ4i9dTvjndGO1XYm2Go7U2y1nRm22s4TttrOM7bazgu22s4rttrOG7bazhxbbWexM9+12i7etdpuuBvsWm03wlbbjbHVdsvYarsVbLXdKrbaboKttlvDVtutY6vtNrDVdpvYarstbLXdNrbabgdbbbeLrbbbw1bb7WOr7Q6w1XaH2Gq7I+yt253sjnettjvFVtudYavtPmGr7T5jq+2+YKvtvmKr7b5hq+3OsdV2F7vzotWKuGi1YlgMilYrRthqxRhbrVjGVitWsNWKVWy1YoKtVqxhqxXr2GrFBrZasYmtVmxhqxXb2GrFDrZasYutVuxhqxX72GrFAbZacYitVhxhqxXH2FtXnBYnRasVZ9hqxSdsteIztlrxBVut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) format('woff'); }
.dcss-rom { display: block; width: 0; height: 0; overflow: hidden; margin: 0; padding: 0 !important; border: 0; font-size: 1000px; line-height: 1; font-variation-settings: 'TABL' var(--dcss-k, 0); }
.dcss-rom > u, .dcss-rom2 > u { display: block !important; text-decoration: none; --dcss-value: round(1ch / 1px); }
.dcss-rom.dcss-sq { font-family: dcss-rom-sq; } .dcss-rom.dcss-sqrt { font-family: dcss-rom-sqrt; }
/* Two numbers by a table, at style time: the five pair tables of the text fonts (a, b whole numbers 0..31) at axis
   position op * 1024 + 32 a + b, in two fonts (a glyph holds at most 4,095 variations: min, max and a x b in one,
   |a - b| and a > b in the other).
     <i class="dcss-rom2 dcss-pair-min" style="--dcss-a: 5; --dcss-b: 9"><u></u></i>      the <u> gets --dcss-value: 5
   dcss-pair-min, -max, -product (a x b), -difference (|a - b|), -greater (1 when a > b). */
.dcss-rom2 { display: block; width: 0; height: 0; overflow: hidden; margin: 0; padding: 0 !important; border: 0; font-size: 1000px; line-height: 1; font-family: dcss-rom-pair1; font-variation-settings: 'TABL' calc(var(--dcss-op, 0) * 1024 + var(--dcss-a, 0) * 32 + var(--dcss-b, 0)); }
.dcss-rom2.dcss-pair-min { --dcss-op: 0; } .dcss-rom2.dcss-pair-max { --dcss-op: 1; } .dcss-rom2.dcss-pair-product { --dcss-op: 2; } .dcss-rom2.dcss-pair-difference { --dcss-op: 0; font-family: dcss-rom-pair2; } .dcss-rom2.dcss-pair-greater { --dcss-op: 1; font-family: dcss-rom-pair2; }
@counter-style dcss-tally { system: additive; fallback: dcss-dcss-tfall; additive-symbols: 30000 "\e70e\e70d\e70c\e70a\e708\e705\e704", 10000 "\e70d\e70a\e709\e708\e704", 1000 "M", 100 "C", 10 "X", 1 "I", 0 "Z"; }
@counter-style dcss-pair-min { system: additive; additive-symbols: 2048 "\e81f", 1984 "\e81e", 1920 "\e81d", 1856 "\e81c", 1792 "\e81b", 1728 "\e81a", 1664 "\e819", 1600 "\e818", 1536 "\e817", 1472 "\e816", 1408 "\e815", 1344 "\e814", 1280 "\e813", 1216 "\e812", 1152 "\e811", 1088 "\e810", 1024 "\e80f", 960 "\e80e", 896 "\e80d", 832 "\e80c", 768 "\e80b", 704 "\e80a", 640 "\e809", 576 "\e808", 512 "\e807", 448 "\e806", 384 "\e805", 320 "\e804", 256 "\e803", 192 "\e802", 128 "\e801", 64 "\e800", 32 "\e83f", 31 "\e83e", 30 "\e83d", 29 "\e83c", 28 "\e83b", 27 "\e83a", 26 "\e839", 25 "\e838", 24 "\e837", 23 "\e836", 22 "\e835", 21 "\e834", 20 "\e833", 19 "\e832", 18 "\e831", 17 "\e830", 16 "\e82f", 15 "\e82e", 14 "\e82d", 13 "\e82c", 12 "\e82b", 11 "\e82a", 10 "\e829", 9 "\e828", 8 "\e827", 7 "\e826", 6 "\e825", 5 "\e824", 4 "\e823", 3 "\e822", 2 "\e821", 1 "\e820"; }
@counter-style dcss-pair-max { system: additive; additive-symbols: 2048 "\e85f", 1984 "\e85e", 1920 "\e85d", 1856 "\e85c", 1792 "\e85b", 1728 "\e85a", 1664 "\e859", 1600 "\e858", 1536 "\e857", 1472 "\e856", 1408 "\e855", 1344 "\e854", 1280 "\e853", 1216 "\e852", 1152 "\e851", 1088 "\e850", 1024 "\e84f", 960 "\e84e", 896 "\e84d", 832 "\e84c", 768 "\e84b", 704 "\e84a", 640 "\e849", 576 "\e848", 512 "\e847", 448 "\e846", 384 "\e845", 320 "\e844", 256 "\e843", 192 "\e842", 128 "\e841", 64 "\e840", 32 "\e87f", 31 "\e87e", 30 "\e87d", 29 "\e87c", 28 "\e87b", 27 "\e87a", 26 "\e879", 25 "\e878", 24 "\e877", 23 "\e876", 22 "\e875", 21 "\e874", 20 "\e873", 19 "\e872", 18 "\e871", 17 "\e870", 16 "\e86f", 15 "\e86e", 14 "\e86d", 13 "\e86c", 12 "\e86b", 11 "\e86a", 10 "\e869", 9 "\e868", 8 "\e867", 7 "\e866", 6 "\e865", 5 "\e864", 4 "\e863", 3 "\e862", 2 "\e861", 1 "\e860"; }
@counter-style dcss-pair-product { system: additive; additive-symbols: 2048 "\e89f", 1984 "\e89e", 1920 "\e89d", 1856 "\e89c", 1792 "\e89b", 1728 "\e89a", 1664 "\e899", 1600 "\e898", 1536 "\e897", 1472 "\e896", 1408 "\e895", 1344 "\e894", 1280 "\e893", 1216 "\e892", 1152 "\e891", 1088 "\e890", 1024 "\e88f", 960 "\e88e", 896 "\e88d", 832 "\e88c", 768 "\e88b", 704 "\e88a", 640 "\e889", 576 "\e888", 512 "\e887", 448 "\e886", 384 "\e885", 320 "\e884", 256 "\e883", 192 "\e882", 128 "\e881", 64 "\e880", 32 "\e8bf", 31 "\e8be", 30 "\e8bd", 29 "\e8bc", 28 "\e8bb", 27 "\e8ba", 26 "\e8b9", 25 "\e8b8", 24 "\e8b7", 23 "\e8b6", 22 "\e8b5", 21 "\e8b4", 20 "\e8b3", 19 "\e8b2", 18 "\e8b1", 17 "\e8b0", 16 "\e8af", 15 "\e8ae", 14 "\e8ad", 13 "\e8ac", 12 "\e8ab", 11 "\e8aa", 10 "\e8a9", 9 "\e8a8", 8 "\e8a7", 7 "\e8a6", 6 "\e8a5", 5 "\e8a4", 4 "\e8a3", 3 "\e8a2", 2 "\e8a1", 1 "\e8a0"; }
@counter-style dcss-pair-difference { system: additive; additive-symbols: 2048 "\e8df", 1984 "\e8de", 1920 "\e8dd", 1856 "\e8dc", 1792 "\e8db", 1728 "\e8da", 1664 "\e8d9", 1600 "\e8d8", 1536 "\e8d7", 1472 "\e8d6", 1408 "\e8d5", 1344 "\e8d4", 1280 "\e8d3", 1216 "\e8d2", 1152 "\e8d1", 1088 "\e8d0", 1024 "\e8cf", 960 "\e8ce", 896 "\e8cd", 832 "\e8cc", 768 "\e8cb", 704 "\e8ca", 640 "\e8c9", 576 "\e8c8", 512 "\e8c7", 448 "\e8c6", 384 "\e8c5", 320 "\e8c4", 256 "\e8c3", 192 "\e8c2", 128 "\e8c1", 64 "\e8c0", 32 "\e8ff", 31 "\e8fe", 30 "\e8fd", 29 "\e8fc", 28 "\e8fb", 27 "\e8fa", 26 "\e8f9", 25 "\e8f8", 24 "\e8f7", 23 "\e8f6", 22 "\e8f5", 21 "\e8f4", 20 "\e8f3", 19 "\e8f2", 18 "\e8f1", 17 "\e8f0", 16 "\e8ef", 15 "\e8ee", 14 "\e8ed", 13 "\e8ec", 12 "\e8eb", 11 "\e8ea", 10 "\e8e9", 9 "\e8e8", 8 "\e8e7", 7 "\e8e6", 6 "\e8e5", 5 "\e8e4", 4 "\e8e3", 3 "\e8e2", 2 "\e8e1", 1 "\e8e0"; }
@counter-style dcss-pair-greater { system: additive; additive-symbols: 2048 "\e91f", 1984 "\e91e", 1920 "\e91d", 1856 "\e91c", 1792 "\e91b", 1728 "\e91a", 1664 "\e919", 1600 "\e918", 1536 "\e917", 1472 "\e916", 1408 "\e915", 1344 "\e914", 1280 "\e913", 1216 "\e912", 1152 "\e911", 1088 "\e910", 1024 "\e90f", 960 "\e90e", 896 "\e90d", 832 "\e90c", 768 "\e90b", 704 "\e90a", 640 "\e909", 576 "\e908", 512 "\e907", 448 "\e906", 384 "\e905", 320 "\e904", 256 "\e903", 192 "\e902", 128 "\e901", 64 "\e900", 32 "\e93f", 31 "\e93e", 30 "\e93d", 29 "\e93c", 28 "\e93b", 27 "\e93a", 26 "\e939", 25 "\e938", 24 "\e937", 23 "\e936", 22 "\e935", 21 "\e934", 20 "\e933", 19 "\e932", 18 "\e931", 17 "\e930", 16 "\e92f", 15 "\e92e", 14 "\e92d", 13 "\e92c", 12 "\e92b", 11 "\e92a", 10 "\e929", 9 "\e928", 8 "\e927", 7 "\e926", 6 "\e925", 5 "\e924", 4 "\e923", 3 "\e922", 2 "\e921", 1 "\e920"; }
@counter-style dcss-unary { system: additive; additive-symbols: 100 "\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001", 10 "\e001\e001\e001\e001\e001\e001\e001\e001\e001\e001", 1 "\e001", 0 ""; }
@counter-style dcss-tally4 { system: additive; fallback: dcss-dcss-tfall; additive-symbols: 1000 "\e70e\e70d\e70c\e70b\e70a\e708", 100 "\e70b\e70a\e707", 10 "\e708\e706", 1 "\e705", 0 "\e600"; }
/* past 120 symbols (Chrome) or 150 code points (Firefox) a counter style prints its fallback
   (facts/at-counter-style/counter-style-length-cap.mjs): dcss-tally from 2,519,999 in Chrome and 318,999 in Firefox,
   where its decimal digits read as a small number, right-looking. The fallback here is a thin space, from no font of
   the library's, never a whole number of px (25.609 in Chrome, 25.633 in Firefox): a reader whose width isn't whole
   gives error 1 */
@counter-style dcss-dcss-tfall { system: cyclic; symbols: "\2009"; }
@counter-style dcss-kilo { system: additive; fallback: dcss-dcss-tfall; additive-symbols: 30 "\e70e\e70d\e70c\e70a\e708\e705\e704", 10 "\e70d\e70a\e709\e708\e704", 1 "\e501", 0 "\e500"; }
@counter-style dcss-abs { system: additive; additive-symbols: 30000 "\e70e\e70d\e70c\e70a\e708\e705\e704", 10000 "\e70d\e70a\e709\e708\e704", 1000 "M", 100 "C", 10 "X", 1 "I", 0 "Z"; range: infinite infinite; negative: ""; }
@counter-style dcss-sign { system: additive; additive-symbols: 30000 "\e70e\e70d\e70c\e70a\e708\e705\e704", 10000 "\e70d\e70a\e709\e708\e704", 1000 "M", 100 "C", 10 "X", 1 "I", 0 "Z"; range: infinite infinite; negative: "\e001"; }
@counter-style dcss-zero { system: cyclic; symbols: "\e000"; }
@counter-style dcss-relu { system: additive; additive-symbols: 30000 "\e70e\e70d\e70c\e70a\e708\e705\e704", 10000 "\e70d\e70a\e709\e708\e704", 1000 "M", 100 "C", 10 "X", 1 "I", 0 "Z"; range: 0 infinite; fallback: dcss-zero; }
@counter-style dcss-table { system: fixed 0; symbols: "\e000" "\e001" "\e002" "\e003" "\e004" "\e005" "\e006" "\e007" "\e008" "\e009" "\e00a" "\e00b" "\e00c" "\e00d" "\e00e" "\e00f" "\e010" "\e011" "\e012" "\e013" "\e014" "\e015" "\e016" "\e017" "\e018" "\e019" "\e01a" "\e01b" "\e01c" "\e01d" "\e01e" "\e01f" "\e020" "\e021" "\e022" "\e023" "\e024" "\e025" "\e026" "\e027" "\e028" "\e029" "\e02a" "\e02b" "\e02c" "\e02d" "\e02e" "\e02f" "\e030" "\e031" "\e032" "\e033" "\e034" "\e035" "\e036" "\e037" "\e038" "\e039" "\e03a" "\e03b" "\e03c" "\e03d" "\e03e" "\e03f" "\e040" "\e041" "\e042" "\e043" "\e044" "\e045" "\e046" "\e047" "\e048" "\e049" "\e04a" "\e04b" "\e04c" "\e04d" "\e04e" "\e04f" "\e050" "\e051" "\e052" "\e053" "\e054" "\e055" "\e056" "\e057" "\e058" "\e059" "\e05a" "\e05b" "\e05c" "\e05d" "\e05e" "\e05f" "\e060" "\e061" "\e062" "\e063" "\e064" "\e065" "\e066" "\e067" "\e068" "\e069" "\e06a" "\e06b" "\e06c" "\e06d" "\e06e" "\e06f" "\e070" "\e071" "\e072" "\e073" "\e074" "\e075" "\e076" "\e077" "\e078" "\e079" "\e07a" "\e07b" "\e07c" "\e07d" "\e07e" "\e07f" "\e080" "\e081" "\e082" "\e083" "\e084" "\e085" "\e086" "\e087" "\e088" "\e089" "\e08a" "\e08b" "\e08c" "\e08d" "\e08e" "\e08f" "\e090" "\e091" "\e092" "\e093" "\e094" "\e095" "\e096" "\e097" "\e098" "\e099" "\e09a" "\e09b" "\e09c" "\e09d" "\e09e" "\e09f" "\e0a0" "\e0a1" "\e0a2" "\e0a3" "\e0a4" "\e0a5" "\e0a6" "\e0a7" "\e0a8" "\e0a9" "\e0aa" "\e0ab" "\e0ac" "\e0ad" "\e0ae" "\e0af" "\e0b0" "\e0b1" "\e0b2" "\e0b3" "\e0b4" "\e0b5" "\e0b6" "\e0b7" "\e0b8" "\e0b9" "\e0ba" "\e0bb" "\e0bc" "\e0bd" "\e0be" "\e0bf" "\e0c0" "\e0c1" "\e0c2" "\e0c3" "\e0c4" "\e0c5" "\e0c6" "\e0c7" "\e0c8" "\e0c9" "\e0ca" "\e0cb" "\e0cc" "\e0cd" "\e0ce" "\e0cf" "\e0d0" "\e0d1" "\e0d2" "\e0d3" "\e0d4" "\e0d5" "\e0d6" "\e0d7" "\e0d8" "\e0d9" "\e0da" "\e0db" "\e0dc" "\e0dd" "\e0de" "\e0df" "\e0e0" "\e0e1" "\e0e2" "\e0e3" "\e0e4" "\e0e5" "\e0e6" "\e0e7" "\e0e8" "\e0e9" "\e0ea" "\e0eb" "\e0ec" "\e0ed" "\e0ee" "\e0ef" "\e0f0" "\e0f1" "\e0f2" "\e0f3" "\e0f4" "\e0f5" "\e0f6" "\e0f7" "\e0f8" "\e0f9" "\e0fa" "\e0fb" "\e0fc" "\e0fd" "\e0fe" "\e0ff" "\e100" "\e101" "\e102" "\e103" "\e104" "\e105" "\e106" "\e107" "\e108" "\e109" "\e10a" "\e10b" "\e10c" "\e10d" "\e10e" "\e10f" "\e110" "\e111" "\e112" "\e113" "\e114" "\e115" "\e116" "\e117" "\e118" "\e119" "\e11a" "\e11b" "\e11c" "\e11d" "\e11e" "\e11f" "\e120" "\e121" "\e122" "\e123" "\e124" "\e125" "\e126" "\e127" "\e128" "\e129" "\e12a" "\e12b" "\e12c" "\e12d" "\e12e" "\e12f" "\e130" "\e131" "\e132" "\e133" "\e134" "\e135" "\e136" "\e137" "\e138" "\e139" "\e13a" "\e13b" "\e13c" "\e13d" "\e13e" "\e13f" "\e140" "\e141" "\e142" "\e143" "\e144" "\e145" "\e146" "\e147" "\e148" "\e149" "\e14a" "\e14b" "\e14c" "\e14d" "\e14e" "\e14f" "\e150" "\e151" "\e152" "\e153" "\e154" "\e155" "\e156" "\e157" "\e158" "\e159" "\e15a" "\e15b" "\e15c" "\e15d" "\e15e" "\e15f" "\e160" "\e161" "\e162" "\e163" "\e164" "\e165" "\e166" "\e167" "\e168" "\e169" "\e16a" "\e16b" "\e16c" "\e16d" "\e16e" "\e16f" "\e170" "\e171" "\e172" "\e173" "\e174" "\e175" "\e176" "\e177" "\e178" "\e179" "\e17a" "\e17b" "\e17c" "\e17d" "\e17e" "\e17f" "\e180" "\e181" "\e182" "\e183" "\e184" "\e185" "\e186" "\e187" "\e188" "\e189" "\e18a" "\e18b" "\e18c" "\e18d" "\e18e" "\e18f" "\e190" "\e191" "\e192" "\e193" "\e194" "\e195" "\e196" "\e197" "\e198" "\e199" "\e19a" "\e19b" "\e19c" "\e19d" "\e19e" "\e19f" "\e1a0" "\e1a1" "\e1a2" "\e1a3" "\e1a4" "\e1a5" "\e1a6" "\e1a7" "\e1a8" "\e1a9" "\e1aa" "\e1ab" "\e1ac" "\e1ad" "\e1ae" "\e1af" "\e1b0" "\e1b1" "\e1b2" "\e1b3" "\e1b4" "\e1b5" "\e1b6" "\e1b7" "\e1b8" "\e1b9" "\e1ba" "\e1bb" "\e1bc" "\e1bd" "\e1be" "\e1bf" "\e1c0" "\e1c1" "\e1c2" "\e1c3" "\e1c4" "\e1c5" "\e1c6" "\e1c7" "\e1c8" "\e1c9" "\e1ca" "\e1cb" "\e1cc" "\e1cd" "\e1ce" "\e1cf" "\e1d0" "\e1d1" "\e1d2" "\e1d3" "\e1d4" "\e1d5" "\e1d6" "\e1d7" "\e1d8" "\e1d9" "\e1da" "\e1db" "\e1dc" "\e1dd" "\e1de" "\e1df" "\e1e0" "\e1e1" "\e1e2" "\e1e3" "\e1e4" "\e1e5" "\e1e6" "\e1e7" "\e1e8" "\e1e9" "\e1ea" "\e1eb" "\e1ec" "\e1ed" "\e1ee" "\e1ef" "\e1f0" "\e1f1" "\e1f2" "\e1f3" "\e1f4" "\e1f5" "\e1f6" "\e1f7" "\e1f8" "\e1f9" "\e1fa" "\e1fb" "\e1fc" "\e1fd" "\e1fe" "\e1ff" "\e200" "\e201" "\e202" "\e203" "\e204" "\e205" "\e206" "\e207" "\e208" "\e209" "\e20a" "\e20b" "\e20c" "\e20d" "\e20e" "\e20f" "\e210" "\e211" "\e212" "\e213" "\e214" "\e215" "\e216" "\e217" "\e218" "\e219" "\e21a" "\e21b" "\e21c" "\e21d" "\e21e" "\e21f" "\e220" "\e221" "\e222" "\e223" "\e224" "\e225" "\e226" "\e227" "\e228" "\e229" "\e22a" "\e22b" "\e22c" "\e22d" "\e22e" "\e22f" "\e230" "\e231" "\e232" "\e233" "\e234" "\e235" "\e236" "\e237" "\e238" "\e239" "\e23a" "\e23b" "\e23c" "\e23d" "\e23e" "\e23f" "\e240" "\e241" "\e242" "\e243" "\e244" "\e245" "\e246" "\e247" "\e248" "\e249" "\e24a" "\e24b" "\e24c" "\e24d" "\e24e" "\e24f" "\e250" "\e251" "\e252" "\e253" "\e254" "\e255" "\e256" "\e257" "\e258" "\e259" "\e25a" "\e25b" "\e25c" "\e25d" "\e25e" "\e25f" "\e260" "\e261" "\e262" "\e263" "\e264" "\e265" "\e266" "\e267" "\e268" "\e269" "\e26a" "\e26b" "\e26c" "\e26d" "\e26e" "\e26f" "\e270" "\e271" "\e272" "\e273" "\e274" "\e275" "\e276" "\e277" "\e278" "\e279" "\e27a" "\e27b" "\e27c" "\e27d" "\e27e" "\e27f" "\e280" "\e281" "\e282" "\e283" "\e284" "\e285" "\e286" "\e287" "\e288" "\e289" "\e28a" "\e28b" "\e28c" "\e28d" "\e28e" "\e28f" "\e290" "\e291" "\e292" "\e293" "\e294" "\e295" "\e296" "\e297" "\e298" "\e299" "\e29a" "\e29b" "\e29c" "\e29d" "\e29e" "\e29f" "\e2a0" "\e2a1" "\e2a2" "\e2a3" "\e2a4" "\e2a5" "\e2a6" "\e2a7" "\e2a8" "\e2a9" "\e2aa" "\e2ab" "\e2ac" "\e2ad" "\e2ae" "\e2af" "\e2b0" "\e2b1" "\e2b2" "\e2b3" "\e2b4" "\e2b5" "\e2b6" "\e2b7" "\e2b8" "\e2b9" "\e2ba" "\e2bb" "\e2bc" "\e2bd" "\e2be" "\e2bf" "\e2c0" "\e2c1" "\e2c2" "\e2c3" "\e2c4" "\e2c5" "\e2c6" "\e2c7" "\e2c8" "\e2c9" "\e2ca" "\e2cb" "\e2cc" "\e2cd" "\e2ce" "\e2cf" "\e2d0" "\e2d1" "\e2d2" "\e2d3" "\e2d4" "\e2d5" "\e2d6" "\e2d7" "\e2d8" "\e2d9" "\e2da" "\e2db" "\e2dc" "\e2dd" "\e2de" "\e2df" "\e2e0" "\e2e1" "\e2e2" "\e2e3" "\e2e4" "\e2e5" "\e2e6" "\e2e7" "\e2e8" "\e2e9" "\e2ea" "\e2eb" "\e2ec" "\e2ed" "\e2ee" "\e2ef" "\e2f0" "\e2f1" "\e2f2" "\e2f3" "\e2f4" "\e2f5" "\e2f6" "\e2f7" "\e2f8" "\e2f9" "\e2fa" "\e2fb" "\e2fc" "\e2fd" "\e2fe" "\e2ff" "\e300" "\e301" "\e302" "\e303" "\e304" "\e305" "\e306" "\e307" "\e308" "\e309" "\e30a" "\e30b" "\e30c" "\e30d" "\e30e" "\e30f" "\e310" "\e311" "\e312" "\e313" "\e314" "\e315" "\e316" "\e317" "\e318" "\e319" "\e31a" "\e31b" "\e31c" "\e31d" "\e31e" "\e31f" "\e320" "\e321" "\e322" "\e323" "\e324" "\e325" "\e326" "\e327" "\e328" "\e329" "\e32a" "\e32b" "\e32c" "\e32d" "\e32e" "\e32f" "\e330" "\e331" "\e332" "\e333" "\e334" "\e335" "\e336" "\e337" "\e338" "\e339" "\e33a" "\e33b" "\e33c" "\e33d" "\e33e" "\e33f" "\e340" "\e341" "\e342" "\e343" "\e344" "\e345" "\e346" "\e347" "\e348" "\e349" "\e34a" "\e34b" "\e34c" "\e34d" "\e34e" "\e34f" "\e350" "\e351" "\e352" "\e353" "\e354" "\e355" "\e356" "\e357" "\e358" "\e359" "\e35a" "\e35b" "\e35c" "\e35d" "\e35e" "\e35f" "\e360" "\e361" "\e362" "\e363" "\e364" "\e365" "\e366" "\e367" "\e368" "\e369" "\e36a" "\e36b" "\e36c" "\e36d" "\e36e" "\e36f" "\e370" "\e371" "\e372" "\e373" "\e374" "\e375" "\e376" "\e377" "\e378" "\e379" "\e37a" "\e37b" "\e37c" "\e37d" "\e37e" "\e37f" "\e380" "\e381" "\e382" "\e383" "\e384" "\e385" "\e386" "\e387" "\e388" "\e389" "\e38a" "\e38b" "\e38c" "\e38d" "\e38e" "\e38f" "\e390" "\e391" "\e392" "\e393" "\e394" "\e395" "\e396" "\e397" "\e398" "\e399" "\e39a" "\e39b" "\e39c" "\e39d" "\e39e" "\e39f" "\e3a0" "\e3a1" "\e3a2" "\e3a3" "\e3a4" "\e3a5" "\e3a6" "\e3a7" "\e3a8" "\e3a9" "\e3aa" "\e3ab" "\e3ac" "\e3ad" "\e3ae" "\e3af" "\e3b0" "\e3b1" "\e3b2" "\e3b3" "\e3b4" "\e3b5" "\e3b6" "\e3b7" "\e3b8" "\e3b9" "\e3ba" "\e3bb" "\e3bc" "\e3bd" "\e3be" "\e3bf" "\e3c0" "\e3c1" "\e3c2" "\e3c3" "\e3c4" "\e3c5" "\e3c6" "\e3c7" "\e3c8" "\e3c9" "\e3ca" "\e3cb" "\e3cc" "\e3cd" "\e3ce" "\e3cf" "\e3d0" "\e3d1" "\e3d2" "\e3d3" "\e3d4" "\e3d5" "\e3d6" "\e3d7" "\e3d8" "\e3d9" "\e3da" "\e3db" "\e3dc" "\e3dd" "\e3de" "\e3df" "\e3e0" "\e3e1" "\e3e2" "\e3e3" "\e3e4" "\e3e5" "\e3e6" "\e3e7"; fallback: dcss-tally; }
/* the printed text in its font at its size, so 1ch is the font's 1 px "0" glyph: where it isn't (a minimum font size
   past 128px, the font blocked or not loaded) the text is 2^24 px wide and its readers' --dcss-err 1, not a number a
   fallback font's widths made. The guard is on the ::before, which a page's * { font-family: serif !important } does not
   reach; and under a zoom below 1.25 in WebKit, by the root's 1rem, below (probes/dcss/counters/font-size-check.mjs) */
@property --dcss-dcss-glyph { syntax: '<integer>'; inherits: true; initial-value: 0; }
/* and the root's font size (its 1em: 1rem on the root is the initial 16px), as a length: inside an ancestor's CSS zoom z WebKit's 1rem is 1/z of it (Chrome's is the same at
   any zoom), and below 1.25 a zoom other than 1 reads off the 1/64 px grid (QUIRKS.md Q14), so there the text is error 1
   too. A sheet without this rule leaves the guard to the glyph (var()'s 0px) */
@property --dcss-dcss-rem { syntax: '<length>'; inherits: true; initial-value: 0px; }
:root { --dcss-dcss-rem: 1em; }
.dcss-text { display: block; width: max-content; height: 0; position: relative; margin: 0; padding: 0 !important; border: 0; writing-mode: horizontal-tb !important; direction: ltr !important; font: 128px/0 var(--dcss-font, dcss-text) !important; text-size-adjust: none !important; -webkit-text-size-adjust: none !important; }
.dcss-text::before { content: var(--dcss-text); display: block !important; font: 128px/0 var(--dcss-font, dcss-text) !important; text-size-adjust: none !important; -webkit-text-size-adjust: none !important; white-space: pre !important; letter-spacing: calc((var(--dcss-each, 1) - 1) * 1px) !important; tab-size: calc(var(--dcss-tab, 2) * 32px) !important; word-spacing: 0 !important; text-indent: 0 !important; text-transform: none !important; font-kerning: normal !important; font-synthesis: none !important; font-variant: normal !important; font-feature-settings: normal !important; font-variation-settings: normal !important; font-size-adjust: none !important; --dcss-dcss-glyph: calc((1 - sign(abs(round(64 * 1ch / 1px) - 64))) * (1 - sign(var(--dcss-dcss-rem, 0px) / 1px) * sign(max(0, abs((1rem / max(1px, var(--dcss-dcss-rem, 0px))) - 1) - 0.001)) * sign(max(0, (1rem / max(1px, var(--dcss-dcss-rem, 0px))) - 0.801)))); min-width: calc((1 - var(--dcss-dcss-glyph)) * 16777216px) !important; }
.dcss-text.dcss-sq { --dcss-font: dcss-sq; } .dcss-text.dcss-sqrt { --dcss-font: dcss-sqrt; }
.dcss-text.dcss-divide > u > u { --dcss-value: calc(round(100cqw / 1px / 32 / var(--dcss-tab, 2)) - 1); }
.dcss-text.dcss-two > u > u { --dcss-high: round(down, round(100cqw / 1px) / 1000); --dcss-low: mod(round(100cqw / 1px), 1000); }
.dcss-text > u { position: absolute !important; inset: 0; container-type: inline-size; text-decoration: none; }
.dcss-text > u > u { display: block !important; --dcss-value: calc(100cqw / 1px); --dcss-err: max(sign(max(0, round(100cqw / 1px) - 16777215)), sign(max(0, abs(100cqw / 1px - round(100cqw / 1px)) - 0.001))); text-decoration: none; }
/* A page's own counter as a signed 32-bit number: <b class="dcss-int" style="--dcss-counter: total"><u><u></u></u></b>
   after the elements that count it (counter-increment: total calc(...), whole numbers). The reader takes no room (its box
   is absolutely positioned where it stands). Its ::before prints the counter's low 12 bits across, 2^k px a bit, 4,096 px
   more for a negative and 8,192 for the sentinel (below), and its ::after its bits 12 to 30 sideways, 2^(k - 12) px a bit
   (each style has every weight to 1, the other line's bits empty strings: an additive style that can't make a value
   prints it in decimal digits), both in the lists' font at 128px (dcss-dcss-bits). Each line stays within 150 code
   points, where Firefox falls back to decimal (at most 15 across and 128 down; one line of 24 bits took up to 2,048
   for bit 23: facts/at-counter-style/counter-style-length-cap.mjs), and 120 symbols, where Chrome does. The box is as
   wide as the first and as tall as the second, and its inner <u> reads both as container units. The answer is on the
   inner <u> as --dcss-int, a calc() of parts no more than 6 digits each (Chrome keeps 6 of a registered number through
   var()), and --dcss-err 1 where the text isn't in its font at its size (the guard) */
@counter-style dcss-dcss-lo12 { system: additive; range: infinite infinite; negative: "\e70c"; additive-symbols: 1073741824 "", 536870912 "", 268435456 "", 134217728 "", 67108864 "", 33554432 "", 16777216 "", 8388608 "", 4194304 "", 2097152 "", 1048576 "", 524288 "", 262144 "", 131072 "", 65536 "", 32768 "", 16384 "", 8192 "", 4096 "", 2048 "\e70b", 1024 "\e70a", 512 "\e709", 256 "\e708", 128 "\e707", 64 "\e706", 32 "\e705", 16 "\e704", 8 "\e703", 4 "\e702", 2 "\e701", 1 "\e700", 0 ""; }
@counter-style dcss-dcss-seen { system: additive; range: 0 1; additive-symbols: 1 "\e70d", 0 ""; }
@counter-style dcss-dcss-hi19 { system: additive; range: infinite infinite; negative: ""; additive-symbols: 1073741824 "\e70e\e70e\e70e\e70e\e70e\e70e\e70e\e70e\e70e\e70e\e70e\e70e\e70e\e70e\e70e\e70e", 536870912 "\e70e\e70e\e70e\e70e\e70e\e70e\e70e\e70e", 268435456 "\e70e\e70e\e70e\e70e", 134217728 "\e70e\e70e", 67108864 "\e70e", 33554432 "\e70d", 16777216 "\e70c", 8388608 "\e70b", 4194304 "\e70a", 2097152 "\e709", 1048576 "\e708", 524288 "\e707", 262144 "\e706", 131072 "\e705", 65536 "\e704", 32768 "\e703", 16384 "\e702", 8192 "\e701", 4096 "\e700", 2048 "", 1024 "", 512 "", 256 "", 128 "", 64 "", 32 "", 16 "", 8 "", 4 "", 2 "", 1 "", 0 ""; }
@property --dcss-dcss-ic { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-dcss-iw { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-dcss-iu { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-dcss-ih { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-dcss-is { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-dcss-im { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --dcss-dcss-ii { syntax: '<integer>'; inherits: false; initial-value: 0; }
/* the box in the lines' font too: Firefox takes 1ch in a registered number from the parent's font (facts/calc/font-unit-number-parent-font.mjs).
   It is computing, never display: hidden, and it grows up and left from its containing block's top left corner, where
   nothing scrolls (at its top left, three readers made dcss's examples page 11,359 px wide in a 972 px window, and
   without ctx.css they painted their 128px lines over the page); the reads are the same either way */
.dcss-int { display: flex; align-items: flex-start; position: absolute; inset: auto 100% 100% auto !important; visibility: hidden !important; pointer-events: none !important; width: max-content; height: auto; margin: 0; padding: 0 !important; border: 0; writing-mode: horizontal-tb; direction: ltr; font: 128px/0 dcss-dcss-bits; text-size-adjust: none; -webkit-text-size-adjust: none; }
.dcss-int::before, .dcss-int::after { display: block !important; flex: none; overflow: clip; margin: 0; padding: 0 !important; border: 0; font: 128px/0 dcss-dcss-bits !important; text-size-adjust: none !important; -webkit-text-size-adjust: none !important; white-space: pre !important; letter-spacing: 0 !important; word-spacing: 0 !important; text-indent: 0 !important; text-transform: none !important; font-kerning: normal !important; font-synthesis: none !important; font-variant: normal !important; font-feature-settings: normal !important; font-variation-settings: normal !important; font-size-adjust: none !important; direction: ltr; --dcss-dcss-glyph: calc((1 - sign(abs(round(64 * 1ch / 1px) - 64))) * (1 - sign(var(--dcss-dcss-rem, 0px) / 1px) * sign(max(0, abs((1rem / max(1px, var(--dcss-dcss-rem, 0px))) - 1) - 0.001)) * sign(max(0, (1rem / max(1px, var(--dcss-dcss-rem, 0px))) - 0.801)))); min-width: calc((1 - var(--dcss-dcss-glyph)) * 16777216px) !important; }
.dcss-int::before { content: counter(var(--dcss-counter), dcss-dcss-lo12) counter(dcss-dcss-seen, dcss-dcss-seen) var(--dcss-dcss-tail); width: max-content; height: 0; writing-mode: horizontal-tb; }
.dcss-int::after { content: counter(var(--dcss-counter), dcss-dcss-hi19) var(--dcss-dcss-tail); width: 0; height: max-content; writing-mode: vertical-lr; text-orientation: sideways; }
.dcss-int > u { position: absolute !important; inset: 0; container-type: size; text-decoration: none; }
.dcss-int > u > u { display: block !important; text-decoration: none;
  --dcss-dcss-ic: sign(max(0, round(100cqw / 1px) - 8191));
  --dcss-dcss-iu: calc(round(100cqw / 1px) - 8192 * var(--dcss-dcss-ic));
  --dcss-dcss-is: sign(max(0, var(--dcss-dcss-iu) - 4095));
  --dcss-dcss-iw: calc(var(--dcss-dcss-iu) - 4096 * var(--dcss-dcss-is));
  --dcss-dcss-ih: round(100cqh / 1px);
  --dcss-dcss-im: round(down, (4096 * var(--dcss-dcss-ih) + var(--dcss-dcss-iw)) / 1000000, 1);
  --dcss-dcss-ii: calc(4096 * var(--dcss-dcss-ih) + var(--dcss-dcss-iw) - 1000000 * var(--dcss-dcss-im));
  --dcss-int: calc((1 - 2 * var(--dcss-dcss-is)) * (var(--dcss-dcss-im) * 1000000 + var(--dcss-dcss-ii)));
  --dcss-err: max(sign(max(0, round(100cqw / 1px) - 16383)), sign(max(0, var(--dcss-dcss-ih) - 524288)), (1 - ((16777216 + 1) - 16777216)) * sign(max(0, var(--dcss-dcss-ih) - 4095)), (1 - var(--dcss-dcss-ic)) * (1 - sign(var(--dcss-dcss-iw) + var(--dcss-dcss-ih)))); }
/* WebKit 26.4 leaves an element whose box is made after load (appended, or shown) out of a counter this reader already
   printed (facts/counter-increment/counter-late-box-stale.mjs), so in every engine (no CSS tells a stale print) the lines' text steps between two equal forms
   every 0.1 s, which makes them again (40, 41, 141 in Chrome 155 and WebKit 26.4, not 40, 40, 140). The step is a string
   animated on the reader that the lines' content ends with: content animated itself, its counter named by var() in the
   keyframes, read 77 as 524,480 with error 0 in Chromium 152.0.7977.167 (2026-11-02), and a style query on an animated
   number, or an animated counter-increment or counter-reset, left WebKit's print stale */
@keyframes dcss-dcss-int-step { 0% { --dcss-dcss-tail: ""; } 50% { --dcss-dcss-tail: "" ""; } }
.dcss-int { --dcss-dcss-tail: ""; animation: dcss-dcss-int-step 0.1s steps(1) infinite !important; }
/* WebKit 26.4 reads 0 for a counter set outside a size container, a contain: style box, or on either, from inside it
   (QUIRKS.md Q15; facts/counter/counter-read-inside-containment.mjs). A sentinel tells it: dcss-dcss-seen, reset to 1 on
   html::before, is printed after the low bits as 8,192 px more, and reads 0 exactly where the page's counter is out of
   sight; a reader that reads 0 there gives error 1 (it can't tell a counter at 0 from one it can't see). Chrome and
   Firefox see it everywhere. A page with no html::before (an SVG image's foreignObject) fails on every 0 (error 1) */
html::before { content: ''; position: absolute !important; counter-reset: dcss-dcss-seen 1; }
.dcss-array > i.dcss-text, .dcss-bins.dcss-bin-max > i.dcss-text, .dcss-map > i.dcss-text, .dcss-width-sum > i.dcss-text, .dcss-largest > i.dcss-text, .dcss-scale > i.dcss-text, .dcss-times > i.dcss-text, .dcss-cap > b > i.dcss-text { width: max-content; }
/* Nested arrays: <div class="dcss-rows"> of <b>, an inner array each, holding its elements <i style="--dcss-n:
   width; --dcss-key: order">: a row is as wide as its elements end to end (its sum; .dcss-bin-max: its largest, every
   element in one cell), each element at the widths before it in its row, sorted by --dcss-key inside its row. */
.dcss-rows { display: flex; flex-direction: column; align-items: flex-start; }
.dcss-rows > b { display: flex !important; width: max-content; height: 1px; margin: 0; padding: 0 !important; border: 0; }
.dcss-rows > b > i { flex: none; height: 1px; margin: 0; padding: 0 !important; border: 0; width: calc(max(0, var(--dcss-n)) * 1px); order: var(--dcss-key); }
.dcss-rows > b.dcss-bin-max { display: grid !important; } .dcss-rows > b.dcss-bin-max > i { grid-area: 1 / 1; }
/* A tree: <div class="dcss-tree"> of nested <b class="dcss-node">, each holding <i style="--dcss-n: amount"> for
   itself, its child nodes, and <b class="dcss-sub"><u></u></b>, whose <u> gets --dcss-value, the subtree's sum. */
.dcss-tree { display: flex; flex-direction: column; align-items: flex-start; }
.dcss-node { position: relative; display: flex; flex: none; height: 1px; margin: 0; padding: 0 !important; border: 0; }
.dcss-node > i { flex: none; height: 1px; margin: 0; padding: 0 !important; border: 0; width: calc(max(0, var(--dcss-n)) * 1px); }
.dcss-node > .dcss-sub { position: absolute !important; inset: 0; container-type: inline-size; }
.dcss-node > .dcss-sub > u { display: block !important; --dcss-value: calc(100cqw / 1px); text-decoration: none; }
/* Top down (.dcss-tree.dcss-down, 1 px wide): a node's children sit in <b class="dcss-kids" style="--dcss-n: flag">,
   the node's width times the flag, so a node's --dcss-value is 1 when the flag holds on every node above it. */
.dcss-tree.dcss-down { display: block; width: 1px; }
.dcss-down .dcss-node { display: block !important; width: 100%; }
.dcss-down .dcss-kids { display: block !important; height: 1px; margin: 0; padding: 0 !important; border: 0; width: calc(max(0, var(--dcss-n)) * 100%); }
/* Piles: items stacked by group, each at the sum of the heights before it in its group. A wrapping column
   --dcss-height px tall: first a <b> a group, each 1 px taller than the column, so each group starts a column; then
   the items <i style="--dcss-bin: 1..; --dcss-n: height; --dcss-key: 0..--dcss-span - 1">. */
.dcss-piles { display: flex; flex-direction: column; flex-wrap: wrap; align-content: flex-start; height: calc(var(--dcss-height) * 1px); --dcss-p-pk: calc(var(--dcss-span) + 1); }
.dcss-piles > * { flex: none; width: 0; margin: 0; padding: 0 !important; border: 0; }
.dcss-piles > b { height: calc(100% + 1px); order: calc(var(--dcss-p-pk) * (sibling-index() - 1)); }
.dcss-piles > i { height: calc(max(0, var(--dcss-n)) * 1px); order: calc(var(--dcss-p-pk) * (max(1, var(--dcss-bin)) - 1) + 1 + var(--dcss-key)); }
/* Group starts (a counting sort): first a 0-wide <b> a group, then the items <i style="--dcss-bin: 1..; --dcss-n: 1">
   (0 drops one); group k's <b> sits where it starts, the sum of --dcss-n over the items of groups before k. */
.dcss-starts { display: flex; }
.dcss-starts > * { flex: none; height: 0; margin: 0; padding: 0 !important; border: 0; }
.dcss-starts > b { width: 0; order: calc(2 * sibling-index() - 2); }
.dcss-starts > i { width: calc(max(0, var(--dcss-n)) * 1px); order: calc(2 * max(1, var(--dcss-bin)) - 1); }

@counter-style dcss-tick-none { system: fixed -1; symbols: "" ""; }
@counter-style dcss-tick-int { system: extends decimal; range: 0 infinite; fallback: dcss-tick-none; }
@counter-style dcss-tick-pad3 { system: extends decimal; pad: 3 "0"; range: 0 infinite; fallback: dcss-tick-none; }
@counter-style dcss-tick-dec1 { system: extends decimal; pad: 1 "0"; range: 0 infinite; fallback: dcss-tick-none; }
@counter-style dcss-tick-dec2 { system: extends decimal; pad: 2 "0"; range: 0 infinite; fallback: dcss-tick-none; }
@counter-style dcss-tick-dec3 { system: extends decimal; pad: 3 "0"; range: 0 infinite; fallback: dcss-tick-none; }
@counter-style dcss-tick-dec4 { system: extends decimal; pad: 4 "0"; range: 0 infinite; fallback: dcss-tick-none; }
@counter-style dcss-tick-dec5 { system: extends decimal; pad: 5 "0"; range: 0 infinite; fallback: dcss-tick-none; }
@counter-style dcss-tick-dec6 { system: extends decimal; pad: 6 "0"; range: 0 infinite; fallback: dcss-tick-none; }
@counter-style dcss-tick-comma { system: additive; additive-symbols: 1 ",", 0 ""; }
@counter-style dcss-tick-dot { system: additive; additive-symbols: 1 ".", 0 ""; }
@counter-style dcss-tick-sign { system: additive; additive-symbols: 1 "\2212", 0 ""; }
@property --dcss-ready { syntax: '<integer>'; inherits: true; initial-value: 0; }
@property --dcss-err { syntax: '<integer>'; inherits: true; initial-value: 0; }