@import url("https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap");:root{--green:#10b981;--green-d:#059669;--green-l:rgba(16,185,129,.13);--green-xl:rgba(16,185,129,.06);--blue:#6366f1;--amber:#f59e0b;--red:#ef4444;--orange:#f97316;--purple:#8b5cf6;--cyan:#06b6d4;--font:"Inter",system-ui,sans-serif;--r4:4px;--r6:6px;--r8:8px;--r10:10px;--r12:12px;--r16:16px;--tr:all .15s cubic-bezier(.4,0,.2,1)}[data-theme=dark]{--bg:#0b0f19;--bg2:#111827;--bg3:#1c2333;--bg4:#263044;--bg5:#2e3a50;--bd:hsla(0,0%,100%,.06);--bd2:hsla(0,0%,100%,.11);--bd3:hsla(0,0%,100%,.18);--tx:#f0f4ff;--tx2:#9ba3af;--tx3:#4b5563;--sh:0 4px 24px rgba(0,0,0,.55);--sh2:0 12px 48px rgba(0,0,0,.65)}[data-theme=light]{--bg:#f8faff;--bg2:#fff;--bg3:#eff2f9;--bg4:#e2e8f5;--bg5:#cdd5e8;--bd:rgba(0,0,0,.06);--bd2:rgba(0,0,0,.1);--bd3:rgba(0,0,0,.16);--tx:#0d1117;--tx2:#4b5563;--tx3:#9ca3af;--sh:0 2px 12px rgba(0,0,0,.08);--sh2:0 6px 32px rgba(0,0,0,.12)}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body,html{height:100%}body{font-family:var(--font);background:var(--bg);color:var(--tx);font-size:14px;line-height:1.5}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-thumb{background:var(--bg4);border-radius:99px}::-webkit-scrollbar-track{background:transparent}.card{background:var(--bg2);border:1px solid var(--bd2);border-radius:var(--r12);padding:1.25rem}.section-title{font-size:.88rem;font-weight:700;color:var(--tx);letter-spacing:-.2px;margin-bottom:.25rem}.section-sub{font-size:.69rem;color:var(--tx2)}.grid-2{grid-template-columns:1fr 1fr;grid-gap:.65rem}.grid-2,.grid-3{display:grid;gap:.65rem}.grid-3{grid-template-columns:1fr 1fr 1fr;grid-gap:.65rem}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:.65rem;gap:.65rem}@media (max-width:768px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}@media (max-width:1024px){.grid-3,.grid-4{grid-template-columns:1fr 1fr}}.kpi-card{background:var(--bg2);border:1px solid var(--bd);border-radius:var(--r10);padding:1rem 1.1rem;display:flex;flex-direction:column;gap:.35rem;transition:var(--tr)}.kpi-card:hover{border-color:var(--bd2);transform:translateY(-1px);box-shadow:var(--sh)}.kpi-value{font-size:1.65rem;font-weight:800;letter-spacing:-.6px;line-height:1}.kpi-label{font-size:.68rem;color:var(--tx2);font-weight:500}.kpi-trend{font-size:.65rem;font-weight:600;display:flex;align-items:center;gap:.2rem}.kpi-trend.up{color:var(--green)}.kpi-trend.down{color:var(--red)}.table-wrap{overflow-x:auto;border-radius:var(--r8);border:1px solid var(--bd)}.table{width:100%;border-collapse:collapse;font-size:.78rem}.table thead tr{background:var(--bg3);border-bottom:1px solid var(--bd)}.table th{padding:.5rem .75rem;text-align:left;font-size:.6rem;font-weight:700;color:var(--tx2);letter-spacing:.07em;text-transform:uppercase;white-space:nowrap}.table tbody tr{border-bottom:1px solid var(--bd);transition:background .08s}.table tbody tr:last-child{border-bottom:none}.table tbody tr:hover{background:var(--bg3)}.table td{padding:.55rem .75rem;vertical-align:middle;color:var(--tx)}.form-group{margin-bottom:.68rem}.form-label{display:block;font-size:.63rem;font-weight:600;color:var(--tx2);margin-bottom:.22rem;letter-spacing:.03em;text-transform:uppercase}.form-input{width:100%;background:var(--bg3);border:1.5px solid var(--bd2);border-radius:var(--r6);padding:.5rem .75rem;font-size:.82rem;color:var(--tx);outline:none;font-family:var(--font);transition:border-color .15s,box-shadow .15s}.form-input:focus{border-color:var(--green);box-shadow:0 0 0 2px var(--green-xl)}.form-input::placeholder{color:var(--tx3)}.alert{display:flex;align-items:flex-start;gap:.5rem;padding:.62rem .82rem;border-radius:var(--r8);font-size:.78rem;line-height:1.5;margin-bottom:.55rem}.alert-warn{background:rgba(245,158,11,.08);border:1px solid rgba(245,158,11,.2)}.alert-info{background:rgba(99,102,241,.08);border:1px solid rgba(99,102,241,.2)}.alert-ok{background:rgba(16,185,129,.08);border:1px solid rgba(16,185,129,.2)}.alert-err{background:rgba(239,68,68,.08);border:1px solid rgba(239,68,68,.2)}@keyframes slideUp{0%{transform:translateX(-50%) translateY(20px);opacity:0}to{transform:translateX(-50%) translateY(0);opacity:1}}@keyframes spin{to{transform:rotate(1turn)}}@supports (padding:env(safe-area-inset-top)){body{padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}}.sidebar-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:199}@media (max-width:768px){.pw-sidebar{position:fixed!important;left:0!important;top:0!important;height:100vh!important;z-index:200!important;transform:translateX(-100%);transition:transform .25s ease!important;box-shadow:4px 0 32px rgba(0,0,0,.45)}.pw-sidebar.open{transform:translateX(0)!important}.sidebar-overlay.open{display:block}.pw-dashboard-wrapper{flex-direction:column!important}.pw-main-content{width:100%!important}.pw-topbar-roles{display:none!important}.pw-hamburger{display:flex!important}.auth-left-panel{display:none!important}.card table,.pw-table-wrap{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;white-space:nowrap}.pw-zone-cards{grid-template-columns:1fr!important}.pw-stat-grid{grid-template-columns:1fr 1fr!important}.pw-modal{border-radius:16px 16px 0 0!important;position:fixed!important;bottom:0!important;left:0!important;right:0!important;top:auto!important;transform:none!important;max-width:100%!important;width:100%!important;max-height:90vh;overflow-y:auto}.card,.pw-main-padding{padding:.75rem!important}button{min-height:36px}.pw-grid-2{grid-template-columns:1fr!important}}@media (max-width:480px){.pw-stat-grid{grid-template-columns:1fr 1fr!important}.pw-topbar-plan{display:none!important}.card{font-size:.8rem}}@media (min-width:769px){.pw-hamburger{display:none!important}.pw-topbar-roles{display:flex!important}}@media (hover:none) and (pointer:coarse){.table tbody tr:hover{background:transparent}.table td button{min-height:32px;padding:4px 10px}}@media (display-mode:standalone){body{padding-top:max(env(safe-area-inset-top),0px)}.browser-only{display:none!important}}