@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2) format("woff2-variations");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--ground: #f6f7f9;--surface: #ffffff;--surface-2: #f2f4f7;--surface-3: #e9ecf1;--ink: #101828;--ink-2: #344054;--muted: #667085;--faint: #98a2b3;--rule: #e6e8ec;--rule-strong: #d0d5dd;--accent: #2563eb;--accent-hover: #1d4ed8;--accent-soft: #eef3fe;--accent-border: #c7d7fb;--accent-ink: #1d4ed8;--on-accent: #ffffff;--focus-ring: rgba(37, 99, 235, .22);--brand: #fb1e00;--good: #067647;--good-soft: #ecfdf3;--good-border: #abefc6;--bad: #b42318;--bad-soft: #fef3f2;--bad-border: #fecdca;--warn: #b54708;--warn-soft: #fffaeb;--warn-border: #fedf89;--series-cmp: #98a2b3;--series-cmp-soft: #e4e7ec;--series-cmp-edge: #c3c9d3;--edge-shade: rgba(16, 24, 40, .1);--dir-media-bg: #f4f0ff;--dir-media-fg: #5b3fb0;--dir-posts-bg: #e8f7f3;--dir-posts-fg: #1a6b5c;--radius: 12px;--radius-sm: 8px;--shadow-xs: 0 1px 2px rgba(16, 24, 40, .05);--shadow: 0 1px 2px rgba(16, 24, 40, .04);--shadow-pop: 0 18px 44px -14px rgba(16, 24, 40, .24), 0 4px 12px -4px rgba(16, 24, 40, .08);--f-ui: "Inter Variable", Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--f-num: var(--f-ui);--f-mono: ui-monospace, "SF Mono", Menlo, Consolas, monospace;--topbar-h: 56px;color-scheme:light}:root[data-theme=dark]{--ground: #0e1116;--surface: #161a21;--surface-2: #1d222b;--surface-3: #262c37;--ink: #e8ebf0;--ink-2: #c5cbd5;--muted: #98a1b0;--faint: #677080;--rule: #262b35;--rule-strong: #353c48;--accent: #6d9eff;--accent-hover: #8ab1ff;--accent-soft: #18233b;--accent-border: #2a3d66;--accent-ink: #9dbdff;--on-accent: #0b1220;--focus-ring: rgba(109, 158, 255, .3);--good: #47cd89;--good-soft: #0f2a1d;--good-border: #1d5236;--bad: #f97066;--bad-soft: #321614;--bad-border: #5c2420;--warn: #fdb022;--warn-soft: #2e2208;--warn-border: #5a4210;--series-cmp: #7a8494;--series-cmp-soft: #2b313c;--series-cmp-edge: #475061;--edge-shade: rgba(0, 0, 0, .45);--dir-media-bg: #251f3d;--dir-media-fg: #bba6f2;--dir-posts-bg: #12302a;--dir-posts-fg: #6fcab8;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .3);--shadow: 0 1px 2px rgba(0, 0, 0, .3);--shadow-pop: 0 18px 44px -12px rgba(0, 0, 0, .7), 0 0 0 1px rgba(255, 255, 255, .04);color-scheme:dark}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--ground);color:var(--ink);font-family:var(--f-ui);font-size:14px;line-height:1.5;font-feature-settings:"cv05","cv08";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4{margin:0;font-weight:600;letter-spacing:-.01em}p{margin:0}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:2px}code{font-family:var(--f-mono);font-size:.92em;background:var(--surface-2);padding:1px 4px;border-radius:4px}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:6px}::selection{background:var(--accent-soft)}button{font:inherit;color:inherit}svg.icon{display:block;flex:none}.num,.tnum{font-variant-numeric:tabular-nums}.muted{color:var(--muted)}.faint{color:var(--faint)}.mono{font-family:var(--f-mono);font-size:12px}.right{text-align:right}.spacer{flex:1 1 auto}.row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.stack{display:flex;flex-direction:column;gap:4px}.nowrap{white-space:nowrap}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.up{color:var(--good)}.down{color:var(--bad)}.flat{color:var(--muted)}.app{min-height:100vh}.topbar{position:sticky;top:0;z-index:60;height:var(--topbar-h);background:var(--surface);border-bottom:1px solid var(--rule)}.topbar-inner{max-width:1480px;height:100%;margin:0 auto;padding:0 24px;display:flex;align-items:center;gap:10px}.brand{display:inline-flex;align-items:center;gap:8px;flex:none;font-weight:650;font-size:15px;letter-spacing:-.015em;color:var(--ink);padding:4px 6px 4px 2px;border-radius:8px}.brand:hover{text-decoration:none}.brand img{width:24px;height:24px;display:block}.brand-sep{width:1px;height:22px;background:var(--rule);margin:0 4px;flex:none}.topnav{display:flex;align-items:center;gap:2px}.topnav .btn.on{color:var(--ink);background:var(--surface-2)}.page{max-width:1480px;margin:0 auto;padding:0 24px 72px}.page-head{display:flex;align-items:flex-start;gap:16px;flex-wrap:wrap;padding:24px 0 0}.page-head-main{min-width:0;flex:1 1 420px}.page-title{font-size:24px;line-height:32px;font-weight:650;letter-spacing:-.022em;overflow-wrap:anywhere}.page-meta{display:flex;flex-wrap:wrap;align-items:center;gap:4px 0;margin-top:4px;font-size:13px;color:var(--muted)}.page-meta>*+*:before{content:"·";margin:0 8px;color:var(--faint)}.page-meta .warn-text{color:var(--warn);font-weight:500}.page-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding-top:2px}.back-link{display:inline-flex;align-items:center;gap:6px;margin:20px 0 -8px;font-size:13px;font-weight:500;color:var(--muted)}.back-link:hover{color:var(--ink);text-decoration:none}.tabs{display:flex;gap:4px;margin-top:18px;border-bottom:1px solid var(--rule);overflow-x:auto;scrollbar-width:none}.tabs::-webkit-scrollbar{display:none}.tab{display:inline-flex;align-items:center;gap:8px;flex:none;padding:10px 12px 11px;margin-bottom:-1px;border:none;border-bottom:2px solid transparent;background:none;cursor:pointer;font-size:14px;font-weight:500;color:var(--muted);white-space:nowrap}.tab:hover{color:var(--ink)}.tab.on{color:var(--ink);border-bottom-color:var(--accent);font-weight:600}.tab .icon{color:var(--faint)}.tab.on .icon{color:var(--accent)}.tab-count{font-size:12px;font-weight:500;color:var(--muted);font-variant-numeric:tabular-nums;background:var(--surface-2);border-radius:999px;padding:0 7px;line-height:20px}.tab.on .tab-count{background:var(--accent-soft);color:var(--accent-ink)}.toolbar{position:sticky;top:var(--topbar-h);z-index:50;display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:12px 0;margin-bottom:4px;background:var(--ground);box-shadow:0 0 0 100vmax var(--ground);clip-path:inset(0 -100vmax)}.toolbar.stuck{box-shadow:0 0 0 100vmax var(--ground),0 1px 0 100vmax var(--rule);clip-path:inset(0 -100vmax -1px)}.toolbar-group{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.toolbar .spin{margin:0 4px}.fchip{display:inline-flex;align-items:center;gap:4px;max-width:320px;height:28px;padding:0 4px 0 10px;border-radius:999px;background:var(--accent-soft);color:var(--accent-ink);border:1px solid var(--accent-border);font-size:12.5px;font-weight:500}.fchip-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fchip-x{display:inline-flex;align-items:center;justify-content:center;flex:none;width:20px;height:20px;border-radius:50%;border:none;background:transparent;color:inherit;cursor:pointer;opacity:.75}.fchip-x:hover{background:var(--accent-border);opacity:1}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:34px;padding:0 12px;font:inherit;font-size:13.5px;font-weight:500;line-height:1;white-space:nowrap;color:var(--ink);background:var(--surface);border:1px solid var(--rule-strong);border-radius:var(--radius-sm);box-shadow:var(--shadow-xs);cursor:pointer;text-decoration:none;transition:background-color .12s ease,border-color .12s ease,color .12s ease}.btn:hover{background:var(--surface-2);text-decoration:none}.btn:active{background:var(--surface-3)}.btn .icon{color:var(--muted)}.btn:hover .icon{color:var(--ink-2)}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.btn.primary .icon{color:currentColor}.btn.primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.btn.ghost{background:transparent;border-color:transparent;box-shadow:none;color:var(--ink-2)}.btn.ghost:hover{background:var(--surface-2);color:var(--ink)}.btn.danger{color:var(--bad)}.btn.danger:hover{background:var(--bad-soft);border-color:var(--bad-border)}.btn.sm{height:28px;padding:0 10px;font-size:13px;border-radius:7px;gap:5px}.btn.icon-only{width:34px;padding:0}.btn.sm.icon-only{width:28px}.btn.on{background:var(--accent-soft);border-color:var(--accent-border);color:var(--accent-ink)}.btn.on .icon{color:var(--accent-ink)}.btn:disabled,.btn[aria-disabled=true]{opacity:.5;cursor:not-allowed;pointer-events:none}.btn-badge{min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--accent);color:var(--on-accent);font-size:11px;font-weight:600;line-height:18px;text-align:center;font-variant-numeric:tabular-nums}.linkbtn{border:none;background:none;padding:0;cursor:pointer;color:var(--accent);font-weight:500;font-size:inherit}.linkbtn:hover{text-decoration:underline;text-underline-offset:2px}input[type=text],input[type=search],input[type=password],input[type=date],input[type=number],select,textarea{font:inherit;font-size:13.5px;color:var(--ink);height:34px;padding:0 10px;background:var(--surface);border:1px solid var(--rule-strong);border-radius:var(--radius-sm);box-shadow:var(--shadow-xs);transition:border-color .12s ease,box-shadow .12s ease}input::placeholder,textarea::placeholder{color:var(--faint)}input:hover,select:hover,textarea:hover{border-color:var(--faint)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--focus-ring)}select{-moz-appearance:none;appearance:none;-webkit-appearance:none;padding-right:30px;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238a93a3' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 9px center}textarea{height:auto;min-height:112px;padding:8px 10px;resize:vertical;line-height:1.55;width:100%}input[type=checkbox],input[type=radio]{accent-color:var(--accent);width:15px;height:15px;margin:0}.search-input{position:relative;display:inline-flex;align-items:center}.search-input>.icon{position:absolute;left:10px;color:var(--faint);pointer-events:none}.search-input>input{padding-left:34px;width:100%}.seg{display:inline-flex;align-items:center;gap:2px;padding:2px;background:var(--surface-2);border:1px solid var(--rule);border-radius:9px}.seg-opt{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 10px;border:none;border-radius:7px;background:transparent;cursor:pointer;font-size:13px;font-weight:500;color:var(--muted);white-space:nowrap}.seg-opt:hover:not(:disabled):not(.on){color:var(--ink)}.seg-opt.on{background:var(--surface);color:var(--ink);box-shadow:0 1px 2px #1018281a,0 0 0 1px var(--rule)}:root[data-theme=dark] .seg-opt.on{background:var(--surface-3);box-shadow:none}.seg-opt:disabled{opacity:.45;cursor:not-allowed}.seg-count{font-size:12px;color:var(--faint);font-variant-numeric:tabular-nums;font-weight:500}.seg-opt.on .seg-count{color:var(--muted)}.seg-sm .seg-opt{height:24px;padding:0 8px;font-size:12.5px}.seg-icon .seg-opt{padding:0 7px}.seg-icon .seg-opt.on{color:var(--accent)}.switch{position:relative;width:36px;height:20px;flex:none;padding:0;cursor:pointer;border:none;border-radius:999px;background:var(--rule-strong);transition:background-color .15s ease}.switch:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 2px #10182840;transition:transform .15s ease}.switch.on{background:var(--accent)}.switch.on:after{transform:translate(16px)}.switch:disabled{opacity:.5;cursor:not-allowed}.badge{display:inline-flex;align-items:center;gap:4px;height:20px;padding:0 7px;font-size:12px;font-weight:500;line-height:1;white-space:nowrap;color:var(--ink-2);background:var(--surface-2);border-radius:6px}.badge.on{background:var(--good-soft);color:var(--good)}.badge.off{color:var(--muted)}.badge.warn{background:var(--warn-soft);color:var(--warn)}.badge.bad{background:var(--bad-soft);color:var(--bad)}.badge.accent,.badge.dir-ppc{background:var(--accent-soft);color:var(--accent-ink)}.badge.dir-media{background:var(--dir-media-bg);color:var(--dir-media-fg)}.badge.dir-posts{background:var(--dir-posts-bg);color:var(--dir-posts-fg)}button.badge{border:none;cursor:pointer;font-family:inherit}button.badge:hover{filter:brightness(.97);box-shadow:inset 0 0 0 1px currentColor}.pdot{width:8px;height:8px;border-radius:50%;display:inline-block;flex:none;background:var(--faint)}.pdot.on{background:var(--good)}.pdot.warn{background:var(--warn)}.pdot.bad{background:var(--bad)}.approx{color:var(--warn);cursor:help;margin-right:1px}.panel{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:16px;min-width:0}.panel-head{display:flex;align-items:flex-start;gap:8px 16px;flex-wrap:wrap;padding:16px 20px 0}.panel-head-text{min-width:0;flex:1 1 260px}.panel-title{font-size:15px;font-weight:600;line-height:24px;display:flex;align-items:center;gap:6px}.panel-desc{font-size:13px;color:var(--muted);margin-top:1px}.panel-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.panel-body{padding:16px 20px 20px}.panel-foot{padding:12px 20px;border-top:1px solid var(--rule);font-size:12.5px;color:var(--muted)}.card{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius);padding:16px 20px;margin-bottom:16px}.notice{display:flex;align-items:flex-start;gap:10px;padding:10px 14px;margin-bottom:12px;font-size:13.5px;color:var(--ink-2);border:1px solid var(--warn-border);border-radius:10px;background:var(--warn-soft)}.notice>.icon{margin-top:2px;color:var(--warn)}.notice.bad{border-color:var(--bad-border);background:var(--bad-soft)}.notice.bad>.icon{color:var(--bad)}.notice.info{border-color:var(--accent-border);background:var(--accent-soft)}.notice.info>.icon{color:var(--accent)}.notice-body{flex:1;min-width:0}.notice-body strong{color:var(--ink);font-weight:600}.notice-list{list-style:none;margin:8px 0 2px;padding:0;display:flex;flex-direction:column;gap:8px}.notice-list li{display:flex;gap:8px;align-items:baseline}.notice-list li:before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor;opacity:.45;flex:none;transform:translateY(-2px)}.notice-list li.bad:before{background:var(--bad);opacity:1}.notice-list li.warn:before{background:var(--warn);opacity:1}.notice-toggle{flex:none;margin:-5px -6px -5px 0}.note{padding:10px 14px;margin-bottom:12px;font-size:13.5px;color:var(--ink-2);border:1px solid var(--warn-border);border-radius:10px;background:var(--warn-soft)}.note.bad{border-color:var(--bad-border);background:var(--bad-soft)}.empty{padding:48px 20px;text-align:center;color:var(--muted);font-size:13.5px}.empty-state{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;padding:48px 24px;color:var(--muted)}.empty-state .icon{color:var(--faint);margin-bottom:6px}.empty-state h3{font-size:15px;color:var(--ink)}.empty-state p{font-size:13.5px;max-width:420px}.empty-state .btn{margin-top:10px}.spin{display:inline-block;width:14px;height:14px;flex:none;border:2px solid var(--rule-strong);border-top-color:var(--accent);border-radius:50%;animation:sp .7s linear infinite}@keyframes sp{to{transform:rotate(360deg)}}.skel{display:block;border-radius:6px;background:linear-gradient(90deg,var(--surface-2) 0%,var(--surface-3) 50%,var(--surface-2) 100%);background-size:200% 100%;animation:skel 1.3s ease-in-out infinite}@keyframes skel{0%{background-position:100% 0}to{background-position:-100% 0}}@media(prefers-reduced-motion:reduce){.spin{animation-duration:2s}.skel{animation:none}*{scroll-behavior:auto!important}}.delta{display:inline-flex;align-items:center;gap:3px;white-space:nowrap;font-variant-numeric:tabular-nums}.delta-arrow{width:8px;height:8px;flex:none}.delta-arrow.down{transform:rotate(180deg)}.delta-chip{height:20px;padding:0 6px;border-radius:999px;font-size:12px;font-weight:600}.delta-chip.is-good{color:var(--good);background:var(--good-soft)}.delta-chip.is-bad{color:var(--bad);background:var(--bad-soft)}.delta-chip.is-flat,.delta-chip.is-none{color:var(--muted);background:var(--surface-2)}.delta-text{font-size:12px;font-weight:500}.delta-text.is-good{color:var(--good)}.delta-text.is-bad{color:var(--bad)}.delta-text.is-flat,.delta-text.is-none{color:var(--muted)}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));overflow:hidden;border-radius:var(--radius) var(--radius) 0 0}.stat{position:relative;display:flex;flex-direction:column;align-items:flex-start;min-width:0;padding:16px 20px;text-align:left;border:none;background:transparent;cursor:pointer;box-shadow:1px 0 0 var(--rule),0 1px 0 var(--rule);transition:background-color .12s ease}.stat:hover{background:var(--surface-2)}.stat.on{background:var(--surface)}.stat.on:before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:var(--accent)}.stat.static{cursor:default}.stat.static:hover{background:transparent}.stat-label{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:500;color:var(--muted);min-width:0;max-width:100%}.stat.on .stat-label{color:var(--ink-2)}.stat-label>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stat-value{margin-top:4px;font-size:26px;line-height:34px;font-weight:650;letter-spacing:-.025em;color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap}.stat-value.empty{color:var(--faint);font-size:22px}.stat-foot{margin-top:6px;display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:12.5px;color:var(--muted);font-variant-numeric:tabular-nums}.stat-note{font-size:12.5px;color:var(--muted)}.stats-more{display:flex;align-items:center;justify-content:center;gap:6px;min-height:100%;padding:16px;border:none;background:transparent;cursor:pointer;box-shadow:1px 0 0 var(--rule),0 1px 0 var(--rule);font-size:13px;font-weight:500;color:var(--accent)}.stats-more:hover{background:var(--surface-2)}.tw,.table-wrap{overflow:auto;background:var(--surface);border:1px solid var(--rule);border-radius:10px}.panel>.tw,.panel-body>.tw.flush{border-left:none;border-right:none;border-radius:0}table{border-collapse:separate;border-spacing:0;width:100%;font-size:13.5px}th,td{padding:10px 12px;text-align:left;border-bottom:1px solid var(--rule);white-space:nowrap;vertical-align:middle}thead th{position:sticky;top:0;z-index:2;font-size:12.5px;font-weight:500;color:var(--muted);letter-spacing:0;background:var(--surface);box-shadow:inset 0 -1px 0 var(--rule);border-bottom:none}thead th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}thead th.sortable:hover,thead th.sorted{color:var(--ink)}.sort-ic{display:inline-block;width:10px;margin-left:3px;color:var(--accent)}tbody tr:last-child td{border-bottom:none}tbody tr:hover td{background:var(--surface-2)}td.num,th.num{text-align:right;font-variant-numeric:tabular-nums}td.name{white-space:normal;min-width:240px;max-width:460px}.cell-d{font-size:12px;line-height:16px;margin-top:1px}tr.total td{background:var(--surface-2);font-weight:600;border-bottom:1px solid var(--rule-strong)}tr.total:hover td{background:var(--surface-2)}.msel-menu,.dr-menu,.cf-menu,.ver-panel,.hintbox,.pop{background:var(--surface);border:1px solid var(--rule);border-radius:12px;box-shadow:var(--shadow-pop)}.pop{position:fixed;z-index:220;padding:6px;min-width:200px}.pop-item{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;border:none;border-radius:8px;background:transparent;cursor:pointer;font-size:13.5px;text-align:left;color:var(--ink)}.pop-item:hover,.pop-item.active{background:var(--surface-2);text-decoration:none}.pop-item .icon{color:var(--muted)}.pop-sep{height:1px;background:var(--rule);margin:6px -6px}.pop-caption{padding:8px 10px 4px;font-size:12px;font-weight:500;color:var(--muted)}.pop-head{padding:8px 10px 6px}.pop-head b{display:block;font-size:13.5px}.pop-head span{font-size:12.5px;color:var(--muted)}.msel{position:relative;display:inline-block;min-width:200px;width:100%}.msel-face{font:inherit;font-size:13.5px;width:100%;height:34px;display:flex;align-items:center;gap:8px;padding:0 10px;text-align:left;cursor:pointer;color:var(--ink);background:var(--surface);border:1px solid var(--rule-strong);border-radius:var(--radius-sm);box-shadow:var(--shadow-xs)}.msel-face:hover:not(:disabled){border-color:var(--faint)}.msel-face.open{border-color:var(--accent);box-shadow:0 0 0 3px var(--focus-ring)}.msel-face:disabled{opacity:.5;cursor:not-allowed}.msel-face.empty .msel-text{color:var(--faint)}.msel-text{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.msel-caret{width:0;height:0;flex:none;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid var(--faint);transition:transform .12s ease}.msel-face.open .msel-caret{transform:rotate(180deg)}.msel-menu{position:fixed;z-index:200;padding:6px;min-width:220px}.msel-filter{width:100%;margin-bottom:6px}.msel-list{overflow-y:auto}.msel-item{display:flex;align-items:center;gap:10px;padding:7px 8px;border-radius:7px;cursor:pointer;font-size:13.5px}.msel-item:hover{background:var(--surface-2)}.msel-item input{flex:none}.msel-label{flex:1;min-width:0}.msel-hint{color:var(--muted);font-size:12px;font-variant-numeric:tabular-nums}.msel-none{padding:10px 8px;color:var(--muted);font-size:13px}.hintw{display:inline-flex;align-items:center;vertical-align:middle}.hintq{display:inline-flex;align-items:center;justify-content:center;flex:none;width:18px;height:18px;padding:0;border:none;border-radius:50%;cursor:help;background:transparent;color:var(--faint)}.hintq:hover,.hintq.on{color:var(--accent);background:var(--accent-soft)}.hintbox{position:fixed;z-index:210;display:block;width:320px;max-width:calc(100vw - 16px);padding:12px 14px;font-size:13px;font-weight:400;line-height:1.5;letter-spacing:0;text-transform:none;color:var(--ink-2);white-space:normal;text-align:left}.hintbox>b{display:block;color:var(--ink);margin-bottom:6px;font-weight:600}.hintbox p b{color:var(--ink);font-weight:600}.hintbox p{margin:0 0 6px}.hintbox p:last-child{margin-bottom:0}.field{display:block;margin-bottom:16px}.field:last-child{margin-bottom:0}.field-label,label.field>span{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:500;color:var(--ink-2);margin-bottom:6px}.field-help{font-size:12.5px;color:var(--muted);margin-top:6px}.field input[type=text],.field select,.field textarea{width:100%}.flabel{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--ink-2);font-weight:500;margin-bottom:6px}.grid2{display:grid;gap:0 20px;grid-template-columns:repeat(2,minmax(0,1fr))}.grid2>.field:last-child{margin-bottom:16px}@media(max-width:720px){.grid2{grid-template-columns:1fr}}.settings{margin-top:8px}.settings-section{display:grid;grid-template-columns:minmax(200px,300px) minmax(0,1fr);gap:16px 40px;padding:28px 0;border-top:1px solid var(--rule)}.settings-section:first-child{border-top:none}.settings-aside h2{font-size:15px;line-height:24px}.settings-aside p{font-size:13px;color:var(--muted);margin-top:4px}.settings-aside .badge{margin-top:10px}.settings-body{min-width:0}.settings-body>.panel{margin-bottom:0}@media(max-width:860px){.settings-section{grid-template-columns:1fr}}.savebar{position:sticky;bottom:16px;z-index:40;display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:8px;padding:10px 12px 10px 16px;background:var(--surface);border:1px solid var(--rule);border-radius:12px;box-shadow:var(--shadow-pop);font-size:13.5px}.savebar .icon{color:var(--warn)}details.adv>summary{display:inline-flex;align-items:center;gap:6px;cursor:pointer;list-style:none;font-size:13.5px;font-weight:500;color:var(--ink-2);padding:6px 0}details.adv>summary::-webkit-details-marker{display:none}details.adv>summary .icon{transition:transform .15s ease;color:var(--muted)}details.adv[open]>summary .icon{transform:rotate(90deg)}.login{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}.login-card{width:100%;max-width:400px;padding:32px;background:var(--surface);border:1px solid var(--rule);border-radius:16px;box-shadow:var(--shadow-pop)}.login-card .brand{font-size:17px;margin-bottom:20px}.login-card h1{font-size:20px;line-height:28px}.login-card p{color:var(--muted);font-size:13.5px;margin:4px 0 20px}.login-card form{display:flex;flex-direction:column;gap:12px}.login-card input{width:100%;height:40px}.login-card .btn{height:40px}.switcher{position:relative;min-width:0}.switcher-face{display:inline-flex;align-items:center;gap:8px;max-width:380px;min-width:0;height:34px;padding:0 8px 0 10px;cursor:pointer;border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;font-size:14px;font-weight:600;color:var(--ink)}.switcher-face:hover,.switcher-face.open{background:var(--surface-2)}.switcher-face .placeholder{color:var(--muted);font-weight:500}.switcher-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.switcher-face .icon{color:var(--muted)}.switcher-kbd{font-size:11px;color:var(--faint);border:1px solid var(--rule);border-radius:5px;padding:0 5px;line-height:18px;font-weight:500}.switcher-pop{width:420px;max-width:calc(100vw - 16px);padding:0;overflow:hidden}.switcher-search{display:flex;align-items:center;gap:8px;padding:10px 12px;border-bottom:1px solid var(--rule)}.switcher-search .icon{color:var(--faint)}.switcher-search input{flex:1;border:none;box-shadow:none;height:28px;padding:0;font-size:14px;background:transparent}.switcher-search input:focus{box-shadow:none}.switcher-list{max-height:min(460px,70vh);overflow-y:auto;padding:6px}.switcher-item{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;border:none;border-radius:8px;background:transparent;cursor:pointer;text-align:left;font-size:13.5px;color:var(--ink)}.switcher-item.active{background:var(--surface-2)}.switcher-item.current{font-weight:600}.switcher-item .sw-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.switcher-item .sw-id{font-size:12px;color:var(--faint);font-variant-numeric:tabular-nums}.switcher-item .icon{color:var(--faint)}.switcher-item .icon.star{color:#f5b300}.switcher-foot{display:flex;align-items:center;gap:12px;padding:8px 12px;border-top:1px solid var(--rule);font-size:12px;color:var(--muted)}.avatar{width:28px;height:28px;border-radius:50%;flex:none;display:inline-flex;align-items:center;justify-content:center;background:var(--accent-soft);color:var(--accent-ink);font-size:12px;font-weight:600}.proj-toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:20px 0 12px}.proj-toolbar .search-input{flex:1 1 320px;max-width:420px}.proj-table td{height:56px}.proj-table td.name{min-width:260px}.proj-name{display:flex;align-items:center;gap:10px;min-width:0}.proj-name a{color:var(--ink);font-weight:600;overflow-wrap:anywhere}.proj-name a:hover{color:var(--accent)}.proj-sub{font-size:12.5px;color:var(--muted);margin-top:1px;display:flex;gap:0;flex-wrap:wrap}.proj-sub>*+*:before{content:"·";margin:0 6px;color:var(--faint)}.star-btn{display:inline-flex;align-items:center;justify-content:center;flex:none;width:28px;height:28px;border:none;border-radius:7px;background:transparent;cursor:pointer;color:var(--rule-strong)}.star-btn:hover{color:var(--faint);background:var(--surface-2)}.star-btn.on{color:#f5b300}.proj-table .spark{display:block}.fresh{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--ink-2)}.fresh.stale{color:var(--warn)}.fresh.none{color:var(--faint)}.spark-line{fill:none;stroke:var(--accent);stroke-width:1.5;stroke-linejoin:round;stroke-linecap:round}.spark-area{fill:var(--accent);opacity:.08}.spark-dot{fill:var(--accent)}.dr{position:relative;display:inline-block}.dr-face{display:inline-flex;align-items:center;gap:8px;height:34px;padding:0 10px;cursor:pointer;font:inherit;font-size:13.5px;color:var(--ink);background:var(--surface);border:1px solid var(--rule-strong);border-radius:var(--radius-sm);box-shadow:var(--shadow-xs)}.dr-face:hover{border-color:var(--faint)}.dr-face.open{border-color:var(--accent);box-shadow:0 0 0 3px var(--focus-ring)}.dr-face>.icon{color:var(--muted)}.dr-face b{font-weight:600}.dr-text{font-variant-numeric:tabular-nums;white-space:nowrap}.dr-vs{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}.dr-vs:before{content:"";display:inline-block;width:1px;height:14px;background:var(--rule-strong);margin:0 8px 0 2px;vertical-align:-2px}.dr-menu{position:fixed;z-index:200;display:flex;overflow:hidden}.dr-presets{display:flex;flex-direction:column;gap:1px;padding:8px;border-right:1px solid var(--rule);min-width:180px;background:var(--surface)}.dr-preset{font:inherit;font-size:13.5px;text-align:left;white-space:nowrap;padding:7px 10px;border-radius:7px;border:none;background:transparent;color:var(--ink);cursor:pointer}.dr-preset:hover{background:var(--surface-2)}.dr-preset.on{background:var(--accent-soft);color:var(--accent-ink);font-weight:600}.dr-cal{padding:14px 16px}.dr-inputs{display:flex;align-items:flex-end;gap:8px;margin-bottom:12px}.dr-dash{color:var(--muted);padding-bottom:8px}.dr-field{display:block;flex:1}.dr-field>span{display:block;font-size:12px;color:var(--muted);margin-bottom:4px;font-weight:500}.dr-field input,.dr-field select{width:100%}.dr-nav{display:flex;align-items:center;gap:8px;margin:4px 0 6px}.dr-arrow{display:inline-flex;align-items:center;justify-content:center;flex:none;width:28px;height:28px;padding:0;border:1px solid var(--rule);border-radius:7px;background:var(--surface);color:var(--muted);cursor:pointer;font-size:16px;line-height:1}.dr-arrow:hover{background:var(--surface-2);color:var(--ink)}.dr-months{flex:1;display:grid;grid-template-columns:1fr 1fr;gap:20px;text-align:center}.dr-months span{font-size:13.5px;font-weight:600}.dr-grids{display:grid;grid-template-columns:1fr 1fr;gap:20px}.dr-grid{display:grid;grid-template-columns:repeat(7,32px);row-gap:2px}.dr-wd{font-size:11.5px;color:var(--faint);text-align:center;padding-bottom:4px;font-weight:500}.dr-day{font:inherit;font-size:13px;font-variant-numeric:tabular-nums;height:30px;padding:0;border:none;border-radius:0;background:transparent;color:var(--ink);cursor:pointer}.dr-day:disabled{color:transparent;cursor:default}.dr-day.off{color:var(--faint);cursor:not-allowed}.dr-day:hover:not(:disabled):not(.off):not(.edge){background:var(--surface-2);border-radius:6px}.dr-day.cmp{background:var(--series-cmp-soft);color:var(--ink);border-radius:0}.dr-day.cmp-from{border-radius:6px 0 0 6px}.dr-day.cmp-to{border-radius:0 6px 6px 0}.dr-day.cmp-from.cmp-to{border-radius:6px}.dr-day.cmp-from,.dr-day.cmp-to{box-shadow:inset 0 0 0 1px var(--series-cmp-edge)}.dr-day.cmp:hover:not(:disabled){background:var(--series-cmp-edge)}.dr-day.in{background:var(--accent-soft);border-radius:0;box-shadow:none}.dr-day.edge{background:var(--accent);color:var(--on-accent);font-weight:600;box-shadow:none}.dr-day.edge:hover:not(:disabled){background:var(--accent-hover)}.dr-day.from{border-radius:6px 0 0 6px}.dr-day.to{border-radius:0 6px 6px 0}.dr-day.only{border-radius:6px}.dr-actions{display:flex;align-items:center;gap:8px;margin-top:14px;padding-top:12px;border-top:1px solid var(--rule)}.dr-range{display:flex;align-items:flex-end;gap:8px;margin:0 -8px 8px;padding:6px 8px;border:1px solid transparent;border-radius:9px}.dr-range.active{border-color:var(--rule);background:var(--surface-2)}.dr-key{width:14px;height:3px;border-radius:2px;margin-bottom:15px;flex:none}.dr-key.main{background:var(--accent)}.dr-key.cmp{background:repeating-linear-gradient(90deg,var(--series-cmp) 0 3.5px,transparent 3.5px 5.25px);border-radius:0}.dr-mode{flex:1.3}.dr-legend{display:flex;align-items:center;gap:16px;margin-top:12px;font-size:12.5px;color:var(--muted)}.dr-legend b{color:var(--ink);font-weight:600;font-variant-numeric:tabular-nums}.dr-swatch{width:10px;height:10px;border-radius:3px;display:inline-block;margin-right:6px;vertical-align:-1px}.dr-swatch.main{background:var(--accent)}.dr-swatch.cmp{background:var(--series-cmp-soft);box-shadow:inset 0 0 0 1px var(--series-cmp-edge)}.dr-field input.derived{color:var(--ink-2);background:var(--surface-2);cursor:pointer}.dr-hint{font-size:12px;color:var(--muted);margin:-2px 0 8px 22px}.cf{position:relative;display:inline-flex}.cf-menu{position:fixed;z-index:200;width:560px;max-width:calc(100vw - 16px);display:flex;flex-direction:column;overflow:hidden}.cf-section{padding:12px 14px;border-bottom:1px solid var(--rule)}.cf-caption{font-size:12.5px;font-weight:600;color:var(--ink-2);margin-bottom:8px;display:flex;align-items:center;gap:6px}.cf-caption .muted{font-weight:400}.cf-name{display:flex;gap:8px}.cf-name select{flex:none;width:150px}.cf-name input{flex:1;min-width:0}.cf-sets{display:flex;flex-wrap:wrap;gap:6px}.cf-set{display:inline-flex;align-items:center;border:1px solid var(--rule-strong);border-radius:999px;overflow:hidden;background:var(--surface)}.cf-set.on{border-color:var(--accent-border);background:var(--accent-soft)}.cf-set-name{font:inherit;font-size:13px;border:none;background:transparent;color:var(--ink);padding:3px 6px 3px 11px;cursor:pointer}.cf-set.on .cf-set-name{color:var(--accent-ink)}.cf-set-del{display:inline-flex;border:none;background:transparent;color:var(--muted);padding:4px 8px 4px 4px;cursor:pointer}.cf-set-del:hover{color:var(--bad)}.cf-toolbar{display:flex;gap:6px;align-items:center;margin-bottom:8px}.cf-find{flex:1}.cf-list{max-height:300px;overflow-y:auto;margin:0 -6px}.cf-item{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:10px;padding:7px 6px;border-radius:7px;cursor:pointer;font-size:13.5px}.cf-item:hover{background:var(--surface-2)}.cf-item.out .cf-item-name{color:var(--muted)}.cf-item-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cf-cost{font-size:12.5px;color:var(--muted);min-width:72px;text-align:right;font-variant-numeric:tabular-nums}.cf-foot{display:flex;align-items:center;gap:8px;padding:10px 14px;flex-wrap:wrap;background:var(--surface-2)}.cf-setname{width:180px}.legend{display:flex;align-items:center;gap:16px;flex-wrap:wrap;font-size:12.5px;color:var(--muted)}.legend-key{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;color:var(--ink-2);font-variant-numeric:tabular-nums}.key-line{display:inline-block;width:16px;height:2px;border-radius:1px}.key-line.now{background:var(--accent);height:2.5px}.key-line.cmp{background:repeating-linear-gradient(90deg,var(--series-cmp) 0 4px,transparent 4px 6.5px);border-radius:0}.ln{fill:none;stroke-width:2.25;stroke-linejoin:round;stroke-linecap:round}.ln.now{stroke:var(--accent)}.ln.cmp{stroke:var(--series-cmp);stroke-width:1.75;stroke-dasharray:5 4;stroke-linecap:butt}.dot{stroke:var(--surface);stroke-width:2}.dot.now{fill:var(--accent)}.dot.cmp{fill:var(--surface);stroke:var(--series-cmp)}.dot.hollow{fill:var(--surface);stroke:var(--accent)}.crosshair{stroke:var(--rule-strong);stroke-width:1;stroke-dasharray:3 3}.grid-line{stroke:var(--rule);stroke-width:1}.axis-text{fill:var(--muted);font-size:11.5px;font-variant-numeric:tabular-nums}.area-now{fill:url(#ahp-area)}.chart-tip{position:absolute;top:8px;z-index:5;pointer-events:none;min-width:220px;padding:10px 12px;background:var(--surface);border:1px solid var(--rule);border-radius:10px;box-shadow:var(--shadow-pop);font-size:12.5px}.chart-tip-head{display:flex;flex-direction:column;gap:2px;margin-bottom:8px;color:var(--muted);font-variant-numeric:tabular-nums}.chart-tip-head span{display:inline-flex;align-items:center;gap:6px}.chart-tip-rows{width:100%;border-collapse:collapse}.chart-tip-rows td{padding:2px 0;border:none;white-space:nowrap;font-size:12.5px}.chart-tip-rows td+td{padding-left:14px;text-align:right;font-variant-numeric:tabular-nums}.chart-tip-rows tr.on td{font-weight:600;color:var(--ink)}.chart-tip-rows tr:hover td{background:transparent}.ov-chart{padding:16px 20px 20px}.ov-chart-head{display:flex;align-items:center;gap:8px 16px;flex-wrap:wrap;margin-bottom:8px}.ov-chart-title{font-size:14px;font-weight:600}.ov-body{position:relative}.ov-svg{display:block;width:100%;overflow:visible}.fn-head{display:flex;align-items:center;gap:8px;margin-bottom:12px;flex-wrap:wrap}.fn-overall{display:inline-flex;align-items:baseline;gap:4px 8px;flex-wrap:wrap;padding:4px 10px;border-radius:8px;background:var(--surface-2);font-size:13px;font-variant-numeric:tabular-nums}.fn-overall-k{color:var(--muted)}.fn-overall b{font-size:14px;color:var(--ink)}.fn-scrollwrap{position:relative}.fn-scrollwrap:before,.fn-scrollwrap:after{content:"";position:absolute;top:1px;bottom:1px;width:22px;z-index:3;pointer-events:none;opacity:0;transition:opacity .15s}.fn-scrollwrap:before{left:0;background:linear-gradient(to right,var(--edge-shade),transparent)}.fn-scrollwrap:after{right:0;background:linear-gradient(to left,var(--edge-shade),transparent)}.fn-scrollwrap.more-left:before,.fn-scrollwrap.more-right:after{opacity:1}.fn-scroll{overflow-x:auto;container-type:inline-size}.fn-track{display:grid;grid-template-columns:repeat(var(--fn-n),minmax(0,1fr));grid-template-rows:repeat(5,auto);min-width:calc(var(--fn-n) * 132px);border:1px solid var(--rule);border-radius:10px;background:var(--surface)}.fn-block{grid-row:1 / span 4;display:grid;grid-template-rows:subgrid;min-width:0;padding:10px 14px 14px}.fn-block+.fn-block{border-left:1px solid var(--rule)}.fn-block.unknown .fn-value,.fn-block.unknown .fn-cost{opacity:.5}.fn-pick{font:inherit;font-size:13px;font-weight:500;color:var(--ink-2);text-align:left;display:flex;align-items:flex-start;gap:6px;cursor:pointer;width:calc(100% + 12px);margin:0 -6px 4px;padding:4px 6px;border:1px solid transparent;border-radius:7px;background:transparent}.fn-pick:hover:not(:disabled),.fn-pick.open{border-color:var(--rule);background:var(--surface-2);color:var(--ink)}.fn-pick:disabled{cursor:default}.fn-swatch{width:8px;height:8px;border-radius:2px;flex:none;margin-top:6px}.fn-name{flex:1;min-width:0;line-height:1.4;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.fn-pick .msel-caret{margin-top:7px;opacity:0;transition:opacity .12s}.fn-pick:hover .msel-caret,.fn-pick.open .msel-caret,.fn-pick:focus-visible .msel-caret{opacity:.9}.fn-pick.open .msel-caret{transform:rotate(180deg)}.fn-value{font-size:clamp(16px,calc(max(100cqi / var(--fn-n),132px)*.12),22px);font-weight:650;letter-spacing:-.02em;line-height:1.3;font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fn-meta{display:flex;align-items:center;gap:4px 6px;flex-wrap:wrap;margin-top:6px}.fn-src{font-size:11.5px;font-weight:500;color:var(--muted);padding:1px 6px;border-radius:5px;background:var(--surface-2)}.fn-cost{display:flex;align-items:baseline;gap:2px 6px;flex-wrap:wrap;padding-top:10px;font-size:12.5px;font-variant-numeric:tabular-nums}.fn-cost b{font-weight:600;color:var(--ink)}.fn-plot{grid-row:5;grid-column:1 / -1;position:relative;height:56px;overflow:hidden;border-top:1px solid var(--rule);border-radius:0 0 10px 10px;background:var(--ground)}.fn-svg{display:block;width:100%;height:100%}.fn-band{fill-opacity:.55}.fn-div{stroke:var(--rule);stroke-width:1}.fn-step{position:absolute;top:50%;transform:translate(-50%,-50%);z-index:1;display:flex;flex-direction:column;align-items:center;line-height:1.3;white-space:nowrap;padding:3px 9px;border-radius:8px;font-size:11.5px;color:var(--muted);font-variant-numeric:tabular-nums;background:var(--surface);border:1px solid var(--rule);box-shadow:var(--shadow-xs)}.fn-step b{font-size:13px;color:var(--ink);font-weight:600}.fn-step-k{margin-left:4px}.fn-step.odd{border-style:dashed;cursor:help}.fn-step.odd b{color:var(--warn)}.fn-menu .fn-group{font-size:12px;font-weight:500;color:var(--muted);padding:8px 8px 4px}.fn-menu .fn-item{width:100%;font:inherit;font-size:13.5px;text-align:left;cursor:pointer;border:none;background:transparent;color:var(--ink)}.fn-menu .fn-item.used{color:var(--accent-ink);font-weight:600}.fn-menu .fn-pl{font-size:11.5px;color:var(--faint)}.fn-menu-actions{display:flex;align-items:center;gap:2px;margin:6px -6px -6px;padding:6px;border-top:1px solid var(--rule);background:var(--surface-2)}.fn-menu-actions button{font:inherit;font-size:13px;padding:5px 9px;border-radius:7px;cursor:pointer;border:1px solid transparent;background:transparent;color:var(--ink-2)}.fn-menu-actions button:hover:not(:disabled){background:var(--surface);color:var(--ink)}.fn-menu-actions button:disabled{opacity:.4;cursor:not-allowed}.fn-menu-actions .danger{color:var(--bad)}.fn-menu-actions .danger:hover:not(:disabled){background:var(--bad-soft);color:var(--bad)}.mp-list{display:flex;flex-direction:column}.mp-row{display:grid;grid-template-columns:minmax(180px,1.1fr) minmax(200px,2fr) minmax(150px,auto);align-items:center;gap:8px 24px;padding:14px 0;border-top:1px solid var(--rule)}.mp-row:first-child{border-top:none;padding-top:4px}.mp-name{font-size:13.5px;font-weight:600;color:var(--ink);display:flex;align-items:center;gap:6px;flex-wrap:wrap}.mp-sub{font-size:12.5px;color:var(--muted);margin-top:2px}.mp-bar{position:relative;height:10px;border-radius:999px;background:var(--surface-2)}.mp-fill{position:absolute;inset:0 auto 0 0;border-radius:999px;background:var(--accent)}.mp-tick{position:absolute;top:-4px;bottom:-4px;width:2px;margin-left:-1px;border-radius:1px;background:var(--ink)}.mp-fill.good{background:var(--good)}.mp-fill.warn{background:#f79009}.mp-fill.bad{background:var(--bad)}.mp-bar-note{display:flex;justify-content:space-between;gap:8px;font-size:12.5px;color:var(--muted);margin-top:6px;font-variant-numeric:tabular-nums}.mp-pct{text-align:right;font-size:18px;font-weight:650;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.mp-pct small{display:block;font-size:12.5px;font-weight:400;color:var(--muted);letter-spacing:0}.mp-pct.good{color:var(--good)}.mp-pct.warn{color:var(--warn)}.mp-pct.bad{color:var(--bad)}.mp-pct.none{color:var(--faint)}@media(max-width:760px){.mp-row{grid-template-columns:1fr}.mp-pct{text-align:left}}.wk-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:14px}.wk-camp{max-width:360px;flex:1 1 220px}.wk-unit{font-size:13px}.wk-caption{margin:8px 0 0;font-size:12.5px}.wk-tabs{display:flex;align-items:stretch;gap:8px;flex-wrap:wrap;margin-bottom:14px;position:relative}.wk-tab{font:inherit;text-align:left;cursor:pointer;padding:8px 12px;border-radius:10px;border:1px solid var(--rule);background:var(--surface);color:var(--ink-2);display:flex;flex-direction:column;gap:2px;min-width:112px}.wk-tab:hover{border-color:var(--rule-strong);background:var(--surface-2)}.wk-tab.on{border-color:var(--accent);background:var(--accent-soft);box-shadow:inset 0 0 0 1px var(--accent)}.wk-tab-name{font-size:12.5px;color:var(--muted);font-weight:500}.wk-tab.on .wk-tab-name{color:var(--accent-ink)}.wk-tab b{font-size:17px;font-weight:650;letter-spacing:-.015em;font-variant-numeric:tabular-nums;color:var(--ink)}.wk-more{min-width:0;align-items:center;justify-content:center;color:var(--muted);border-style:dashed;padding:8px 14px}.wk-picker{position:absolute;top:calc(100% + 6px);right:0;width:280px;z-index:30}.wk-plot{position:relative}.wk-plot-head{display:flex;align-items:baseline;gap:8px;font-size:13px;margin-bottom:4px;flex-wrap:wrap}.wk-plot-head b{font-size:14px}.wk-svg{display:block;width:100%;overflow:visible}.wk-gridline{stroke:var(--rule);stroke-width:1}.wk-y{fill:var(--muted);font-size:11.5px;font-variant-numeric:tabular-nums}.wk-area{fill:var(--accent);opacity:.07}.wk-cursor{stroke:var(--rule-strong);stroke-width:1;stroke-dasharray:3 3}.wk-x{fill:var(--ink-2);font-size:11.5px;font-variant-numeric:tabular-nums;font-weight:500}.wk-x.faint{fill:var(--muted);font-size:11px;font-weight:400}.wk-tip{position:absolute;top:34px;transform:translate(12px);pointer-events:none;z-index:20;min-width:210px;padding:10px 12px;border-radius:10px;border:1px solid var(--rule);background:var(--surface);box-shadow:var(--shadow-pop)}.wk-tip.flip{transform:translate(calc(-100% - 12px))}.wk-tip-head{display:flex;align-items:baseline;gap:6px;margin-bottom:6px;font-size:12.5px}.wk-tip-rows{width:100%;border-collapse:collapse;font-size:12.5px}.wk-tip-rows td{padding:2px 0;border:none;white-space:nowrap}.wk-tip-rows td+td{padding-left:14px}.wk-tip-rows tr.on td{font-weight:600;color:var(--ink)}.wk-tip-rows tr:hover td{background:transparent}.wk-tip-rows .num{font-variant-numeric:tabular-nums;text-align:right}.ct-tools{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:12px 16px;border-bottom:1px solid var(--rule)}.ct-tools .msel{width:180px;min-width:0}.ct-count{font-size:13px;color:var(--muted);font-variant-numeric:tabular-nums}.ct-scroll{overflow:auto;max-height:calc(100vh - var(--topbar-h) - 190px);min-height:320px;border-radius:0 0 var(--radius) var(--radius)}.ct table{font-size:13.5px}.ct th,.ct td{padding:9px 12px}.ct .sticky-col{position:sticky;left:0;z-index:1;background:var(--surface);box-shadow:inset -1px 0 0 var(--rule)}.ct thead th.sticky-col{z-index:3}.ct tbody tr:hover td.sticky-col{background:var(--surface-2)}.ct tbody tr.focused td{background:var(--accent-soft)}.ct tr.total td.sticky-col{background:var(--surface-2)}.ct thead th{top:0;height:38px;padding-top:0;padding-bottom:0}.ct tr.total td{position:sticky;top:38px;z-index:1}.ct tr.total td.sticky-col{vertical-align:middle}.ct tr.total td.sticky-col{z-index:2}.ct td.name{min-width:280px;max-width:420px}.ct-name{display:flex;align-items:flex-start;gap:10px;min-width:0}.ct-name .pdot{margin-top:6px}.ct-title-wrap{min-width:0;flex:1}.ct-title{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere;color:var(--ink);font-weight:500;line-height:1.4}.ct-meta{display:flex;align-items:center;gap:0;margin-top:1px;font-size:12.5px;color:var(--muted);white-space:nowrap;overflow:hidden}.ct-meta>*+*:before{content:"·";margin:0 6px;color:var(--faint)}.ct-row-act{position:absolute;right:10px;top:10px;display:inline-flex;align-items:center;gap:4px;flex:none;opacity:0;box-shadow:var(--shadow-pop);height:24px;padding:0 8px;border:1px solid var(--rule);border-radius:6px;background:var(--surface);font-size:12px;font-weight:500;color:var(--ink-2);cursor:pointer;white-space:nowrap}.ct tbody tr:hover .ct-row-act,.ct-row-act:focus-visible{opacity:1}.ct-row-act:hover{border-color:var(--accent-border);color:var(--accent-ink)}.ct-dir{position:relative}button.badge.dir.manual{box-shadow:inset 0 0 0 1px currentColor}.ct-dir-menu{position:absolute;z-index:10;top:calc(100% - 4px);left:8px;min-width:150px;padding:4px;display:flex;flex-direction:column;gap:1px;background:var(--surface);border:1px solid var(--rule);border-radius:10px;box-shadow:var(--shadow-pop)}.ct-dir-menu button{font:inherit;font-size:13px;text-align:left;padding:6px 8px;border-radius:6px;border:none;background:transparent;color:var(--ink);cursor:pointer;display:flex;align-items:center;gap:8px}.ct-dir-menu button:hover{background:var(--surface-2)}.ct-dir-menu button.on{color:var(--accent-ink);font-weight:600}.ct-foot{font-size:12.5px;padding:10px 16px;color:var(--muted);border-top:1px solid var(--rule)}.ver{position:relative;display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 10px;border-radius:8px;border:1px solid transparent;background:transparent;color:var(--ink-2);cursor:pointer;font-size:13px;font-weight:500}.ver:hover,.ver.open{background:var(--surface-2);color:var(--ink)}.ver .icon{color:var(--muted)}.ver-dot{position:absolute;top:5px;left:21px;width:7px;height:7px;border-radius:50%;background:var(--brand);box-shadow:0 0 0 2px var(--surface)}.ver-panel{position:fixed;z-index:220;max-width:calc(100vw - 16px);max-height:70vh;overflow-y:auto;padding:14px 16px}.ver-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:8px}.ver-head b{font-size:14px}.ver-items{margin:0;padding-left:18px;font-size:13.5px;color:var(--ink-2)}.ver-items li{margin:4px 0}.ver-sub{margin:14px 0 4px;padding-top:12px;border-top:1px solid var(--rule);font-size:12px;font-weight:500;color:var(--muted)}.ver-row{font:inherit;font-size:13.5px;color:var(--ink);text-align:left;cursor:pointer;display:flex;align-items:center;gap:10px;width:calc(100% + 12px);margin:0 -6px;padding:5px 6px;border:none;border-radius:7px;background:transparent}.ver-row:hover{background:var(--surface-2)}.ver-row b{font-weight:600;font-variant-numeric:tabular-nums}.ver-row[aria-expanded=true] .msel-caret{transform:rotate(180deg)}.ver-items-old{margin:2px 0 8px}.admin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.admin-grid .stat{cursor:default}.admin-grid .stat:hover{background:transparent}.admin-actions{display:flex;gap:8px;flex-wrap:wrap}.run-status{display:inline-flex;align-items:center;gap:6px;font-size:13px}.dash,.wk-plot,.tw,.ct-scroll{transition:opacity .15s ease}.refreshing{opacity:.55}@media(prefers-reduced-motion:reduce){.dash,.wk-plot,.tw,.ct-scroll{transition:none}}@media(max-width:1100px){.ver .btn-text,.switcher-kbd{display:none}}@media(max-width:720px){.topbar-inner,.page{padding-left:16px;padding-right:16px}.topbar-inner{gap:4px}.page-title{font-size:20px;line-height:28px}.brand-text,.brand-sep,.topnav,.ver .btn-text,.switcher-kbd{display:none}.switcher{flex:1 1 auto}.switcher-face{max-width:100%}.dr-vs{display:none}.toolbar{position:static}.stat{padding:14px 16px}.stat-value{font-size:22px;line-height:30px}.ov-chart,.panel-body,.panel-head{padding-left:16px;padding-right:16px}.dr-menu{flex-direction:column;max-height:calc(100vh - 24px);overflow-y:auto}.dr-presets{flex-direction:row;flex-wrap:wrap;border-right:none;border-bottom:1px solid var(--rule)}.dr-grids,.dr-months{grid-template-columns:1fr}.dr-months span+span{display:none}.dr-grid+.dr-grid{display:none}}.printhead,.print-only{display:none}@media print{:root,:root[data-theme=dark]{--ground: #fff;--surface: #fff;--surface-2: #f4f5f7;--surface-3: #eceef2;--ink: #111;--ink-2: #333;--muted: #555;--faint: #888;--rule: #ddd;--rule-strong: #bbb;--accent: #2563eb;--accent-soft: #eef3fe;--accent-ink: #1d4ed8;--good: #067647;--good-soft: #ecfdf3;--bad: #b42318;--bad-soft: #fef3f2;--warn: #b54708;--warn-soft: #fffaeb;--shadow: none;--shadow-xs: none}@page{size:A4 landscape;margin:12mm}body{background:#fff;font-size:11px}.page{max-width:none;padding:0}.topbar,.toolbar,.tabs,.page-actions,.hintw,.btn,.dr,.msel,.msel-menu,.dr-menu,.cf-menu,.ver-panel,.seg,.wk-bar,.wk-tabs,.wk-tip,.chart-tip,.ct-tools,.ct-dir-menu,.ct-row-act,.stats-more,.notice-toggle,.screen-only,.star-btn,.fchip-x{display:none!important}.fn-block .fn-pick{display:flex!important;min-height:0;width:auto;margin:0 0 2px;padding:0}.fn-block .msel-caret{display:none!important}.fn-scroll{overflow:visible}.fn-track{min-width:0}.fn-scrollwrap:before,.fn-scrollwrap:after{display:none}.tabpanel{display:block!important}.tabpanel+.tabpanel{break-before:page}.print-only{display:block!important}.dash.refreshing,.refreshing{opacity:1}.ct-scroll{max-height:none!important;overflow:visible!important}.ct .sticky-col,.ct tr.total td,thead th{position:static;box-shadow:none}.ct>table,.ct table{font-size:8px}.ct th,.ct td{padding:3px 4px;white-space:nowrap}.ct thead th{font-size:7.5px}.ct td.name{min-width:0;max-width:190px;white-space:normal}.ct-title{white-space:normal}.ct .badge{font-size:7px;height:auto;padding:1px 3px}.ct .cell-d,.ct .delta-text{font-size:7px}.ct .delta-arrow{width:5px;height:5px}.ct-meta{font-size:7px;margin-top:0}.ct-name .pdot{width:5px;height:5px;margin-top:3px}.page-head{display:none!important}.fn-step{box-shadow:none}.wk-plot,.fn-track,.stats,.mp-row{break-inside:avoid}.printhead{display:flex;align-items:center;gap:10px;padding-bottom:10px;margin-bottom:14px;border-bottom:1.5px solid var(--rule-strong)}.printhead img{width:24px;height:24px}.printhead b{display:block;font-size:15px}.printhead span{font-size:11px;color:var(--muted)}.panel{break-inside:avoid-page;box-shadow:none;border-color:var(--rule);margin-bottom:12px}.stat{padding:8px 10px}.stat.on:before{display:none}.stat-value{font-size:17px;line-height:22px}.stats{grid-template-columns:repeat(5,1fr)}.tw{overflow:visible!important;max-height:none!important}.tw>table{font-size:10px}.tw .delta-text{font-size:8.5px}.tw .delta-arrow{width:6px;height:6px}tbody tr,.notice{break-inside:avoid}a{color:var(--ink);text-decoration:none}}.term{cursor:help;text-decoration:underline dotted var(--faint);text-underline-offset:3px;text-decoration-thickness:1px}.term:hover,.term.on{text-decoration-color:var(--accent)}html{scroll-padding-top:calc(var(--topbar-h) + 72px)}.stat-caption{font-weight:400;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.stat-caption:before{content:"·";margin-right:6px;color:var(--faint)}.stat-warn{display:inline-flex;color:var(--bad);flex:none}
