:root{color-scheme:dark;--bg:#11120f;--panel:#1a1c16;--line:#3c4132;--text:#f3f0e4;--muted:#b7b8a6;--accent:#d3f36a;--warn:#ffb381;--font:'IBM Plex Sans',system-ui,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:15px/1.6 var(--font)}a{color:inherit}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{outline-offset:4px}button{cursor:pointer;color:var(--text);background:transparent;border:1px solid var(--line);border-radius:10px;padding:10px 15px}button:hover{border-color:var(--accent)}button:disabled{opacity:.6;cursor:wait}.primary{background:var(--accent);color:#18200a;border-color:var(--accent);font-weight:700}[hidden]{display:none!important}header{display:flex;justify-content:space-between;align-items:center;max-width:1320px;margin:auto;padding:25px 36px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-weight:800;font-size:23px}.brand span{font-size:10px;letter-spacing:.18em;color:var(--muted);margin-left:12px}nav{display:flex;align-items:center;gap:22px;font-size:13px}main{max-width:1248px;margin:auto;padding:36px 28px;min-height:80vh}h1,h2,p{margin-top:0}h1{font-size:clamp(32px,4vw,56px);line-height:1.12;letter-spacing:-.045em;margin-bottom:20px}h2{font-size:21px;line-height:1.25;letter-spacing:-.02em}.eyebrow{display:block;font-size:10px;letter-spacing:.17em;color:var(--muted);margin-bottom:15px}.auth{display:grid;grid-template-columns:1.1fr 1fr;gap:80px;align-items:center;padding:60px 0}.auth p{max-width:530px;font-size:18px;color:var(--muted)}.auth li{padding:8px 0;color:var(--muted)}.panel{background:var(--panel);border:1px solid var(--line);border-radius:20px;padding:26px;margin-bottom:22px}.panel p{font-size:14px;color:var(--muted)}form{display:grid;gap:16px}label{display:grid;gap:6px;font-size:13px;color:var(--muted)}input,select,textarea{width:100%;min-width:0;background:#10120e;border:1px solid #515643;border-radius:8px;padding:12px;color:var(--text)}input[type=checkbox]{width:18px;height:18px;flex-shrink:0}input[type=file]{font-size:13px;padding:10px}textarea{min-height:90px;resize:vertical}.hint{color:var(--muted);font-size:12px;margin:8px 0}.welcome,.toolbar,.project-heading,.section-head{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}.welcome h1{font-size:38px}.toolbar{justify-content:flex-start;padding:16px 0 25px}.toolbar label{min-width:230px}.toolbar button{font-size:13px}.toolbar #connection{font-size:12px;color:var(--muted);margin-left:auto}.project-heading{margin:15px 0}.project-heading>div{display:flex;gap:8px;flex-wrap:wrap}.pill{display:inline-block;padding:5px 10px;border:1px solid var(--line);border-radius:30px;font-size:11px;text-transform:uppercase;letter-spacing:.07em}.notice{padding:12px 16px;border-left:2px solid var(--accent);background:#202719;border-radius:0 8px 8px 0;margin:15px 0;color:var(--muted);font-size:13px}.warning{color:var(--warn)}.columns{display:grid;grid-template-columns:1fr 1fr;gap:20px}.pair{display:grid;grid-template-columns:1fr 1fr;gap:14px}.counts{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.totals{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:15px;margin:20px 0}.total{border:1px solid var(--line);border-radius:16px;padding:20px}.total strong{display:block;font-size:30px;letter-spacing:-.03em}.total small{display:block;color:var(--muted);font-size:12px}.section-head{margin:28px 0 14px}.section-head h2{margin:0}.expense,.notification,.report,.activity{border:1px solid var(--line);border-radius:12px;padding:18px;margin:10px 0;display:flex;align-items:center;justify-content:space-between;gap:16px}.expense>div,.notification>div,.report>div{min-width:0}.expense h3{margin:0;font-size:16px;overflow-wrap:anywhere}.expense p,.report p{font-size:12px;color:var(--muted);margin:4px 0}.expense .amount{font-weight:750;white-space:nowrap}.expense .actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.notification.unread{border-color:#a5c151;background:#232a17}.notification p{margin:0;overflow-wrap:anywhere}.notification small{color:var(--muted)}details{margin-top:20px}summary{cursor:pointer;padding:8px 0;font-weight:650}details form{margin-top:14px}.activity{font-size:12px;color:var(--muted)}.activity span{max-width:80%;overflow-wrap:anywhere}dialog{width:min(780px,calc(100% - 30px));max-height:90vh;background:var(--panel);color:var(--text);border:1px solid #616c49;border-radius:20px;padding:24px}dialog::backdrop{background:#000a}.dialog-top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}.dialog-top h2{margin:0}.dialog-top button{font-size:24px;padding:0 12px}dialog img{display:block;max-width:100%;max-height:430px;object-fit:contain;background:white;margin:14px auto}dialog .check{display:flex;align-items:flex-start;gap:10px}dialog pre{white-space:pre-wrap;overflow-wrap:anywhere;font:13px/1.5 var(--font);color:var(--muted)}table{width:100%;border-collapse:collapse;font-size:13px;margin:18px 0}th,td{text-align:left;padding:10px 6px;border-bottom:1px solid var(--line);overflow-wrap:anywhere}th{color:var(--muted)}.table-wrap{overflow:auto}#message{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);width:max-content;max-width:calc(100% - 32px);padding:14px 20px;border-radius:10px;background:var(--accent);color:#17200a;box-shadow:0 4px 35px #0008;z-index:5;display:none}#message.show{display:block}footer{padding:25px;text-align:center;font-size:12px;color:var(--muted);border-top:1px solid var(--line)}.skip{position:absolute;top:-60px;left:10px;background:var(--accent);color:#111;padding:10px;z-index:10}.skip:focus{top:5px}@media(max-width:760px){header{padding:18px}.brand{font-size:19px}.brand span{display:none}nav{gap:10px;font-size:12px}main{padding:26px 18px}.auth{grid-template-columns:1fr;gap:24px;padding:20px 0}.auth p{font-size:16px}.columns{grid-template-columns:1fr;gap:0}.counts{grid-template-columns:1fr 1fr}.panel{padding:20px}.welcome h1{font-size:31px}.toolbar label{width:100%}.toolbar #connection{margin-left:0;width:100%}.expense{align-items:flex-start;flex-direction:column}.expense .actions{width:100%;justify-content:space-between}.notification{align-items:flex-start}.notification button{font-size:12px}.report{flex-wrap:wrap}.totals{grid-template-columns:1fr}.pair{gap:10px}dialog{padding:18px}th,td{padding:8px 4px}}
