:root{font-family:system-ui,sans-serif;color:#0b172c;background:#f6f8fb;--blue:#0664f9;--line:#cbd5e3;--muted:#40516b}*{box-sizing:border-box}body{margin:0}header{height:54px;background:#0b192e;color:#fff;display:flex;align-items:center;gap:20px;padding:0 28px}header span{margin-left:auto;font-size:.85rem}header i{display:inline-block;background:#2694ff;width:10px;height:10px;border-radius:50%;margin-left:8px}.brand{font-size:1.65rem;letter-spacing:-.12em;padding-right:22px;border-right:1px solid #6c7b91}main{max-width:1550px;margin:auto;padding:23px 24px 35px}.toolbar,.heading,form{display:flex;align-items:center;gap:16px}.toolbar{justify-content:space-between;margin-bottom:23px;align-items:flex-start}h1{font-size:clamp(1.55rem,3vw,2.05rem);letter-spacing:-.035em;margin:0}h1:after{content:"";display:block;width:56px;height:6px;border-radius:5px;background:var(--blue);margin-top:8px}button,select{font:inherit;border:1px solid #aebbd0;border-radius:8px;padding:9px 13px;background:#fff;color:inherit}button{background:var(--blue);color:#fff;border-color:var(--blue);cursor:pointer}button:disabled{opacity:.6;cursor:wait}.summary{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}.metric,section{border:1px solid var(--line);border-radius:13px;background:#fbfcfe}.metric{display:flex;align-items:flex-start;gap:14px;padding:15px;min-height:104px}.metric:first-child{border-color:var(--blue)}.metric i{background:#e3eeff;border-radius:9px;color:var(--blue);padding:8px 12px;font-style:normal;font-size:1.15rem}.metric strong,.metric span{display:block}.metric strong{font-size:1.65rem;line-height:1.3;font-variant-numeric:tabular-nums}.metric small,.foot{color:var(--muted)}section{padding:12px;margin:0 0 18px}.heading{margin:0 4px 12px;flex-wrap:wrap}.heading span{border-left:1px solid var(--line);padding-left:14px;color:var(--muted);font-size:.9rem}.heading small{margin-left:auto;border-radius:25px;padding:5px 11px;background:#e9eff8;color:#254367}.heading small:empty{display:none}h2{margin:0;font-size:1.35rem;letter-spacing:-.025em}h2 b{color:var(--blue);margin-right:7px}.green{color:#008943}a{color:#144591;text-decoration:none;font-size:.86rem}a:hover{text-decoration:underline}.scroll{overflow:auto}table{width:100%;border-collapse:collapse;font-size:.88rem}th,td{padding:8px 12px;text-align:left}th{background:#e2ebf7;white-space:nowrap}th:first-child{border-radius:5px 0 0 5px}th:last-child{border-radius:0 5px 5px 0}td{border-bottom:1px solid #dbe2eb}tr:last-child td{border:0}td:not(:first-child){white-space:nowrap;font-variant-numeric:tabular-nums}.empty{color:var(--muted)}.foot{font-size:.8rem}@media(max-width:850px){.summary{grid-template-columns:repeat(2,1fr)}.heading small{margin-left:0}}@media(max-width:550px){main{padding:17px 12px}.toolbar{flex-direction:column}.summary{gap:8px}.metric{padding:10px;gap:8px}.metric i{display:none}.metric strong{font-size:1.25rem}header{padding:0 14px}header span{display:none}}
details{margin-top:12px}summary{cursor:pointer;color:#144591;font-size:.9rem;padding:6px 10px}details .scroll{margin-top:6px}#coverage{margin:12px 8px 3px;line-height:1.45}
:root{color-scheme:dark;background:#111110;color:#f5f1e8;--blue:#dbb86c;--line:#413b2e;--muted:#c1b8a8}
header{height:82px;background:#181818;border-bottom:1px solid var(--line)}
.logo{display:block;width:207px;height:auto}
header i{background:var(--blue)}
main{padding-top:28px}
.toolbar{gap:20px}
.subtitle{margin:10px 0 0;color:var(--muted);font-size:.9rem}
button,select{background:#211f1a;border-color:var(--line)}
button{background:#dbb86c;color:#18140d;border-color:#dbb86c;font-weight:700;white-space:nowrap}
.metric,section{background:#1b1a17}
.metric i,.heading small{background:#332a1a;color:#f0d59a}
.metric strong{color:#f4dda8}
.metric span{font-weight:600}
.executive{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.insight>div{display:flex;justify-content:space-between;gap:12px;padding:10px 8px;border-top:1px solid var(--line);font-size:.9rem}
.insight span{color:var(--muted)}
.insight strong{text-align:right}
th{background:#2c271d;color:#f0d59a}
td{border-color:var(--line)}
a,summary{color:#ebc982}
.green{color:#91c9a6}
@media(max-width:750px){.executive{grid-template-columns:1fr}.toolbar{flex-wrap:wrap}}
.sales-bar{height:9px;display:flex!important;padding:0!important;gap:2px!important;border:0!important;overflow:hidden;border-radius:9px;margin:3px 8px 10px}
.sales-bar span{flex-basis:0}
.sales-bar .won{background:#91c9a6}
.sales-bar .open{background:#dbb86c}
.sales-bar .lost{background:#d79586}
.source-flow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.source-flow>div{display:grid;gap:4px;background:#211f1a;padding:13px;border-radius:8px;border:1px solid var(--line)}
.source-flow strong{font-size:1.65rem;color:#f4dda8}
.source-flow small{color:var(--muted)}
@media(max-width:650px){.source-flow{grid-template-columns:1fr}}
.dashboard-layout{display:grid;grid-template-columns:190px minmax(0,1fr);max-width:1700px;margin:auto}
.dashboard-layout main{width:100%;min-width:0}
.sidebar{position:sticky;top:0;align-self:start;padding:26px 14px;border-right:1px solid var(--line)}
.sidebar nav{display:grid;gap:6px}
.sidebar a{display:block;padding:10px;border-radius:6px}
.sidebar a:hover,.sidebar a:focus-visible{background:#302719}
.sidebar form{margin-top:18px}
.sidebar button{background:transparent;color:#ebc982}
#period-form,#date-fields:not([hidden]){display:flex;flex-wrap:wrap;align-items:end;gap:8px}
#period-form label,.login-card label{display:grid;gap:5px;color:var(--muted);font-size:.85rem}
input{min-width:0;padding:9px;border:1px solid var(--line);border-radius:6px;background:#211f1a;color:inherit;font:inherit}
.login-page{min-height:100vh;display:grid;place-items:center;padding:20px;background:radial-gradient(ellipse at top,#2d2416,#111110 65%)}
.login-card{width:min(100%,410px);padding:30px;margin:0;background:#1b1a17;border:1px solid var(--line);border-radius:15px}
.login-card .logo{margin-bottom:18px}
.login-card form{display:grid;gap:15px;margin-top:22px}
.login-card button{margin-top:5px}
.login-error{color:#ffb4a5}
@media(max-width:760px){.dashboard-layout{display:block}.sidebar{position:static;border:0;border-bottom:1px solid var(--line);padding:10px 16px;display:flex;align-items:start;gap:8px}.sidebar nav{display:flex;flex-wrap:wrap;flex:1}.sidebar form{margin:0}.sidebar a{padding:7px}}
