@import url("https://fonts.googleapis.com/css2?family=Outfit:wght@400;500;600;700;800;900&display=swap");:root{--bg-primary:#f9fafb;--bg-surface:#fff;--bg-surface-hover:#f3f4f6;--bg-modal:#fff;--text-primary:#111827;--text-secondary:#6b7280;--text-inverse:#fff;--accent-primary:#7c3aed;--accent-hover:#6d28d9;--accent-secondary:#8b5cf6;--accent-light:#f5f3ff;--accent-gradient:linear-gradient(135deg,#7c3aed,#6d28d9);--success:#10b981;--success-light:#ecfdf5;--success-text:#065f46;--danger:#ef4444;--danger-light:#fef2f2;--danger-text:#991b1b;--warning:#f59e0b;--warning-light:#fffbeb;--warning-text:#92400e;--info:#3b82f6;--info-light:#eff6ff;--info-text:#1e40af;--border-color:#e5e7eb;--border-strong:#d1d5db;--shadow-xs:0 1px 2px rgba(0,0,0,.05);--shadow-sm:0 1px 3px rgba(0,0,0,.08),0 1px 2px rgba(0,0,0,.04);--shadow-md:0 4px 8px rgba(0,0,0,.08),0 2px 4px rgba(0,0,0,.04);--shadow-lg:0 12px 24px rgba(0,0,0,.1),0 4px 8px rgba(0,0,0,.05);--radius-sm:8px;--radius:12px;--radius-lg:16px;--radius-xl:20px;--radius-2xl:28px;--radius-full:9999px;--sidebar-width:268px;--page-padding:clamp(1.25rem,3vw,2.25rem);--t:all 150ms ease;--t-spring:all 200ms cubic-bezier(0.34,1.56,0.64,1)}[data-theme=dark]{--bg-primary:#0f172a;--bg-surface:#1e293b;--bg-surface-hover:#334155;--bg-modal:#1e293b;--text-primary:#f8fafc;--text-secondary:#94a3b8;--accent-light:#1e1045;--border-color:#334155;--border-strong:#475569;--success-light:#064e3b;--success-text:#6ee7b7;--danger-light:#450a0a;--danger-text:#fca5a5;--warning-light:#451a03;--warning-text:#fcd34d;--info-light:#0c1a2e;--info-text:#93c5fd;--shadow-xs:0 1px 2px rgba(0,0,0,.4);--shadow-sm:0 1px 3px rgba(0,0,0,.5),0 1px 2px rgba(0,0,0,.3);--shadow-md:0 4px 8px rgba(0,0,0,.5),0 2px 4px rgba(0,0,0,.3);--shadow-lg:0 12px 24px rgba(0,0,0,.6),0 4px 8px rgba(0,0,0,.4)}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px}body{font-family:Outfit,-apple-system,BlinkMacSystemFont,sans-serif;background:var(--bg-primary);color:var(--text-primary);line-height:1.5;overflow-x:hidden}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button{all:unset;cursor:pointer;box-sizing:border-box}button,input,select,textarea{font-family:inherit}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}@keyframes spin{to{transform:rotate(1turn)}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.8)}}@keyframes progress-shimmer{0%{background-position:-300px 0}to{background-position:300px 0}}@keyframes slideInRight{0%{opacity:0;transform:translateX(40px) scale(.95)}to{opacity:1;transform:translateX(0) scale(1)}}@keyframes slideInLeft{0%{opacity:0;transform:translateX(-40px) scale(.95)}to{opacity:1;transform:translateX(0) scale(1)}}.animate-in{animation:fadeInUp .2s ease-out both}.animate-fade{animation:fadeIn .2s ease-out both}.animate-scale{animation:scaleIn .15s ease-out both}.animate-slide{animation:slideDown .2s ease-out both}.animate-spin{animation:spin .7s linear infinite}.stagger-children>*{animation:fadeInUp .2s ease-out both}.app-layout,.main-content{display:flex;min-height:100vh}.main-content{flex:1 1;margin-left:var(--sidebar-width);flex-direction:column;transition:margin-left .2s ease;position:relative}.page-content{padding:var(--page-padding);flex:1 1}.bg-mesh{background:var(--accent-gradient)}.card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:1.25rem;box-shadow:var(--shadow-sm);transition:box-shadow .15s ease}.card:hover{box-shadow:var(--shadow-md)}.glass-panel{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.glass{background:var(--bg-surface);border:1px solid var(--border-color)}.card-interactive{cursor:pointer;position:relative}.card-interactive:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.card-interactive:active{transform:translateY(0)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.55rem 1.1rem;border-radius:var(--radius);font-weight:600;font-size:.875rem;transition:var(--t);white-space:nowrap;cursor:pointer;line-height:1.4}.btn-primary{background:var(--accent-gradient);color:#fff;box-shadow:0 2px 8px rgba(124,58,237,.3)}.btn-primary:hover{box-shadow:0 4px 16px rgba(124,58,237,.4);transform:translateY(-1px)}.btn-primary:active{transform:none;box-shadow:0 1px 4px rgba(124,58,237,.3)}.btn-primary:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-outline{border:1.5px solid var(--border-color);color:var(--text-primary);background:var(--bg-surface)}.btn-outline:hover{border-color:var(--accent-primary);color:var(--accent-primary);background:var(--accent-light)}.btn-ghost{color:var(--text-secondary);background:transparent}.btn-ghost:hover{background:var(--bg-surface-hover);color:var(--text-primary)}.btn-danger{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;box-shadow:0 2px 8px rgba(239,68,68,.25)}.btn-danger:hover{box-shadow:0 4px 14px rgba(239,68,68,.35);transform:translateY(-1px)}.btn-success{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.btn-sm{padding:.35rem .7rem;font-size:.78rem;border-radius:var(--radius-sm)}.btn-lg{padding:.7rem 1.4rem;font-size:.95rem}.btn-xl{padding:.85rem 2rem;font-size:1rem;font-weight:700}.btn-full,.input{width:100%}.input{padding:.65rem .9rem;border:1.5px solid var(--border-color);border-radius:var(--radius);background:var(--bg-surface);color:var(--text-primary);font-family:inherit;font-size:.9rem;transition:border-color .15s ease,box-shadow .15s ease}.input:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--accent-light)}.input:hover:not(:focus){border-color:var(--border-strong)}.input::placeholder{color:var(--text-secondary);opacity:.6}.input-group{display:flex;flex-direction:column;gap:.35rem;margin-bottom:.875rem}.input-group label{font-size:.8rem;font-weight:600;color:var(--text-secondary)}.badge{display:inline-flex;align-items:center;gap:.25rem;padding:.2rem .55rem;border-radius:var(--radius-full);font-size:.7rem;font-weight:700;letter-spacing:.02em}.badge-success{background:var(--success-light);color:var(--success-text)}.badge-danger{background:var(--danger-light);color:var(--danger-text)}.badge-warning{background:var(--warning-light);color:var(--warning-text)}.badge-info{background:var(--info-light);color:var(--info-text)}.badge-neutral{background:var(--bg-surface-hover);color:var(--text-secondary)}.badge-accent{background:var(--accent-light);color:var(--accent-primary)}.page-header{margin-bottom:1.5rem}.page-header h1{font-size:1.5rem;font-weight:800;letter-spacing:-.02em}.page-header p{color:var(--text-secondary);margin-top:.25rem;font-size:.875rem}.section-hero{border-radius:var(--radius-xl);padding:2rem;margin-bottom:1.5rem;position:relative;overflow:hidden}.section-hero h1{font-size:1.75rem;font-weight:800;margin-bottom:.4rem}.section-hero p{font-size:.95rem;opacity:.8;max-width:560px}.text-gradient{background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.data-table{width:100%;border-collapse:collapse;text-align:left}.data-table thead tr{background:var(--bg-primary)}.data-table th{padding:.75rem 1rem;font-size:.72rem;font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.data-table td{padding:.875rem 1rem;font-size:.875rem;border-top:1px solid var(--border-color);color:var(--text-primary)}.data-table tbody tr:hover{background:var(--bg-surface-hover)}.empty-state{flex-direction:column;padding:3rem 1.5rem;text-align:center}.empty-state,.empty-state .empty-icon{display:flex;align-items:center;justify-content:center}.empty-state .empty-icon{width:64px;height:64px;border-radius:50%;margin:0 auto 1rem;background:var(--bg-surface-hover);color:var(--text-secondary)}.empty-state h3{font-size:1.05rem;font-weight:700;margin-bottom:.35rem}.empty-state p{color:var(--text-secondary);font-size:.85rem;max-width:280px}.stat-card{border-radius:var(--radius-lg);padding:1.25rem;display:flex;justify-content:space-between;align-items:center;transition:transform .15s ease}.stat-card:hover{transform:translateY(-2px)}.stat-card .stat-number{font-size:1.75rem;font-weight:800;line-height:1}.stat-card .stat-label{font-size:.78rem;opacity:.75;margin-top:.2rem}.stat-card .stat-icon{width:42px;height:42px;border-radius:var(--radius);display:flex;align-items:center;justify-content:center;background:hsla(0,0%,100%,.2)}.template-card{border-radius:var(--radius-lg);overflow:hidden;background:var(--bg-surface);border:1px solid var(--border-color);transition:var(--t);cursor:pointer}.template-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}.template-card .template-preview{height:180px;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}.template-card .template-info{padding:1rem}.template-card .template-badge{position:absolute;top:.75rem;right:.75rem;padding:.2rem .55rem;border-radius:var(--radius-full);font-size:.7rem;font-weight:700}.progress-bar{height:6px;background:var(--bg-surface-hover);border-radius:var(--radius-full);overflow:hidden}.progress-bar-fill{height:100%;background:var(--accent-gradient);border-radius:var(--radius-full);transition:width .3s ease}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-secondary);opacity:.5}.flex,.flex-col{display:flex}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.flex-1{flex:1 1}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.text-center{text-align:center}.w-full{width:100%}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hover-primary:hover{color:var(--accent-primary)!important}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.p-0{padding:0}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}@media (min-width:1440px){:root{--sidebar-width:280px}}@media (max-width:1024px){:root{--sidebar-width:76px}}@media (max-width:768px){:root{--sidebar-width:0px}.main-content{margin-left:0}.page-content{padding:1rem 1rem 80px}.section-hero{padding:1.5rem}.section-hero h1{font-size:1.5rem}}@media (max-width:480px){html{font-size:14px}.page-header h1{font-size:1.3rem}}