:root{--bg: #f6f7f9;--surface: #ffffff;--border: #dfe3e8;--border-strong: #c3cad3;--ink: #1c2430;--ink-muted: #5b6675;--ink-faint: #8a94a3;--accent: #1f5fa8;--accent-soft: #e8f0fa;--danger: #b3261e;--danger-soft: #fdecea;--warn: #8a5a00;--warn-soft: #fdf4e3;--ok: #1e6b45;--ok-soft: #e7f4ec;--radius: 6px;--sidebar: 232px}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--ink);font:14px/1.5 -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased}h1,h2,h3{margin:0;font-weight:600;letter-spacing:-.01em}h1{font-size:20px}h2{font-size:16px}h3{font-size:14px}p{margin:0 0 12px}a{color:var(--accent)}.num,td.num,th.num{font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px}td.mono,td.date,th.date{white-space:nowrap}.shell{display:flex;height:100%;overflow:hidden}.sidebar{width:var(--sidebar);flex:0 0 var(--sidebar);background:#16202e;color:#c7d1de;display:flex;flex-direction:column;padding:16px 0 0;overflow:hidden}.sidebar-head{flex:0 0 auto;border-bottom:1px solid #26344a;box-shadow:0 6px 10px -10px #000000e6;padding-bottom:10px}.sidebar-links{flex:1;padding-top:4px;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-bottom:16px}.sidebar-links{scrollbar-width:thin;scrollbar-color:#33435c transparent}.sidebar-links::-webkit-scrollbar{width:8px}.sidebar-links::-webkit-scrollbar-thumb{background:#33435c;border-radius:4px}.sidebar-links::-webkit-scrollbar-thumb:hover{background:#44567a}.sidebar-links::-webkit-scrollbar-track{background:transparent}.sidebar .brand{display:flex;align-items:center;gap:9px;padding:0 14px 12px;color:#fff;font-weight:600;font-size:14.5px;letter-spacing:-.01em}.sidebar .brand .mark{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:6px;background:var(--accent);color:#fff;font-size:10.5px;font-weight:700;letter-spacing:.02em}.sidebar .group{padding:13px 16px 3px;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#7b8798}.sidebar nav a{display:block;padding:7px 16px;color:#c7d1de;text-decoration:none;font-size:13.5px;border-left:3px solid transparent}.sidebar nav a:hover{background:#1e2b3d;color:#fff}.sidebar nav a.active{background:#1e2b3d;color:#fff;border-left-color:var(--accent)}.sidebar .whoami{display:flex;align-items:center;gap:9px;margin:0 10px;padding:8px;border-radius:8px;background:#1b2738;font-size:12px;color:#93a0b2}.sidebar .whoami .avatar{display:inline-grid;place-items:center;flex:0 0 auto;width:28px;height:28px;border-radius:50%;background:#2b3b52;color:#dce5ef;font-size:11px;font-weight:600}.sidebar .whoami .who{min-width:0}.sidebar .whoami strong{display:block;color:#e6ecf3;font-size:13px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar .whoami .role{display:block;font-size:10.5px;text-transform:uppercase;letter-spacing:.07em;color:#8592a6}.sidebar .account{display:flex;gap:14px;padding:8px 20px 2px}.sidebar .account a,.sidebar .account button{all:unset;cursor:pointer;font-size:11.5px;color:#8592a6;border-bottom:1px solid transparent}.sidebar .account a:hover,.sidebar .account button:hover{color:#e6ecf3;border-bottom-color:#44567a}.main{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column}.topbar{flex:0 0 auto;background:var(--surface);border-bottom:1px solid var(--border);padding:14px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px}.topbar .titles{display:flex;align-items:baseline;gap:12px;min-width:0}.topbar h1{white-space:nowrap}.topbar .sub{color:var(--ink-muted);font-size:13px;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.workspace{display:flex;align-items:center;gap:10px;flex:0 1 auto}.searchbox{position:relative;flex:0 1 300px;min-width:140px}.searchbox input{width:100%;padding:7px 10px;font-size:13px;border:1px solid var(--border);border-radius:6px;background:var(--bg)}.searchbox input:focus{outline:2px solid var(--accent);outline-offset:-1px}.searchbox .results,.feed .panel{position:absolute;right:0;top:calc(100% + 6px);z-index:40;background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:0 8px 24px #1018281f;max-height:70vh;overflow-y:auto}.searchbox .results{width:min(460px,calc(100vw - 40px))}.feed .panel{width:min(380px,calc(100vw - 40px))}.searchbox .hit{display:grid;grid-template-columns:150px 110px 1fr auto;gap:10px;align-items:center;width:100%;padding:8px 12px;border:0;border-bottom:1px solid var(--border);background:none;text-align:left;font-size:13px;cursor:pointer}.searchbox .hit:last-child{border-bottom:0}.searchbox .hit:hover{background:var(--bg)}.feed{position:relative;flex:0 0 auto}.feed .bell{position:relative;min-width:38px;padding:7px 10px;font-size:13px;font-weight:600;border:1px solid var(--border);border-radius:6px;background:var(--bg);cursor:pointer}.feed .bell.urgent{border-color:var(--danger);color:var(--danger)}.feed .bell .dot{position:absolute;top:-3px;right:-3px;width:8px;height:8px;border-radius:50%;background:var(--accent)}.feed .panel-head{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-muted);background:var(--bg);border-bottom:1px solid var(--border)}.feed .waiting,.feed .event{display:flex;flex-direction:column;gap:2px;width:100%;padding:9px 12px;border:0;border-bottom:1px solid var(--border);background:none;text-align:left;font-size:13px}.feed .waiting{cursor:pointer}.feed .waiting:hover{background:var(--bg)}.feed .waiting.urgent strong{color:var(--danger)}.feed .event.unread{border-left:3px solid var(--accent)}.content{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:20px 24px 48px}.content>*{max-width:1180px}.content>.card.wide{max-width:none}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:16px}.card>header{padding:12px 16px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:12px}.card>header .hint{color:var(--ink-muted);font-size:12.5px;font-weight:400}.card .body,.card .body form{overflow-x:auto}.card .body{padding:16px}.card .body.tight{padding:0}.card .body>table,.card .body form>table{min-width:min-content}.card .body:last-child{border-radius:0 0 var(--radius) var(--radius)}.grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}.stat{padding:14px 16px}.stat .label{color:var(--ink-muted);font-size:12px;text-transform:uppercase;letter-spacing:.05em}.stat .value{font-size:22px;font-weight:600;margin-top:4px;font-variant-numeric:tabular-nums}.stat .note{color:var(--ink-faint);font-size:12px;margin-top:2px}table{width:100%;border-collapse:collapse}th,td{padding:8px 16px;text-align:left;border-bottom:1px solid var(--border)}th{font-size:11.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-muted);font-weight:600;background:#fafbfc}tbody tr:last-child td{border-bottom:none}tbody tr:hover{background:#fafbfc}tfoot td{font-weight:600;background:#fafbfc;border-top:2px solid var(--border-strong)}.indent-1{padding-left:32px}.indent-2{padding-left:48px}.indent-3{padding-left:64px}button,.btn{font:inherit;padding:6px 12px;border-radius:var(--radius);border:1px solid var(--border-strong);background:var(--surface);color:var(--ink);cursor:pointer}button:hover:not(:disabled){background:#f2f4f7}button:disabled{opacity:.5;cursor:not-allowed}button.primary{background:var(--accent);border-color:var(--accent);color:#fff}button.primary:hover:not(:disabled){background:#1a5192}button.danger{color:var(--danger);border-color:#e5b7b4}button.small{padding:3px 8px;font-size:12.5px}button.quiet{border-color:transparent;background:transparent;color:var(--ink-muted)}button.quiet:hover:not(:disabled){background:#f2f4f7;color:var(--ink)}.subsection{margin-top:18px;padding-top:14px;border-top:1px solid var(--border)}.subsection>h3{margin:0 0 12px;font-size:11.5px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-muted)}.inset{margin-top:12px;padding:12px 14px;border-radius:var(--radius);background:var(--bg);border:1px solid var(--border)}.inset>label:last-of-type{margin-bottom:0}.actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:12px}.trail{list-style:none;margin:10px 0 0;padding:0 0 0 14px;border-left:2px solid var(--border);font-size:13px}.trail>li{position:relative;padding:0 0 10px 8px}.trail>li:last-child{padding-bottom:0}.trail>li:before{content:"";position:absolute;left:-19px;top:6px;width:7px;height:7px;border-radius:50%;background:var(--border-strong)}.trail .said{color:var(--ink-muted);font-style:italic}.trail-toggle{margin-top:16px;font-size:13px}.trail-toggle>summary{cursor:pointer}.clipped{max-width:340px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}input,select,textarea{font:inherit;padding:6px 9px;border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--surface);color:var(--ink);width:100%}input[type=checkbox],input[type=radio]{width:auto;padding:0;border-radius:0;vertical-align:baseline}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent-soft);border-color:var(--accent)}label{display:block;margin-bottom:10px}label .caption{display:block;font-size:12.5px;color:var(--ink-muted);margin-bottom:3px}.row{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end}.row>*{flex:1 1 160px}.row>.shrink{flex:0 0 auto}.note-box{padding:10px 14px;border-radius:var(--radius);font-size:13px;margin-bottom:14px}.note-box.error{background:var(--danger-soft);color:var(--danger);border:1px solid #f0c4c0}.note-box.warn{background:var(--warn-soft);color:var(--warn);border:1px solid #ecd9ac}.note-box.ok{background:var(--ok-soft);color:var(--ok);border:1px solid #bcdfcb}.note-box.info{background:var(--accent-soft);color:var(--accent);border:1px solid #c3d9f0}.pill{display:inline-block;padding:2px 8px;border-radius:999px;font-size:11.5px;font-weight:600;letter-spacing:.02em}.pill.open{background:var(--ok-soft);color:var(--ok)}.pill.under_review{background:var(--warn-soft);color:var(--warn)}.pill.closed{background:#eceff3;color:var(--ink-muted)}.pill.locked{background:#e6e2f5;color:#4a3b8f}.pill.blocking{background:var(--danger-soft);color:var(--danger)}.pill.advisory{background:var(--warn-soft);color:var(--warn)}.pill.pass{background:var(--ok-soft);color:var(--ok)}.pill.awaiting_request{background:var(--warn-soft);color:var(--warn)}.pill.unapproved,.pill.mismatch,.pill.duplicate_suspect,.pill.amount_mismatch{background:var(--danger-soft);color:var(--danger)}.pill.resolved,.pill.settled{background:var(--ok-soft);color:var(--ok)}.pill.partially_paid{background:var(--warn-soft);color:var(--warn)}.muted{color:var(--ink-muted)}.faint{color:var(--ink-faint)}.empty{padding:28px 16px;text-align:center;color:var(--ink-muted)}.login-page{display:grid;place-items:center;min-height:100%;padding:24px}.login-card{width:100%;max-width:380px}.login-card .body{padding:22px}.login-card h1{margin-bottom:4px}.login-card .lede{color:var(--ink-muted);font-size:13px;margin-bottom:18px}.filter-bar{display:grid;gap:10px 12px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));align-items:end}.filter-bar label{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--ink-muted)}.split{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));align-items:start}.link-button{background:none;border:0;padding:0;font:inherit;color:inherit;text-align:left;cursor:pointer;text-decoration:underline;text-decoration-color:var(--ink-faint);text-underline-offset:3px}.link-button:hover{text-decoration-color:currentColor}tr.picked td{background:var(--warn-soft)}.share{height:4px;border-radius:2px;margin-top:5px;max-width:220px}.share>span{display:block;height:100%;border-radius:2px}.share.in{background:var(--ok-soft)}.share.in>span{background:var(--ok)}.share.out{background:var(--danger-soft)}.share.out>span{background:var(--danger)}td.in-amount{color:var(--ok)}td.out-amount{color:var(--danger)}table.facts{width:auto;margin:0 0 12px;border:0}table.facts th,table.facts td{border:0;padding:2px 16px 2px 0;font-size:13px;vertical-align:top}table.facts th{color:var(--ink-muted);font-weight:500;text-align:left;white-space:nowrap}table.facts td{font-variant-numeric:tabular-nums}.grid-2{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(340px,1fr))}
