:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--page:#f3f5f8;--surface-1:#fff;--surface-2:#f5f7fa;--surface-3:#eaeef3;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#64748b;--grid:#e8ecf1;--axis:#cbd5e1;--border:#e2e8f0;--border-strong:#cbd5e1;--accent:#2563eb;--accent-hover:#1d4ed8;--accent-soft:#2563eb17;--accent-ink:#fff;--ring:#2563eb59;--nav-bg:#0f172a;--nav-text:#cbd5e1;--nav-active:#ffffff1a;--shadow-sm:0 1px 2px #0f172a0d;--shadow-md:0 1px 3px #0f172a0f, 0 6px 16px -6px #0f172a1a;--series-1:#2a78d6;--series-2:#eb6834;--series-3:#1baf7a;--series-4:#eda100;--series-5:#e87ba4;--series-6:#008300;--series-7:#6250d6;--series-8:#e34948;--up:#d03b3b;--down:#0c8f3c;--up-soft:#d03b3b1a;--down-soft:#0c8f3c1a;--negative:#2a78d6;--good-text:#0b7a33;--bad-text:#b42626;--bad-soft:#b4262614;--warn-bg:#fff6dd;--warn-border:#f3dd9b;--warn-text:#7a5300;--radius:12px;--radius-sm:8px;--mono:ui-monospace, "SF Mono", "JetBrains Mono", Menlo, Consolas, monospace}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--page:#0b0f17;--surface-1:#131a26;--surface-2:#19212f;--surface-3:#222c3c;--text-primary:#e7ebf2;--text-secondary:#a8b3c4;--text-muted:#8591a4;--grid:#212a39;--axis:#364153;--border:#232d3d;--border-strong:#334155;--accent:#4b8dff;--accent-hover:#6aa0ff;--accent-soft:#4b8dff24;--accent-ink:#fff;--ring:#4b8dff73;--nav-bg:#080b12;--nav-text:#a8b3c4;--nav-active:#ffffff14;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 1px 3px #00000059, 0 8px 20px -8px #00000080;--series-1:#3987e5;--series-2:#d95926;--series-3:#199e70;--series-4:#c98500;--series-5:#d55181;--series-6:#008300;--series-7:#9085e9;--series-8:#e66767;--up:#f06a6a;--down:#2fb560;--up-soft:#f06a6a24;--down-soft:#2fb56024;--negative:#3987e5;--good-text:#3cc26c;--bad-text:#f07575;--bad-soft:#f075751f;--warn-bg:#2e2510;--warn-border:#4d3d14;--warn-text:#f5d58a}}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--page:#0b0f17;--surface-1:#131a26;--surface-2:#19212f;--surface-3:#222c3c;--text-primary:#e7ebf2;--text-secondary:#a8b3c4;--text-muted:#8591a4;--grid:#212a39;--axis:#364153;--border:#232d3d;--border-strong:#334155;--accent:#4b8dff;--accent-hover:#6aa0ff;--accent-soft:#4b8dff24;--accent-ink:#fff;--ring:#4b8dff73;--nav-bg:#080b12;--nav-text:#a8b3c4;--nav-active:#ffffff14;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 1px 3px #00000059, 0 8px 20px -8px #00000080;--series-1:#3987e5;--series-2:#d95926;--series-3:#199e70;--series-4:#c98500;--series-5:#d55181;--series-6:#008300;--series-7:#9085e9;--series-8:#e66767;--up:#f06a6a;--down:#2fb560;--up-soft:#f06a6a24;--down-soft:#2fb56024;--negative:#3987e5;--good-text:#3cc26c;--bad-text:#f07575;--bad-soft:#f075751f;--warn-bg:#2e2510;--warn-border:#4d3d14;--warn-text:#f5d58a}*{box-sizing:border-box}body{background:var(--page);color:var(--text-primary);-webkit-font-smoothing:antialiased;margin:0;font:14px/1.55 system-ui,-apple-system,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Segoe UI,sans-serif}a{color:var(--accent);text-decoration:none;transition:color .15s}a:hover{color:var(--accent-hover)}code{font-family:var(--mono);background:var(--surface-3);color:var(--text-primary);border-radius:4px;padding:1px 5px;font-size:.88em}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.icon{vertical-align:-3px;flex:none}.topbar{background:var(--nav-bg);height:56px;color:var(--nav-text);z-index:20;border-bottom:1px solid #ffffff0f;align-items:center;gap:24px;padding:0 24px;display:flex;position:sticky;top:0}.topbar .brand{color:#fff;letter-spacing:.01em;white-space:nowrap;align-items:center;gap:10px;font-size:15px;font-weight:700;display:flex}.topbar .brand:hover{color:#fff}.topbar .brand small{color:var(--nav-text);border-left:1px solid #ffffff26;padding-left:10px;font-size:12px;font-weight:500}.topbar nav{gap:2px;display:flex}.topbar nav a{border-radius:var(--radius-sm);height:34px;color:var(--nav-text);white-space:nowrap;align-items:center;gap:7px;padding:0 12px;font-weight:500;transition:background .15s,color .15s;display:flex}.topbar nav a:hover{color:#fff;background:#ffffff0d}.topbar nav a.active{color:#fff;background:var(--nav-active);box-shadow:inset 0 -2px 0 var(--accent)}.topbar .spacer{flex:1}.topbar .tools{align-items:center;gap:6px;display:flex}.topbar .icon-btn{border-radius:var(--radius-sm);min-width:34px;height:34px;color:var(--nav-text);background:0 0;border:none;justify-content:center;align-items:center;gap:6px;padding:0 9px;font-size:13px;display:inline-flex}.topbar .icon-btn:hover{color:#fff;background:#ffffff14}.topbar .user{color:var(--nav-text);border-left:1px solid #ffffff1f;padding:0 4px 0 10px;font-size:13px}.proc{gap:6px;display:flex}.proc span{height:26px;color:var(--nav-text);white-space:nowrap;background:#ffffff0f;border-radius:999px;align-items:center;gap:6px;padding:0 10px;font-size:12px;display:inline-flex}.proc i{background:#22c55e;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 3px #22c55e33}.proc .dead i{background:#ef4444;box-shadow:0 0 0 3px #ef444438}.proc .dead{color:#fca5a5}main{max-width:1440px;margin:0 auto;padding:24px 24px 64px}h1{letter-spacing:-.01em;margin:0;font-size:22px;font-weight:700;line-height:1.3}h1 .muted{font-weight:500}h2{margin:0 0 12px;font-size:14px;font-weight:600}.sub{color:var(--text-secondary);font-size:13px}.muted{color:var(--text-muted)}.page-head{flex-wrap:wrap;align-items:flex-start;gap:16px;margin-bottom:4px;display:flex}.page-head>div:first-child{flex-direction:column;flex:1;gap:6px;min-width:260px;display:flex}.page-head .actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.card{background:var(--surface-1);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:16px 18px}.card-head{align-items:center;gap:12px;margin:-2px 0 12px;display:flex}.card-head h2{flex:1;margin:0}a.card{color:inherit;transition:border-color .15s,box-shadow .15s,transform .15s;display:block}a.card:hover{color:inherit;border-color:var(--border-strong);box-shadow:var(--shadow-md);transform:translateY(-1px)}.card.flush{padding:0;overflow:hidden}.card.flush .table-wrap{max-height:none}.card.flush>p.muted{margin:0;padding:16px 18px}.grid{gap:16px;display:grid}.grid.two{grid-template-columns:repeat(auto-fit,minmax(420px,1fr))}.stack{flex-direction:column;gap:16px;display:flex}.row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.meta{flex-wrap:wrap;align-items:center;gap:6px;font-size:12.5px;display:flex}.meta>span{background:var(--surface-1);border:1px solid var(--border);height:26px;color:var(--text-primary);white-space:nowrap;border-radius:6px;align-items:center;gap:5px;padding:0 9px;display:inline-flex}.meta>span b{color:var(--text-muted);font-weight:400}.meta>a{align-items:center;gap:4px;height:26px;padding:0 6px;font-size:12.5px;display:inline-flex}.kpis{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;display:grid}.kpi{background:var(--surface-1);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);padding:10px 12px}.kpi .label{color:var(--text-muted);font-size:12px}.kpi .value{font-variant-numeric:tabular-nums;letter-spacing:-.01em;margin-top:2px;font-size:18px;font-weight:600}.kpi .hint{color:var(--text-muted);margin-top:2px;font-size:12px}.kpis.hero{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}.kpis.hero .kpi{border-radius:var(--radius);padding:14px 16px 14px 18px;position:relative;overflow:hidden}.kpis.hero .kpi:before{content:"";background:var(--accent);opacity:.8;width:3px;position:absolute;top:0;bottom:0;left:0}.kpis.hero .kpi:has(.pos):before{background:var(--up)}.kpis.hero .kpi:has(.neg):before{background:var(--down)}.kpis.hero .label{color:var(--text-secondary);font-size:13px}.kpis.hero .value{margin-top:4px;font-size:28px;font-weight:700;line-height:1.2}.metrics{background:var(--surface-1);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);grid-template-columns:repeat(auto-fill,minmax(168px,1fr));display:grid;overflow:hidden}.metrics>div{border-right:1px solid var(--border);border-bottom:1px solid var(--border);flex-direction:column;gap:1px;margin:0 -1px -1px 0;padding:10px 16px;display:flex}.metrics .label{color:var(--text-muted);font-size:12px}.metrics .value{font-variant-numeric:tabular-nums;font-size:15px;font-weight:600}.pos{color:var(--up)}.neg{color:var(--down)}button,select,input,textarea{font:inherit;color:var(--text-primary);background:var(--surface-1);border:1px solid var(--border-strong);border-radius:var(--radius-sm);transition:border-color .15s,background .15s,box-shadow .15s,color .15s}select,input:not([type=checkbox]):not([type=radio]):not([type=range]){height:34px;padding:0 10px}select{cursor:pointer;padding-right:28px}input::placeholder{color:var(--text-muted)}select:hover,input:hover{border-color:var(--text-muted)}select:focus,input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--ring);outline:none}input[type=checkbox],input[type=radio]{accent-color:var(--accent);vertical-align:-2px;cursor:pointer;width:15px;height:15px;margin:0}input[type=range]{accent-color:var(--accent)}button{cursor:pointer;white-space:nowrap;height:34px;box-shadow:var(--shadow-sm);justify-content:center;align-items:center;gap:6px;padding:0 14px;font-weight:500;display:inline-flex}button:hover{background:var(--surface-2);border-color:var(--text-muted)}button:focus-visible{box-shadow:0 0 0 3px var(--ring);outline:none}button.primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}button.primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}button.danger{color:var(--bad-text)}button.danger:hover{background:var(--bad-soft);border-color:var(--bad-text)}button.danger.solid{background:var(--bad-text);color:#fff;border-color:var(--bad-text)}button.danger.solid:hover{filter:brightness(1.08)}button.ghost{box-shadow:none;color:var(--text-secondary);background:0 0;border-color:#0000}button.ghost:hover{background:var(--surface-3);color:var(--text-primary)}button.sm{height:28px;padding:0 10px;font-size:13px}button:disabled,button:disabled:hover{opacity:.45;cursor:not-allowed;filter:none}.check{color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:7px;font-size:13px;display:inline-flex}.tabs{border-bottom:1px solid var(--border);scrollbar-width:none;gap:4px;margin:18px 0 16px;display:flex;overflow-x:auto}.tabs button{height:40px;box-shadow:none;color:var(--text-secondary);background:0 0;border:none;border-bottom:2px solid #0000;border-radius:0;margin-bottom:-1px;padding:0 14px}.tabs button:hover{color:var(--text-primary);background:0 0}.tabs button.active{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}table{border-collapse:separate;border-spacing:0;width:100%;font-size:13px}th,td{border-bottom:1px solid var(--border);text-align:right;white-space:nowrap;padding:8px 12px}th{color:var(--text-muted);z-index:1;background:var(--surface-2);cursor:pointer;-webkit-user-select:none;user-select:none;font-size:12px;font-weight:500;position:sticky;top:0}th:hover{color:var(--text-primary)}th .sort{color:var(--accent);margin-left:3px}th.left,td.left{text-align:left}td{font-variant-numeric:tabular-nums}tbody tr{transition:background .1s}tbody tr:hover{background:var(--surface-2)}tbody tr:last-child td{border-bottom:none}.table-wrap{border-radius:var(--radius-sm);max-height:560px;overflow:auto}.card:not(.flush) .table-wrap{border:1px solid var(--border)}td.best{color:var(--accent);font-weight:700}tr.picked,tr.picked:hover{background:var(--accent-soft)}.table-foot{color:var(--text-muted);align-items:center;gap:10px;padding:10px 2px 0;font-size:13px;display:flex}.card.flush .table-foot{border-top:1px solid var(--border);padding:10px 16px}td a{font-weight:500}.badge{background:var(--surface-3);height:22px;color:var(--text-secondary);white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:0 8px;font-size:12px;font-weight:500;display:inline-flex}.badge.dot:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px}.badge.warn{background:var(--warn-bg);color:var(--warn-text)}.notice.data-warnings{margin:0 0 14px;font-size:13.5px;line-height:1.55}.notice.data-warnings .icon{flex:none;margin-top:2px}.notice.data-warnings ul{margin:4px 0 0;padding-left:18px}.badge.ok{background:var(--down-soft);color:var(--good-text)}.badge.danger{background:var(--bad-soft);color:var(--bad-text)}.badge.info{background:var(--accent-soft);color:var(--accent)}.badge.buy{background:var(--up-soft);color:var(--up)}.badge.sell{background:var(--down-soft);color:var(--down)}.notice{background:var(--warn-bg);color:var(--warn-text);border:1px solid var(--warn-border);border-radius:var(--radius-sm);align-items:flex-start;gap:8px;margin:0;padding:10px 14px;display:flex}.error{color:var(--bad-text)}p.error{background:var(--bad-soft);border-radius:var(--radius-sm);margin:0;padding:10px 14px}.empty{text-align:center;color:var(--text-muted);border:1px dashed var(--border-strong);border-radius:var(--radius);background:var(--surface-1);padding:40px 16px}.loading{color:var(--text-muted);text-align:center;padding:40px 0}.heat td{text-align:center;border-bottom:2px solid var(--surface-1);min-width:54px;padding:7px 6px;font-size:12px}.heat td:first-child,.heat th:first-child{text-align:left;padding-left:12px}.heat tbody tr:hover{background:0 0}.form{grid-template-columns:140px minmax(0,1fr);align-items:center;gap:12px 16px;max-width:760px;display:grid}.form>label{color:var(--text-secondary);font-size:13px}.form .section{color:var(--text-muted);letter-spacing:.04em;border-top:1px solid var(--border);grid-column:1/-1;margin-top:4px;padding-top:10px;font-size:12px;font-weight:600}.form .section:first-child{border-top:none;margin-top:0;padding-top:0}.form .help{background:var(--surface-2);border-radius:var(--radius-sm);padding:10px 12px}.legend{color:var(--text-secondary);flex-wrap:wrap;gap:14px;font-size:12px;display:flex}.legend i{vertical-align:middle;border-radius:2px;width:12px;height:3px;margin-right:5px;display:inline-block}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-1);cursor:pointer;align-items:center;gap:8px;padding:6px 12px;font-size:13px;transition:border-color .15s,background .15s;display:inline-flex}.chip:hover{border-color:var(--accent)}.chip.on{border-color:var(--accent);background:var(--accent-soft)}.chip .muted{font-size:12px}.swatch{vertical-align:middle;border-radius:2px;width:12px;height:3px;margin-right:6px;display:inline-block}.bar-track{background:var(--surface-3);border-radius:4px;height:8px;overflow:hidden}.bar-track>div{background:var(--series-1);border-radius:4px;height:100%;transition:width .2s}.replay-bar{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.replay-bar input[type=range]{flex:1;min-width:160px}.replay-bar strong{font-variant-numeric:tabular-nums;font-family:var(--mono);background:var(--surface-3);border-radius:6px;padding:4px 10px;font-size:13px}.log-line{color:var(--text-secondary);border-bottom:1px dashed var(--border);padding:4px 0;font-size:13px}.log-line b{color:var(--text-muted);font-variant-numeric:tabular-nums;margin-right:8px;font-weight:500}.stats{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;display:grid}.stat{background:var(--surface-1);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);color:inherit;grid-template-rows:auto auto auto;grid-template-columns:1fr auto;column-gap:12px;padding:14px 16px;transition:border-color .15s,box-shadow .15s;display:grid}a.stat:hover{color:inherit;border-color:var(--border-strong);box-shadow:var(--shadow-md)}.stat .stat-icon{background:var(--accent-soft);width:38px;height:38px;color:var(--accent);border-radius:10px;grid-area:1/2/span 2;place-items:center;display:grid}.stat .label{color:var(--text-secondary);grid-row:1;font-size:13px}.stat .value{font-variant-numeric:tabular-nums;letter-spacing:-.01em;grid-row:2;font-size:28px;font-weight:700;line-height:1.25}.stat .hint{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;grid-area:3/1/auto/-1;margin-top:4px;font-size:12px;overflow:hidden}.stat.accent{border-color:var(--warn-border);background:linear-gradient(180deg, var(--warn-bg), var(--surface-1) 70%)}.stat.accent .stat-icon{background:var(--warn-bg);color:var(--warn-text)}.attention-list{flex-direction:column;gap:8px;display:flex}.attention{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-1);color:var(--text-primary);align-items:center;gap:10px;padding:11px 14px;font-size:13.5px;display:flex}a.attention:hover{color:var(--text-primary);box-shadow:var(--shadow-md)}.attention.ok{color:var(--good-text);background:var(--down-soft);border-color:#0000}.attention.warn{background:var(--warn-bg);border-color:var(--warn-border);color:var(--warn-text)}.attention.danger{background:var(--bad-soft);color:var(--bad-text);border-color:#0000}.attention.info .icon:first-child{color:var(--accent)}.dash{grid-template-columns:minmax(0,2fr) minmax(300px,1fr);align-items:start;gap:16px;display:grid}.section-head{align-items:baseline;gap:12px;margin-bottom:10px;display:flex}.section-head h2{flex:1;margin:0;font-size:15px}.section-head a,.card-head a.sub{align-items:center;gap:4px;font-size:13px;display:inline-flex}.tiles{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px;display:grid}.tile{flex-direction:column;gap:12px;padding:14px 16px 10px;display:flex}.tile-head{align-items:flex-start;gap:10px;display:flex}.tile-head>div{flex:1;min-width:0}.tile-title{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;overflow:hidden}.tile-figs{grid-template-columns:1.4fr 1fr 1fr;gap:8px;display:grid}.tile-figs>div{font-variant-numeric:tabular-nums;flex-direction:column;font-size:15px;font-weight:600;display:flex}.tile-figs .label{color:var(--text-muted);font-size:12px;font-weight:400}.tile-figs .big{font-size:18px}.leaders{flex-direction:column;gap:14px;margin:0;padding:0;list-style:none;display:flex}.leaders li{align-items:center;gap:12px;display:flex}.leaders .rank{background:var(--surface-3);width:24px;height:24px;color:var(--text-secondary);border-radius:6px;flex:none;place-items:center;font-size:12px;font-weight:700;display:grid}.leaders li:first-child .rank{background:var(--accent);color:var(--accent-ink)}.leader-figs{font-variant-numeric:tabular-nums;flex-direction:column;align-items:flex-end;font-size:12px;display:flex}.leader-figs b{font-size:15px}.ellipsis{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.recent{margin:0;padding:0;list-style:none}.recent li{border-bottom:1px solid var(--border);font-variant-numeric:tabular-nums;grid-template-columns:minmax(0,1fr) auto 64px;align-items:center;gap:12px;padding:9px 0;font-size:13px;display:grid}.recent li:last-child{border-bottom:none;padding-bottom:0}.recent li>span:last-child{text-align:right;font-weight:600}.login{background:var(--page);grid-template-columns:minmax(420px,1.05fr) 1fr;min-height:100vh;display:grid}.login .brand{letter-spacing:.01em;align-items:center;gap:10px;font-size:17px;font-weight:700;display:flex}.login-aside{color:#e2e8f0;background:radial-gradient(600px 400px at 0 0,#3b82f647,#0000 70%),radial-gradient(500px 360px at 100% 100%,#6366f138,#0000 70%),linear-gradient(160deg,#0b1220 0%,#0f1e3d 60%,#0b1220 100%);flex-direction:column;justify-content:space-between;gap:32px;padding:40px 48px;display:flex;position:relative;overflow:hidden}.login-aside:before{content:"";pointer-events:none;background-image:linear-gradient(#94a3b812 1px,#0000 1px),linear-gradient(90deg,#94a3b812 1px,#0000 1px);background-size:44px 44px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#0000,#000 30% 70%,#0000);mask-image:linear-gradient(#0000,#000 30% 70%,#0000)}.login-aside>*{position:relative}.login-aside .brand{color:#fff}.login-pitch{max-width:460px}.login-pitch h1{letter-spacing:-.02em;color:#fff;margin:0 0 14px;font-size:38px;font-weight:800;line-height:1.2}.login-pitch p{color:#a5b4cb;margin:0 0 32px;font-size:15px}.login-pitch ul{flex-direction:column;gap:18px;margin:0;padding:0;list-style:none;display:flex}.login-pitch li{align-items:flex-start;gap:14px;display:flex}.login-pitch li>span{color:#93c5fd;background:#60a5fa24;border:1px solid #60a5fa40;border-radius:10px;flex:none;place-items:center;width:38px;height:38px;display:grid}.login-pitch li b{color:#f1f5f9;font-size:14px;font-weight:600;display:block}.login-pitch li small{color:#94a3b8;margin-top:2px;font-size:13px;display:block}.login-art{z-index:0;opacity:.55;pointer-events:none;width:100%;height:150px;bottom:48px;left:0;right:0;position:absolute!important}.login-pitch,.login-foot,.login-aside .brand{z-index:1}.login-foot{color:#7c8aa3;align-items:center;gap:6px;font-size:12px;display:flex}.login-main{place-items:center;padding:40px 24px;display:grid}.login-main form{flex-direction:column;gap:20px;width:100%;max-width:380px;display:flex}.login-main h2{letter-spacing:-.01em;margin:0 0 4px;font-size:26px;font-weight:700}.login-main .sub{margin:0}.login .mobile-only{display:none}.field{flex-direction:column;gap:7px;display:flex}.field>label{color:var(--text-secondary);font-size:13px;font-weight:500}.field-note{color:var(--warn-text);align-items:center;gap:5px;font-size:12px;display:inline-flex}.field-note.muted{color:var(--text-muted)}.input-icon{position:relative}.input-icon>.icon:first-child{color:var(--text-muted);pointer-events:none;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.login .input-icon input{width:100%;font-size:15px;height:44px!important;padding-left:38px!important;padding-right:40px!important}.input-icon .reveal{width:36px;height:36px;box-shadow:none;color:var(--text-muted);background:0 0;border:none;padding:0;position:absolute;top:50%;right:4px;transform:translateY(-50%)}.input-icon .reveal:hover{background:var(--surface-3);color:var(--text-primary)}.otp-boxes{cursor:text;grid-template-columns:repeat(6,1fr);gap:8px;display:grid;position:relative}.otp-boxes span{border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--surface-1);height:52px;font:600 22px/1 var(--mono);font-variant-numeric:tabular-nums;place-items:center;transition:border-color .15s,box-shadow .15s;display:grid}.otp-boxes span.cur{border-color:var(--accent);box-shadow:0 0 0 3px var(--ring)}.otp-boxes span.cur:empty:after{content:"";background:var(--accent);width:2px;height:22px;animation:1s step-end infinite blink}.otp-boxes.bad span{border-color:var(--bad-text)}.otp-boxes input{opacity:0;cursor:text;border:none;width:100%;position:absolute;inset:0;height:100%!important}@keyframes blink{50%{opacity:0}}.login-main button.primary{width:100%;height:46px;font-size:15px;font-weight:600}.login-main p.error{align-items:center;gap:6px;font-size:13px;display:flex}.login-help{text-align:center;margin:-4px 0 0;font-size:12px}@media (width<=900px){.login{grid-template-columns:1fr}.login-aside{display:none}.login .mobile-only{display:flex}.login-main{align-items:start;padding-top:12vh}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}@media (width<=1100px){.dash{grid-template-columns:1fr}.topbar nav a span,.topbar .brand small{display:none}}@media (width<=640px){main{padding:16px 16px 40px}.topbar{gap:8px;padding:0 12px;overflow-x:auto}.topbar .brand b,.proc{display:none}.grid.two,.tiles{grid-template-columns:1fr}.form{grid-template-columns:1fr;gap:6px}.form>label:empty{display:none}.kpis.hero .value{font-size:22px}h1{font-size:19px}}
