:root{color-scheme:light dark;--bg: #F6F9FC;--panel: #FFFFFF;--border: #E3E8EE;--border-soft: #EEF2F7;--text: #0A2540;--text-dim: #425466;--accent: #635BFF;--focus: #635BFF;--series-input: #0055D4;--series-output: #635BFF;--series-cache-read: #00A99D;--series-cache-write: #9E6AFF;--warn-bg: #FFF8E6;--warn-border: #E5A82E;--gap-ink: #8792A2;--font-sans: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Helvetica, Arial, sans-serif;--font-mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--text-xs: .75rem;--leading-xs: 1.4;--text-sm: .8125rem;--leading-sm: 1.45;--text-base: .875rem;--leading-base: 1.55;--text-md: 1rem;--leading-md: 1.55;--text-lg: 1.125rem;--leading-lg: 1.4;--text-xl: 1.5rem;--leading-xl: 1.3;--text-2xl: 1.875rem;--leading-2xl: 1.2;--weight-normal: 400;--weight-medium: 500;--weight-semibold: 600;--tracking-tight: -.011em;--tracking-wide: .02em;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-7: 3rem;--space-8: 4rem;--width-page: 72rem;--width-prose: 46rem;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-full: 999px;--radius: var(--radius-md);--shadow-sm: 0 1px 2px rgb(10 37 64 / .06);--shadow-md: 0 2px 5px -1px rgb(50 50 93 / .18), 0 1px 3px -1px rgb(10 37 64 / .18);--shadow-lg: 0 8px 16px -4px rgb(50 50 93 / .2), 0 3px 6px -2px rgb(10 37 64 / .12);--duration-fast: .12s;--duration-base: .2s;--ease: cubic-bezier(.4, 0, .2, 1);--touch: 44px;--bp-sm: 640px;--bp-md: 900px}@media(prefers-color-scheme:dark){:root{--bg: #0A1628;--panel: #121D2F;--border: #2A3A54;--border-soft: #1E2C42;--text: #EDF2F7;--text-dim: #8FA3BF;--accent: #8B85FF;--focus: #8B85FF;--series-input: #5B9DFF;--series-output: #8B85FF;--series-cache-read: #3DD6C7;--series-cache-write: #BFA0FF;--warn-bg: #2B2312;--warn-border: #8C6A22;--gap-ink: #5B6B85;--shadow-sm: 0 1px 2px rgb(0 0 0 / .3);--shadow-md: 0 2px 5px -1px rgb(0 0 0 / .45), 0 1px 3px -1px rgb(0 0 0 / .35);--shadow-lg: 0 8px 16px -4px rgb(0 0 0 / .5), 0 3px 6px -2px rgb(0 0 0 / .35)}}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:var(--text-md);line-height:var(--leading-md);font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased}.wrap{max-width:var(--width-page);margin:0 auto;padding:var(--space-5) var(--space-4) var(--space-8)}a{color:inherit}a:focus-visible,button:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--focus);outline-offset:2px;border-radius:var(--radius-sm)}.skip{position:absolute;left:-9999px;background:var(--panel);color:var(--text);padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md)}.skip:focus{left:var(--space-4);top:var(--space-4);z-index:20}.masthead{display:flex;flex-wrap:wrap;gap:var(--space-3) var(--space-4);align-items:baseline;justify-content:space-between;padding-bottom:var(--space-3);border-bottom:1px solid var(--border)}.brand{font-weight:var(--weight-semibold);font-size:var(--text-md);letter-spacing:var(--tracking-wide);text-decoration:none;display:inline-flex;align-items:center;gap:var(--space-2)}.brand .mark{flex:none}.whoami{color:var(--text-dim);font-size:var(--text-base);display:flex;gap:var(--space-3);align-items:baseline}.btn,.danger,.linkish,.linkbtn,.sortbtn{font:inherit;cursor:pointer;transition:color var(--duration-fast) var(--ease),background-color var(--duration-fast) var(--ease),border-color var(--duration-fast) var(--ease)}.danger{background:none;border:1px solid var(--warn-border);color:var(--text);padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);font-weight:var(--weight-medium)}.danger:hover{background:var(--warn-bg)}.danger[disabled]{opacity:.6;cursor:progress}.linkish,.linkbtn{background:none;border:0;padding:0;color:var(--text-dim);text-decoration:underline}.linkish{color:inherit}.linkish:hover,.linkbtn:hover{color:var(--accent)}nav.main{margin:var(--space-3) 0 var(--space-5)}nav.main ul{list-style:none;display:flex;flex-wrap:wrap;gap:var(--space-1);margin:0;padding:0}nav.main a,.ranges a,.ranges button{display:block;text-decoration:none;color:var(--text-dim);border:1px solid transparent;border-radius:var(--radius-md);transition:color var(--duration-fast) var(--ease),background-color var(--duration-fast) var(--ease),border-color var(--duration-fast) var(--ease)}nav.main a{padding:var(--space-2) var(--space-3);font-weight:var(--weight-medium)}.ranges a,.ranges button{padding:var(--space-1) var(--space-3);font-size:var(--text-base);border-color:var(--border)}.ranges button{background:none;font-family:inherit;cursor:pointer}nav.main a:hover,.ranges a:hover,.ranges button:hover{color:var(--text);border-color:var(--border)}nav.main a[aria-current=page]{color:var(--accent);background:var(--panel);border-color:var(--border);font-weight:var(--weight-semibold);box-shadow:var(--shadow-sm)}.ranges a[aria-current],.ranges button[aria-pressed=true]{color:var(--panel);background:var(--accent);border-color:var(--accent);font-weight:var(--weight-semibold)}.nav-icon,.nav-short{display:none}h1{font-size:var(--text-2xl);line-height:var(--leading-2xl);margin:0 0 var(--space-1);letter-spacing:var(--tracking-tight);font-weight:var(--weight-semibold)}h2{font-size:var(--text-lg);line-height:var(--leading-lg);margin:0 0 var(--space-1);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-tight)}h3{font-size:var(--text-base);margin:0;font-weight:var(--weight-semibold)}.question{margin:0 0 var(--space-5);color:var(--text-dim);max-width:var(--width-prose);font-size:var(--text-md)}.panel{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-5);margin-bottom:var(--space-5)}.panel>h2+.sub{margin-top:0}.sub{color:var(--text-dim);font-size:var(--text-base);line-height:var(--leading-base);margin:0 0 var(--space-3);max-width:var(--width-prose)}.stats{display:flex;flex-wrap:wrap;gap:var(--space-6);margin:0}.stats div{display:flex;flex-direction:column-reverse}.stats dt{color:var(--text-dim);font-size:var(--text-sm)}.stats dd{margin:0;font-size:var(--text-xl);line-height:var(--leading-xl);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-tight)}.kv{margin:0 0 var(--space-4);display:grid;gap:var(--space-1) var(--space-4)}.kv dt{color:var(--text-dim);font-size:var(--text-sm)}.kv dd{margin:0 0 var(--space-3);overflow-wrap:anywhere}.kv dd:last-child{margin-bottom:0}.note{background:var(--warn-bg);border-left:3px solid var(--warn-border);padding:var(--space-3) var(--space-4);border-radius:0 var(--radius-md) var(--radius-md) 0;font-size:var(--text-base);line-height:var(--leading-base);margin:0 0 var(--space-4)}.empty{padding:var(--space-5) 0;max-width:var(--width-prose)}.empty p{margin:0 0 var(--space-2)}.empty p:last-child{margin-bottom:0;color:var(--text-dim);font-size:var(--text-base)}code{font-family:var(--font-mono);font-size:.9em;background:var(--border-soft);padding:.1em .35em;border-radius:var(--radius-sm)}.ranges{display:flex;gap:var(--space-2);align-items:baseline;margin:0 0 var(--space-4);flex-wrap:wrap}.scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:var(--text-base)}caption{text-align:left;color:var(--text-dim);font-size:var(--text-base);line-height:var(--leading-base);padding-bottom:var(--space-2)}th,td{text-align:left;padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border-soft)}th{color:var(--text-dim);font-weight:var(--weight-semibold);font-size:var(--text-sm);white-space:nowrap}td.num,th.num{text-align:right;white-space:nowrap}tbody tr:last-child td{border-bottom:0}tbody tr{transition:background-color var(--duration-fast) var(--ease)}tbody tr:hover{background:var(--border-soft)}.rank{color:var(--text-dim);width:var(--space-6)}.name{font-weight:var(--weight-semibold)}.dim{color:var(--text-dim)}.sortbtn{background:none;border:0;padding:0;margin:0;color:inherit;display:inline-flex;gap:var(--space-1);align-items:center}.sortbtn:hover{color:var(--accent)}th[aria-sort] .sortbtn{color:var(--accent);font-weight:var(--weight-semibold)}.arrow{font-size:.7em}.badge{display:inline-block;font-size:var(--text-xs);padding:.1rem var(--space-2);border:1px solid var(--border);border-radius:var(--radius-full);color:var(--text-dim)}.badge.revoked{border-color:var(--warn-border);color:var(--text);background:var(--warn-bg)}.badge.health-recording{border-color:var(--series-cache-read);color:var(--series-cache-read)}.badge.health-silent,.badge.health-revoked,.badge.unused{border-color:var(--warn-border);color:var(--text);background:var(--warn-bg)}.charts{display:grid;gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(19rem,1fr))}.chart{border:1px solid var(--border-soft);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4)}.chart-head{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-2)}.chart-total{font-size:var(--text-md);font-weight:var(--weight-semibold)}.chart-meta{color:var(--text-dim);font-size:var(--text-xs);line-height:var(--leading-xs);margin:var(--space-1) 0 var(--space-2)}.legend{list-style:none;display:flex;flex-wrap:wrap;gap:var(--space-1) var(--space-4);margin:var(--space-3) 0 0;padding:0;font-size:var(--text-sm);color:var(--text-dim)}.legend li{display:flex;align-items:center;gap:var(--space-1)}.swatch{width:.75rem;height:.75rem;border-radius:var(--radius-sm);display:inline-block}.tip{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-2) var(--space-3);font-size:var(--text-sm);box-shadow:var(--shadow-lg);max-width:min(18rem,calc(100vw - var(--space-6)))}.tip-day{font-weight:var(--weight-semibold);margin:0 0 var(--space-1)}.tip dl{margin:0;display:grid;grid-template-columns:auto auto;gap:.1rem var(--space-3)}.tip dt{color:var(--text-dim);display:flex;align-items:center;gap:var(--space-1)}.tip dd{margin:0;text-align:right;font-weight:var(--weight-semibold)}.tip-flag{margin:var(--space-2) 0 0;color:var(--text-dim);font-size:var(--text-xs)}.recharts-cartesian-axis-tick text{fill:var(--text-dim);font-size:11px}.recharts-cartesian-grid line{stroke:var(--border-soft)}.recharts-brush-slide{fill:var(--text-dim);fill-opacity:.08}.recharts-brush-traveller rect{fill:var(--panel);stroke:var(--text-dim)}.recharts-brush text{fill:var(--text-dim);font-size:11px}.brush-hint{color:var(--text-dim);font-size:var(--text-xs);margin:var(--space-1) 0 0}.actions{display:flex;gap:var(--space-3);align-items:center;margin-top:var(--space-4);flex-wrap:wrap}.confirm{border:1px solid var(--warn-border);background:var(--warn-bg);border-radius:var(--radius-md);padding:var(--space-4);margin:var(--space-3) 0}.confirm p{margin:0 0 var(--space-2);font-size:var(--text-base)}.loading{color:var(--text-dim);padding:var(--space-5) 0}.field{display:block;margin:0 0 var(--space-2)}.field-label{display:block;font-size:var(--text-sm);color:var(--text-dim);margin-bottom:var(--space-1);font-weight:var(--weight-medium)}.code-input{font-family:var(--font-mono);font-size:var(--text-xl);letter-spacing:.18em;text-transform:uppercase;padding:var(--space-3);width:100%;max-width:16ch;background:var(--panel);color:var(--text);border:1px solid var(--border);border-radius:var(--radius-md)}.code-input:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.platforms{display:grid;gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(18rem,1fr));margin:0 0 var(--space-5)}.platform{border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-4);background:var(--panel)}.platform h2{display:flex;align-items:center;gap:var(--space-2)}.platform .sub{margin-bottom:0}.platform--ready{border-color:var(--accent);box-shadow:var(--shadow-sm)}.platform--soon{background:none}.platform--soon h2,.platform--soon .sub{color:var(--text-dim)}.steps{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-5)}.step{display:flex;gap:var(--space-4);align-items:flex-start}.step-n{flex:none;width:1.75rem;height:1.75rem;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-full);background:var(--accent);color:var(--panel);font-size:var(--text-sm);font-weight:var(--weight-semibold)}.step-body{min-width:0;flex:1}.step-body h3{margin:0 0 var(--space-1);font-size:var(--text-md)}.step-body .sub:last-child{margin-bottom:0}.cmd{display:flex;align-items:center;gap:var(--space-3);background:var(--border-soft);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);margin:0 0 var(--space-3)}.cmd-text{flex:1;min-width:0;background:none;padding:0;font-size:var(--text-base);overflow-x:auto;white-space:pre}.cmd-copy{flex:none;font-size:var(--text-sm);text-decoration:none;font-weight:var(--weight-medium)}.cmd-copy:hover{text-decoration:underline}ul.plain{margin:0 0 var(--space-3);padding-left:var(--space-4)}ul.plain li{margin-bottom:var(--space-2)}@media(max-width:640px){.wrap{padding:var(--space-4) var(--space-3);padding-bottom:calc(var(--touch) + var(--space-6) + env(safe-area-inset-bottom,0px))}h1{font-size:var(--text-xl);line-height:var(--leading-xl)}.question{margin-bottom:var(--space-4)}.panel{padding:var(--space-3);margin-bottom:var(--space-4)}.charts .chart{padding:var(--space-2)}.stats{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4) var(--space-3)}.stats>div:first-child{grid-column:1 / -1}.stats>div:first-child dd{font-size:var(--text-2xl);line-height:var(--leading-2xl)}.stats-duo>div{grid-column:1 / -1}.stats-duo>div dd{font-size:var(--text-2xl);line-height:var(--leading-2xl)}nav.main{position:fixed;inset:auto 0 0;z-index:10;margin:0;background:var(--panel);border-top:1px solid var(--border);box-shadow:var(--shadow-lg);padding-bottom:env(safe-area-inset-bottom,0px)}nav.main ul{flex-wrap:nowrap;gap:0}nav.main li{flex:1 1 0;min-width:0}nav.main a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:var(--touch);padding:var(--space-2) var(--space-1);border:0;border-radius:0;font-size:var(--text-xs);line-height:1.2;text-align:center;white-space:nowrap}.nav-full{display:none}.nav-short{display:block}nav.main a[aria-current=page]{background:none;box-shadow:none;border-top:2px solid var(--accent);padding-top:calc(var(--space-2) - 2px)}.nav-icon{display:block;width:20px;height:20px;flex:none}.ranges a,.ranges button{min-height:var(--touch);display:flex;align-items:center}.scroll{overflow-x:visible}table,tbody,tr,td{display:block;width:100%}thead{position:absolute;left:-9999px}caption{display:block}tbody tr{border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-3);margin-bottom:var(--space-3);background:var(--panel)}tbody tr:hover{background:var(--panel)}tbody tr:last-child{margin-bottom:0}td{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-4);padding:var(--space-1) 0;border-bottom:0;text-align:right}td:before{content:attr(data-label);color:var(--text-dim);font-size:var(--text-sm);font-weight:var(--weight-medium);text-align:left;flex:0 0 auto}td:not([data-label]){justify-content:flex-start;text-align:left}td.name{font-size:var(--text-md);padding-bottom:var(--space-2);margin-bottom:var(--space-1);border-bottom:1px solid var(--border-soft)}td.rank{display:none}td.num,th.num{text-align:right}.charts{grid-template-columns:1fr;gap:var(--space-3)}.chart{padding:var(--space-3)}.field{display:block;margin:0 0 var(--space-2)}.field-label{display:block;font-size:var(--text-sm);color:var(--text-dim);margin-bottom:var(--space-1);font-weight:var(--weight-medium)}.code-input{font-family:var(--font-mono);font-size:var(--text-xl);letter-spacing:.18em;text-transform:uppercase;padding:var(--space-3);width:100%;max-width:16ch;background:var(--panel);color:var(--text);border:1px solid var(--border);border-radius:var(--radius-md)}.code-input:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.platforms{grid-template-columns:1fr}.step{gap:var(--space-3)}.cmd{flex-wrap:wrap;gap:var(--space-2)}.cmd-text{flex:1 0 100%;white-space:pre-wrap;overflow-wrap:break-word;overflow-x:visible}.cmd-copy{min-height:var(--touch);display:flex;align-items:center}}@media(min-width:641px){.wrap{padding:var(--space-7) var(--space-5) var(--space-8)}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
