:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--plane:#f9f9f7;--surface-1:#fcfcfb;--text-primary:#0b0b0b;--text-secondary:#52514e;--text-muted:#898781;--grid:#e1e0d9;--axis:#c3c2b7;--border:#0b0b0b1a;--series-1:#2a78d6;--series-2:#eb6834;--series-3:#1baf7a;--series-4:#7a6bd6;--reference:#898781;--diverging-negative:#e34948;--tone-good:#006300;--tone-bad:#d03b3b;--radius:14px;--radius-input:8px;--lift:#fff;--shadow:0 1px 2px #0b0b0b0a, 0 10px 28px -14px #0b0b0b24;--shadow-pill:0 1px 2px #0b0b0b0f, 0 4px 12px -6px #0b0b0b1f;--wash:linear-gradient(145deg, #eceae2 0%, #f7f6f3 42%, #fcfcfb 100%);--hair:transparent;--gap:20px;--font:system-ui, -apple-system, "Segoe UI", sans-serif}@media (prefers-color-scheme:dark){:root:where(:not([data-theme=light])){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--plane:#0d0d0d;--surface-1:#1a1a19;--text-primary:#fff;--text-secondary:#c3c2b7;--text-muted:#898781;--grid:#2c2c2a;--axis:#383835;--border:#ffffff1a;--series-1:#3987e5;--series-2:#d95926;--series-3:#199e70;--series-4:#8b7ce8;--diverging-negative:#e66767;--tone-good:#0ca30c;--tone-bad:#e66767;--lift:#2a2a27;--shadow:none;--shadow-pill:none;--wash:linear-gradient(145deg, #171716 0%, #111110 45%, #0d0d0d 100%);--hair:#ffffff12}}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--plane:#0d0d0d;--surface-1:#1a1a19;--text-primary:#fff;--text-secondary:#c3c2b7;--text-muted:#898781;--grid:#2c2c2a;--axis:#383835;--border:#ffffff1a;--series-1:#3987e5;--series-2:#d95926;--series-3:#199e70;--series-4:#8b7ce8;--diverging-negative:#e66767;--tone-good:#0ca30c;--tone-bad:#e66767;--lift:#2a2a27;--shadow:none;--shadow-pill:none;--wash:linear-gradient(145deg, #171716 0%, #111110 45%, #0d0d0d 100%);--hair:#ffffff12}*,:before,:after{box-sizing:border-box}body{background:var(--wash);color:var(--text-primary);font-family:var(--font);-webkit-font-smoothing:antialiased;background-attachment:fixed;min-height:100vh;margin:0;padding:0;font-size:15px;line-height:1.55}.controls{background:var(--surface-1);border:1px solid var(--hair);box-shadow:var(--shadow);border-radius:var(--radius);padding:18px}.controls__grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:16px;display:grid}.field{flex-direction:column;gap:6px;min-width:0;display:flex}.field__label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:600}.field__input{font:inherit;color:var(--text-primary);background:var(--plane);border:1px solid var(--border);border-radius:var(--radius-input);width:100%;min-width:0;padding:8px 10px;font-size:14px}.field__input:focus-visible{outline:2px solid var(--series-1);outline-offset:1px}.field__hint{color:var(--text-muted);font-size:12px}.presets{flex-wrap:wrap;gap:5px;display:flex}.presets__item{font:inherit;color:var(--text-secondary);border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:999px;padding:3px 9px;font-size:12px}.presets__item:hover{color:var(--text-primary);border-color:var(--axis)}.verdict{background:var(--surface-1);border:1px solid var(--hair);box-shadow:var(--shadow);border-left:4px solid var(--axis);border-radius:var(--radius);flex-wrap:wrap;align-items:center;gap:24px;padding:22px 24px;display:flex}.verdict--good{border-left-color:var(--tone-good)}.verdict--mixed{border-left-color:var(--series-2)}.verdict--bad{border-left-color:var(--tone-bad)}.verdict__figure{flex-direction:column;min-width:150px;display:flex}.verdict__label{text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);font-size:12px;font-weight:600}.verdict__value{letter-spacing:-.02em;font-size:clamp(38px,7vw,52px);font-weight:600;line-height:1.05}.verdict__unit{color:var(--text-muted);font-size:13px}.verdict__text{color:var(--text-secondary);flex:340px;margin:0}.tiles{grid-template-columns:repeat(auto-fit,minmax(165px,1fr));gap:12px;display:grid}.tile{background:var(--surface-1);border:1px solid var(--hair);box-shadow:var(--shadow);border-radius:var(--radius);flex-direction:column;gap:3px;padding:14px 16px;display:flex}.tile__label{color:var(--text-secondary);font-size:12px;font-weight:600}.tile__value{letter-spacing:-.01em;font-size:24px;font-weight:600}.tile__value--good{color:var(--tone-good)}.tile__value--bad{color:var(--tone-bad)}.tile__note{color:var(--text-muted);font-size:12px;line-height:1.4}.panel{background:var(--surface-1);border:1px solid var(--hair);box-shadow:var(--shadow);border-radius:var(--radius);padding:20px}.panel-doi{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:24px;min-width:0;display:grid}.panel-50{min-width:0;max-width:100%}@media (width<=760px){.panel.panel-doi{gap:var(--gap);box-shadow:none;background:0 0;border:0;border-radius:0;flex-direction:column;align-items:stretch;padding:0;display:flex}.panel-doi>.panel-50{background:var(--surface-1);border:1px solid var(--hair);box-shadow:var(--shadow);border-radius:var(--radius);padding:20px}}@media (width<=560px){.panel-doi>.panel-50{padding:14px}}.panel__title{margin:0 0 4px;font-size:17px;font-weight:600}.panel__subtitle{max-width:76ch;color:var(--text-secondary);margin:0 0 16px;font-size:13px}.notes{background:var(--surface-1);border:1px solid var(--hair);box-shadow:var(--shadow);border-left:4px solid var(--series-2);border-radius:var(--radius);padding:14px 18px}.notes__title{text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);margin-bottom:4px;font-size:12px;font-weight:600;display:block}.notes__list{color:var(--text-secondary);margin:0;padding-left:20px;font-size:13px}.notes__list li+li{margin-top:3px}.chart-host{width:100%;min-width:0}.chart__legend{color:var(--text-secondary);flex-wrap:wrap;gap:14px;margin-bottom:10px;font-size:12px;display:flex}.chart__legend-item{align-items:center;gap:6px;display:inline-flex}.chart__key{border-radius:3px;flex:none;width:10px;height:10px}.chart__key--ref{border-radius:0;height:2px}.chart__plot{width:100%;min-width:0;position:relative}.chart__plot svg{max-width:100%;display:block}.chart__grid{stroke:var(--grid);stroke-width:1px}.chart__axis{stroke:var(--axis);stroke-width:1px}.chart__tick{fill:var(--text-muted);font-size:11px;font-family:var(--font);font-variant-numeric:tabular-nums}.chart__tick--y{text-anchor:end}.chart__tick--x{text-anchor:middle}.chart__tick--muted{fill:var(--axis)}.chart__marker{stroke:var(--surface-1);stroke-width:2px}.chart__crosshair{stroke:var(--axis);stroke-width:1px}.chart__overlay{cursor:crosshair}.chart__bar:focus-visible{outline:2px solid var(--text-primary)}.chart__tooltip{z-index:2;background:var(--surface-1);border:1px solid var(--border);pointer-events:none;border-radius:8px;min-width:150px;padding:8px 10px;font-size:12px;display:none;position:absolute;box-shadow:0 4px 14px #0000001f}.chart__tooltip.is-visible{display:block}.chart__tooltip-date{margin-bottom:4px;font-weight:600}.chart__tooltip-row{color:var(--text-secondary);align-items:center;gap:6px;display:flex}.chart__tooltip-label{flex:1}.chart__tooltip-value{color:var(--text-primary);font-variant-numeric:tabular-nums;font-weight:600}.chart__tooltip-detail{color:var(--text-muted);margin-top:4px}.table-scroll{margin-top:10px;overflow-x:auto}.table{border-collapse:collapse;width:100%;font-size:13px}.table--dense{font-size:12px}.table__caption{caption-side:top;text-align:left;color:var(--text-muted);padding-bottom:8px;font-size:12px}.table th,.table td{text-align:left;border-bottom:1px solid var(--border);vertical-align:top;padding:8px 10px}.table thead th{text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);white-space:nowrap;font-size:11px}.table__num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.table__note{color:var(--text-muted);max-width:46ch;font-size:11px;font-weight:400;display:block}.table tr.is-skipped{color:var(--text-muted)}.disclosure{background:var(--surface-1);border:1px solid var(--hair);box-shadow:var(--shadow);border-radius:var(--radius);padding:14px 18px}.disclosure__summary{cursor:pointer;color:var(--text-secondary);font-size:13px;font-weight:600}.disclosure[open] .disclosure__summary{margin-bottom:8px}.loading,.error{border-radius:var(--radius);background:var(--surface-1);border:1px solid var(--border);color:var(--text-secondary);padding:24px}.error{border-left:4px solid var(--tone-bad)}.page__footer{color:var(--text-muted)}@media (width<=560px){body{padding:20px 14px 48px}.panel,.controls{padding:14px}.verdict{gap:14px;padding:16px 18px}}.app{grid-template-columns:212px minmax(0,1fr);min-height:100vh;display:grid}.side{border-right:1px solid var(--hair);flex-direction:column;gap:26px;padding:22px 14px;display:flex}.side__brand{letter-spacing:-.01em;align-items:center;gap:9px;padding:0 9px;font-weight:600;display:flex}.side__nav{flex-direction:column;gap:2px;display:flex}.side__item{font:inherit;text-align:left;color:var(--text-secondary);cursor:pointer;background:0 0;border:0;border-radius:10px;align-items:center;gap:8px;padding:9px 11px;font-size:13.5px;display:flex}.side__item:hover{color:var(--text-primary)}.side__item--on{background:var(--lift);color:var(--text-primary);box-shadow:var(--shadow-pill);border:1px solid var(--hair);font-weight:600}.side__item--off{color:var(--text-muted);cursor:default;justify-content:space-between}.side__item--off:hover{color:var(--text-muted)}.side__tag{letter-spacing:.04em;background:var(--grid);color:var(--text-muted);border-radius:999px;padding:1px 6px;font-size:10px;font-weight:600}.main{gap:var(--gap);flex-direction:column;min-width:0;padding:22px 26px 64px;display:flex}.main__top{justify-content:space-between;align-items:center;gap:16px;display:flex}.main__title{letter-spacing:-.02em;margin:0;font-size:clamp(20px,3vw,26px);font-weight:600}.screen{gap:var(--gap);flex-direction:column;min-width:0;display:flex}.pill{font:inherit;border:1px solid var(--hair);background:var(--lift);color:var(--text-secondary);box-shadow:var(--shadow-pill);cursor:pointer;white-space:nowrap;border-radius:999px;padding:8px 14px;font-size:12.5px;font-weight:600}.pill--on{color:var(--series-1)}.pill--icon{align-items:center;gap:6px;display:inline-flex}.pill__dot{background:var(--tone-bad);color:#fff;text-align:center;border-radius:999px;min-width:17px;padding:0 5px;font-size:11px;font-weight:700;line-height:17px}.pill:focus-visible,.side__item:focus-visible{outline:2px solid var(--series-1);outline-offset:2px}.pager{border-top:1px solid var(--grid);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:14px;padding-top:14px;display:flex}.pager__count{color:var(--text-secondary);font-size:12.5px}.pager__count strong{color:var(--text-primary);font-weight:600}.pager__nav{align-items:center;gap:4px;display:flex}.pager__page,.pager__arrow{font:inherit;min-width:32px;height:32px;color:var(--text-secondary);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;padding:0 8px;font-size:12.5px;display:inline-flex}.pager__page:hover:not(.pager__page--on),.pager__arrow:hover:not(:disabled){color:var(--text-primary);background:var(--lift);border-color:var(--hair)}.pager__page--on{background:var(--text-primary);color:var(--plane);font-weight:600}.pager__arrow:disabled{color:var(--grid);cursor:default}.pager__page:focus-visible,.pager__arrow:focus-visible{outline:2px solid var(--series-1);outline-offset:2px}@media (width<=560px){.pager__page:not(.pager__page--on){display:none}.pager__page,.pager__arrow{min-width:44px;height:44px}}.rowbar{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.rowbar__note{color:var(--text-muted);font-size:12.5px}.btn{font:inherit;border:1px solid var(--hair);background:var(--lift);color:var(--text-secondary);box-shadow:var(--shadow-pill);cursor:pointer;border-radius:999px;align-items:center;gap:7px;padding:9px 16px;font-size:13px;font-weight:600;display:inline-flex}.btn:hover{color:var(--text-primary)}.btn--primary{background:var(--text-primary);color:var(--plane);border-color:#0000}.btn--primary:hover{color:var(--plane)}.btn:disabled{opacity:.45;cursor:default}.btn:focus-visible{outline:2px solid var(--series-1);outline-offset:2px}@media (width<=560px){.btn{padding:12px 18px}}.na{color:var(--text-muted)}.tone-good{color:var(--tone-good)}.tone-bad{color:var(--tone-bad)}.pill-tag{white-space:nowrap;border-radius:999px;padding:1px 8px;font-size:11px;font-weight:600;display:inline-block}.pill-tag--buy{background:color-mix(in oklab, var(--series-1) 14%, transparent);color:var(--series-1)}.pill-tag--sell{background:color-mix(in oklab, var(--series-2) 16%, transparent);color:var(--series-2)}.alert{border-radius:var(--radius);color:var(--text-secondary);background:var(--surface-1);border:1px solid var(--hair);border-left:4px solid var(--axis);box-shadow:var(--shadow);padding:13px 16px;font-size:13px;line-height:1.5}.alert strong{color:var(--text-primary);font-weight:600}.alert--warn{border-left-color:var(--series-2)}.alert--bad{border-left-color:var(--tone-bad)}.alert__note{color:var(--text-muted);margin-top:3px;font-size:12.5px}.panel--empty{flex-direction:column;align-items:flex-start;gap:4px;display:flex}.panel--empty .btn{margin-top:12px}.grid2{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;display:grid}.field__err{color:var(--tone-bad);font-size:12px;font-weight:600}.field__warn{color:var(--series-2);font-size:12px}.field__opt{text-transform:none;letter-spacing:0;color:var(--text-muted);font-weight:400}.field__input[aria-invalid=true]{border-color:var(--tone-bad)}.seg{background:color-mix(in oklab, var(--text-primary) 5%, transparent);border-radius:11px;gap:5px;padding:4px;display:flex}.seg__item{font:inherit;color:var(--text-muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;flex:1;padding:9px;font-size:13.5px;font-weight:600}.seg__item--on{background:var(--lift);border-color:var(--hair);color:var(--text-primary);box-shadow:var(--shadow-pill)}.sumbox{background:var(--plane);border-radius:11px;flex-direction:column;gap:7px;padding:13px 15px;display:flex}.sumbox__row{color:var(--text-secondary);justify-content:space-between;gap:12px;font-size:13px;display:flex}.sumbox__row--total{border-top:1px solid var(--grid);color:var(--text-primary);padding-top:7px}.sumbox__row span:last-child{font-weight:600}.modal{z-index:50;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.modal__scrim{background:#0b0b0b47;position:absolute;inset:0}@media (prefers-color-scheme:dark){:root:where(:not([data-theme=light])) .modal__scrim{background:#0000009e}}:root[data-theme=dark] .modal__scrim{background:#0000009e}.modal__box{background:var(--surface-1);border:1px solid var(--hair);border-radius:16px;flex-direction:column;gap:14px;width:100%;max-width:560px;max-height:calc(100vh - 48px);padding:22px;display:flex;position:relative;overflow-y:auto;box-shadow:0 20px 50px -12px #0b0b0b66}.modal__head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.modal__title{letter-spacing:-.015em;margin:0 0 3px;font-size:20px;font-weight:600}.modal__sub{color:var(--text-secondary);margin:0;font-size:12.5px}.modal__close{font:inherit;color:var(--text-muted);cursor:pointer;background:0 0;border:0;padding:4px;line-height:0}.modal__close:hover{color:var(--text-primary)}.modal__foot{justify-content:flex-end;gap:9px;display:flex}@media (width<=560px){.modal{align-items:flex-end;padding:0}.modal__box{border-radius:22px 22px 0 0;max-width:none;max-height:92vh;padding-bottom:34px}}.side__foot{background:color-mix(in oklab, var(--series-2) 10%, transparent);color:var(--text-secondary);border-radius:10px;margin-top:auto;padding:11px;font-size:11.5px;line-height:1.45}.side__foot strong{color:var(--text-primary);font-weight:600}.prog{align-items:center;gap:9px;display:flex}.prog__bar{background:var(--grid);border-radius:999px;flex:1;height:6px;overflow:hidden}.prog__fill{background:var(--series-3);border-radius:999px;height:100%}.prog__fill--warn{background:var(--series-2)}.prog__label{color:var(--text-secondary);white-space:nowrap;font-size:11.5px}.prog__label--warn{color:var(--series-2);font-weight:600}.pill-tag--auto{background:color-mix(in oklab, var(--series-3) 16%, transparent);color:var(--series-3)}.pill-tag--off{background:color-mix(in oklab, var(--text-primary) 7%, transparent);color:var(--text-secondary)}.linkbtn{font:inherit;color:var(--series-1);cursor:pointer;background:0 0;border:0;padding:2px 0;font-size:12.5px;font-weight:600}.linkbtn:hover{text-decoration:underline}.linkbtn:focus-visible{outline:2px solid var(--series-1);outline-offset:2px;border-radius:4px}.check{color:var(--text-secondary);cursor:pointer;align-items:center;gap:9px;font-size:13.5px;display:flex}.panel__foot{color:var(--text-muted);margin:13px 0 0;font-size:12px;line-height:1.5}.panel__foot strong{color:var(--text-secondary);font-weight:600}.range{height:22px;position:relative}.range__track{background:color-mix(in oklab, var(--text-primary) 8%, transparent);border-radius:999px;height:5px;position:absolute;top:9px;left:0;right:0}.range__ma{background:var(--axis);border-radius:2px;width:2.5px;height:13px;position:absolute;top:5px;transform:translate(-50%)}.range__now{background:var(--series-1);border-radius:2px;width:3px;height:19px;position:absolute;top:2px;transform:translate(-50%)}.range__ends{color:var(--text-muted);justify-content:space-between;font-size:11px;display:flex}.range__note{color:var(--series-2);margin-top:2px;font-size:11px}.legend{color:var(--text-secondary);gap:16px;margin:10px 0 6px;font-size:12px;display:flex}.legend__item{align-items:center;gap:6px;display:inline-flex}.legend__key{border-radius:2px;width:3px;height:12px;display:inline-block}.legend__key--now{background:var(--series-1)}.legend__key--ma{background:var(--axis)}.tone-warn{color:var(--series-2);align-items:center;gap:5px;font-weight:600;display:inline-flex}.is-stale{background:color-mix(in oklab, var(--series-2) 6%, transparent)}.alloc{align-items:center;gap:20px;display:flex}.alloc__donut{flex:none;width:30%}.alloc__list{flex-direction:column;flex:1;gap:7px;min-width:0;max-width:440px;display:flex}.alloc__row{grid-template-columns:9px minmax(0,1fr) 84px 52px;align-items:center;gap:10px;display:grid}.alloc__dot{border-radius:2px;width:9px;height:9px}.alloc__name{text-align:left}.alloc__val{text-align:right;font-size:13px;font-weight:600}.alloc__pct{color:var(--text-secondary);text-align:right;font-size:12.5px}@media (width<=560px){.alloc{flex-direction:column;align-items:flex-start;gap:16px}.alloc__donut{width:132px;height:132px}.alloc__list{gap:9px;width:100%;max-width:none}.alloc__row{grid-template-columns:9px minmax(0,1fr) 80px 52px}}.tile--wide{grid-column:span 2}.tile__value--xl{letter-spacing:-.03em;font-size:clamp(30px,5vw,38px)}@media (width<=560px){.tile--wide{grid-column:span 1}}.tabbar,.tabsheet,.tabsheet__scrim{display:none}@media (width<=760px){.app{grid-template-columns:minmax(0,1fr)}.side{border-right:0;flex-direction:row;align-items:center;gap:12px;padding:14px 16px 0}.side__nav{display:none}.side__foot{max-width:54%;margin:0 0 0 auto;padding:7px 9px;font-size:10.5px}.main{padding:12px 16px 0;padding-bottom:calc(74px + env(safe-area-inset-bottom,0px))}.main__title{font-size:21px}.tabbar{z-index:40;background:var(--surface-1);border-top:1px solid var(--grid);padding:4px 6px 0;padding-bottom:env(safe-area-inset-bottom,0px);display:flex;position:fixed;bottom:0;left:0;right:0}.tabbar__item{font:inherit;color:var(--text-secondary);cursor:pointer;background:0 0;border:0;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:3px;min-width:0;height:54px;font-size:10px;display:flex}.tabbar__item--on{color:var(--series-1);font-weight:600}.tabbar__item:focus-visible{outline:2px solid var(--series-1);outline-offset:-3px}.tabsheet__scrim{z-index:41;background:#0b0b0b47;display:block;position:fixed;inset:0}.tabsheet{z-index:42;background:var(--surface-1);border-top:1px solid var(--hair);padding:10px 16px calc(20px + env(safe-area-inset-bottom,0px));border-radius:22px 22px 0 0;flex-direction:column;gap:2px;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -10px 34px -8px #0b0b0b59}.tabsheet__grip{background:color-mix(in oklab, var(--text-primary) 16%, transparent);border-radius:999px;width:38px;height:4px;margin:0 auto 12px}.tabsheet__item{font:inherit;text-align:left;min-height:44px;color:var(--text-secondary);cursor:pointer;background:0 0;border:0;border-radius:10px;padding:14px 12px;font-size:15px}.tabsheet__item--on{background:var(--lift);border:1px solid var(--hair);color:var(--text-primary);font-weight:600}.table{font-size:12.5px}.table th,.table td{padding:8px}}@media (prefers-color-scheme:dark){:root:where(:not([data-theme=light])) .tabsheet__scrim{background:#0000009e}}:root[data-theme=dark] .tabsheet__scrim{background:#0000009e}.auth{flex-direction:column;justify-content:center;align-items:center;gap:18px;min-height:100vh;padding:40px 20px;display:flex}.auth__brand{letter-spacing:-.01em;align-items:center;gap:10px;font-size:17px;font-weight:600;display:flex}.auth__box{background:var(--surface-1);border:1px solid var(--hair);border-radius:var(--radius);width:100%;max-width:396px;box-shadow:var(--shadow);flex-direction:column;gap:14px;padding:26px;display:flex}.auth__title{letter-spacing:-.015em;margin:0;font-size:21px;font-weight:600}.auth__sub{color:var(--text-secondary);margin:-8px 0 4px;font-size:13px}.auth__submit{justify-content:center;margin-top:4px}.auth__note{color:var(--text-muted);margin:4px 0 0;font-size:12px;line-height:1.5}.auth__legacy{flex-direction:column;gap:14px;margin-top:12px;display:flex}.auth__thu{font:inherit;color:var(--text-secondary);cursor:pointer;background:0 0;border:0;align-items:center;gap:9px;font-size:13px;display:inline-flex}.auth__thu:hover{color:var(--text-primary)}.auth__thu strong{color:var(--text-primary);font-weight:600}.field__row{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.main__actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.modal__box--wide{max-width:940px}.csv__source{grid-template-columns:1fr auto;align-items:end;gap:12px;display:grid}.csv__text{resize:vertical;white-space:pre;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12.5px;line-height:1.55;overflow-x:auto}.csv__loi{color:var(--text-secondary);flex-direction:column;gap:3px;max-height:190px;margin:7px 0 0;padding-left:17px;font-size:12.5px;display:flex;overflow-y:auto}.csv__tomtat{color:var(--text-secondary);font-size:13px}.csv__tomtat strong{color:var(--text-primary);font-weight:600}.csv__preview{max-height:46vh;overflow-y:auto}.csv__preview .check{white-space:nowrap;font-size:12px}@media (width<=640px){.csv__source{grid-template-columns:1fr;align-items:stretch}}.log__loi{color:var(--tone-bad);overflow-wrap:anywhere;margin-bottom:3px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.log__ct{color:var(--text-secondary);flex-wrap:wrap;gap:3px 12px;font-size:12.5px;display:flex}.log__cap strong{color:var(--text-primary);font-weight:600}.log__gop{color:var(--text-muted);margin-top:3px;font-size:12px}.seg--log .seg__item{white-space:nowrap}.btn--bad{border-color:color-mix(in oklab, var(--tone-bad) 45%, transparent);color:var(--tone-bad)}.btn--bad:hover{background:var(--tone-bad);border-color:var(--tone-bad);color:var(--plane)}.linkbtn--bad{color:var(--tone-bad)}.linkbtn--bad:focus-visible{outline-color:var(--tone-bad)}.rowacts{white-space:nowrap;align-items:center;gap:10px;display:flex}.rowacts__sep{color:var(--text-muted);font-size:12px}.modal__box--narrow{max-width:420px}.sumbox__cap{letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);font-size:11px;font-weight:600}.modal__note{color:var(--text-secondary);margin:0;font-size:12.5px}.alert__list{color:var(--text-secondary);margin:5px 0 0;padding-left:20px;font-size:12.5px}.alert__list li+li{margin-top:2px}.panel__head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.panel__tools{flex:none;align-items:center;gap:8px;display:flex}.btn--mini{gap:6px;padding:6px 12px;font-size:12.5px}@media (prefers-reduced-motion:no-preference){.spin{transform-origin:50%;animation:.9s linear infinite spin}}@keyframes spin{to{transform:rotate(360deg)}}.refresh{align-items:center;gap:8px;display:inline-flex}.refresh__age{color:var(--text-muted);white-space:nowrap;font-size:12px}.colmenu{position:relative}.colmenu__scrim{z-index:40;position:fixed;inset:0}.colmenu__pop{z-index:41;background:var(--surface-1);border:1px solid var(--hair);border-radius:var(--radius);min-width:210px;box-shadow:var(--shadow);padding:8px 0;position:absolute;top:calc(100% + 6px);right:0}.colmenu__head{letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);padding:2px 14px 6px;font-size:11px;font-weight:600}.colmenu__row{cursor:pointer;align-items:center;gap:9px;padding:6px 14px;font-size:13px;display:flex}.colmenu__row:hover{background:var(--lift)}.colmenu__row:has(input:disabled){cursor:default;color:var(--text-muted)}.colmenu__lock{color:var(--text-muted);margin-left:auto;font-size:11px}.colmenu__foot{border-top:1px solid var(--hair);margin-top:6px;padding:7px 14px 2px}.bellrow{width:100%;font:inherit;color:var(--text-primary);text-align:left;cursor:pointer;background:0 0;border:0;padding:7px 14px;font-size:13px;display:block}.bellrow:hover{background:var(--lift)}.bellrow__note{color:var(--text-muted);margin-top:2px;font-size:11.5px;display:block}.bellmsg{color:var(--text-secondary);margin:0;padding:7px 14px;font-size:13px}.thsort{font:inherit;color:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;margin:0;padding:0;display:inline-flex}.thsort:hover{color:var(--text-primary)}.thsort:focus-visible{outline:2px solid var(--series-1);outline-offset:2px;border-radius:3px}.thsort--on{color:var(--text-primary)}.thsort__mark{min-width:9px;font-size:10px;line-height:1;display:inline-block}.searchbar{background:var(--plane);border:1px solid var(--border);border-radius:var(--radius-input);align-items:center;gap:8px;margin:0 0 12px;padding:7px 12px;display:flex}.searchbar:focus-within{outline:2px solid var(--series-1);outline-offset:1px}.searchbar__icon{color:var(--text-muted);flex:none}.searchbar__input{font:inherit;color:var(--text-primary);background:0 0;border:0;outline:none;flex:auto;min-width:0;font-size:14px}.searchbar__count{color:var(--text-muted);white-space:nowrap;flex:none;font-size:12px}.table-empty{color:var(--text-secondary);margin:0;padding:18px 0;font-size:13px}.seg--news .seg__item{white-space:nowrap}.news{margin-top:20px}.news__head{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);align-items:baseline;gap:8px;margin:0 0 2px;font-size:12px;font-weight:700;display:flex}.news__count{color:var(--text-muted);font-size:12px;font-weight:600}.news__note{color:var(--text-muted);margin:0 0 10px;font-size:12.5px}.news__item{border-top:1px solid var(--border);color:inherit;gap:10px;padding:12px 2px;text-decoration:none;display:flex}.news__item:hover .news__title{text-decoration:underline}.news__item:focus-visible{outline:2px solid var(--series-1);outline-offset:2px;border-radius:6px}.news__dot{background:0 0;border-radius:50%;flex:none;width:7px;height:7px;margin-top:6px}.news__dot--on{background:var(--series-1)}.news__body{flex-direction:column;gap:3px;min-width:0;display:flex}.news__title{color:var(--text-primary);font-size:14px;font-weight:600;line-height:1.35}.news__sum{color:var(--text-secondary);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13px;line-height:1.45;display:-webkit-box;overflow:hidden}.news__meta{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:8px;font-size:12px;display:flex}.news__kind{border:1px solid var(--hair);color:var(--text-secondary);background:var(--lift);border-radius:999px;padding:1px 7px;font-weight:600}.news__ma{color:var(--text-secondary);font-weight:600}.roadmap{grid-template-columns:minmax(84px, .62fr) repeat(var(--roadmap-cols,3), minmax(0, 1fr));gap:9px;margin-top:14px;display:grid}.roadmap__corner,.roadmap__gap{min-height:1px}.roadmap__head{background:var(--plane);border:1px solid var(--hair);color:var(--text-secondary);border-radius:10px;justify-content:center;align-items:center;padding:9px 10px;font-size:13.5px;font-weight:600;display:flex}.roadmap__lane{color:var(--text-secondary);align-items:center;padding:10px 4px;font-size:13px;font-weight:600;line-height:1.3;display:flex}.roadmap__cell{font:inherit;text-align:left;cursor:pointer;border:1px solid var(--hair);border-left:3px solid var(--series-4);background:color-mix(in oklab, var(--series-4) 7%, var(--surface-1));color:var(--text-primary);border-radius:11px;flex-direction:column;gap:4px;padding:11px 12px;display:flex}.roadmap__cell:hover{background:color-mix(in oklab, var(--series-4) 13%, var(--surface-1))}.roadmap__cell:focus-visible{outline:2px solid var(--series-1);outline-offset:2px}.roadmap__cell--manh{border-left-color:var(--series-3);background:color-mix(in oklab, var(--series-3) 8%, var(--surface-1))}.roadmap__cell--manh:hover{background:color-mix(in oklab, var(--series-3) 14%, var(--surface-1))}.roadmap__cell--xong{opacity:.62}.roadmap__moc{display:none}.roadmap__title{letter-spacing:-.01em;font-size:14px;font-weight:600}.roadmap__note{color:var(--text-secondary);font-size:12px;line-height:1.35}.roadmap__do{flex-wrap:wrap;align-items:baseline;gap:6px;margin-top:2px;font-size:13px;display:inline-flex}.roadmap__why{color:var(--text-muted);font-size:11.5px}.roadmap__foot{flex-wrap:wrap;align-items:center;gap:7px;margin-top:3px;display:flex}.roadmap__when{color:var(--text-muted);font-size:11.5px}.pill-tag--todo{background:color-mix(in oklab, var(--text-primary) 7%, transparent);color:var(--text-secondary)}.pill-tag--doing{background:color-mix(in oklab, var(--series-1) 14%, transparent);color:var(--series-1)}.pill-tag--done{background:color-mix(in oklab, var(--tone-good) 15%, transparent);color:var(--tone-good)}.pill-tag--skip{background:color-mix(in oklab, var(--tone-bad) 11%, transparent);color:var(--text-secondary);text-decoration:line-through}.roadmap__legend{color:var(--text-secondary);flex-wrap:wrap;gap:16px;margin-top:12px;font-size:12px;display:flex}.roadmap__key{align-items:center;gap:6px;display:inline-flex}.roadmap__dot{background:var(--series-4);border-radius:999px;width:9px;height:9px}.roadmap__dot--manh{background:var(--series-3)}@media (width<=720px){.roadmap{grid-template-columns:minmax(0,1fr);gap:7px}.roadmap__corner,.roadmap__head,.roadmap__gap{display:none}.roadmap__moc{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-size:11px;font-weight:600;display:block}.roadmap__lane{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);padding:12px 0 2px;font-size:12px}}
