@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#07110d;--ink2:#0b1913;--panel:#10231a;--panel2:#142c20;--line:rgba(211,245,222,.12);--muted:#8ca998;--text:#eef7f0;--green:#63f26d;--green2:#b1ffb0;--red:#e74452;--gold:#d4b36c;--shadow:0 28px 80px rgba(0,0,0,.38);font-family:Manrope,system-ui,sans-serif;color:var(--text);background:var(--ink);font-size:16px}
*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at 78% 7%,rgba(52,143,74,.22),transparent 30%),radial-gradient(circle at 20% 100%,rgba(92,43,35,.12),transparent 35%),linear-gradient(145deg,#07110d,#0a1711 58%,#07100c);color:var(--text)}button,input,textarea{font:inherit}button{cursor:pointer}.hidden{display:none!important}
.icon svg,.ghost-button svg,.primary-button svg,.logout svg,.announcement svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle}.brand-logo{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 8px 20px rgba(99,242,109,.16))}.brand-mark{padding:6px;overflow:hidden}.logout{display:flex;align-items:center;gap:7px}.logout svg{width:13px}
.splash-screen{position:fixed;inset:0;z-index:100;display:grid;place-items:center;background:#06100a;overflow:hidden;animation:splashOut .7s ease 2.05s forwards}.splash-screen .brand-logo{width:min(360px,64vw);height:auto;opacity:0;animation:logoIn 1.1s cubic-bezier(.2,.8,.2,1) .15s forwards}.splash-glow{position:absolute;width:42vw;height:42vw;border-radius:50%;background:radial-gradient(circle,rgba(99,242,109,.18),transparent 68%);filter:blur(10px);animation:glowPulse 2s ease-in-out infinite}.splash-line{position:absolute;bottom:25%;width:0;height:2px;background:var(--green);box-shadow:0 0 25px var(--green);animation:lineIn 1.4s ease .25s forwards}@keyframes logoIn{from{opacity:0;transform:translateY(18px) scale(.9)}to{opacity:1;transform:none}}@keyframes glowPulse{50%{transform:scale(1.12);opacity:.55}}@keyframes lineIn{to{width:120px}}@keyframes splashOut{to{opacity:0;visibility:hidden;pointer-events:none}}
.app-shell{min-height:100vh;display:flex}.boot-screen,.login-screen{min-height:100vh;width:100%;display:grid;place-items:center;gap:18px;color:var(--muted)}.boot-screen{grid-template-columns:1fr;align-content:center}.boot-screen:after{content:"";width:58px;height:3px;border-radius:5px;background:var(--green);box-shadow:0 0 30px var(--green);animation:pulse 1.4s ease-in-out infinite}@keyframes pulse{50%{opacity:.28;transform:scaleX(.45)}}
.login-screen{grid-template-columns:minmax(0,540px);justify-content:center;padding:24px}.login-card{width:100%;border:1px solid var(--line);border-radius:24px;padding:46px;background:linear-gradient(145deg,rgba(20,49,32,.82),rgba(8,18,12,.92));box-shadow:var(--shadow),inset 0 1px 0 rgba(255,255,255,.05);text-align:center}.login-card .brand-row{justify-content:center}.brand-row{display:flex;align-items:center;gap:14px;margin-bottom:42px}.brand-mark{display:grid;place-items:center;width:52px;height:52px;border-radius:15px;color:#06110a;background:var(--green);font-weight:900;letter-spacing:-.08em;box-shadow:0 0 34px rgba(99,242,109,.25)}.brand-copy strong{display:block;letter-spacing:.18em;font-size:14px}.brand-copy small{display:block;color:var(--muted);font:11px 'DM Mono',monospace;letter-spacing:.08em;margin-top:5px}.login-card h1{font-size:clamp(34px,6vw,54px);line-height:1.02;letter-spacing:-.06em;margin:0 0 18px}.login-card p{line-height:1.7;color:#b0c9b7;margin:0 auto 30px;max-width:430px}.login-button,.primary-button{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;border:1px solid rgba(157,255,156,.3);border-radius:12px;background:var(--green);color:#06110a;padding:14px 18px;font-weight:800;transition:.2s}.login-button:hover,.primary-button:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(99,242,109,.18)}.login-button span{font-size:20px}.login-foot{display:flex;justify-content:center;gap:16px;color:#72927d;font:11px 'DM Mono',monospace;margin-top:24px}.warning{margin-top:16px;padding:12px;border-radius:10px;color:#ffc4c7;background:rgba(231,68,82,.1);border:1px solid rgba(231,68,82,.24);font-size:13px}
.layout{display:grid;grid-template-columns:248px minmax(0,1fr);width:100%;min-height:100vh}.sidebar{display:flex;flex-direction:column;padding:24px 15px;border-right:1px solid var(--line);background:linear-gradient(180deg,rgba(18,47,30,.66),rgba(5,14,9,.62));position:sticky;top:0;height:100vh}.sidebar .brand-row{margin:0 12px 40px}.sidebar .brand-mark{width:42px;height:42px;border-radius:12px;font-size:12px}.sidebar .brand-copy strong{font-size:11px}.nav{display:flex;flex-direction:column;gap:5px}.nav button{display:flex;align-items:center;gap:12px;color:#8ea998;border:1px solid transparent;border-radius:11px;background:transparent;padding:12px 13px;text-align:left;font-weight:700}.nav button:hover{color:var(--text);background:rgba(255,255,255,.04)}.nav button.active{color:var(--green2);border-color:rgba(99,242,109,.2);background:rgba(99,242,109,.09)}.nav .icon{width:22px;text-align:center;font-size:18px}.sidebar-bottom{margin-top:auto;display:grid;gap:14px}.profile-mini{display:flex;align-items:center;gap:10px;padding:10px;border-radius:12px;background:rgba(255,255,255,.04);border:1px solid var(--line)}.avatar{width:30px;height:30px;display:grid;place-items:center;border-radius:10px;background:#245e37;color:var(--green2);font-weight:800;overflow:hidden}.avatar img{width:100%;height:100%;object-fit:cover}.profile-mini div{min-width:0}.profile-mini strong,.profile-mini small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile-mini strong{font-size:12px}.profile-mini small{font:10px 'DM Mono',monospace;color:var(--muted);margin-top:3px}.logout{border:0;background:transparent;color:#779580;text-align:left;padding:0 10px;font-size:12px}.logout:hover{color:#ff9ca3}
.main{min-width:0;width:100%;max-width:1600px;margin:0 auto;padding:34px clamp(20px,4vw,62px) 70px}.topbar{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:32px}.eyebrow{font:11px 'DM Mono',monospace;letter-spacing:.17em;color:var(--green);text-transform:uppercase}.page-title{font-size:clamp(30px,4vw,48px);line-height:1.05;letter-spacing:-.06em;margin:10px 0 0}.top-actions{display:flex;gap:10px;align-items:center}.sync-indicator{display:flex;align-items:center;gap:7px;color:#83a991;font:10px 'DM Mono',monospace;white-space:nowrap;padding-top:6px}.sync-indicator i{width:6px;height:6px;border-radius:50%;background:var(--green);box-shadow:0 0 10px var(--green);animation:pulse 1.5s ease-in-out infinite}
.announcement{border:1px solid rgba(212,179,108,.28);background:linear-gradient(90deg,rgba(212,179,108,.1),rgba(212,179,108,.03));color:#ecd9a7;padding:13px 16px;border-radius:12px;margin-bottom:20px;font-size:13px}.content-grid{display:grid;gap:18px}.cards-4{grid-template-columns:repeat(4,minmax(0,1fr))}.cards-3{grid-template-columns:repeat(3,minmax(0,1fr))}.card{border:1px solid var(--line);border-radius:16px;background:linear-gradient(145deg,rgba(21,47,32,.9),rgba(10,24,16,.9));box-shadow:0 12px 30px rgba(0,0,0,.13);padding:20px}.metric{min-height:132px}.metric-label{color:var(--muted);font:11px 'DM Mono',monospace;letter-spacing:.08em;text-transform:uppercase}.metric-value{font-size:29px;font-weight:800;letter-spacing:-.06em;margin-top:18px}.metric-note{font-size:12px;color:#8db29a;margin-top:6px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:16px;margin:30px 0 12px}.section-head h2{font-size:18px;letter-spacing:-.03em;margin:0}.section-head p{color:var(--muted);font-size:12px;margin:3px 0 0}.select{color:var(--text);background:var(--panel2);border:1px solid var(--line);border-radius:9px;padding:9px 12px;outline:none}.select:focus,input:focus,textarea:focus{border-color:rgba(99,242,109,.65);box-shadow:0 0 0 3px rgba(99,242,109,.08)}
.character-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:16px}.character-card{padding:0;overflow:hidden;position:relative;cursor:pointer;transition:.2s}.character-card:hover{transform:translateY(-4px);border-color:rgba(99,242,109,.36)}.character-card.active{border-color:rgba(99,242,109,.6);box-shadow:0 0 0 1px rgba(99,242,109,.18),0 16px 40px rgba(4,10,5,.3)}.character-accent{height:5px;background:linear-gradient(90deg,var(--green),#d1ffb9 70%,var(--red))}.mugshot-wrap{height:220px;position:relative;overflow:hidden;background:#12281b}.mugshot-wrap:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(5,16,9,.7),transparent 55%)}.mugshot-wrap img{width:100%;height:100%;object-fit:cover;object-position:center 25%;filter:saturate(.8) contrast(1.04)}.mugshot-stamp{position:absolute;z-index:1;right:14px;bottom:12px;color:var(--green2);font:10px 'DM Mono',monospace;letter-spacing:.14em;border:1px solid rgba(177,255,176,.4);padding:5px 7px;border-radius:5px;background:rgba(4,15,8,.55)}.character-body{padding:19px}.character-top{display:flex;justify-content:space-between;gap:10px}.character-name{font-size:20px;font-weight:800;letter-spacing:-.045em}.character-uid{font:11px 'DM Mono',monospace;color:var(--green);margin-top:5px}.slot{font:11px 'DM Mono',monospace;color:var(--muted);padding:5px 7px;border:1px solid var(--line);border-radius:7px}.character-meta{display:flex;gap:7px;flex-wrap:wrap;margin-top:22px}.tag{padding:6px 8px;border-radius:7px;color:#b5ccbc;background:rgba(255,255,255,.05);font-size:11px}.tag.green{color:var(--green2);background:rgba(99,242,109,.08)}.character-card-foot{display:flex;align-items:center;gap:6px;color:var(--green2);font:11px 'DM Mono',monospace;margin-top:18px;padding-top:13px;border-top:1px solid rgba(211,245,222,.09)}.character-card-foot svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.7}
.chart-card{min-height:210px}.bar-chart{display:flex;align-items:end;gap:10px;height:126px;padding-top:18px}.bar{flex:1;min-width:16px;border-radius:6px 6px 2px 2px;background:linear-gradient(180deg,var(--green),rgba(99,242,109,.12));position:relative}.bar small{position:absolute;top:calc(100% + 7px);left:50%;transform:translateX(-50%);font:9px 'DM Mono',monospace;color:var(--muted)}.bar span{position:absolute;top:-17px;left:50%;transform:translateX(-50%);font-size:9px;color:#bdecc3;opacity:0}.bar:hover span{opacity:1}.list{display:grid;gap:9px}.list-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 0;border-bottom:1px solid rgba(211,245,222,.08)}.list-row:last-child{border-bottom:0}.list-primary{font-weight:700;font-size:13px}.list-secondary{color:var(--muted);font-size:11px;margin-top:4px}.amount{font:14px 'DM Mono',monospace;color:var(--green2);white-space:nowrap}.amount.out{color:#ff9ca3}.empty{border:1px dashed var(--line);border-radius:13px;padding:28px;text-align:center;color:var(--muted);font-size:13px}
.detail-header{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:22px;border:1px solid rgba(99,242,109,.18);border-radius:16px;background:linear-gradient(120deg,rgba(30,76,43,.55),rgba(11,28,18,.85));margin:24px 0 12px}.detail-person{display:flex;align-items:center;gap:16px}.detail-person>img{width:76px;height:76px;border-radius:13px;object-fit:cover;border:1px solid rgba(177,255,176,.3)}.detail-name{font-size:26px;font-weight:800;letter-spacing:-.05em}.detail-name small{display:block;font:11px 'DM Mono',monospace;color:var(--green);letter-spacing:.08em;margin-top:6px}.detail-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.ghost-button,.danger-button{border:1px solid var(--line);background:rgba(255,255,255,.04);color:#bfd9c4;border-radius:9px;padding:9px 12px;font-size:12px}.ghost-button:hover{border-color:rgba(99,242,109,.4);color:var(--green2)}.danger-button{border-color:rgba(231,68,82,.3);color:#ffabb1}.danger-button:hover{background:rgba(231,68,82,.1)}.detail-facts{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:12px;overflow:hidden;margin-bottom:18px}.detail-facts div{padding:12px 14px;background:rgba(13,31,20,.8)}.detail-facts span,.invoice-pay small{display:block;color:var(--muted);font:10px 'DM Mono',monospace;text-transform:uppercase;letter-spacing:.04em}.detail-facts strong{display:block;margin-top:6px;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.finance-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:24px 0}.action-card{min-height:220px}.action-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:11px;color:var(--green2);background:rgba(99,242,109,.1);margin-bottom:14px}.action-icon svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.action-card h2{margin:0;font-size:18px}.action-card>div>p{color:var(--muted);font-size:12px;margin:5px 0 18px}.invoice-actions{display:grid;gap:4px}.invoice-pay{display:flex;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid rgba(211,245,222,.09);padding:12px 0}.invoice-pay strong{font-size:12px}.invoice-pay b{font:12px 'DM Mono',monospace;color:var(--green2);margin-right:10px}.invoice-pay .ghost-button{padding:6px 8px;font-size:11px}
.vcp-hero{display:flex;align-items:center;gap:16px;padding:22px 24px;margin-bottom:18px;border:1px solid rgba(99,242,109,.2);border-radius:18px;background:linear-gradient(110deg,rgba(24,67,39,.75),rgba(8,22,14,.92));box-shadow:0 18px 45px rgba(0,0,0,.18)}.vcp-hero .action-icon{margin:0;flex:0 0 auto}.vcp-hero h2{margin:0;font-size:22px;letter-spacing:-.04em}.vcp-hero p{margin:5px 0 0;color:var(--muted);font-size:12px}.vcp-secure{margin-left:auto;color:var(--green2);font:9px 'DM Mono',monospace;letter-spacing:.12em;padding:7px 9px;border:1px solid rgba(99,242,109,.22);border-radius:8px}.vcp-metrics .metric{min-height:105px}.vcp-metrics .metric-value{margin-top:10px}.vcp-workspace,.vcp-lower{display:grid;grid-template-columns:minmax(320px,.8fr) minmax(440px,1.2fr);gap:18px;margin-top:18px}.vcp-lower{grid-template-columns:repeat(2,minmax(0,1fr))}.section-head.mini{margin:0 0 14px}.vcp-search,.vcp-file{min-height:580px}.vcp-results{display:grid;gap:6px;max-height:300px;overflow:auto;margin-bottom:26px}.vcp-results>button{display:grid;grid-template-columns:42px 1fr 18px;align-items:center;gap:11px;width:100%;padding:9px;border:1px solid transparent;border-radius:10px;color:var(--text);background:rgba(255,255,255,.025);text-align:left}.vcp-results>button:hover{border-color:rgba(99,242,109,.24);background:rgba(99,242,109,.06)}.vcp-results img{width:42px;height:42px;object-fit:cover;border-radius:9px}.vcp-results strong,.vcp-results small{display:block}.vcp-results strong{font-size:12px}.vcp-results small{color:var(--muted);font:9px 'DM Mono',monospace;margin-top:3px}.vcp-results svg{width:15px;fill:none;stroke:currentColor}.vcp-person-head{display:flex;align-items:center;gap:16px;padding-bottom:18px;border-bottom:1px solid var(--line)}.vcp-person-head img{width:92px;height:108px;object-fit:cover;border-radius:12px;border:1px solid rgba(99,242,109,.24)}.vcp-person-head h2{font-size:25px;margin:7px 0 4px;letter-spacing:-.05em}.vcp-person-head p{font-size:11px;color:var(--muted);margin:0}.detail-facts.compact{grid-template-columns:repeat(3,minmax(0,1fr));margin:15px 0 24px}.license-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;margin-bottom:26px}.license-chip{border:1px solid var(--line);border-radius:9px;padding:9px 4px;color:#a6bbaa;background:rgba(255,255,255,.03);font:12px 'DM Mono',monospace}.license-chip small{display:block;font-size:7px;color:#687e6f;margin-top:4px}.license-chip.owned{color:#09130c;background:var(--green);border-color:var(--green)}.license-chip.owned small{color:#17351f}.license-chip:disabled{opacity:.55;cursor:not-allowed}.vcp-records{display:grid;gap:7px;max-height:430px;overflow:auto}.vcp-record{display:grid;grid-template-columns:12px 1fr auto;align-items:center;gap:11px;padding:11px;border:1px solid rgba(211,245,222,.08);border-radius:10px;background:rgba(255,255,255,.025)}.vcp-record strong,.vcp-record small{display:block}.vcp-record strong{font-size:12px}.vcp-record small{font:9px 'DM Mono',monospace;color:var(--muted);margin-top:4px}.priority{width:7px;height:7px;border-radius:50%;background:#6c8272}.priority.important{background:#e6bd5c}.priority.urgent{background:#f15c67;box-shadow:0 0 10px rgba(241,92,103,.45)}.vehicle-mark{width:28px;height:28px;display:grid;place-items:center;color:var(--green2)}.vehicle-mark svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7}.vcp-record:has(.vehicle-mark){grid-template-columns:30px 1fr auto}.vcp-admin{margin-bottom:24px}.admin-list{margin-top:20px}.access-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:20px}.access-grid>div{padding:10px;border:1px solid var(--line);border-radius:9px}.access-grid strong,.access-grid span,.access-grid small{display:block}.access-grid strong{color:var(--green2);font:10px 'DM Mono',monospace;text-transform:uppercase}.access-grid span{font-size:11px;margin-top:4px}.access-grid small{font-size:9px;color:var(--muted);margin-top:3px}.check-field{align-content:end;padding-bottom:10px}.check-field label{display:flex;align-items:center;gap:7px}.check-field input{width:auto}
.table-wrap{overflow:auto}.data-table{width:100%;border-collapse:collapse;font-size:12px}.data-table th{color:var(--muted);font:10px 'DM Mono',monospace;letter-spacing:.06em;text-align:left;padding:9px 11px;border-bottom:1px solid var(--line);text-transform:uppercase}.data-table td{padding:12px 11px;border-bottom:1px solid rgba(211,245,222,.08);vertical-align:top}.data-table tr:last-child td{border:0}.data-table .status{color:var(--green2)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.field{display:grid;gap:7px}.field.full{grid-column:1/-1}.field label{font:10px 'DM Mono',monospace;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.field input,.field textarea{width:100%;color:var(--text);background:rgba(3,12,7,.46);border:1px solid var(--line);border-radius:9px;padding:10px 11px;outline:none}.field textarea{resize:vertical;min-height:90px}.form-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:16px}.primary-button{width:auto;border:0;padding:10px 15px;font-size:12px}.toast{position:fixed;right:24px;bottom:24px;z-index:20;padding:13px 16px;border-radius:11px;background:#193c27;color:var(--green2);border:1px solid rgba(99,242,109,.28);box-shadow:var(--shadow);font-size:13px;animation:toastIn .25s ease}@keyframes toastIn{from{opacity:0;transform:translateY(8px)}}
.admin-search{display:flex;gap:8px;margin-bottom:14px}.admin-search input{flex:1;color:var(--text);background:rgba(3,12,7,.46);border:1px solid var(--line);border-radius:9px;padding:11px;outline:none}.admin-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(350px,.9fr);gap:18px}.result-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px 12px;border-bottom:1px solid rgba(211,245,222,.08);cursor:pointer}.result-row:hover{background:rgba(99,242,109,.05)}.result-row strong{font-size:13px}.result-row small{display:block;color:var(--muted);font:10px 'DM Mono',monospace;margin-top:4px}.admin-badge{color:#ffdba0;background:rgba(212,179,108,.11);padding:5px 7px;border-radius:7px;font:10px 'DM Mono',monospace}.settings-card{margin-top:18px}
@media(max-width:1050px){.cards-4{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-layout{grid-template-columns:1fr}}@media(max-width:760px){.layout{display:block}.sidebar{height:auto;position:relative;padding:14px 14px 12px;border-right:0;border-bottom:1px solid var(--line)}.sidebar .brand-row{margin:0 3px 16px}.sidebar-bottom{display:none}.nav{display:grid;grid-template-columns:repeat(4,1fr);gap:4px}.nav button{justify-content:center;padding:10px 4px;font-size:0}.nav .icon{font-size:18px}.main{padding:24px 15px 50px}.topbar{margin-bottom:22px}.top-actions{display:none}.page-title{font-size:34px}.cards-4,.cards-3{grid-template-columns:1fr}.login-card{padding:32px 24px}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.detail-header{align-items:flex-start;flex-direction:column}.data-table{min-width:640px}}
@media(max-width:1050px){.detail-facts{grid-template-columns:repeat(3,minmax(0,1fr))}.finance-actions{grid-template-columns:1fr}}
@media(max-width:1050px){.vcp-workspace,.vcp-lower{grid-template-columns:1fr}.vcp-search,.vcp-file{min-height:0}.license-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:760px){.detail-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-person>img{width:62px;height:62px}.mugshot-wrap{height:190px}.character-grid{grid-template-columns:1fr}.brand-mark{width:42px;height:42px}.sidebar .brand-mark{padding:5px}.vcp-secure{display:none}.vcp-hero{align-items:flex-start}.license-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.access-grid{grid-template-columns:1fr}.vcp-person-head img{width:68px;height:82px}}
