@import url("https://fonts.googleapis.com/css2?family=Montserrat:wght@600;700;800;900&family=Poppins:wght@500;600;700&family=Karla:wght@400;500;600;700&family=JetBrains+Mono:wght@500&display=swap");:root{--blue:#0071bc;--blue-light:#1a8ad4;--green:#39b54a;--charcoal:#343434;--yellow:#fcf12c;--accent:var(--blue);--font-heading:"Montserrat",sans-serif;--font-section:"Poppins",sans-serif;--font-body:"Karla",sans-serif;--mono:"JetBrains Mono",monospace;--radius:10px;--radius-lg:14px;--radius-sm:6px;--sidebar-w:220px;--header-h:60px;--safe-area-top:env(safe-area-inset-top,0px);--safe-area-bottom:env(safe-area-inset-bottom,0px)}:root,[data-theme=light]{--bg:#f0f2f5;--surface:#fff;--surface-alt:#fafbfc;--surface-sunken:#eef1f5;--card:#fff;--card-hover:#f5f7fa;--border:#e2e8f0;--border-light:#c8d1de;--border-strong:#cbd2dc;--accent-dim:rgba(0,113,188,.08);--accent-glow:rgba(0,113,188,.15);--blue-soft:rgba(0,113,188,.1);--green-dim:rgba(57,181,74,.08);--green-soft:rgba(57,181,74,.13);--yellow-dim:rgba(252,241,44,.1);--amber:#d4920a;--amber-dim:rgba(212,146,10,.08);--red:#dc4444;--red-dim:rgba(220,68,68,.08);--purple:#7c5ccc;--purple-dim:rgba(124,92,204,.08);--danger:#d92d20;--danger-soft:rgba(217,45,32,.1);--warning:#b45309;--warning-soft:rgba(245,158,11,.16);--text:#1a2332;--text-dim:#5a6a80;--text-muted:#8c9bb0;--text-secondary:#4b5563;--overlay:rgba(15,20,28,.45);--sh-sm:0 1px 0 rgba(15,20,28,.04);--sh-md:0 2px 8px rgba(15,20,28,.06);--sh-lg:0 12px 32px rgba(15,20,28,.1);--r-sm:4px;--r-md:6px;--r-lg:8px;--r-xl:12px;--r-pill:999px;--input-bg:#fff}[data-theme=dark]{--bg:#0a0f18;--surface:#111923;--surface-alt:#1b2230;--surface-sunken:#0f131a;--card:#16202e;--card-hover:#1c2a3c;--border:#1e2d42;--border-light:#283d5a;--border-strong:#33405a;--accent-dim:rgba(0,113,188,.12);--accent-glow:rgba(0,113,188,.22);--blue-soft:rgba(58,155,220,.14);--green-dim:rgba(57,181,74,.12);--green-soft:rgba(74,201,92,.14);--yellow-dim:rgba(252,241,44,.12);--amber:#f5a623;--amber-dim:rgba(245,166,35,.12);--red:#ef6b6b;--red-dim:hsla(0,80%,68%,.1);--purple:#a78bfa;--purple-dim:rgba(167,139,250,.1);--danger:#ef4757;--danger-soft:rgba(239,71,87,.14);--warning:#f5a623;--warning-soft:rgba(245,166,35,.14);--text:#e8edf5;--text-dim:#7c90ab;--text-muted:#4a5c73;--text-secondary:#b6bcc8;--overlay:rgba(0,0,0,.55);--sh-sm:0 1px 0 rgba(0,0,0,.4);--sh-md:0 4px 14px rgba(0,0,0,.35);--sh-lg:0 12px 32px rgba(0,0,0,.5);--r-sm:4px;--r-md:6px;--r-lg:8px;--r-xl:12px;--r-pill:999px;--input-bg:var(--bg)}*{box-sizing:border-box;margin:0;padding:0}body,html{font-family:var(--font-body);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color .2s ease,color .2s ease}h1,h2,h3{font-family:var(--font-heading)}button,input,select,textarea{font-family:var(--font-body)}label{font-family:var(--font-section)}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}@keyframes panelFadeIn{0%{opacity:0}to{opacity:1}}@keyframes panelFadeOut{0%{opacity:1}to{opacity:0}}@keyframes panelSlideInRight{0%{transform:translateX(28px);opacity:0}to{transform:translateX(0);opacity:1}}@keyframes panelSlideOutRight{0%{transform:translateX(0);opacity:1}to{transform:translateX(28px);opacity:0}}@keyframes panelSlideInUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes panelSlideOutDown{0%{transform:translateY(0)}to{transform:translateY(100%)}}@media (prefers-reduced-motion:reduce){@keyframes panelSlideInRight{0%{opacity:0}to{opacity:1}}@keyframes panelSlideOutRight{0%{opacity:1}to{opacity:0}}@keyframes panelSlideInUp{0%{opacity:0}to{opacity:1}}@keyframes panelSlideOutDown{0%{opacity:1}to{opacity:0}}}.app-sidebar{position:fixed;left:0;top:0;width:var(--sidebar-w);height:100vh;box-sizing:border-box;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);z-index:900;overflow-y:auto;overflow-x:hidden;background:#111827;transition:transform .25s ease}.app-main,.app-sidebar{display:flex;flex-direction:column}.app-main{margin-left:var(--sidebar-w);min-height:100vh;width:calc(100% - var(--sidebar-w))}.sidebar-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:899}@media (max-width:768px){.app-sidebar{transform:translateX(-100%)}.app-sidebar.sidebar-open{transform:translateX(0)}.app-main{margin-left:0;width:100%}.sidebar-overlay.sidebar-open{display:block}.data-table{font-size:12px}.data-table td,.data-table th{padding:10px;white-space:nowrap}}.dash-grid{display:grid;grid-template-columns:1fr 280px;grid-gap:20px;gap:20px;align-items:start}@media (max-width:1100px){.dash-grid{grid-template-columns:1fr}}.data-table{width:100%;border-collapse:collapse;font-size:13px}.data-table th{text-align:left;padding:10px 12px;font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;font-family:var(--font-section)}.data-table td,.data-table th{border-bottom:1px solid var(--border)}.data-table td{padding:11px 12px;color:var(--text);vertical-align:middle}.data-table tr:last-child td{border-bottom:none}.data-table tbody tr:hover td{background:var(--card-hover);cursor:pointer}.form-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px}@media (max-width:540px){.form-grid{grid-template-columns:1fr}.app-modal-overlay{padding:0!important;align-items:flex-end!important}.app-modal-content{border-radius:18px 18px 0 0!important;max-width:100%!important;max-height:90vh;overflow-y:auto;padding:20px 16px!important}}@media (max-width:768px){button:not(.app-sidebar button):not([style*=minHeight]){min-height:44px}.btn-icon-only{min-height:unset!important}}.filter-tabs-scroll,.table-scroll-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.filter-tabs-scroll{scrollbar-width:none}.filter-tabs-scroll::-webkit-scrollbar{display:none}.stat-grid-2up{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));grid-gap:12px;gap:12px}@media (max-width:480px){.stat-grid-2up{grid-template-columns:repeat(2,1fr)}}.app-header,.app-header-title{min-width:0;overflow:hidden}.app-header-title{text-overflow:ellipsis;white-space:nowrap}@media (max-width:540px){.emergency-overlay-content{padding:20px 16px!important;border-radius:18px 18px 0 0!important}}