@font-face{font-family:Instrument Sans;src:url(/fonts/InstrumentSans-Variable.ttf)format("truetype");font-weight:400 700;font-style:normal;font-display:swap}@font-face{font-family:Instrument Sans;src:url(/fonts/InstrumentSans-Italic-Variable.ttf)format("truetype");font-weight:400 700;font-style:italic;font-display:swap}@font-face{font-family:Big Shoulders Display;src:url(/fonts/BigShouldersDisplay-Variable.ttf)format("truetype");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Martian Mono;src:url(/fonts/MartianMono-Variable.ttf)format("truetype");font-weight:100 800;font-style:normal;font-display:swap}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0e0f11;--surface:#16181c;--surface-2:#1e2126;--border:#2a2e35;--text:#e8eaed;--muted:#9aa0a6;--accent:#b8f23a;--accent-ink:#0e0f11;--ok:#3ddc97;--warn:#f5b841;--danger:#ff5c5c;--accent-weak:color-mix(in srgb, var(--accent) 16%, transparent);--ok-weak:color-mix(in srgb, var(--ok) 16%, transparent);--warn-weak:color-mix(in srgb, var(--warn) 16%, transparent);--danger-weak:color-mix(in srgb, var(--danger) 16%, transparent);--hover:color-mix(in srgb, var(--text) 5%, transparent);--radius:6px;--s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:20px;--s6:24px;--s8:32px;--row:36px;--sidebar:232px;--font-text:"Instrument Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--font-title:"Big Shoulders Display", "Instrument Sans", system-ui, sans-serif;--font-mono:"Martian Mono", ui-monospace, "SF Mono", Menlo, monospace;--shadow:0 8px 32px #00000080}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;background:var(--bg)}body{background:var(--bg);min-height:100dvh;color:var(--text);font:400 14px/1.5 var(--font-text);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0}h1,h2,h3,p{margin:0}h1,h2{font-family:var(--font-title);letter-spacing:.02em;text-transform:uppercase;font-weight:700;line-height:1.1}h1{font-size:32px}h2{font-size:22px}h3{font-size:15px;font-weight:600}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}::selection{background:var(--accent-weak)}.mono,.num{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:13px}.num{text-align:right;white-space:nowrap}.muted{color:var(--muted)}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}input,select,textarea,button{font:inherit;color:inherit}.input,.select,.textarea{width:100%;height:var(--row);padding:0 var(--s3);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);transition:border-color .12s;display:block}.textarea{height:auto;min-height:88px;padding:var(--s2) var(--s3);resize:vertical}.select{appearance:none;padding-right:var(--s8);background-image:linear-gradient(45deg, transparent 50%, var(--muted) 50%), linear-gradient(135deg, var(--muted) 50%, transparent 50%);background-position:calc(100% - 17px),calc(100% - 12px);background-repeat:no-repeat;background-size:5px 5px}.input::placeholder,.textarea::placeholder{color:color-mix(in srgb, var(--muted) 70%, transparent)}.input:hover,.select:hover,.textarea:hover{border-color:color-mix(in srgb, var(--border) 60%, var(--muted))}.input:focus,.select:focus,.textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-weak);outline:none}.input[aria-invalid=true],.select[aria-invalid=true],.textarea[aria-invalid=true]{border-color:var(--danger)}.input:disabled,.select:disabled,.textarea:disabled{opacity:.55;cursor:not-allowed}.input.num{text-align:right}input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent);cursor:pointer;margin:0}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.skip-link{left:var(--s2);z-index:100;padding:var(--s2) var(--s3);background:var(--accent);color:var(--accent-ink);border-radius:var(--radius);font-weight:600;position:absolute;top:-48px}.skip-link:focus{top:var(--s2)}.shell{grid-template-columns:var(--sidebar) minmax(0, 1fr);min-height:100dvh;display:grid}.sidebar{gap:var(--s4);height:100dvh;padding:var(--s5) var(--s3) var(--s4);background:var(--surface);border-right:1px solid var(--border);flex-direction:column;display:flex;position:sticky;top:0}.brand{padding:0 var(--s3);font-family:var(--font-title);letter-spacing:.04em;text-transform:uppercase;color:var(--text);font-size:26px;font-weight:800}.brand span{color:var(--accent)}.nav{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.nav-link{align-items:center;gap:var(--s3);height:var(--row);padding:0 var(--s3);border-radius:var(--radius);color:var(--muted);font-weight:500;display:flex}.nav-link:hover{background:var(--hover);color:var(--text);text-decoration:none}.nav-link[aria-current=page]{background:var(--accent-weak);color:var(--accent)}.nav-icon{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:18px;height:18px}.nav-badge{background:var(--accent);min-width:20px;color:var(--accent-ink);font:600 11px/20px var(--font-mono);text-align:center;border-radius:10px;margin-left:auto;padding:0 6px}.sidebar-foot{gap:var(--s2);padding:0 var(--s3);color:var(--muted);flex-direction:column;margin-top:auto;font-size:12px;display:flex}.sidebar-foot .user{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sidebar-foot .btn{align-self:flex-start;height:28px;padding:0;font-size:13px}.modal-body .sidebar-foot{margin-top:var(--s5);padding-top:var(--s4);border-top:1px solid var(--border)}.topbar{display:none}.main{min-width:0;padding:var(--s8) var(--s8) var(--s8);width:100%;max-width:1400px}@media (max-width:900px){.shell{display:block}.sidebar{display:none}.topbar{z-index:20;align-items:center;gap:var(--s3);height:52px;padding:0 var(--s4);background:var(--surface);border-bottom:1px solid var(--border);display:flex;position:sticky;top:0}.topbar .brand{padding:0;font-size:22px}.main{padding:var(--s5) var(--s4) var(--s8)}}.page{gap:var(--s5);flex-direction:column;display:flex}.page-header{justify-content:space-between;align-items:flex-end;gap:var(--s3) var(--s4);flex-wrap:wrap;display:flex}.page-header .sub{margin-top:var(--s1);color:var(--muted)}.page-actions{gap:var(--s2);flex-wrap:wrap;display:flex}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:var(--s5)}.card>h2,.card>h3{margin-bottom:var(--s3)}.grid-tiles{gap:var(--s4);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));display:grid}.grid-tiles>.wide{grid-column:span 2}.grid-tiles>.rp-slot{min-width:0;display:flex}.grid-tiles>.rp-slot>.card{flex:1}.grid-tiles .card{gap:var(--s3);flex-direction:column;min-width:0;display:flex}.grid-tiles .card>h2,.grid-tiles .card>h3,.grid-tiles .rp-tile-head h2{font-family:var(--font-title);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:0;font-size:15px;font-weight:700}.grid-tiles :is(.rp-big,.bank-big,.rc-big,.inv-tile .value){font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--text);overflow-wrap:anywhere;margin:0;font-size:28px;font-weight:600;line-height:1.15}.grid-tiles .card>.muted{font-size:13px}@media (max-width:700px){.grid-tiles>.wide{grid-column:auto}}.btn{justify-content:center;align-items:center;gap:var(--s2);height:var(--row);padding:0 var(--s4);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);color:var(--text);white-space:nowrap;cursor:pointer;font-weight:500;transition:background .12s,border-color .12s;display:inline-flex}.btn:hover:not(:disabled){background:color-mix(in srgb, var(--surface-2) 70%, var(--text) 10%);text-decoration:none}.btn:disabled,.btn[aria-busy=true]{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);font-weight:600}.btn-primary:hover:not(:disabled){background:color-mix(in srgb, var(--accent) 88%, white)}.btn-ghost{color:var(--muted);background:0 0;border-color:#0000}.btn-ghost:hover:not(:disabled){background:var(--hover);color:var(--text)}.btn-danger{background:var(--danger-weak);border-color:color-mix(in srgb, var(--danger) 50%, transparent);color:var(--danger)}.btn-sm{height:28px;padding:0 var(--s3);font-size:13px}.btn-icon{width:var(--row);padding:0}.spinner{border:2px solid;border-right-color:#0000;border-radius:50%;width:14px;height:14px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.filterbar{align-items:center;gap:var(--s2);flex-wrap:wrap;display:flex}.filterbar .search{flex:240px;max-width:420px;position:relative}.filterbar .search .input{padding-left:34px}.filterbar .search svg{fill:none;width:14px;height:14px;stroke:var(--muted);stroke-width:2px;stroke-linecap:round;pointer-events:none;position:absolute;top:50%;left:11px;translate:0 -50%}.filterbar .search kbd{border:1px solid var(--border);font:11px/18px var(--font-mono);color:var(--muted);pointer-events:none;border-radius:4px;padding:0 6px;position:absolute;top:50%;right:8px;translate:0 -50%}.filterbar .filters{gap:var(--s2);flex-wrap:wrap;display:flex}.filterbar .filters>*{width:auto;min-width:140px}.table-wrap{max-height:calc(100dvh - var(--table-offset,240px));background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);position:relative;overflow:auto}.table{border-collapse:separate;border-spacing:0;width:100%}.table th,.table td{height:var(--row);padding:0 var(--s3);text-align:left;white-space:nowrap;border-bottom:1px solid var(--border)}.table td{text-overflow:ellipsis;max-width:360px;overflow:hidden}.table tbody tr:last-child td{border-bottom:0}.table th{z-index:2;background:var(--surface-2);color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:12px;font-weight:600;position:sticky;top:0}.table th.num,.table td.num{text-align:right}.table .col-select{width:40px;padding-right:0}.table tbody tr{cursor:default}.table tbody tr[data-clickable=true]{cursor:pointer}.table tbody tr:hover td{background:var(--hover)}.table tbody tr[aria-selected=true] td{background:var(--accent-weak)}.table tbody tr[data-active=true] td:first-child{box-shadow:inset 2px 0 0 var(--accent)}.table-wrap.is-loading{min-height:120px}.table-wrap.is-loading .table tbody{opacity:.5}.th-sort{color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;padding:0;display:inline-flex}.th-sort:hover{color:var(--text)}.th-sort .arrow{width:8px;color:var(--accent)}.table-foot{justify-content:space-between;align-items:center;gap:var(--s3);color:var(--muted);flex-wrap:wrap;font-size:13px;display:flex}.pager{align-items:center;gap:var(--s2);display:flex}@media (max-width:1100px){.col-p3{display:none}}@media (max-width:800px){.col-p2{display:none}.table td{max-width:200px}}@media (max-width:480px){.table th,.table td{padding:0 var(--s2)}.table td{max-width:104px}.table td .bank-clip{max-width:100%}}.form{gap:var(--s5);flex-direction:column;display:flex}.form-grid{gap:var(--s4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.form-grid>.field-wide{grid-column:1/-1}@media (max-width:640px){.form-grid{grid-template-columns:minmax(0,1fr)}}.form-grid.single{grid-template-columns:minmax(0,1fr)}.form-actions{justify-content:flex-end;gap:var(--s2);flex-wrap:wrap;display:flex}.field{flex-direction:column;gap:6px;min-width:0;display:flex}.field>label,.field>.label{color:var(--text);font-size:13px;font-weight:500}.field .req{color:var(--accent)}.field .hint{color:var(--muted);font-size:12px}.field .error{color:var(--danger);font-size:12px}.form-error,.alert{padding:var(--s3) var(--s4);border:1px solid color-mix(in srgb, var(--danger) 50%, transparent);border-radius:var(--radius);background:var(--danger-weak);color:var(--text)}.alert-warn{border-color:color-mix(in srgb, var(--warn) 50%, transparent);background:var(--warn-weak)}.alert-ok{border-color:color-mix(in srgb, var(--ok) 50%, transparent);background:var(--ok-weak)}.badge{background:var(--surface-2);border:1px solid var(--border);height:20px;color:var(--muted);white-space:nowrap;border-radius:10px;align-items:center;padding:0 8px;font-size:12px;font-weight:500;display:inline-flex}.badge-accent{background:var(--accent-weak);color:var(--accent);border-color:#0000}.badge-ok{background:var(--ok-weak);color:var(--ok);border-color:#0000}.badge-warn{background:var(--warn-weak);color:var(--warn);border-color:#0000}.badge-danger{background:var(--danger-weak);color:var(--danger);border-color:#0000}.empty{align-items:center;gap:var(--s2);padding:var(--s8) var(--s5);text-align:center;color:var(--muted);flex-direction:column;display:flex}.empty h3{color:var(--text)}.empty p{max-width:44ch}.empty .btn{margin-top:var(--s3)}.tabs{gap:var(--s1);border-bottom:1px solid var(--border);display:flex;overflow-x:auto}.tab{height:var(--row);padding:0 var(--s4);color:var(--muted);white-space:nowrap;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;margin-bottom:-1px;font-weight:500}.tab:hover{color:var(--text)}.tab[aria-selected=true]{color:var(--accent);border-bottom-color:var(--accent)}dialog.modal{border:1px solid var(--border);background:var(--surface);color:var(--text);box-shadow:var(--shadow);border-radius:10px;max-height:calc(100dvh - 48px);padding:0;overflow:hidden}dialog.modal[open]{flex-direction:column;display:flex}dialog.modal::backdrop{background:#0009}dialog.dialog-sm{width:min(420px,100vw - 32px)}dialog.dialog-md{width:min(600px,100vw - 32px)}dialog.dialog-lg{width:min(880px,100vw - 32px)}dialog.drawer{border-width:0 0 0 1px;border-radius:0;width:min(560px,100vw);max-width:100vw;height:100dvh;max-height:100dvh;margin:0;animation:.18s ease-out drawer-in;position:fixed;inset:0 0 0 auto}dialog.drawer-left{border-width:0 1px 0 0;animation-name:drawer-in-left;inset:0 auto 0 0}dialog.drawer-wide{width:min(880px,100vw)}@keyframes drawer-in{0%{opacity:0;translate:40px}}@keyframes drawer-in-left{0%{opacity:0;translate:-40px}}.modal-head{justify-content:space-between;align-items:center;gap:var(--s3);padding:var(--s4) var(--s5);border-bottom:1px solid var(--border);display:flex}.modal-head h2{font-size:20px}.modal-body{padding:var(--s5);flex:1;overflow:auto}.modal-foot{justify-content:flex-end;gap:var(--s2);padding:var(--s3) var(--s5);border-top:1px solid var(--border);background:var(--surface);display:flex}.toasts{inset:auto var(--s4) var(--s4) auto;z-index:1000;color:inherit;gap:var(--s2);pointer-events:none;background:0 0;border:0;flex-direction:column;width:min(380px,100vw - 32px);margin:0;padding:0;display:none;position:fixed;overflow:visible}.toasts:popover-open{display:flex}@supports not selector(:popover-open){.toasts{display:flex}}body:has(.rv-actions,dialog[open] .modal-foot) .toasts{bottom:calc(var(--s4) + 72px)}.toast{align-items:flex-start;gap:var(--s3);padding:var(--s3) var(--s4);border:1px solid var(--border);border-left:3px solid var(--muted);border-radius:var(--radius);background:var(--surface-2);box-shadow:var(--shadow);pointer-events:auto;animation:.15s ease-out toast-in;display:flex}.toast-ok{border-left-color:var(--ok)}.toast-error{border-left-color:var(--danger)}.toast-warn{border-left-color:var(--warn)}.toast p{flex:1}.toast button{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:0;font-size:18px;line-height:1}@keyframes toast-in{0%{opacity:0;translate:0 8px}}.filedrop{justify-content:center;align-items:center;gap:var(--s1);padding:var(--s6);border:1.5px dashed var(--border);border-radius:var(--radius);background:var(--surface);color:var(--muted);text-align:center;cursor:pointer;flex-direction:column;transition:border-color .12s,background .12s;display:flex;position:relative}.filedrop:hover,.filedrop.is-over,.filedrop:focus-within{border-color:var(--accent);background:var(--accent-weak)}.filedrop strong{color:var(--text)}.filedrop input{opacity:0;cursor:pointer;position:absolute;inset:0}.filedrop[aria-busy=true]{opacity:.6;pointer-events:none}.fileview{gap:var(--s2);flex-direction:column;height:100%;display:flex}.fileview iframe,.fileview img{border:1px solid var(--border);border-radius:var(--radius);background:#fff;flex:1;width:100%;min-height:420px}.fileview img{object-fit:contain;background:var(--surface-2)}.auth{min-height:100dvh;padding:var(--s5);place-items:center;display:grid}.auth-card{gap:var(--s5);width:min(420px,100%);padding:var(--s8);background:var(--surface);border:1px solid var(--border);border-radius:10px;flex-direction:column;display:flex}.auth-card h2+p{margin-top:var(--s2)}.auth-card .brand{padding:0;font-size:34px}.auth-card .btn-primary{width:100%}.splash{min-height:100dvh;color:var(--muted);place-items:center;display:grid}
