@charset "UTF-8";
#sw-map .calendar-grid button.sw-action-highlight{background:#304b36;color:#ffe18a;box-shadow:inset 0 0 0 2px #e1b64a;font-weight:750}
.sw-date-preview{position:fixed;z-index:100;right:20px;bottom:20px;width:min(460px,calc(100vw - 24px));max-height:65vh;overflow:auto;background:#111923;color:#e9eef4;border:1px solid #66d89e;border-radius:12px;padding:18px;box-shadow:0 12px 45px #0009;font-size:13px;overflow-wrap:anywhere}.sw-preview-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.sw-preview-head button{padding:4px 10px}.sw-preview-cluster{border-top:1px solid #354252;padding:12px 0;margin-top:10px}.sw-date-preview dl{display:grid;grid-template-columns:135px 1fr;gap:5px 12px;margin:10px 0}.sw-date-preview dt{color:#929fae}.sw-date-preview dd{margin:0}.sw-date-preview ul{padding-left:20px}.sw-date-preview h3{margin-top:14px}.sw-date-preview button{white-space:normal}.sw-date-preview .caption{margin-top:10px}@media(max-width:650px){.sw-date-preview{right:12px;bottom:12px;max-height:55vh;padding:14px}.sw-date-preview dl{grid-template-columns:110px 1fr}}
/* Keep dates compact while retaining keyboard-accessible cluster selection. */
.sw-date-preview{width:min(370px,calc(100vw - 24px));max-height:min(540px,70vh);padding:0 14px 14px;border-color:#354858;border-radius:9px;background:#101922;box-shadow:0 10px 30px #0008;scrollbar-width:thin;scrollbar-color:#54606b #101922;line-height:1.45}.sw-preview-head{position:sticky;top:0;z-index:1;background:#101922;padding:12px 0 9px;border-bottom:1px solid #293846}.sw-preview-head strong{color:#e9eef4;font-size:13px}.sw-preview-head button{font-size:18px;line-height:1;padding:3px 7px;background:transparent;border:0;color:#aabacb}.sw-date-preview h3,.sw-preview-label{display:block;font-size:10px;font-weight:750;letter-spacing:1.3px;text-transform:uppercase;color:#94a4b4;margin:12px 0 5px}.sw-action-date{color:#afe8ff;padding:9px 0;font-weight:650}.sw-preview-cluster{border:1px solid #9a7c2c;border-radius:6px;padding:10px;background:#282719;margin:9px 0}.sw-preview-cluster>p:first-child{color:#ffdc7e}.sw-date-preview dl{grid-template-columns:112px 1fr;gap:4px 8px;font-size:12px}.sw-date-preview dt{color:#a9b6c5}.sw-cycle-card{padding:9px 0;border-bottom:1px solid #293846}.sw-cycle-card strong{display:block;font-size:13px;color:#dce6ef}.sw-cycle-card p{color:#b8c8d8;margin:3px 0}.sw-cycle-card .sw-preview-label{margin:3px 0;font-size:9px;letter-spacing:.7px}.sw-date-preview .caption{font-size:11px}.sw-date-preview button[data-sw-cluster],.sw-date-preview button[data-sw-event-date]{font-size:11px;margin-top:7px;padding:6px 8px}@media(max-width:650px){.sw-date-preview{max-height:55vh}}
.table-wrap td button[data-cluster-row],.table-wrap td button[data-workspace-symbol],.table-wrap td button[data-sw-cluster]{border:0;background:transparent;padding:0;border-radius:0;font:inherit;color:var(--blue)}
.table-wrap td button[data-cluster-row]:hover,.table-wrap td button[data-workspace-symbol]:hover,.table-wrap td button[data-sw-cluster]:hover{text-decoration:underline;background:transparent}
.table-wrap th .table-sort{border:0;background:transparent;padding:0;color:inherit;font:inherit;text-align:left}
.table-wrap td button.symbol{color:var(--blue)}
.symbol-cell{display:inline-flex;align-items:center;gap:7px;white-space:nowrap}.table-wrap td .symbol-cell button.symbol{font:inherit;color:var(--blue);border:0;background:transparent;padding:0;border-radius:0}.table-wrap td .symbol-cell button.symbol:hover{text-decoration:underline;background:transparent}.tradingview-link{display:inline;color:var(--blue);font-size:14px;font-weight:700;line-height:1}.tradingview-link:hover{color:#b2dcff;text-decoration:underline}.tradingview-link:focus-visible{outline:2px solid var(--blue);outline-offset:2px}
:root{color-scheme:dark;--bg:#0c1119;--panel:#111923;--line:#26313e;--muted:#929fae;--text:#e9eef4;--green:#66d89e;--blue:#77bfff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--bg);color:var(--text);font:14px/1.5 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}header{position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:30px;padding:16px 4%;border-bottom:1px solid var(--line);background:#0d141fee;backdrop-filter:blur(12px)}.brand img{width:120px;height:40px;object-fit:contain}nav{display:flex;gap:23px;flex:1}a{color:var(--blue);text-decoration:none}nav a{color:var(--muted);font-size:13px}nav a:hover{color:white}button,input,select{font:inherit;border:1px solid #354252;border-radius:7px;padding:9px 12px;background:#182230;color:var(--text)}button{cursor:pointer;white-space:nowrap}button:hover{border-color:#709285;background:#203129}button:disabled{opacity:.45;cursor:wait}input,select{width:100%;min-width:0}input:focus,select:focus,button:focus-visible{outline:2px solid var(--green);outline-offset:2px}label{display:block;color:var(--muted);font-size:12px;margin-bottom:7px}.primary{background:#7cdeb0;color:#092519;border-color:#7cdeb0;font-weight:650}.primary:hover{background:#a4f2ce;color:#092519}.quiet{background:none}main{max-width:1700px;margin:auto;padding:38px 4% 20px}h1{font-size:clamp(28px,3vw,43px);font-weight:650;letter-spacing:-1.5px;margin:8px 0 12px}h2{font-size:20px;font-weight:600;letter-spacing:-.5px;margin:3px 0}h3{font-size:17px;margin:0}p{margin:6px 0}.eyebrow{font:11px/1.6 ui-monospace,monospace;letter-spacing:1.8px;color:var(--green)}.subtitle{color:var(--muted);font-size:14px}.hero{display:flex;align-items:center;justify-content:space-between;gap:22px}.hero-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;max-width:380px}.model{font:12px ui-monospace,monospace;display:block;color:var(--green);width:100%;text-align:right;margin-bottom:6px}.statusbar{display:flex;gap:24px;flex-wrap:wrap;font:11px ui-monospace,monospace;color:var(--muted);padding:19px 0 22px}.statusbar span:last-child{margin-left:auto}.panel{border:1px solid var(--line);background:var(--panel);border-radius:12px;padding:22px;min-width:0}.section-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.section-head button{font-size:12px}.caption{font-size:12px;color:var(--muted);margin:5px 0 0}.filter-grid{display:grid;grid-template-columns:1.25fr 1.5fr 1.2fr 1fr;gap:20px;padding:14px 0 22px}.refine{display:grid;grid-template-columns:1.3fr 1.3fr .8fr 1.2fr 1fr;gap:18px;border-top:1px solid var(--line);padding-top:20px}.chips{display:flex;gap:5px;flex-wrap:wrap}.chips button{border-radius:20px;font:12px ui-monospace,monospace;padding:6px 10px;background:transparent}.chips button[aria-pressed=true]{border-color:#388f62;background:#173226;color:#8ee4b6}.preset,.inline{display:flex;gap:10px;align-items:center}.preset label,.inline label{white-space:nowrap;margin:0}.preset select{width:190px}.inline input[type=number]{width:90px}.inline input[type=date]{width:150px}.inline select{width:190px}details{margin-top:16px;color:var(--muted);font-size:12px}summary{cursor:pointer}.metrics{display:grid;grid-template-columns:repeat(6,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:10px;overflow:hidden;margin:24px 0}.metric{padding:18px 22px;background:var(--bg)}.metric span{display:block;font-size:12px;color:var(--muted)}.metric strong{font:500 30px/1.7 ui-monospace,monospace}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:20px}.two-col,.workspace-layout,main>section.panel{margin-bottom:22px}.table-wrap{overflow:auto;max-height:420px;border:1px solid var(--line);border-radius:7px}.table-wrap.tall{max-height:520px}table{border-collapse:collapse;width:100%;font-size:12px;white-space:nowrap}th{position:sticky;top:0;background:#1a2330;text-align:left;color:#a3b0c1;font-weight:500;z-index:1}th,td{padding:11px 12px;border-bottom:1px solid #222e3b}td{font-variant-numeric:tabular-nums}tbody tr:hover{background:#19242d}.symbol{border:0;background:none;color:var(--blue);font-size:12px;padding:0}.badge{display:inline-block;background:#273344;padding:3px 8px;border-radius:15px;font-size:11px}.badge.green{background:#19382a;color:#87dfaf}.badge.purple{background:#302a48;color:#c2b4f1}.badge.blue{background:#1c334b;color:#9acbf2}.empty{color:var(--muted);padding:26px;text-align:center;white-space:normal}.notice{padding:13px 17px;background:#342b17;border:1px solid #746136;border-radius:9px;color:#ead59e;margin:0 0 18px}.standalone{margin-top:28px}.calendar{overflow:auto;margin-bottom:18px}.calendar-grid{display:grid;grid-template-columns:42px repeat(31,minmax(25px,1fr));gap:4px;min-width:1000px;align-items:center;font-size:10px;text-align:center;color:var(--muted)}.calendar-grid button{padding:5px 0;border:0;border-radius:4px;font-size:11px;background:#17202b;height:28px}.calendar-grid button.has-data{background:#225d48;color:#c4f7d9}.calendar-grid button.today{outline:1px solid #f1ca6c}.calendar-grid button.selected{outline:2px solid white}.workspace-layout{display:grid;grid-template-columns:1.35fr 1fr;gap:20px}#workspace-symbol{max-width:170px}.workspace-summary{border-bottom:1px solid var(--line);padding:15px 0;margin-bottom:15px}.workspace-summary strong{font-size:23px;display:block}.workspace-detail{padding:15px;border:1px solid var(--line);border-radius:8px;margin:14px 0;color:var(--muted)}footer{display:flex;justify-content:space-between;border-top:1px solid var(--line);color:var(--muted);font-size:11px;padding:25px 0;letter-spacing:1px}.auth-page{display:grid;place-items:center;min-height:100vh;background:radial-gradient(ellipse at top,#1a302b 0,#0c1119 60%)}.auth-card{width:min(440px,92vw);padding:38px;border:1px solid var(--line);background:var(--panel);border-radius:16px}.auth-card img{width:150px;height:65px;object-fit:contain;margin-bottom:25px}.auth-card input{margin-bottom:17px}.auth-card button{width:100%;margin-top:10px}.error{color:#ffa3a3;font-size:13px}.user-form{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.user-form .actions{grid-column:1/-1;display:flex;gap:12px}.user-form input[type=checkbox]{width:auto}.admin-table{margin-top:24px}.busy{opacity:.7}[hidden]{display:none!important}@media(max-width:1100px){nav{gap:12px}nav a{font-size:11px}.hero{align-items:flex-start;flex-direction:column}.hero-actions{justify-content:flex-start;max-width:none}.model{text-align:left}.filter-grid,.refine{grid-template-columns:repeat(2,1fr)}.two-col,.workspace-layout{grid-template-columns:1fr}.metrics{grid-template-columns:repeat(3,1fr)}.user-form{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){header{gap:15px;flex-wrap:wrap}nav{order:3;width:100%;overflow:auto;flex-basis:100%;padding:4px 0}header>.quiet{margin-left:auto}main{padding:25px 14px}.panel{padding:16px}.section-head{align-items:flex-start;flex-direction:column}.filter-grid,.refine{grid-template-columns:1fr}.preset{flex-wrap:wrap}.metrics{grid-template-columns:repeat(2,1fr)}.statusbar{gap:10px;flex-direction:column}.statusbar span:last-child{margin-left:0}.inline{flex-wrap:wrap}.user-form{grid-template-columns:1fr}footer{gap:16px;flex-direction:column}}

.retest-bar,.manual-form{display:flex;gap:12px;flex-wrap:wrap;align-items:end;margin:16px 0}.retest-bar label,.manual-form label{flex:1;min-width:130px}.retest-bar input,.retest-bar select,.manual-form input,.manual-form select{width:100%}.retest-pager{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:12px 0}.notification-panel{position:fixed;right:16px;top:80px;width:min(420px,calc(100vw - 32px));max-height:70vh;overflow:auto;z-index:100;background:#131e2c;border:1px solid #35465a;padding:20px;border-radius:14px}.notification-item{border-bottom:1px solid #35465a;padding:12px 0}.toast-stack{position:fixed;bottom:20px;right:16px;z-index:110;width:min(360px,calc(100vw - 32px))}.toast{background:#162e27;color:#fff;border:1px solid #70dcad;padding:18px;border-radius:12px;margin-top:8px}header{flex-wrap:wrap} [hidden]{display:none!important}

.manual-page{max-width:1500px}.manual-stage{margin:24px 0}.manual-fields{border:0;padding:0;margin:0;min-width:0}.manual-entry-grid{display:grid;grid-template-columns:1.1fr 1.2fr .75fr 1fr 1.1fr;gap:16px}.manual-entry-grid input,.manual-entry-grid select{margin-top:7px;min-height:43px}.manual-form-bottom{display:flex;gap:20px;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:18px;margin-top:18px}.rule-preview{color:var(--green);font-size:14px}.manual-page #manual-message:not(:empty){margin-top:14px}.manual-page #manual-load-message{margin-bottom:12px}
@media(max-width:1000px){.manual-entry-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:550px){.manual-entry-grid{grid-template-columns:1fr}.manual-form-bottom{align-items:stretch;flex-direction:column}.manual-form-bottom button{width:100%}}

.manual-page .hero>.model{width:auto;flex:0 0 auto}.manual-page .hero>div{min-width:0}
.workspace-layout{grid-template-columns:1fr}#workspace h3{margin-top:22px;margin-bottom:10px}#sw-year{max-width:180px}#sw-map{margin:12px 0}#sw-cluster{margin-top:6px}#sw-detail strong{color:var(--text)}
#manual-popups{position:fixed;right:20px;bottom:20px;z-index:1000;width:min(390px,calc(100vw - 32px));max-height:80vh;overflow:auto;display:grid;gap:10px}.manual-popup{padding:18px;background:#152b27;border:1px solid #75dcb3;border-radius:14px;box-shadow:0 8px 30px #0008}.manual-popup strong{color:#95efc8}.manual-popup p{font-size:13px;line-height:1.5}.manual-popup a{display:inline-block;margin-right:16px}.manual-popup button{margin-top:8px}
.filters .filter-grid{grid-template-columns:1.15fr 1.35fr 1.1fr 1fr .7fr}
@media(max-width:1100px){.filters .filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.filters .filter-grid{grid-template-columns:1fr}}
.calendar-view-control{display:flex;align-items:center;gap:10px;margin:12px 0 16px;max-width:300px}.calendar-view-control label{margin:0;white-space:nowrap}.calendar-view-control select{width:190px}.calendar-result{margin-top:16px}.calendar-result h3{margin-bottom:4px}.calendar-result .table-wrap{margin-top:10px}
