:root{--bg: #0a0a0a;--panel: #111318;--panel-soft: #151923;--border: #232936;--text: #f5f7fb;--muted: #b2bccf;--shadow: rgba(0,0,0,.24)}:root[data-theme=light]{--bg: #f3f5f8;--panel: #ffffff;--panel-soft: #f7f8fb;--border: #dde3ec;--text: #0f1728;--muted: #5e6b80;--shadow: rgba(16,24,40,.08)}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--bg);color:var(--text)}button,input,select,textarea{font:inherit}button{cursor:pointer}input,select,textarea{width:100%;border:1px solid var(--border);background:var(--panel);color:var(--text);border-radius:14px;padding:12px 14px}textarea{resize:vertical}.app-shell{display:grid;grid-template-columns:270px 1fr;min-height:100vh}.sidebar{border-right:1px solid var(--border);padding:16px}.main-area{min-width:0}.topbar{position:sticky;top:0;z-index:10;display:flex;gap:16px;justify-content:space-between;align-items:center;padding:18px 24px;border-bottom:1px solid var(--border)}.content-area{padding:24px}.panel{background:color-mix(in srgb,var(--panel) 88%,transparent)}.panel,.panel-soft,.card{border-radius:24px}.card{border:1px solid var(--border);box-shadow:0 14px 36px var(--shadow)}.panel-soft{border:1px solid var(--border);background:var(--panel-soft);padding:16px}.brand-card{display:flex;align-items:center;gap:12px;margin-bottom:20px}.brand-icon{width:44px;height:44px;display:grid;place-items:center;border-radius:16px;background:#10b98126;color:#6ee7b7}.brand-title{font-size:1.2rem;font-weight:700}.nav-list{display:grid;gap:8px}.nav-button{display:flex;align-items:center;gap:12px;width:100%;border:0;background:transparent;color:var(--text);padding:14px 16px;border-radius:18px}.nav-button:hover{background:color-mix(in srgb,var(--panel-soft) 88%,transparent)}.nav-button-active{background:#10b98129;outline:1px solid rgba(16,185,129,.3);color:#6ee7b7}.nav-chevron{margin-left:auto}.live-card{margin-top:22px}.stats-mini{display:grid;gap:10px;margin-top:14px}.topbar-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.search-wrap{display:flex;align-items:center;gap:8px;border:1px solid var(--border);background:var(--panel);border-radius:16px;padding:0 12px;min-width:280px}.search-wrap input{border:0;padding-left:0}.search-wrap input:focus{outline:none}.user-chip{display:flex;align-items:center;gap:10px}.avatar{width:34px;height:34px;display:grid;place-items:center;border-radius:999px;background:#10b98126;color:#6ee7b7;font-weight:700}.btn{border:1px solid var(--border);background:var(--panel);color:var(--text);padding:11px 14px;border-radius:16px;display:inline-flex;align-items:center;gap:8px}.btn-secondary:hover{background:var(--panel-soft)}.btn-primary{background:#10b981;color:#04210f;border-color:#10b981;font-weight:700}.btn-primary:hover{filter:brightness(1.05)}.badge{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;font-size:.78rem;border:1px solid transparent}.success{background:#10b98124;color:#6ee7b7;border-color:#10b98147}.warning{background:#f59e0b24;color:#fbbf24;border-color:#f59e0b47}.danger{background:#ef444424;color:#fca5a5;border-color:#ef444447}.info{background:#3b82f624;color:#93c5fd;border-color:#3b82f647}.neutral{background:#94a3b824;color:#cbd5e1;border-color:#94a3b847}.muted{color:var(--muted)}.small{font-size:.88rem}.tiny{font-size:.74rem;text-transform:uppercase;letter-spacing:.06em}.strong{font-weight:700}.space-between{display:flex;align-items:center;justify-content:space-between;gap:12px}.align-start{align-items:flex-start}.inline-gap{display:inline-flex;align-items:center;gap:8px}.stack-md{display:grid;gap:12px}.stack-lg{display:grid;gap:20px}.section-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.section-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.grid-kpi{display:grid;gap:16px;grid-template-columns:repeat(5,minmax(0,1fr))}.grid-main{display:grid;gap:20px;grid-template-columns:1.2fr .8fr}.grid-fleet{display:grid;gap:20px;grid-template-columns:260px 1fr 340px}.grid-crew{display:grid;gap:20px;grid-template-columns:1fr 320px}.grid-defects{display:grid;gap:20px;grid-template-columns:1fr 340px}.grid-2{display:grid;gap:20px;grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{display:grid;gap:20px;grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{display:grid;gap:20px;grid-template-columns:repeat(4,minmax(0,1fr))}.kpi-value{font-size:2rem;font-weight:800;margin-top:10px}.icon-box{width:38px;height:38px;display:grid;place-items:center;border-radius:14px;background:var(--panel-soft)}.tile p{margin:8px 0 0}.feed-item,.tile{min-height:96px}.feed-message{margin:8px 0 6px;font-weight:600}.table-card{overflow:hidden}.table-wrap{overflow:auto;border-radius:18px;border:1px solid var(--border)}table{width:100%;border-collapse:collapse}thead{background:color-mix(in srgb,var(--panel-soft) 88%,transparent)}th,td{padding:14px 16px;text-align:left;border-bottom:1px solid var(--border);white-space:nowrap}tr:hover td{background:color-mix(in srgb,var(--panel-soft) 50%,transparent)}.row-active td{background:color-mix(in srgb,var(--panel-soft) 74%,transparent)}.field{display:grid;gap:8px}.detail-grid{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.notice{padding:14px 16px;border-radius:18px;border:1px solid var(--border)}.notice.error{background:#ef44441f;color:#fca5a5;border-color:#ef44443d}.notice.success{background:#10b9811f;color:#6ee7b7;border-color:#10b9813d}.loading-card{display:inline-flex;align-items:center;gap:10px}.spin{animation:spin 1s linear infinite}.tabs-lite{display:inline-flex;gap:8px;background:var(--panel-soft);padding:6px;border-radius:16px;border:1px solid var(--border)}.tab-button{border:0;background:transparent;color:var(--muted);padding:8px 12px;border-radius:12px}.tab-button-active{background:var(--panel);color:var(--text)}h1,h2,h3,h4,p{margin:0}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(max-width:1280px){.grid-kpi,.grid-4,.grid-3,.grid-2,.grid-main,.grid-fleet,.grid-crew,.grid-defects{grid-template-columns:1fr}}@media(max-width:980px){.app-shell{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid var(--border)}.topbar,.content-area{padding:16px}}
