:root{--bg-page:#f8fafc;--bg-page-secondary:#f1f5f9;--bg-page-gradient:linear-gradient(180deg,#f8fafc,#f1f5f9);--glass-bg:rgba(255,255,255,0.80);--glass-bg-hover:rgba(255,255,255,0.95);--glass-bg-strong:rgba(255,255,255,0.95);--glass-border:#e2e8f0;--glass-border-strong:#cbd5e1;--sidebar-bg:rgba(255,255,255,0.85);--sidebar-border:#e2e8f0;--header-bg:rgba(255,255,255,0.95);--header-border:rgba(226,232,240,0.5);--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#94a3b8;--text-on-gradient:#ffffff;--input-bg:#ffffff;--input-border:#e2e8f0;--input-focus-ring:rgba(16,185,129,0.5);--shadow-sm:0 1px 2px rgba(0,0,0,0.05);--shadow-md:0 4px 6px -1px rgba(0,0,0,0.05),0 2px 4px -2px rgba(0,0,0,0.05);--shadow-lg:0 10px 15px -3px rgba(0,0,0,0.08),0 4px 6px -4px rgba(0,0,0,0.05);--shadow-xl:0 20px 25px -5px rgba(0,0,0,0.1),0 8px 10px -6px rgba(0,0,0,0.05);--shadow-glow:none;--accent-primary:#10b981;--accent-primary-hover:#059669;--accent-primary-light:#d1fae5;--accent-ai-start:#8b5cf6;--accent-ai-end:#ec4899;--accent-ai-bg:rgba(139,92,246,0.1);--pillar-e:#10b981;--pillar-e-bg:rgba(16,185,129,0.1);--pillar-s:#3b82f6;--pillar-s-bg:rgba(59,130,246,0.1);--pillar-g:#8b5cf6;--pillar-g-bg:rgba(139,92,246,0.1);--status-success:#10b981;--status-warning:#f59e0b;--status-error:#ef4444;--status-info:#3b82f6;--gradient-start:#0682C7;--gradient-end:#11C9A1;--gradient-mid:#0A9AB8;--backdrop-blur:blur(20px);--backdrop-blur-strong:blur(32px);--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-2xl:24px;--spacing-xs:4px;--spacing-sm:8px;--spacing-md:16px;--spacing-lg:24px;--spacing-xl:32px;--transition-fast:150ms ease-out;--transition-base:200ms ease-out;--transition-slow:300ms ease-out}html.dark{color-scheme:dark;--bg-page:#0f172a;--bg-page-secondary:#1e293b;--bg-page-gradient:linear-gradient(135deg,#0f172a,#1e293b 50%,#0f172a);--glass-bg:rgba(30,41,59,0.50);--glass-bg-hover:rgba(51,65,85,0.50);--glass-bg-strong:rgba(30,41,59,0.80);--glass-border:rgba(71,85,105,0.50);--glass-border-strong:rgba(100,116,139,0.50);--sidebar-bg:rgba(15,23,42,0.90);--sidebar-border:rgba(51,65,85,0.50);--header-bg:rgba(15,23,42,0.95);--header-border:rgba(51,65,85,0.50);--text-primary:#f1f5f9;--text-secondary:#cbd5e1;--text-muted:#64748b;--input-bg:rgba(30,41,59,0.50);--input-border:rgba(71,85,105,0.50);--shadow-sm:0 1px 2px rgba(0,0,0,0.3);--shadow-md:0 4px 6px -1px rgba(0,0,0,0.3);--shadow-lg:0 10px 15px -3px rgba(0,0,0,0.4);--shadow-xl:0 20px 25px -5px rgba(0,0,0,0.5);--shadow-glow:0 0 30px rgba(16,185,129,0.15);--pillar-e-bg:rgba(16,185,129,0.15);--pillar-s-bg:rgba(59,130,246,0.15);--pillar-g-bg:rgba(139,92,246,0.15);--accent-ai-bg:rgba(139,92,246,0.15);--accent-primary-light:rgba(16,185,129,0.2)}body{background:var(--bg-page-gradient);background-attachment:fixed;min-height:100vh;position:relative;color:var(--text-primary);transition:background .3s ease-out,color .2s ease-out}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;opacity:0;background:radial-gradient(ellipse 600px 400px at 20% 20%,rgba(16,185,129,.08) 0,transparent 70%),radial-gradient(ellipse 500px 500px at 80% 80%,rgba(59,130,246,.06) 0,transparent 70%);transition:opacity .3s ease-out}html.dark body:before{opacity:1;background:radial-gradient(ellipse 800px 600px at 10% 10%,rgba(16,185,129,.08) 0,transparent 60%),radial-gradient(ellipse 600px 600px at 90% 90%,rgba(139,92,246,.06) 0,transparent 60%)}.glass-card{background:var(--glass-bg);backdrop-filter:var(--backdrop-blur);-webkit-backdrop-filter:var(--backdrop-blur);border:1px solid var(--glass-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);transition:all var(--transition-base)}.glass-card-strong{background:var(--glass-bg-strong);backdrop-filter:var(--backdrop-blur-strong);-webkit-backdrop-filter:var(--backdrop-blur-strong);border:1px solid var(--glass-border-strong)}.glass-card:hover{background:var(--glass-bg-hover);box-shadow:var(--shadow-xl),var(--shadow-glow);transform:translateY(-1px)}.glass-button{background:var(--glass-bg);backdrop-filter:var(--backdrop-blur);border:1px solid var(--glass-border);border-radius:var(--radius-lg);padding:10px 20px;color:var(--text-primary);font-weight:600;font-size:14px;transition:all var(--transition-fast);cursor:pointer;box-shadow:var(--shadow-md);display:inline-flex;align-items:center;justify-content:center;gap:8px}.glass-button:hover{background:var(--glass-bg-hover);transform:scale(1.02);box-shadow:var(--shadow-lg)}.glass-button:active{transform:scale(.98)}.glass-button-gradient{background:linear-gradient(135deg,var(--accent-primary) 0,#14b8a6 100%);color:var(--text-on-gradient);border:none;box-shadow:var(--shadow-lg),0 0 20px rgba(16,185,129,.3)}.glass-button-gradient:hover{box-shadow:var(--shadow-xl),0 0 25px rgba(16,185,129,.4);transform:translateY(-2px) scale(1.02)}.glass-button-compact{background:var(--glass-bg);backdrop-filter:var(--backdrop-blur);border:1px solid var(--glass-border);border-radius:var(--radius-xl);padding:6px 10px;color:var(--text-primary);font-weight:600;font-size:12px;transition:all var(--transition-fast);cursor:pointer;box-shadow:var(--shadow-sm);display:inline-flex;align-items:center;justify-content:center;gap:4px}.glass-button-compact:hover{background:var(--glass-bg-hover);transform:scale(1.05);box-shadow:var(--shadow-md)}.glass-button-compact:active{transform:scale(.95)}.glass-sidebar{border-right:1px solid var(--sidebar-border)}.glass-sidebar,.glass-sidebar-right{background:var(--sidebar-bg);backdrop-filter:var(--backdrop-blur-strong);-webkit-backdrop-filter:var(--backdrop-blur-strong);box-shadow:var(--shadow-lg)}.glass-sidebar-right{border-right:none;border-left:1px solid var(--sidebar-border)}.glass-nav{background:var(--header-bg);backdrop-filter:var(--backdrop-blur-strong);-webkit-backdrop-filter:var(--backdrop-blur-strong);border-bottom:1px solid var(--header-border);box-shadow:var(--shadow-md)}.active-gradient{background:linear-gradient(135deg,var(--gradient-start) 0,var(--gradient-end) 100%);color:var(--text-on-gradient);box-shadow:var(--shadow-lg),var(--shadow-glow-cyan)}.active-gradient:hover{box-shadow:var(--shadow-xl),var(--shadow-glow-teal)}.gradient-text,.progress-gradient{background:linear-gradient(135deg,var(--gradient-start) 0,var(--gradient-end) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.gradient-border{border:2px solid transparent;background:linear-gradient(var(--glass-bg-light),var(--glass-bg-light)) padding-box,linear-gradient(135deg,var(--gradient-start) 0,var(--gradient-end) 100%) border-box}.glass-card-subtle{background:var(--glass-bg-medium);backdrop-filter:var(--backdrop-blur);-webkit-backdrop-filter:var(--backdrop-blur);border:1px solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);transition:all var(--transition-base)}.glass-card-subtle:hover{background:var(--glass-bg-strong);box-shadow:var(--shadow-lg)}@media (max-width:768px){:root{--backdrop-blur:blur(12px);--backdrop-blur-strong:blur(20px)}.glass-card{border-radius:var(--radius-lg)}}.card-hover{transition:transform .2s cubic-bezier(.33,1,.68,1),box-shadow .2s cubic-bezier(.33,1,.68,1)}.card-hover:hover{transform:translateY(-4px) scale(1.01);box-shadow:0 20px 40px -12px rgba(0,0,0,.15),0 8px 16px -8px rgba(0,0,0,.1)}.card-hover:active{transform:scale(.98);transition-duration:.1s}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInScale{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.animate-fade-in{animation:fadeIn .3s cubic-bezier(.33,1,.68,1) forwards}.animate-fade-in-up{animation:fadeInUp .3s cubic-bezier(.33,1,.68,1) forwards}.animate-fade-in-scale{animation:fadeInScale .3s cubic-bezier(.33,1,.68,1) forwards}.stagger-1{animation-delay:.1s}.stagger-2{animation-delay:.2s}.stagger-3{animation-delay:.3s}.stagger-4{animation-delay:.4s}.stagger-5{animation-delay:.5s}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton{background:linear-gradient(90deg,rgb(var(--skeleton-base,226 232 240)) 25%,rgb(var(--skeleton-highlight,241 245 249)) 50%,rgb(var(--skeleton-base,226 232 240)) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:.5rem}.dark .skeleton{--skeleton-base:51 65 85;--skeleton-highlight:71 85 105}@keyframes progressRing{0%{stroke-dashoffset:var(--circumference,440)}to{stroke-dashoffset:var(--progress-offset,0)}}.progress-ring-circle{animation:progressRing 1.5s cubic-bezier(.25,1,.5,1) forwards;transform-origin:center;transform:rotate(-90deg)}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.05)}}@keyframes urgentPulse{0%,to{box-shadow:0 0 0 0 rgba(239,68,68,0)}50%{box-shadow:0 0 0 8px rgba(239,68,68,.15)}}.animate-pulse-soft{animation:pulse 2s ease-in-out infinite}.animate-urgent-pulse{animation:urgentPulse 2s ease-in-out infinite}.btn-hover{transition:transform .15s ease,box-shadow .15s ease,background-color .15s ease}.btn-hover:hover{transform:translateY(-1px)}.btn-hover:active{transform:scale(.98);transition-duration:.1s}@keyframes slideInRight{0%{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}@keyframes slideInBottom{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.animate-slide-in-right{animation:slideInRight .3s cubic-bezier(.33,1,.68,1) forwards}.animate-slide-in-bottom{animation:slideInBottom .3s cubic-bezier(.33,1,.68,1) forwards}@keyframes gradientShift{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}.animate-gradient{background-size:200% 200%;animation:gradientShift 3s ease infinite}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.skeleton{animation:none;background:rgb(var(--skeleton-base,226 232 240))}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.animate-spin-slow{animation:spin 2s linear infinite}@keyframes dotPulse{0%,80%,to{transform:scale(.6);opacity:.5}40%{transform:scale(1);opacity:1}}.loading-dot{animation:dotPulse 1.4s ease-in-out infinite}.loading-dot:first-child{animation-delay:0s}.loading-dot:nth-child(2){animation-delay:.16s}.loading-dot:nth-child(3){animation-delay:.32s}