@font-face{font-family:"DM Sans";font-weight:400 700;font-display:swap;src:url(fonts/dmsans-latin.woff2) format("woff2")}
@font-face{font-family:"Sora";font-weight:600 700;font-display:swap;src:url(fonts/sora-latin.woff2) format("woff2")}
/* RunCORE360: deep ink, emerald for money that balances, sand for surfaces, amber for "needs you". */
:root{--bg:#F4F2EC;--card:#FFFFFF;--ink:#132033;--mut:#5D6878;--line:#E2DED3;--acc:#16795E;--acc-d:#0F5C47;--tint:#E7F2EC;--warn:#A15C00;--warn-t:#FCF0DC;--bad:#B3261E;
  --font:"DM Sans",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--disp:"Sora","DM Sans",system-ui,sans-serif;color-scheme:light}
@media (prefers-color-scheme:dark){:root{--bg:#0E141C;--card:#151E29;--ink:#E8EDF3;--mut:#9AA6B5;--line:#253242;--acc:#5FC59E;--acc-d:#86D9B8;--tint:#16302A;--warn:#E7B460;--warn-t:#2E2414;--bad:#F2867E;color-scheme:dark}}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font:400 15px/1.55 var(--font);-webkit-font-smoothing:antialiased}
.wrap{max-width:1100px;margin:0 auto;padding:0 16px 56px}
h1{font:700 clamp(22px,4vw,30px)/1.2 var(--disp);margin:0 0 6px}
h2{font:600 18px/1.3 var(--disp);margin:0 0 12px}
.mut{color:var(--mut)} .sm{font-size:13px}
.card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:22px 24px;margin:0 0 16px}
.btn{font:700 14px var(--font);border-radius:999px;border:1.5px solid var(--acc);background:var(--acc);color:#fff;padding:10px 20px;cursor:pointer;display:inline-flex;align-items:center;gap:8px;text-decoration:none}
.btn:hover{background:var(--acc-d);border-color:var(--acc-d)}
.btn.ghost{background:transparent;color:var(--acc)} .btn.ghost:hover{background:var(--tint)}
.btn.sm{padding:6px 14px;font-size:13px}
.btn:disabled{opacity:.5;cursor:not-allowed}
label{display:block;font:600 13px var(--font);color:var(--mut);margin:12px 0 4px}
input,select,textarea{font:400 16px var(--font);padding:11px 14px;border:1.5px solid var(--line);border-radius:12px;background:var(--card);color:var(--ink);width:100%}
input:focus-visible,select:focus-visible,button:focus-visible,a:focus-visible{outline:2px solid var(--acc);outline-offset:2px}
.msg{min-height:20px;color:var(--bad);font-size:14px;margin:10px 0 0}
.ok{color:var(--acc)}
.pwf{position:relative}.pwf input{padding-right:78px}
.eye{position:absolute;right:6px;top:50%;transform:translateY(-50%);border:0;background:none;color:var(--acc);font:700 13px var(--font);padding:8px 12px;cursor:pointer;border-radius:999px}
.brand{font:700 22px var(--disp);letter-spacing:-.01em}.brand b{color:var(--acc)}
.tag{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--mut)}
.auth{max-width:440px;margin:8vh auto 0}
.auth .card{padding:30px}
.top{display:flex;align-items:center;gap:14px;padding:18px 0;flex-wrap:wrap}
.top .brand{margin-right:auto}
.bar{display:flex;gap:10px;align-items:end;flex-wrap:wrap;margin:6px 0 16px}
.bar label{margin:0 0 4px}
.bar>div{min-width:150px}
.tabs{display:flex;gap:4px;padding:4px;background:var(--card);border:1px solid var(--line);border-radius:999px;overflow-x:auto;margin:0 0 16px}
.tab{border:0;background:none;color:var(--mut);font:600 14px var(--font);padding:9px 16px;border-radius:999px;cursor:pointer;white-space:nowrap}
.tab[aria-selected=true]{background:var(--acc);color:#fff}
.two{display:grid;grid-template-columns:1fr 1fr;gap:16px}
table{width:100%;border-collapse:collapse;font-size:14px;font-variant-numeric:tabular-nums}
th{text-align:left;font:700 12px var(--font);letter-spacing:.06em;text-transform:uppercase;color:var(--mut);padding:8px 10px;border-bottom:2px solid var(--line)}
td{padding:8px 10px;border-bottom:1px solid var(--line)}
td.n,th.n{text-align:right;white-space:nowrap}
tr.tot td{font-weight:700;border-top:2px solid var(--ink);border-bottom:0}
.tbl{overflow-x:auto}
.pill{display:inline-block;font:700 12px var(--font);padding:3px 10px;border-radius:999px}
.pill.good{background:var(--tint);color:var(--acc)} .pill.warn{background:var(--warn-t);color:var(--warn)}
.attn{background:var(--warn-t);border:1px solid var(--warn);border-radius:14px;padding:14px 18px;margin:0 0 16px}
.attn b{color:var(--warn)}
.q{border-bottom:1px solid var(--line);padding:12px 0;display:grid;gap:6px}
.q .row{display:flex;gap:8px;flex-wrap:wrap}
.q textarea{min-height:44px}
.hidden{display:none!important}
.drop{border:2px dashed var(--line);border-radius:14px;padding:18px;text-align:center}
@media (max-width:720px){.two{grid-template-columns:1fr}.card{padding:18px}.top .who{display:none}}
.sp{margin-top:24px}
.top select{width:auto;max-width:min(440px,100%);min-width:0;flex:0 1 auto}
