:root{color-scheme:dark;--bg:#111927;--surface:#1a2536;--text:#edf3fc;--muted:#afbdd0;--line:#34435a;--accent:#9bc2ff;--active:#293b58;--button:#a5c8ff;--button-text:#12233e;--danger:#ffb4b4;--shadow:0 18px 55px #0002;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:14px;line-height:1.5}
:root[data-theme=light]{color-scheme:light;--bg:#f4f7f5;--surface:#fff;--text:#172722;--muted:#53635c;--line:#dce5df;--accent:#146b49;--active:#e5f2ea;--button:#146b49;--button-text:#fff;--danger:#a12727;--shadow:0 18px 55px #16352b0a}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text)}[hidden]{display:none!important}button,input,select{font:inherit;color:inherit;border:1px solid var(--line);border-radius:9px;background:var(--surface);min-height:44px;padding:10px 13px}button{cursor:pointer}button:hover,a:hover{filter:brightness(1.1)}button:disabled{opacity:.6;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--accent);outline-offset:3px}a{color:var(--accent)}h1{font-size:28px;line-height:1.25;font-weight:500;letter-spacing:-.02em;margin:8px 0}h2{font-size:17px;font-weight:500;margin:0 0 18px}p{margin:0 0 18px;color:var(--muted)}small{font-size:12px;color:var(--muted)}.top{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:20px 30px;background:var(--surface);border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:10px;color:var(--text);text-decoration:none;letter-spacing:.035em;font-weight:500}.logo{background:var(--accent);color:var(--bg);padding:6px 10px;border-radius:9px}.top-actions{display:flex;gap:8px}.portal{display:grid;grid-template-columns:200px minmax(0,1fr);min-height:calc(100vh - 85px)}aside{padding:24px 12px;background:var(--surface);border-right:1px solid var(--line)}#navigation{display:grid;gap:6px}#navigation button{text-align:left;border:0;background:transparent;padding:12px}#navigation button[aria-current=page],#mobile-nav button[aria-current=page]{color:var(--accent);background:var(--active)}.account{padding:24px 12px;overflow-wrap:anywhere}.account span,.account small{display:block}.content{padding:30px;min-width:0;max-width:1500px;width:100%;margin:auto auto 0;margin-top:0}.heading{display:flex;gap:18px;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;margin-bottom:10px}.eyebrow{font-size:12px;letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}.filters{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap}.filters label{display:grid;gap:5px;font-size:12px;color:var(--muted)}.filters select{max-width:250px}.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:20px 0 24px}.stat{background:var(--surface);border:1px solid var(--line);border-radius:13px;padding:20px}.stat strong{display:block;font-size:27px;font-weight:500;margin:10px 0;font-variant-numeric:tabular-nums}.panel{background:var(--surface);border:1px solid var(--line);border-radius:13px;padding:22px}.row{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) auto;gap:18px;align-items:center;border-top:1px solid var(--line);padding:18px 0}.row small{display:block}.row .status{font-size:12px;color:var(--accent)}.money{font-variant-numeric:tabular-nums;text-align:right}.money a{display:block;font-size:13px;margin-top:7px;min-height:32px;padding-top:5px}.row-title{overflow-wrap:anywhere}.foot{font-size:12px;margin:20px 0;color:var(--muted)}.empty{padding:28px 0;color:var(--muted)}#error,#login-error{color:var(--danger)}#error{padding:14px;border:1px solid var(--danger);border-radius:9px}#loading{padding:20px 0;color:var(--muted)}.login-view{padding:70px 20px}.login-card{max-width:430px;margin:auto;background:var(--surface);padding:30px;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow)}.login-card label{display:block;margin:16px 0 7px}.login-card input{width:100%;font-size:16px}.login-card .primary{margin-top:22px;width:100%;background:var(--button);color:var(--button-text);border:0}.login-card #login-error{margin-top:15px}.login-card small{display:block}.detail{margin-top:14px;color:var(--muted);font-size:12px}#mobile-nav{display:none}
#mobile-extra{display:none}
@media(max-width:850px){.portal{grid-template-columns:170px minmax(0,1fr)}.content{padding:24px}.filters{width:100%}.row{gap:12px}}
@media(max-width:650px){.top{padding:14px 16px;flex-wrap:wrap}.top-actions button{padding:9px}.portal{display:flex;flex-direction:column;min-height:0}.portal aside{display:none}.content{padding:22px 16px 95px}.heading{gap:8px}h1{font-size:25px}.filters{gap:8px}.filters label{flex:1;min-width:120px}.filters select,.filters input{width:100%;max-width:none;font-size:16px}.stats{grid-template-columns:1fr 1fr;gap:10px}.stat{padding:14px}.stat:last-child{grid-column:1/-1}.stat strong{font-size:25px;margin:7px 0}.panel{padding:18px 15px}.row{grid-template-columns:minmax(0,1fr) auto;gap:7px;padding:17px 0}.row .status{grid-column:1;grid-row:2}.row .money{grid-column:2;grid-row:1/3}.money a{min-height:44px;padding:10px 0}.login-view{padding:35px 16px}.login-card{padding:25px 20px}#mobile-nav{display:flex;flex-wrap:wrap;justify-content:space-around;position:fixed;bottom:0;left:0;right:0;background:var(--surface);border-top:1px solid var(--line);padding:8px 4px max(8px,env(safe-area-inset-bottom));gap:2px;z-index:5}#mobile-nav button{font-size:12px;min-width:55px;padding:10px 6px;border:0;background:transparent}}
@media(max-width:650px){.filters{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end}.filters label{min-width:0}.filters input{min-width:0}#partner-label{grid-column:1/-1;grid-row:2}#reload{grid-column:2;grid-row:1}}
@media(max-width:650px){#mobile-nav{flex-wrap:nowrap}#mobile-nav button{flex:1}#mobile-extra{display:block;position:fixed;bottom:65px;left:12px;right:12px;padding:12px;background:var(--surface);border:1px solid var(--line);border-radius:12px;z-index:6;box-shadow:var(--shadow)}#mobile-extra button{display:block;width:100%;text-align:left;border:0;margin:3px 0}}
dialog{width:min(480px,calc(100% - 28px));background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:14px;padding:24px}dialog::backdrop{background:#0009}dialog label{display:grid;gap:8px;margin:16px 0}dialog input,dialog select{width:100%;font-size:16px}.editor-actions{display:flex;gap:12px;justify-content:flex-end}.editor-error{color:var(--danger)}.row>button{grid-column:1/-1;justify-self:start}.panel>button{margin-bottom:18px}
dialog small{display:block;margin-top:6px}
dialog fieldset{border:0;padding:0;min-width:0}.panel>button{margin-right:10px}
.period-actions{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}dialog p{overflow-wrap:anywhere}
