@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";
:root{--brand-green:#1a7a4c;--brand-green-dark:#15633d;--brand-navy:#1e3a5f;--bg-color:#f4f6f4;--bg-gradient:none;--bg-primary:#f4f6f4;--bg-secondary:#eef1ee;--bg-elevated:#fff;--bg-card:#fff;--panel-bg:#fff;--card-bg:#fff;--glass-bg:#fff;--menu-bg:#fff;--sidebar-bg:#edf3ef;--sidebar-border:#d7e3db;--nav-active-bg:#1a7a4c21;--nav-active-color:#14512f;--input-bg:#fff;--hover-bg:#1e3a5f0f;--app-bg-image:none;--text-primary:#1f2a28;--text-color:#1f2a28;--text-secondary:#5b6560;--text-muted:#8a938f;--accent-color:#1a7a4c;--accent-primary:#1a7a4c;--accent-hover:#15633d;--accent-glow:#1a7a4c33;--primary-color:#1a7a4c;--primary-color-alpha:#1a7a4c1f;--secondary-color:#1e3a5f;--info-color:#12558c;--danger-color:#dc2626;--success-color:#15803d;--warning-color:#b45309;--border-color:#dde5df;--glass-border:#e5eae5;--header-gradient:#1e3a5f;--radius-panel:10px;--radius-control:8px;--font-inter:"Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif}[data-theme=dark]{--bg-color:#030712;--bg-gradient:radial-gradient(circle at top right, #1e1b4b, #030712 50%), radial-gradient(circle at bottom left, #0f172a, #030712 50%);--bg-primary:#030712;--bg-secondary:#0f172a;--bg-elevated:#0f172a;--bg-card:#11182773;--panel-bg:#11182773;--card-bg:#11182773;--glass-bg:#1118278c;--menu-bg:#0f172a;--sidebar-bg:#030712a6;--sidebar-border:#ffffff14;--nav-active-bg:#6366f126;--nav-active-color:#a5b4fc;--input-bg:#ffffff0d;--hover-bg:#ffffff0d;--text-primary:#f9fafb;--text-color:#f9fafb;--text-secondary:#9ca3af;--text-muted:#6b7280;--accent-color:#6366f1;--accent-primary:#6366f1;--accent-hover:#818cf8;--accent-glow:#6366f166;--primary-color:#6366f1;--primary-color-alpha:#6366f126;--secondary-color:#818cf8;--info-color:#38bdf8;--danger-color:#f43f5e;--success-color:#10b981;--border-color:#ffffff14;--glass-border:#ffffff0d;--header-gradient:linear-gradient(to right, #fff, #9ca3af)}[data-theme=light-hospital]{--bg-color:#f8fafc;--bg-gradient:none;--panel-bg:#fff;--card-bg:#fff;--glass-bg:#fff;--text-primary:#0f172a;--text-color:#0f172a;--text-secondary:#475569;--accent-color:#0e7490;--accent-primary:#0e7490;--accent-hover:#155e75;--accent-glow:#0e749033;--primary-color:#0e7490;--primary-color-alpha:#0e74901f;--secondary-color:#1e3a5f;--sidebar-bg:#fff;--input-bg:#fff;--hover-bg:#0e749014;--border-color:#e2e8f0;--glass-border:#e2e8f0;--header-gradient:#0f172a}[data-theme=light-clinical]{--bg-color:#f1f5f9;--bg-gradient:none;--panel-bg:#fff;--card-bg:#fff;--glass-bg:#fff;--text-primary:#1e293b;--text-color:#1e293b;--text-secondary:#64748b;--accent-color:#1d4ed8;--accent-primary:#1d4ed8;--accent-hover:#1e40af;--accent-glow:#1d4ed833;--primary-color:#1d4ed8;--primary-color-alpha:#1d4ed81f;--secondary-color:#1e3a5f;--sidebar-bg:#fff;--input-bg:#fff;--hover-bg:#1d4ed814;--border-color:#e2e8f0;--glass-border:#e2e8f0;--header-gradient:#1e293b}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-inter);background-color:var(--bg-color);background-image:var(--bg-gradient);color:var(--text-primary);-webkit-font-smoothing:antialiased;background-position:50%;background-size:cover;background-attachment:fixed;flex-direction:column;min-height:100vh;display:flex}h1,h2,h3,h4,h5,h6{font-family:var(--font-inter);letter-spacing:-.01em}.glass-panel{background:var(--panel-bg);border:1px solid var(--border-color);border-radius:var(--radius-panel);padding:24px;transition:box-shadow .2s;box-shadow:0 1px 2px #1018280a,0 1px 3px #1018280f}.glass-panel:hover{box-shadow:0 2px 6px #10182814,0 4px 12px #1018280f}[data-theme=dark] .glass-panel{-webkit-backdrop-filter:blur(24px);border:1px solid var(--glass-border);border-top:1px solid #ffffff1a;border-left:1px solid #ffffff14;border-radius:20px;box-shadow:0 8px 32px #0003,inset 0 0 0 1px #ffffff05}[data-theme=dark] .glass-panel:hover{transform:translateY(-2px);box-shadow:0 12px 40px #0000004d,inset 0 0 0 1px #ffffff0d}.layout-container{height:100vh;display:flex;position:relative;overflow:hidden}.mobile-backdrop{z-index:40;background:#0f172a73;transition:opacity .3s;display:none;position:absolute;inset:0}.sidebar-wrapper{border-right:1px solid var(--sidebar-border);background:var(--sidebar-bg);z-index:50;flex-shrink:0;width:280px;transition:all .3s cubic-bezier(.4,0,.2,1);overflow:hidden}[data-theme=dark] .sidebar-wrapper{-webkit-backdrop-filter:blur(20px);box-shadow:4px 0 24px #0000001a}.layout-container.sidebar-closed .sidebar-wrapper{width:0;box-shadow:none;border-right:none}.sidebar{flex-direction:column;width:280px;height:100%;padding:24px 20px;display:flex}.sidebar nav{flex:1;margin-right:-8px;padding-right:8px;overflow:hidden auto}.sidebar nav::-webkit-scrollbar{width:6px}.sidebar nav::-webkit-scrollbar-track{background:0 0}.sidebar nav::-webkit-scrollbar-thumb{background:#1e3a5f2e;border-radius:3px}.sidebar nav::-webkit-scrollbar-thumb:hover{background:#1e3a5f52}[data-theme=dark] .sidebar nav::-webkit-scrollbar-thumb{background:#ffffff1a}[data-theme=dark] .sidebar nav::-webkit-scrollbar-thumb:hover{background:#fff3}.sidebar-logo{font-family:var(--font-inter);color:var(--brand-navy);letter-spacing:-.01em;align-items:center;gap:12px;margin-bottom:36px;font-size:22px;font-weight:700;display:flex}.sidebar-logo svg{color:var(--accent-color)}[data-theme=dark] .sidebar-logo{color:#fff;text-shadow:0 0 20px var(--accent-glow)}[data-theme=dark] .sidebar-logo svg{filter:drop-shadow(0 0 8px var(--accent-glow))}.nav-links{flex-direction:column;gap:6px;list-style:none;display:flex}.nav-link,.nav-summary{border-radius:var(--radius-control);color:var(--text-secondary);align-items:center;gap:12px;padding:10px 14px;font-weight:500;text-decoration:none;transition:background .15s,color .15s;display:flex;position:relative;overflow:hidden}.nav-link:hover,.nav-summary:hover{color:var(--brand-navy);background:var(--hover-bg)}.nav-link:hover svg,.nav-summary:hover svg{color:var(--accent-color)}[data-theme=dark] .nav-link:hover,[data-theme=dark] .nav-summary:hover{color:var(--text-primary);transform:translate(4px)}[data-theme=dark] .nav-link:hover svg,[data-theme=dark] .nav-summary:hover svg{filter:drop-shadow(0 0 6px var(--accent-glow))}.nav-link.active,.nav-summary.active{background:var(--nav-active-bg);box-shadow:inset 3px 0 0 0 var(--accent-color);font-weight:700;color:var(--nav-active-color)!important}.nav-link.active svg,.nav-summary.active svg{color:var(--accent-color)}details.nav-dropdown .nav-link.active{opacity:1}details.nav-dropdown:has(.nav-link.active)>summary{color:var(--nav-active-color);font-weight:700}[data-theme=dark] .nav-link.active svg,[data-theme=dark] .nav-summary.active svg{filter:drop-shadow(0 0 6px var(--accent-glow))}details.nav-dropdown summary{list-style:none}details.nav-dropdown summary::-webkit-details-marker{display:none}details.nav-dropdown[open] summary .dropdown-icon{transform:rotate(180deg)}details.nav-dropdown ul{border-left:1px solid var(--border-color);margin-top:4px!important;margin-bottom:10px!important;margin-left:22px!important;padding-left:16px!important}details.nav-dropdown .nav-link{opacity:.85;padding:7px 12px;font-size:13px;font-weight:400}details.nav-dropdown .nav-link:hover{opacity:1}details.nav-dropdown .nav-link svg{width:16px!important;height:16px!important}.main-content{scroll-behavior:smooth;flex-direction:column;flex:1;padding:0;display:flex;overflow-y:auto}.main-content::-webkit-scrollbar{width:8px}.main-content::-webkit-scrollbar-track{background:0 0}.main-content::-webkit-scrollbar-thumb{background:#1e3a5f2e;border-radius:4px}.main-content::-webkit-scrollbar-thumb:hover{background:#1e3a5f52}[data-theme=dark] .main-content::-webkit-scrollbar-thumb{background:#ffffff1a}.content-padding{flex:1;width:100%;max-width:1600px;margin:0 auto;padding:36px 40px}.header{margin-bottom:32px;position:relative}.header h1{color:var(--header-gradient);margin-bottom:6px;font-size:30px;font-weight:700}[data-theme=dark] .header h1{background:var(--header-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.header p{color:var(--text-secondary);font-size:15px}.card-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:24px;display:grid}.report-grid{grid-template-columns:minmax(0,1.7fr) minmax(300px,1fr);align-items:start;gap:20px;display:grid}.report-grid>.report-grid-side{position:sticky;top:20px}@media (max-width:1100px){.report-grid{grid-template-columns:1fr}.report-grid>.report-grid-side{position:static}}.form-group{flex-direction:column;gap:8px;margin-bottom:16px;display:flex}.form-group label{color:var(--text-secondary);font-size:13px;font-weight:500}.input{border-radius:var(--radius-control);border:1px solid var(--border-color);background:var(--input-bg);width:100%;color:var(--text-primary);font-family:var(--font-inter);outline:none;padding:10px 14px;font-size:14px;transition:border-color .15s,box-shadow .15s}[data-theme=dark] .input{background:#0003}.input:focus{border-color:var(--accent-color);box-shadow:0 0 0 3px var(--accent-glow)}.input::placeholder{color:var(--text-muted)}table{border-collapse:separate;border-spacing:0;width:100%;min-width:600px}th,td{text-align:left;border-bottom:1px solid var(--border-color);padding:14px 16px}th{font-family:var(--font-inter);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.6px;background:var(--bg-secondary);font-size:12px;font-weight:600}[data-theme=dark] th{background:0 0}.glass-panel{overflow-x:auto}.btn{background:var(--accent-color);color:#fff;border-radius:var(--radius-control);font-family:var(--font-inter);cursor:pointer;border:none;justify-content:center;align-items:center;gap:8px;padding:10px 20px;font-size:14px;font-weight:600;transition:background .15s,box-shadow .15s;display:inline-flex}.btn:hover{background:var(--accent-hover)}.btn:active{transform:translateY(1px)}[data-theme=dark] .btn{background:linear-gradient(135deg, var(--accent-color), var(--accent-hover));box-shadow:0 4px 12px var(--accent-glow);border-radius:12px}[data-theme=dark] .btn:hover{box-shadow:0 6px 20px var(--accent-glow);transform:translateY(-2px)}.btn-secondary{background:var(--bg-card);border:1px solid var(--border-color);color:var(--text-primary);box-shadow:none}.btn-secondary:hover{background:var(--hover-bg)}[data-theme=dark] .btn-secondary{border:1px solid var(--glass-border);background:#ffffff08}[data-theme=dark] .btn-secondary:hover{background:#ffffff14;box-shadow:0 4px 12px #0003}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-spin{animation:1s linear infinite spin}@media (max-width:768px){.sidebar-wrapper{height:100%;position:absolute;transform:translate(0)}.layout-container.sidebar-closed .sidebar-wrapper{width:280px;transform:translate(-100%)}.layout-container.sidebar-open .mobile-backdrop{opacity:1;display:block}.content-padding{padding:20px}.header h1{font-size:24px}.card-grid{grid-template-columns:1fr}}select option,select optgroup,.input option,.input optgroup{color:#1f2a28;background-color:#fff}[data-theme=dark] select option,[data-theme=dark] select optgroup,[data-theme=dark] .input option,[data-theme=dark] .input optgroup{color:#f9fafb!important;background-color:#111827!important}@media print{html,body{margin:0;padding:0;color:#000!important;background:#fff!important;height:auto!important;overflow:visible!important}aside,nav,header,.mobile-backdrop{display:none!important}.layout-container,.main-content,.content-padding{height:auto!important;display:block!important;overflow:visible!important}main,div{height:auto!important;overflow:visible!important}.no-print{display:none!important}.print-show{display:block!important}.print-only{z-index:9999!important;background:#fff!important;width:100%!important;display:block!important;position:absolute!important;top:0!important;left:0!important}@page{size:A4 landscape;margin:10mm}table.print-report{border-collapse:collapse;color:#000;width:100%;font-family:Arial,sans-serif;font-size:8px}table.print-report th,table.print-report td{text-align:center;word-wrap:break-word;word-break:break-word;white-space:normal;border:1px solid #000;padding:2px}table.print-report th{font-size:6.5px}.vertical-text{writing-mode:vertical-rl;white-space:nowrap;text-align:left;vertical-align:middle;height:180px;transform:rotate(180deg);padding-top:4px!important;padding-bottom:4px!important}}@media screen{.print-only{display:none!important}}.recharts-legend-item-text,.recharts-cartesian-axis-tick-value tspan{fill:var(--text-secondary);color:var(--text-primary)!important}[data-theme=dark] .recharts-legend-item-text{color:var(--text-primary)!important}
