
:root{--bg:#07101d;--panel:#0e1a2a;--panel2:#111f31;--line:#213550;--text:#ecf3fb;--muted:#8fa3ba;--cyan:#48d7ff;--green:#41d99a;--red:#ff6f7f;--amber:#ffca64;--blue:#75a7ff;--shadow:0 14px 36px rgba(0,0,0,.28)}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 20% -10%,#14314b 0,#07101d 38%),var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.topbar{max-width:1500px;margin:auto;padding:34px 26px 18px;display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.eyebrow{font-size:12px;font-weight:800;letter-spacing:.17em;color:var(--cyan)}h1{margin:6px 0 5px;font-size:34px;letter-spacing:-.03em}h2{margin:0;font-size:20px}h3{margin:0 0 12px;font-size:16px}.sub,.section-head p{color:var(--muted);margin:4px 0 0;font-size:14px;line-height:1.45}.status-stack{display:flex;flex-direction:column;align-items:flex-end;gap:8px}.build,.pill,.bias{border:1px solid var(--line);background:#0b1625;border-radius:999px;padding:7px 11px;font-size:12px;font-weight:800;white-space:nowrap}.build{color:var(--cyan)}.pill.loading{color:var(--amber)}.pill.ok{color:var(--green)}main{max-width:1500px;margin:auto;padding:0 26px 36px}.panel{background:linear-gradient(180deg,rgba(17,31,49,.96),rgba(11,23,38,.96));border:1px solid var(--line);border-radius:18px;padding:20px;box-shadow:var(--shadow);margin-bottom:18px}.section-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:18px}.control-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:12px}label{display:flex;flex-direction:column;gap:7px;color:var(--muted);font-size:12px;font-weight:700}input,select,button{font:inherit}input[type=datetime-local],select{width:100%;border:1px solid var(--line);background:#091625;color:var(--text);border-radius:10px;padding:10px 11px;outline:none}.btn{border:1px solid var(--line);border-radius:10px;padding:9px 12px;color:var(--text);background:#10263c;cursor:pointer;font-weight:800}.btn.secondary{color:var(--cyan)}.btn.ghost{background:transparent;color:var(--muted)}.note{margin-top:14px;border-left:3px solid var(--cyan);background:#0a1726;padding:10px 12px;border-radius:8px;color:var(--muted);font-size:13px}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:18px}.map-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.strategy-card{padding:14px;border:1px solid var(--line);background:#0a1726;border-radius:13px}.strategy-card .name{font-weight:900;font-size:13px;letter-spacing:.04em}.state{font-size:22px;font-weight:900;margin:8px 0}.state.long{color:var(--green)}.state.short{color:var(--red)}.state.flat{color:var(--muted)}.strategy-card select{padding:7px 8px;margin-top:4px}.mini{font-size:11px;color:var(--muted)}.developing{margin-top:12px;padding:12px;border:1px dashed #2b496c;border-radius:12px;background:#091522;color:var(--muted);font-size:13px}.developing b{color:var(--text)}.eff-block{border-top:1px solid var(--line);margin-top:16px;padding-top:16px}.summary-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:12px}.metric{background:#091625;border:1px solid var(--line);border-radius:11px;padding:10px}.metric .k{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.08em}.metric .v{font-size:18px;font-weight:900;margin-top:3px}.bias.long{color:var(--green);border-color:#245c48}.bias.short{color:var(--red);border-color:#63303a}.bias.mixed{color:var(--amber);border-color:#634d26}.filters .filter-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:10px}.toggle-row{display:flex;align-items:center;gap:8px;background:#091625;border:1px solid var(--line);padding:10px;border-radius:10px;min-height:42px}.toggle-row label{display:block;color:var(--text);font-size:12px}.filter-item select{margin-top:6px;padding:8px}.filter-item small{display:block;color:#6f8298;margin:5px 2px}.unavailable{opacity:.55}.entry-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.entry-card{border:1px solid var(--line);border-radius:15px;background:#091625;padding:16px;position:relative}.entry-card.best{border-color:#2f8f6d;box-shadow:0 0 0 1px rgba(65,217,154,.18),0 12px 30px rgba(0,0,0,.22)}.entry-head{display:flex;justify-content:space-between;align-items:center}.entry-name{font-size:18px;font-weight:950}.grade{font-size:24px;font-weight:950;color:var(--cyan)}.big-eff{font-size:34px;font-weight:950;margin:14px 0 2px}.entry-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:12px}.entry-stats .metric .v{font-size:14px}.decision-box{margin-top:14px;border-radius:15px;padding:18px;background:linear-gradient(90deg,#0a1d2e,#0c2530);border:1px solid #29566a}.decision-box.good{border-color:#2f8f6d}.decision-box.bad{border-color:#5a3940}.decision-title{font-size:12px;color:var(--muted);letter-spacing:.12em;font-weight:900}.decision-main{font-size:28px;font-weight:950;margin:4px 0}.decision-main .long{color:var(--green)}.decision-main .short{color:var(--red)}table{width:100%;border-collapse:collapse;font-size:12px}th,td{text-align:left;padding:9px 8px;border-bottom:1px solid #1b3049}th{color:var(--muted);font-weight:800}.upload-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-bottom:15px}.upload-card{border:1px solid var(--line);border-radius:11px;padding:10px;background:#091625}.upload-card label{color:var(--text)}.upload-card input[type=file]{font-size:11px;color:var(--muted);margin-top:7px;width:100%}.method-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.method-grid>div{background:#091625;border:1px solid var(--line);padding:13px;border-radius:11px}.method-grid b{color:var(--cyan)}.method-grid p{margin:6px 0 0;color:var(--muted);font-size:12px;line-height:1.5}footer{text-align:center;color:#60758d;font-size:11px;padding:0 20px 30px}@media(max-width:1000px){.two-col{grid-template-columns:1fr}.filters .filter-grid{grid-template-columns:repeat(3,1fr)}.method-grid{grid-template-columns:1fr 1fr}}@media(max-width:680px){.topbar{padding:24px 14px 14px;flex-direction:column}.status-stack{align-items:flex-start}main{padding:0 14px 30px}.control-grid,.map-grid,.entry-cards,.upload-grid,.filters .filter-grid,.summary-metrics,.method-grid{grid-template-columns:1fr}.section-head{flex-direction:column}h1{font-size:27px}}
.similarity-legend{margin-top:14px;padding:12px 14px;border:1px solid #223b54;border-radius:12px;background:#091827;color:#9fb5cb;font-size:12px;line-height:1.5}
.similarity-control small{display:block;margin-top:5px;color:#7f97ad}
.sim-bar{height:7px;background:#14283b;border-radius:999px;overflow:hidden;margin-top:9px}.sim-bar>span{display:block;height:100%;background:linear-gradient(90deg,#20c997,#3dd5f3);border-radius:inherit}
.sim-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px;color:#9fb5cb;font-size:12px}.sim-row b{color:#e7f1fb}

.finder-note,.finder-caveat{padding:12px 14px;border:1px solid #223b54;border-radius:12px;background:#091827;color:#9fb5cb;font-size:12px;line-height:1.55}.finder-note{margin-bottom:14px}.finder-caveat{margin-top:14px;border-style:dashed}.finder-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.finder-card{border:1px solid var(--line);background:#091625;border-radius:15px;padding:14px;min-height:220px}.finder-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px}.finder-mode{display:inline-flex;align-items:center;justify-content:center;min-width:40px;border-radius:9px;padding:5px 8px;font-weight:950;font-size:12px;background:#10263c;color:var(--cyan)}.finder-mode.mr{color:var(--green)}.finder-mode.ob{color:var(--amber)}.finder-results{display:flex;flex-direction:column;gap:9px}.finder-empty{color:var(--muted);font-size:12px;padding:14px;border:1px dashed var(--line);border-radius:10px}.finder-result{border:1px solid #203953;border-radius:12px;padding:11px;background:#0b1928}.finder-result.aplus{border-color:#2f8f6d;box-shadow:inset 3px 0 0 var(--green)}.finder-result.a{border-color:#315e82;box-shadow:inset 3px 0 0 var(--blue)}.finder-result-top{display:flex;justify-content:space-between;gap:8px;align-items:center}.finder-grade{font-size:18px;font-weight:950;color:var(--cyan)}.finder-direction.long{color:var(--green)}.finder-direction.short{color:var(--red)}.finder-maps{margin-top:8px;display:grid;grid-template-columns:1fr;gap:5px;color:#b7c8d9;font-size:11px}.finder-mapline{display:flex;gap:6px;flex-wrap:wrap}.state-chip{display:inline-flex;padding:3px 6px;border-radius:7px;background:#102237;border:1px solid #203b57}.state-chip.long{color:var(--green)}.state-chip.short{color:var(--red)}.state-chip.flat{color:var(--muted)}.finder-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin-top:9px}.finder-metric{padding:7px;border-radius:8px;background:#071522;border:1px solid #193149}.finder-metric .k{color:var(--muted);font-size:9px;text-transform:uppercase}.finder-metric .v{font-size:12px;font-weight:900;margin-top:2px}.apply-setup{margin-top:9px;width:100%;padding:7px 9px;font-size:11px}.finder-loading{color:var(--cyan);font-size:12px;padding:12px}@media(max-width:1100px){.finder-grid{grid-template-columns:1fr}.finder-metrics{grid-template-columns:repeat(4,1fr)}}@media(max-width:680px){.finder-metrics{grid-template-columns:1fr 1fr}.finder-head{align-items:flex-start;flex-direction:column}}

/* v2.4 calculation-time controls */
.calc-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.btn.primary{background:linear-gradient(180deg,#16b8e8,#087da8);border-color:#4edcff;color:#fff;box-shadow:0 0 0 1px rgba(72,215,255,.18),0 0 18px rgba(72,215,255,.14)}
.time-help{margin-top:10px;color:var(--muted);font-size:12px;line-height:1.5}.time-help b{color:var(--text)}
.datetime-pop{color-scheme:dark}
.datetime-pop::-webkit-calendar-picker-indicator{filter:invert(1) brightness(1.8);opacity:1;cursor:pointer}
input[type=checkbox]{appearance:none;-webkit-appearance:none;width:18px;height:18px;min-width:18px;border:2px solid #8fdfff;border-radius:4px;background:#07101d;display:inline-grid;place-content:center;cursor:pointer;box-shadow:0 0 0 1px rgba(72,215,255,.08)}
input[type=checkbox]::before{content:"✓";font-size:14px;font-weight:950;line-height:1;color:#07101d;transform:scale(0)}
input[type=checkbox]:checked{background:#f4fbff;border-color:#f4fbff;box-shadow:0 0 12px rgba(72,215,255,.45)}
input[type=checkbox]:checked::before{transform:scale(1)}
input[type=checkbox]:disabled{opacity:.45;cursor:not-allowed}
.finder-metrics .last-seen{grid-column:span 2}.finder-metrics .last-seen .v{font-size:12px;white-space:nowrap}
@media(max-width:680px){.calc-actions{justify-content:flex-start}.finder-metrics .last-seen{grid-column:span 1}}
