:root{--brand:#ef5000;--brand-dark:#c94300;--brand-soft:#fff3eb;--canvas:#f6f7fb;--surface:#fff;--text:#17191d;--muted:#6f7785;--line:#e8ebf1;--radius:18px;--shadow:0 8px 28px rgba(24,31,45,.07);--shadow-hover:0 16px 42px rgba(24,31,45,.11)}*{box-sizing:border-box}html{color-scheme:light}body{margin:0;background:radial-gradient(circle at 92% 4%,rgba(239,80,0,.07),transparent 24%),var(--canvas);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}#app{min-height:100dvh}.login-page{background:linear-gradient(145deg,#18191c 0%,#24252a 58%,#ef5000 160%);position:relative;overflow:hidden}.login-page:before,.login-page:after{content:"";position:absolute;border-radius:999px;filter:blur(2px);pointer-events:none}.login-page:before{width:360px;height:360px;background:rgba(239,80,0,.18);right:-120px;top:-140px}.login-page:after{width:260px;height:260px;background:rgba(255,255,255,.05);left:-100px;bottom:-120px}.login-card{position:relative;z-index:1;border:1px solid rgba(255,255,255,.72);border-radius:28px!important;box-shadow:0 30px 80px rgba(0,0,0,.3)!important;padding:34px 28px!important;backdrop-filter:blur(18px)}.login-logo{width:min(272px,80vw)!important;height:68px!important;margin:0 auto 14px!important;background:url('./logo-dark.svg') center/contain no-repeat!important;border-radius:0!important;box-shadow:none!important;color:transparent!important;font-size:0!important}.login-logo img{display:none!important}.login-card h1{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important}.login-card .subtitle{font-size:13px!important;color:#7b8492!important;margin-bottom:26px!important}.input,.select,.textarea{border:1px solid #dfe3ea!important;border-radius:12px!important;background:#fbfcfe!important;min-height:46px;transition:border-color .2s,box-shadow .2s,background .2s!important}.input:focus,.select:focus,.textarea:focus{background:#fff!important;border-color:var(--brand)!important;box-shadow:0 0 0 4px rgba(239,80,0,.1)!important}.btn{border-radius:11px!important;min-height:42px;transition:transform .18s ease,box-shadow .18s ease,background .18s ease!important}.btn:hover{transform:translateY(-1px)}.btn-primary{background:linear-gradient(135deg,#ff640f,#df4600)!important;border-color:transparent!important;box-shadow:0 8px 18px rgba(239,80,0,.22)}.app-layout{background:transparent}.sidebar{background:rgba(255,255,255,.92)!important;border-right:1px solid rgba(226,229,236,.9)!important;backdrop-filter:blur(16px)}.sidebar-header{min-height:76px!important;padding:18px 17px!important}.sidebar-logo{width:154px!important;height:39px!important;background:url('./logo-light.svg') left center/contain no-repeat!important;border-radius:0!important;color:transparent!important;font-size:0!important;box-shadow:none!important}.sidebar-logo img{display:none!important}.sidebar-logo-text{display:none!important}.login-card h1{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important}.nav-section-label{color:#9aa1ad!important;letter-spacing:.9px!important}.nav-item{border-radius:12px!important;min-height:43px!important;transition:background .18s,color .18s,transform .18s!important}.nav-item:hover{background:#f4f5f8!important;transform:translateX(2px)}.nav-item.active{background:linear-gradient(135deg,#fff0e7,#fff7f2)!important;color:#c94300!important;box-shadow:inset 0 0 0 1px rgba(239,80,0,.08)}.nav-icon{width:22px!important;height:22px!important;display:grid!important;place-items:center!important;font-size:0!important}.nav-icon svg,.phase0-icon svg{width:19px;height:19px;display:block;stroke:currentColor}.sidebar-footer{background:rgba(248,249,252,.78)}.topbar{background:rgba(255,255,255,.82)!important;border-bottom:1px solid rgba(226,229,236,.82)!important;backdrop-filter:blur(16px);min-height:72px}.topbar-title{font-size:19px!important;letter-spacing:-.35px!important}.content{max-width:1500px;width:100%;margin:0 auto}.card,.stat-card{background:rgba(255,255,255,.94)!important;border:1px solid rgba(229,232,239,.95)!important;border-radius:var(--radius)!important;box-shadow:var(--shadow)!important;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease!important;overflow:hidden;position:relative}.card:hover,.stat-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-hover)!important;border-color:#dfe3ea!important}.stat-card{padding:17px!important;min-height:148px}.stat-card:after{content:"";position:absolute;width:110px;height:110px;border-radius:50%;background:radial-gradient(circle,rgba(239,80,0,.09),transparent 70%);right:-38px;top:-45px;pointer-events:none}.stat-icon{width:38px!important;height:38px!important;border-radius:12px!important;font-size:0!important;margin-bottom:15px!important}.stat-icon svg{width:20px;height:20px;stroke:currentColor}.stat-label{font-size:12px!important;color:#7f8794!important}.stat-value{font-size:27px!important;letter-spacing:-.8px!important;margin-top:2px}.phase0-sparkline{position:absolute;right:12px;bottom:10px;width:92px;height:38px;opacity:.78}.phase0-sparkline path.line{fill:none;stroke:var(--brand);stroke-width:2.3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:160;stroke-dashoffset:160;animation:drawLine 1.1s cubic-bezier(.2,.8,.2,1) forwards}.phase0-sparkline path.area{fill:url(#sparkFill);opacity:.5}.phase0-delta{display:inline-flex;align-items:center;gap:4px;margin-top:7px;font-size:11px;font-weight:700;color:#07845d;background:#e9fbf4;border-radius:999px;padding:3px 7px}.phase0-chart{height:150px;display:flex;align-items:flex-end;gap:8px;padding:16px 4px 2px}.phase0-chart-bar{flex:1;min-width:8px;border-radius:8px 8px 3px 3px;background:linear-gradient(180deg,#ff7b31,#ef5000);transform-origin:bottom;animation:growBar .7s cubic-bezier(.2,.8,.2,1) both}.phase0-chart-bar:nth-child(2){animation-delay:.06s}.phase0-chart-bar:nth-child(3){animation-delay:.12s}.phase0-chart-bar:nth-child(4){animation-delay:.18s}.phase0-chart-bar:nth-child(5){animation-delay:.24s}.phase0-chart-bar:nth-child(6){animation-delay:.3s}.phase0-chart-bar:nth-child(7){animation-delay:.36s}.phase0-chart-labels{display:flex;justify-content:space-between;color:#98a0ad;font-size:10px;margin-top:8px}.progress-bar{height:7px!important;background:#edf0f4!important}.progress-fill{background:linear-gradient(90deg,#ff7a31,#ef5000)!important;animation:progressIn .7s ease both}.table{border-collapse:separate!important;border-spacing:0}.table th{background:#fafbfc}.table tbody tr{transition:background .16s}.table tbody tr:hover{background:#fafbfc}.map-container{border-radius:20px!important;box-shadow:var(--shadow);border-color:#e6e9ef!important}.modal{border-radius:22px!important}.empty-icon{font-size:0!important;width:54px;height:54px;border-radius:16px;background:#fff2e9;color:var(--brand);display:grid;place-items:center;margin:0 auto 13px!important}.empty-icon svg{width:26px;height:26px;stroke:currentColor}.phase0-button-icon{display:inline-flex;align-items:center}.phase0-button-icon svg{width:16px;height:16px;stroke:currentColor}.live-badge{border-radius:999px!important}.toast{border-radius:13px!important}.pwa-install{position:fixed;right:18px;bottom:18px;z-index:150;display:none;align-items:center;gap:8px;padding:11px 15px;border:0;border-radius:999px;background:#191a1e;color:#fff;font:600 12px Inter,sans-serif;box-shadow:0 14px 38px rgba(0,0,0,.25);cursor:pointer}.pwa-install.show{display:flex;animation:fadeUp .35s ease both}@keyframes drawLine{to{stroke-dashoffset:0}}@keyframes growBar{from{transform:scaleY(.08);opacity:.25}to{transform:scaleY(1);opacity:1}}@keyframes progressIn{from{transform:scaleX(0);transform-origin:left}to{transform:scaleX(1);transform-origin:left}}@keyframes fadeUp{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media(min-width:900px){.sidebar{width:258px!important}.content{padding:28px!important}.grid-4{gap:16px!important}.grid-3,.grid-2{gap:18px!important}.card{padding:22px!important}.topbar{padding:14px 28px!important}}