:root{--bg-color:#f4f8f5;--surface-color:#fff;--text-primary:#0f172a;--text-secondary:#475569;--border-color:#e2e8f0;--primary:#009c48;--primary-hover:#007236;--accent-gold:#f7b500;--success:#009c48;--warning:#f7b500;--danger:#ef4444;--glass-bg:#ffffffd9;--glass-border:#009c4826;--glass-shadow:0 4px 30px #009c4814;--glass-blur:blur(12px)}[data-theme=dark]{--bg-color:#0b1912;--surface-color:#13271d;--text-primary:#f8fafc;--text-secondary:#94a3b8;--border-color:#1e3a2b;--primary:#009c48;--primary-hover:#00b855;--accent-gold:#f7b500;--glass-bg:#13271dbf;--glass-border:#009c4833;--glass-shadow:0 4px 30px #0006}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg-color:#0b1912;--surface-color:#13271d;--text-primary:#f8fafc;--text-secondary:#94a3b8;--border-color:#1e3a2b;--primary:#009c48;--primary-hover:#00b855;--accent-gold:#f7b500;--glass-bg:#13271dbf;--glass-border:#009c4833;--glass-shadow:0 4px 30px #0006}}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-color);color:var(--text-primary);min-height:100vh;font-family:Inter,system-ui,-apple-system,sans-serif;line-height:1.5;transition:background-color .3s,color .3s}.glass-panel{background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);border-radius:16px;padding:24px}.container{max-width:1200px;margin:0 auto;padding:16px}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-2{gap:8px}.gap-4{gap:16px}.gap-6{gap:24px}button,.btn,a.btn{cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:10px 20px;font-size:1rem;font-weight:600;transition:opacity .2s,filter .2s,transform .2s,background-color .2s;display:inline-flex}button:hover,.btn:hover,a.btn:hover{filter:brightness(.92);opacity:.82!important}.btn:active,button:active{transform:scale(.98)}.btn-primary{background-color:var(--primary);color:#fff}.btn-primary:hover{background-color:var(--primary);opacity:.82!important}.btn-danger{background-color:var(--danger);color:#fff}.btn-danger:hover{background-color:var(--danger);opacity:.82!important}.btn-ghost{color:var(--text-primary);border:1px solid var(--border-color);background-color:#0000}.btn-ghost:hover{background-color:var(--surface-color);opacity:.82!important}.btn-outline{color:var(--text-primary);border:1px solid var(--border-color);background-color:#0000}.btn-outline:hover{background-color:var(--surface-color);opacity:.82!important}.btn-block{width:100%}.form-group{flex-direction:column;gap:8px;margin-bottom:16px;display:flex}.form-label{color:var(--text-secondary);font-size:.9rem;font-weight:500}.form-control{border:1px solid var(--border-color);background-color:var(--surface-color);color:var(--text-primary);border-radius:8px;padding:12px;font-size:1rem;transition:border-color .2s}.form-control:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 2px #3b82f633}.card{background-color:var(--surface-color);border:1px solid var(--border-color);border-radius:12px;padding:20px;box-shadow:0 1px 3px #0000001a}.text-center{text-align:center}.text-xl{font-size:1.25rem;font-weight:700}.text-2xl{font-size:1.5rem;font-weight:700}.text-3xl{font-size:1.875rem;font-weight:800}.text-muted{color:var(--text-secondary)}.text-danger{color:var(--danger)}.text-success{color:var(--success)}.grid{display:grid}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.grid-cols-4{grid-template-columns:repeat(4,1fr)}.kpi-grid-1x4{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:14px!important;width:100%!important;margin-bottom:28px!important;display:grid!important}@media (width<=500px){.kpi-grid-1x4{gap:8px!important}}@media (width<=768px){.grid-cols-2,.grid-cols-3,.grid-cols-4{grid-template-columns:1fr}}html{scroll-behavior:smooth}.fade-in-up{opacity:0;animation:.8s cubic-bezier(.16,1,.3,1) forwards fadeInUp;transform:translateY(20px)}@keyframes fadeInUp{to{opacity:1;transform:translateY(0)}}.gradient-text{background:linear-gradient(135deg,#009c48 0%,#f7b500 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.landing-section{flex-direction:column;justify-content:center;min-height:100vh;padding:80px 20px;display:flex}.hover-lift{transition:transform .3s cubic-bezier(.16,1,.3,1),box-shadow .3s}.hover-lift:hover{transform:translateY(-5px);box-shadow:0 10px 40px #0000001a}[data-theme=dark] .hover-lift:hover{box-shadow:0 10px 40px #00000080}.theme-toggle-container{z-index:1000;transition:all .3s;position:fixed;top:14px;right:20px}.btn-theme-toggle{background:var(--surface-color);border:1px solid var(--border-color);color:var(--text-primary);cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:20px;align-items:center;gap:8px;padding:8px 14px;font-size:.85rem;font-weight:700;transition:transform .2s,box-shadow .2s,background-color .2s;display:inline-flex;box-shadow:0 4px 12px #00000014}.btn-theme-toggle:hover{transform:translateY(-2px);box-shadow:0 6px 16px #009c482e}.theme-toggle-label{display:inline-block}.show-mobile{display:none!important}.table-responsive{-webkit-overflow-scrolling:touch;border-radius:8px;width:100%;margin-bottom:16px;overflow-x:auto}@media (width<=768px){.theme-toggle-container{top:14px;right:14px}.btn-theme-toggle{border-radius:50%;padding:6px 10px}.theme-toggle-label{display:none}.hidden-mobile{display:none!important}.show-mobile{display:flex!important}.container{padding:12px}.card{border-radius:10px;padding:14px}.header-flex-mobile{flex-direction:column!important;align-items:flex-start!important;gap:12px!important}.header-actions-mobile{flex-wrap:wrap;width:100%;justify-content:flex-start!important}.grid-cols-4,.grid-cols-3{grid-template-columns:repeat(2,1fr)!important;gap:10px!important}.modal-card-mobile{width:95vw!important;max-height:90vh!important;padding:16px!important}.mobile-menu-overlay{background:var(--bg-color);z-index:40;flex-direction:column;gap:24px;padding:80px 24px 24px;animation:.3s fadeIn;display:flex;position:fixed;inset:0}}@media (width<=480px){.grid-cols-4,.grid-cols-3,.grid-cols-2{grid-template-columns:1fr!important}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}
