:root{--ink:#143a40;--teal:#176d65;--line:#dce6e1;--light:#eff5f1;--muted:#647871}*{box-sizing:border-box}body{margin:0;font:15px/1.55 "Segoe UI",Arial,sans-serif;color:var(--ink);background:#f4f7f4}button,input,select,textarea{font:inherit}button{cursor:pointer;background:white;border:1px solid #cbd9d2;color:var(--ink);padding:10px 16px;border-radius:8px}button:disabled{opacity:.45;cursor:default}.primary{background:var(--teal);color:white;border-color:var(--teal)}.danger{color:#a84335}.demo{padding:10px 22px;background:#fff0cf;color:#745119;font-size:12px;font-weight:600;text-align:center}.layout{display:grid;grid-template-columns:236px minmax(0,1fr);min-height:calc(100vh - 40px)}aside{padding:30px 22px;background:#153e3b;color:#eaf4ee;position:relative}.brand{text-decoration:none;color:white;font-size:31px;font-weight:800;letter-spacing:1px;display:block}.brand span{display:block;font-size:10px;letter-spacing:3px;color:#a3c9b9}.aside-sub{font-size:13px;color:#a5c2b6}.aside-label{font-size:10px;font-weight:700;letter-spacing:1.3px;color:#99baac;margin:36px 0 14px}.nav{display:block;width:100%;text-align:left;background:transparent;color:#c6dacf;border:0;margin:8px 0}.nav.active{background:#2c5750;color:white}.dept{font-size:13px;padding:10px 0;border-bottom:1px solid #315750}.aside-foot{margin-top:70px;color:#a6c8b8;font-size:13px}.aside-foot small{font-size:11px}main{max-width:1480px;width:100%;padding:36px 42px}header{display:flex;justify-content:space-between;align-items:flex-start;gap:28px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:1.6px;color:#6d857a}h1{font-size:30px;line-height:1.3;letter-spacing:-.7px;margin:10px 0}header p{color:var(--muted);margin:0;font-size:14px}.role{font-size:11px;color:var(--muted);min-width:225px}.role select{display:block;width:100%;margin-top:7px;padding:10px;border:1px solid #cad9ce;border-radius:8px;color:var(--ink);background:white}.flow{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:17px 20px;border:1px solid var(--line);background:white;border-radius:10px;margin:28px 0;font-size:12px}.flow span{padding:5px 8px;background:#edf5ef;border-radius:5px}.flow b{color:#8ba69a}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.stat{padding:19px 22px;border:1px solid var(--line);border-radius:10px;background:white}.stat span{display:block;color:var(--muted);font-size:12px}.stat strong{display:block;font-size:28px;font-weight:650;margin-top:5px}.bar{display:flex;align-items:center;justify-content:space-between;margin-top:30px;gap:20px}.bar h2{font-size:19px;margin:0}.bar h2 span{color:#889d92;font-size:14px}.muted{color:var(--muted);font-size:12px;margin:4px 0 0}.filters{display:flex;align-items:center;gap:14px;margin:20px 0;font-size:12px}.filters>input{flex:1;min-width:140px;padding:11px;border:1px solid var(--line);border-radius:8px}.filters label{display:flex;align-items:center;gap:6px}#list{display:grid;gap:12px}.record{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:24px;align-items:center;background:white;border:1px solid var(--line);border-radius:10px;padding:20px 22px}.record h3{font-size:16px;margin:4px 0}.record .ref{font-size:10px;letter-spacing:.6px;color:#7c9386}.record .amount{font-size:18px;font-weight:650;text-align:right}.record .person{font-size:12px;color:var(--muted)}.badge{display:inline-block;padding:5px 9px;border-radius:20px;font-size:11px;background:#e8f1eb;color:#326855}.badge.wait{background:#fff0d6;color:#9b6c23}.badge.done{background:#e3f1e9;color:#287252}.notice{font-size:12px;color:#60776b;min-height:24px}footer{font-size:11px;color:#7a9083;margin-top:26px}dialog{border:0;border-radius:14px;max-width:1000px;width:calc(100% - 36px);max-height:92vh;padding:26px 30px;color:var(--ink)}dialog::backdrop{background:#122e2a80}.modal-head{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:16px;margin-bottom:18px}.modal-head h2{font-size:22px;margin:5px 0}.modal-head button{font-size:22px;border:0;padding:2px 10px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:13px 20px}.fields label{font-size:12px;font-weight:600}.fields input,.fields textarea,.fields select{display:block;width:100%;margin-top:5px;border:1px solid #c5d7cb;border-radius:6px;padding:9px;color:var(--ink);background:white}.fields textarea{min-height:65px;resize:vertical}.full{grid-column:1/-1}.tablewrap{overflow:auto}table{border-collapse:collapse;width:100%;margin:20px 0;font-size:12px;min-width:580px}th,td{padding:9px 7px;border:1px solid var(--line);text-align:left}th{background:#edf5ef}td input{border:0;background:white;width:100%;padding:6px 2px;min-width:70px;font:inherit}td:first-child input{min-width:140px}td.number,td.number input{text-align:right}td .delete{padding:1px 6px;border:0;color:#ae6451}.total{display:flex;justify-content:flex-end;gap:22px;font-size:18px;padding:14px;background:#eaf4ec;border-radius:7px;margin:12px 0}.actions{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap;margin:22px 0}.note{padding:12px 15px;background:#fff3db;border-left:3px solid #d4ae69;font-size:12px;margin:18px 0}.history{margin:24px 0 0;padding:0;list-style:none}.history li{padding:11px 0;border-top:1px solid var(--line);font-size:12px}.history small{display:block;color:#82968b;font-size:10px}.history p{margin:4px 0}.error{color:#a64534;font-size:12px;min-height:20px}.steps li{padding:8px 0}.steps p{font-size:13px;color:var(--muted);margin:5px 0}.empty{background:white;border:1px dashed #bfd0c3;border-radius:10px;padding:35px;text-align:center;color:#6f8778}@media(max-width:1000px){main{padding:25px}.layout{grid-template-columns:190px minmax(0,1fr)}aside{padding:25px 15px}h1{font-size:25px}header{flex-direction:column;gap:16px}.role{min-width:0;width:100%}.filters{flex-wrap:wrap}.record{gap:12px}}@media(max-width:700px){.layout{display:block}aside{padding:15px 20px}.brand{font-size:24px}.brand span{display:inline;margin-left:10px}.aside-sub,.aside-label,.dept,.aside-foot,aside .nav{display:none}main{padding:24px 16px}.flow{flex-wrap:wrap;justify-content:flex-start;padding:12px;font-size:10px}.stats{grid-template-columns:1fr 1fr;gap:10px}.stat{padding:14px}.stat strong{font-size:24px}.record{grid-template-columns:1fr auto;padding:16px}.record>button{grid-column:1/-1}.fields{grid-template-columns:1fr}.full{grid-column:auto}.filters{gap:10px}.filters>input{flex-basis:100%}dialog{padding:20px 16px}.actions button{flex:1}}
:root{color-scheme:light}[hidden]{display:none!important}.auth{display:grid;place-items:center;min-height:100vh;padding:24px}.auth-card{max-width:480px;background:white;padding:36px;border:1px solid var(--line);border-radius:14px}.auth-card .brand{color:var(--ink)}.auth-card .brand span{color:var(--muted)}.auth-card h1{margin-top:28px}.auth-card label{display:block;margin:17px 0;font-size:13px}.auth-card input{display:block;width:100%;padding:11px;margin-top:6px;border:1px solid #b8cfc1;border-radius:7px}.auth-card button{width:100%}.checks{display:flex;flex-wrap:wrap;gap:14px;margin:15px 0}.checks label{font-size:13px}.invite-link{width:100%;padding:12px;margin:16px 0}.attachments{list-style:none;padding:0;font-size:13px}.attachments li{padding:8px;border-bottom:1px solid var(--line)}.upload-row{margin:18px 0;display:flex;flex-wrap:wrap;gap:10px;align-items:center}.print-value{display:none}.error{white-space:pre-wrap}.meta-line{font-size:12px;color:var(--muted)}@media print{aside,main,header,.actions,.upload-row,.no-print,.modal-head button,button,footer{display:none!important}dialog[open]{display:block;position:static;max-height:none;max-width:none;width:100%;border:0;margin:0;padding:0;overflow:visible}dialog::backdrop{background:white}.layout{display:none}body{background:white;font-size:10pt}dialog input,dialog textarea,dialog select{display:none}.print-value{display:block;white-space:pre-wrap;overflow-wrap:anywhere;border-bottom:1px dotted #999;min-height:20px}table{min-width:0;font-size:9pt}thead{display:table-header-group}tr{break-inside:avoid}.history{font-size:9pt}.history li{break-inside:avoid}.note{background:white;border:1px solid #ddd}.fields{grid-template-columns:1fr 1fr}.total{background:white;border:1px solid #aaa}.modal-head h2{font-size:18pt}@page{size:A4;margin:14mm}}
