:root{--font-family: "Plus Jakarta Sans", "Noto Sans SC", system-ui, -apple-system, sans-serif;--sat: env(safe-area-inset-top, 0px);--sab: env(safe-area-inset-bottom, 0px);--sal: env(safe-area-inset-left, 0px);--sar: env(safe-area-inset-right, 0px);--bg-main: #0F172A;--bg-card: rgba(30, 41, 59, .7);--bg-card-hover: rgba(30, 41, 59, .9);--bg-panel: #1E293B;--bg-panel-header: linear-gradient(135deg, rgba(30, 41, 59, .95) 0%, rgba(15, 23, 42, .95) 100%);--bg-panel-subtle: rgba(15, 23, 42, .6);--bg-item-pill: rgba(255, 255, 255, .05);--bg-item-hover: rgba(255, 255, 255, .1);--bg-login-gradient: radial-gradient(ellipse at 50% 30%, #1E1B4B 0%, #0F172A 70%);--bg-input: #1E293B;--input-border: rgba(255, 255, 255, .12);--border-color: rgba(255, 255, 255, .08);--border-highlight: rgba(255, 255, 255, .18);--text-primary: #F8FAFC;--text-secondary: #94A3B8;--text-muted: #64748B;--text-contrast: #FFFFFF;--accent-amber: #F59E0B;--accent-amber-light: #FEF3C7;--accent-indigo: #6366F1;--accent-indigo-hover: #4F46E5;--accent-emerald: #10B981;--accent-rose: #F43F5E;--accent-purple: #8B5CF6;--accent-cyan: #06B6D4;--glass-border: 1px solid rgba(255, 255, 255, .1);--glass-shadow: 0 8px 32px 0 rgba(0, 0, 0, .36);--card-radius: 18px;--btn-radius: 12px;--transition-fast: .2s cubic-bezier(.4, 0, .2, 1);--transition-smooth: .3s cubic-bezier(.4, 0, .2, 1)}[data-theme=light]{--bg-main: #F8FAFC;--bg-card: rgba(255, 255, 255, .95);--bg-card-hover: #FFFFFF;--bg-panel: #FFFFFF;--bg-panel-header: linear-gradient(135deg, #FFFFFF 0%, #F1F5F9 100%);--bg-panel-subtle: #F1F5F9;--bg-item-pill: rgba(0, 0, 0, .04);--bg-item-hover: rgba(0, 0, 0, .07);--bg-login-gradient: radial-gradient(ellipse at 50% 30%, #EEF2FF 0%, #F8FAFC 70%);--bg-input: #FFFFFF;--input-border: #CBD5E1;--border-color: rgba(0, 0, 0, .08);--border-highlight: rgba(99, 102, 241, .4);--text-primary: #0F172A;--text-secondary: #475569;--text-muted: #64748B;--text-contrast: #0F172A;--glass-border: 1px solid rgba(0, 0, 0, .08);--glass-shadow: 0 8px 30px rgba(15, 23, 42, .06)}[data-theme=light] body{background-color:#f8fafc;background-image:radial-gradient(circle at 15% 20%,rgba(99,102,241,.06) 0%,transparent 40%),radial-gradient(circle at 85% 75%,rgba(245,158,11,.06) 0%,transparent 45%)}[data-theme=light] .modal-content{background:#fff!important;color:#0f172a!important;border:1px solid rgba(0,0,0,.1)!important;box-shadow:0 25px 60px #00000026!important}[data-theme=light] .glass-card{background:#fff!important;border:1px solid rgba(0,0,0,.07)!important;box-shadow:0 4px 20px #0f172a0d!important}[data-theme=light] h1,[data-theme=light] h2,[data-theme=light] h3,[data-theme=light] h4,[data-theme=light] h5,[data-theme=light] h6{color:#0f172a!important}[data-theme=light] input,[data-theme=light] select,[data-theme=light] textarea{color:#0f172a!important;background-color:#fff!important;border:1px solid #CBD5E1!important}[data-theme=light] input::placeholder,[data-theme=light] textarea::placeholder{color:#94a3b8!important}[data-theme=light] input:focus,[data-theme=light] select:focus,[data-theme=light] textarea:focus{border-color:#6366f1!important;box-shadow:0 0 0 3px #6366f126!important}[data-theme=light] .btn-secondary{background:#f1f5f9!important;color:#1e293b!important;border:1px solid #E2E8F0!important}[data-theme=light] .btn-secondary:hover{background:#e2e8f0!important;color:#0f172a!important}[data-theme=light] .btn-icon{background:#f1f5f9!important;color:#475569!important;border:1px solid #E2E8F0!important}[data-theme=light] .btn-icon:hover{background:#e2e8f0!important;color:#0f172a!important}[data-theme=light] .badge-indigo{background:#6366f11f!important;color:#4f46e5!important;border:1px solid rgba(99,102,241,.3)!important}[data-theme=light] .badge-amber{background:#f59e0b26!important;color:#b45309!important;border:1px solid rgba(245,158,11,.35)!important}[data-theme=light] .badge-emerald{background:#10b98126!important;color:#047857!important;border:1px solid rgba(16,185,129,.35)!important}[data-theme=light] .badge-rose{background:#f43f5e1f!important;color:#be123c!important;border:1px solid rgba(244,63,94,.3)!important}[data-theme=light] .progress-track{background:#e2e8f0!important}*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}html{-webkit-text-size-adjust:100%}body{font-family:var(--font-family);background-color:var(--bg-main);color:var(--text-primary);min-height:100vh;min-height:100dvh;line-height:1.6;overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-image:radial-gradient(circle at 15% 20%,rgba(99,102,241,.15) 0%,transparent 40%),radial-gradient(circle at 85% 75%,rgba(245,158,11,.12) 0%,transparent 45%);background-attachment:fixed;padding-top:var(--sat);padding-bottom:var(--sab);padding-left:var(--sal);padding-right:var(--sar)}button{font-family:inherit;cursor:pointer;border:none;outline:none;touch-action:manipulation;transition:all var(--transition-fast)}input,select,textarea{font-family:inherit;outline:none}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#94a3b840;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#94a3b873}.glass-card{background:var(--bg-card);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:var(--glass-border);box-shadow:var(--glass-shadow);border-radius:var(--card-radius);padding:24px;transition:transform var(--transition-smooth),box-shadow var(--transition-smooth),border-color var(--transition-smooth)}.glass-card:hover{border-color:var(--border-highlight)}.hover-lift:hover{transform:translateY(-4px)}.app-container{max-width:1320px;margin:0 auto;padding:20px 24px 60px}.btn-primary{background:linear-gradient(135deg,#6366f1,#4f46e5);color:#fff;padding:10px 20px;border-radius:var(--btn-radius);font-weight:600;display:inline-flex;align-items:center;gap:8px;box-shadow:0 4px 14px #4f46e559}.btn-primary:hover{background:linear-gradient(135deg,#4f46e5,#4338ca);box-shadow:0 6px 20px #4f46e580;transform:translateY(-1px)}.btn-secondary{background:#ffffff12;color:var(--text-primary);border:var(--glass-border);padding:10px 18px;border-radius:var(--btn-radius);font-weight:600;display:inline-flex;align-items:center;gap:8px}.btn-secondary:hover{background:#ffffff24;color:#fff}.btn-success{background:linear-gradient(135deg,#10b981,#059669);color:#fff;padding:8px 16px;border-radius:var(--btn-radius);font-weight:600;display:inline-flex;align-items:center;gap:6px;box-shadow:0 4px 14px #10b9814d}.btn-success:hover{box-shadow:0 6px 18px #10b98173;transform:translateY(-1px)}.btn-icon{width:38px;height:38px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;background:#ffffff0f;color:var(--text-primary);border:var(--glass-border)}.btn-icon:hover{background:#ffffff26}.badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:20px;font-size:12px;font-weight:600}.badge-amber{background:#f59e0b26;color:var(--accent-amber);border:1px solid rgba(245,158,11,.3)}.badge-indigo{background:#6366f126;color:#818cf8;border:1px solid rgba(99,102,241,.3)}.badge-emerald{background:#10b98126;color:#34d399;border:1px solid rgba(16,185,129,.3)}.badge-rose{background:#f43f5e26;color:#fb7185;border:1px solid rgba(244,63,94,.3)}.progress-track{width:100%;height:10px;background:#ffffff14;border-radius:10px;overflow:hidden;position:relative}.progress-fill{height:100%;border-radius:10px;transition:width .6s cubic-bezier(.4,0,.2,1);background:linear-gradient(90deg,#6366f1,#10b981)}.progress-fill-amber{background:linear-gradient(90deg,#f59e0b,#fbbf24)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172abf;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;animation:fadeIn .2s ease-out}.modal-content{background:#1e293b;border:var(--glass-border);box-shadow:0 20px 50px #00000080;border-radius:20px;width:100%;max-width:580px;max-height:90vh;max-height:90dvh;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:28px;color:var(--text-primary);animation:slideUp .3s cubic-bezier(.16,1,.3,1)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUpBottom{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}@media(min-width:641px)and (max-width:1194px){.app-container{padding:20px 24px calc(32px + var(--sab, 0px)) 24px!important;max-width:100%}.grid-4,.grid-3,.grid-2{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}@media(orientation:landscape){.grid-4{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}}.modal-overlay{padding:24px;align-items:center;justify-content:center}.modal-content{max-width:600px;max-height:85dvh;border-radius:24px;padding:32px 28px;box-shadow:0 25px 60px -15px #0009}button,input,select,textarea{touch-action:manipulation}.card{transition:transform .15s ease,box-shadow .15s ease}.card:active{transform:scale(.985)}}@media(max-width:640px){.grid-4,.grid-3,.grid-2{grid-template-columns:1fr}.app-container{padding:12px 14px calc(40px + var(--sab, 0px)) 14px!important}input,select,textarea{font-size:16px!important}.overview-main-grid{grid-template-columns:1fr!important}.header-brand-subtitle{display:none!important}.header-brand-title{font-size:16px!important}.header-brand-logo{width:36px!important;height:36px!important;font-size:18px!important}.header-toolbar{gap:8px!important}.header-toolbar>button,.header-toolbar>div{font-size:11px!important}.header-action-btn-text{display:none!important}.modal-overlay{padding:0;align-items:flex-end}.modal-content{max-width:100%;border-radius:24px 24px 0 0;max-height:88dvh;padding:22px 18px calc(24px + var(--sab, 0px)) 18px;animation:slideUpBottom .3s cubic-bezier(.16,1,.3,1)}.modal-actions{padding-bottom:var(--sab, 0px)!important}.mobile-scroll-x{display:flex;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.mobile-scroll-x::-webkit-scrollbar{display:none}}
