.app-layout{min-height:100vh;display:flex}.app-main{margin-left:var(--sidebar-width);min-height:100vh;transition:margin-left var(--transition-slow);flex-direction:column;flex:1;display:flex}@media (width<=1024px){.app-main{margin-left:0}}@media (width<=768px){.app-layout{max-width:100vw;overflow-x:hidden}.app-main{max-width:100vw;padding-bottom:calc(64px + env(safe-area-inset-bottom));overflow-x:hidden}.page-content{overflow-x:hidden}}.toast{bottom:var(--space-6);right:var(--space-6);background:var(--text-primary);color:var(--text-inverse);padding:var(--space-3) var(--space-5);border-radius:var(--radius-md);font-size:var(--font-sm);font-weight:var(--fw-medium);box-shadow:var(--shadow-lg);z-index:var(--z-toast);align-items:center;gap:var(--space-2);animation:.3s slideInRight,.3s fadeIn;display:flex;position:fixed}.toast.success{background:var(--success)}.toast.error{background:var(--danger)}.page-content{flex:1;animation:.25s fadeIn}.ad-overlay{z-index:9000;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0009;justify-content:center;align-items:center;padding:24px;animation:.15s ad-fade-in;display:flex;position:fixed;inset:0}@keyframes ad-fade-in{0%{opacity:0}to{opacity:1}}.ad-content{background:#fff;border:1px solid #0000001a;border-radius:20px;width:100%;max-width:440px;animation:.2s cubic-bezier(.16,1,.3,1) ad-slide-up;overflow:hidden;box-shadow:0 24px 60px #0000002e}@keyframes ad-slide-up{0%{opacity:0;transform:translateY(16px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@media (prefers-color-scheme:dark){.ad-content{background:#111827;border-color:#ffffff14;box-shadow:0 32px 64px #000c}.ad-title{color:#f1f5f9}.ad-description{color:#64748b}.ad-cancel{color:#64748b;border-color:#ffffff1a}.ad-cancel:hover{color:#94a3b8;background:#ffffff0f;border-color:#ffffff26}}[data-theme=dark] .ad-content{background:#111827;border-color:#ffffff14;box-shadow:0 32px 64px #000c}[data-theme=dark] .ad-title{color:#f1f5f9}[data-theme=dark] .ad-description{color:#64748b}[data-theme=dark] .ad-cancel{color:#64748b;border-color:#ffffff1a}[data-theme=dark] .ad-cancel:hover{color:#94a3b8;background:#ffffff0f}.ad-header{padding:28px 28px 0}.ad-title{color:#111827;letter-spacing:-.01em;margin:0 0 8px;font-size:1.1rem;font-weight:800}.ad-description{color:#6b7280;margin:0;font-size:.875rem;line-height:1.6}.ad-footer{justify-content:flex-end;gap:10px;margin-top:8px;padding:24px 28px 28px;display:flex}.ad-cancel{color:#6b7280;cursor:pointer;background:0 0;border:1px solid #0000001f;border-radius:12px;padding:10px 20px;font-family:inherit;font-size:.875rem;font-weight:600;transition:all .15s}.ad-cancel:hover{color:#374151;background:#0000000a}.ad-confirm{background:var(--accent,#6366f1);color:#fff;cursor:pointer;border:none;border-radius:12px;padding:10px 22px;font-family:inherit;font-size:.875rem;font-weight:700;transition:all .15s}.ad-confirm:hover{filter:brightness(1.1);transform:translateY(-1px)}.ad-confirm--destructive{color:#fff;background:#ef4444}:root{--bg-primary:#fff;--bg-secondary:#f8f9fa;--bg-tertiary:#f1f3f5;--bg-dark:#1a1a2e;--bg-overlay:#00000080;--surface:#fff;--surface-hover:#f8f9fa;--surface-active:#f1f3f5;--surface-elevated:#fff;--border:#e9ecef;--border-light:#f1f3f5;--border-focus:#ffc107;--text-primary:#1a1a2e;--text-secondary:#6c757d;--text-tertiary:#adb5bd;--text-inverse:#fff;--text-link:#ff8f00;--accent:#ffc107;--accent-light:#ffd54f;--accent-lighter:#fffde7;--accent-dark:#ff8f00;--accent-gradient:linear-gradient(135deg, #ffc107 0%, #ffd54f 100%);--orange:#ff7043;--orange-light:#fbe9e7;--orange-dark:#d84315;--orange-gradient:linear-gradient(135deg, #ff7043 0%, #ff8a65 100%);--success:#00b894;--success-light:#e6f9f4;--success-dark:#009975;--warning:#fdcb6e;--warning-light:#fff8e7;--warning-dark:#e5a800;--danger:#e53935;--danger-light:#ffebee;--danger-dark:#c62828;--info:#74b9ff;--info-light:#ebf5ff;--info-dark:#2e86de;--shadow-xs:0 1px 2px #00000008;--shadow-sm:0 1px 3px #0000000a, 0 1px 2px #0000000f;--shadow-md:0 4px 12px #00000014;--shadow-lg:0 8px 24px #0000001f;--shadow-xl:0 16px 48px #00000029;--shadow-accent:0 4px 14px #ffc10759;--shadow-danger:0 4px 14px #e5393559;--shadow-orange:0 4px 14px #ff704359;--radius-xs:4px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-2xl:24px;--radius-full:9999px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:28px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--font-family:"Outfit", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-xs:.75rem;--font-sm:.8125rem;--font-base:.875rem;--font-md:1rem;--font-lg:1.125rem;--font-xl:1.25rem;--font-2xl:1.5rem;--font-3xl:2rem;--font-4xl:2.5rem;--fw-light:300;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--fw-extrabold:800;--lh-tight:1.2;--lh-normal:1.5;--lh-relaxed:1.7;--transition-fast:.15s ease;--transition-base:.2s ease;--transition-slow:.3s ease;--transition-spring:.3s cubic-bezier(.34, 1.56, .64, 1);--sidebar-width:260px;--sidebar-collapsed:72px;--topbar-height:64px;--z-sidebar:100;--z-topbar:90;--z-modal:200;--z-toast:300}[data-theme=dark]{--bg-primary:#0a0a0a;--bg-secondary:#111;--bg-tertiary:#1a1a1a;--bg-dark:#000;--bg-overlay:#000000bf;--surface:#181818;--surface-hover:#202020;--surface-active:#282828;--surface-elevated:#1c1c1c;--border:#2c2c2c;--border-light:#222;--border-focus:#ffc400;--text-primary:#f2f2f2;--text-secondary:#9a9a9a;--text-tertiary:#666;--text-inverse:#0a0a0a;--text-link:#ffd740;--accent:#ffc400;--accent-light:#ffd740;--accent-lighter:#ffc40026;--accent-dark:#e5a800;--accent-gradient:linear-gradient(135deg, #ffc400 0%, #ffd740 100%);--success:#00d2a8;--success-light:#00d2a81f;--success-dark:#00b894;--warning:#ffd93d;--warning-light:#ffd93d1f;--warning-dark:#f0c000;--danger:#ff7675;--danger-light:#ff76751f;--danger-dark:#e17055;--info:#74b9ff;--info-light:#74b9ff1f;--info-dark:#5dade2;--shadow-xs:0 1px 2px #0003;--shadow-sm:0 1px 3px #00000040, 0 1px 2px #0003;--shadow-md:0 4px 12px #0000004d;--shadow-lg:0 8px 24px #0006;--shadow-xl:0 16px 48px #00000080;--shadow-accent:0 4px 14px #ffc4004d;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth;max-width:100%;font-size:16px;overflow-x:hidden}body{font-family:var(--font-family);font-size:var(--font-base);line-height:var(--lh-normal);color:var(--text-primary);background:var(--bg-secondary);max-width:100%;min-height:100vh;transition:background-color .3s,color .3s;overflow-x:hidden}#root{min-height:100vh}a{color:inherit;text-decoration:none}button{cursor:pointer;background:0 0;border:none;font-family:inherit}input,select,textarea{font-family:inherit}img{max-width:100%;display:block}ul,ol{list-style:none}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-16px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:translate(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-24px)}to{opacity:1;transform:translate(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes popIn{0%{opacity:0;transform:scale(0)}70%{transform:scale(1.1)}to{opacity:1;transform:scale(1)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes bounceIn{0%{opacity:0;transform:scale(.3)}50%{transform:scale(1.05)}70%{transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes slideInUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.animate-fadeIn{animation:fadeIn var(--transition-slow) ease both}.animate-fadeInUp{animation:fadeInUp var(--transition-slow) ease both}.animate-scaleIn{animation:scaleIn var(--transition-slow) ease both}.animate-slideInRight{animation:slideInRight var(--transition-slow) ease both}.animate-spin{animation:1s linear infinite spin}.glass{-webkit-backdrop-filter:blur(12px)saturate(160%);background:#ffffffb3;border:1px solid #fff6}[data-theme=dark] .glass{background:#1a1a2eb3;border:1px solid #ffffff14}.glow-accent{box-shadow:0 0 0 2px var(--accent-lighter), var(--shadow-accent)}.card-base{background:var(--surface);border-radius:var(--radius-lg);border:1px solid var(--border-light);box-shadow:var(--shadow-xs)}@keyframes ping{75%,to{opacity:0;transform:scale(2)}}.stagger-1{animation-delay:50ms}.stagger-2{animation-delay:.1s}.stagger-3{animation-delay:.15s}.stagger-4{animation-delay:.2s}.stagger-5{animation-delay:.25s}.stagger-6{animation-delay:.3s}.text-xs{font-size:var(--font-xs)}.text-sm{font-size:var(--font-sm)}.text-base{font-size:var(--font-base)}.text-md{font-size:var(--font-md)}.text-lg{font-size:var(--font-lg)}.text-xl{font-size:var(--font-xl)}.text-2xl{font-size:var(--font-2xl)}.text-3xl{font-size:var(--font-3xl)}.font-medium{font-weight:var(--fw-medium)}.font-semibold{font-weight:var(--fw-semibold)}.font-bold{font-weight:var(--fw-bold)}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.text-tertiary{color:var(--text-tertiary)}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:var(--space-1)}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}.gap-8{gap:var(--space-8)}.flex-1{flex:1}.flex-wrap{flex-wrap:wrap}.flex-shrink-0{flex-shrink:0}.grid{display:grid}@media (width<=1024px){:root{--sidebar-width:0px}}@media (width<=768px){:root{--topbar-height:56px}html{font-size:15px}input,select,textarea{font-size:16px!important}}@media (width<=480px){html{font-size:14px}input,select,textarea{font-size:16px!important}}
