.platform-shell{display:flex;min-height:100vh;min-height:100dvh;position:relative;background:var(--bg)}.platform-shell:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 70% 50% at 20% 0%,rgba(37,58,130,.1) 0%,transparent 50%),radial-gradient(ellipse 50% 40% at 85% 15%,rgba(136,162,255,.08) 0%,transparent 45%),radial-gradient(ellipse 40% 35% at 60% 90%,rgba(200,240,64,.06) 0%,transparent 45%),radial-gradient(ellipse 35% 30% at 10% 70%,rgba(255,178,247,.05) 0%,transparent 40%);pointer-events:none;z-index:0}.platform-shell:after{content:"";position:fixed;width:400px;height:400px;top:-200px;right:-150px;border-radius:50%;background:radial-gradient(circle,var(--p-primary-soft) 0%,transparent 70%);filter:blur(80px);opacity:.5;pointer-events:none;z-index:0;animation:shellGlow 18s ease-in-out infinite alternate}@keyframes shellGlow{0%{transform:translate(0) scale(1)}to{transform:translate(30px,20px) scale(1.06)}}.sidebar{position:fixed;top:0;left:0;bottom:0;width:240px;background:#1c2d68;border-right:none;z-index:var(--z-dropdown);display:flex;flex-direction:column;overflow:hidden}.sb-brand{display:flex;align-items:center;gap:10px;padding:16px;height:64px;flex-shrink:0;text-decoration:none}.sb-brand-gem{width:36px;height:36px;border-radius:10px;background:var(--lime, #E3FC87);display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 1px #e3fc874d,0 4px 20px #0003;flex-shrink:0}.sb-brand-name{font-family:var(--font-display);font-size:16px;font-weight:800;color:#fff;letter-spacing:-.5px;white-space:nowrap}.sb-nav{flex:1;padding:8px 0;display:flex;flex-direction:column;gap:1px;overflow-y:auto;overflow-x:hidden}.sb-nav::-webkit-scrollbar{width:6px}.sb-nav::-webkit-scrollbar-track{background:transparent}.sb-nav::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:3px}.sb-section-label{font-family:var(--font-mono);font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:2.5px;color:#ffffff59;padding:16px 20px 6px;flex-shrink:0}.sb-item{display:flex;align-items:center;gap:12px;padding:9px 12px;margin:0 8px;min-height:44px;border-radius:10px;color:#ffffff80;text-decoration:none;font-size:13px;font-family:var(--font-body);font-weight:500;position:relative;transition:var(--transition-normal);cursor:pointer;border:none;background:none;width:calc(100% - 16px);box-sizing:border-box;flex-shrink:0}.sb-item:hover{color:#fffc;background:#ffffff14}.sb-item.active{background:#ffffff1f;color:#fff;font-weight:700;border-left:3px solid var(--lime, #E3FC87);border-right:none}.sb-item.locked{opacity:.25;cursor:not-allowed}.sb-item.locked:hover{background:none;color:#ffffff4d}.sb-icon{display:flex;align-items:center;justify-content:center;width:28px;height:28px;flex-shrink:0;position:relative;border-radius:8px;transition:background .2s}.sb-lock-badge{position:absolute;bottom:-2px;right:-4px;color:#ffffff4d}.sb-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sb-subnav{display:flex;flex-direction:column;gap:1px;padding:2px 0 4px;animation:sbSubnavIn .18s ease-out}@keyframes sbSubnavIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.sb-subitem{display:flex;align-items:center;gap:8px;padding:5px 12px 5px 48px;margin:0 8px;font-size:12px;font-weight:500;color:#ffffff73;text-decoration:none;border-radius:8px;transition:all .15s;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sb-subitem:hover{background:#ffffff0f;color:#ffffffbf}.sb-subitem.active{background:#ffffff14;color:var(--lime, #E3FC87);font-weight:700}.sb-user{padding:12px;border-top:1px solid rgba(255,255,255,.08);display:flex;align-items:center;gap:8px;flex-shrink:0;min-height:56px}.sb-user-avatar{width:32px;height:32px;border-radius:50%;background:var(--lime, #E3FC87);color:#1a2a00;font-family:var(--font-mono);font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.sb-user-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.sb-user-name{font-size:12px;font-weight:600;color:#ffffffb3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sb-user-venue{font-family:var(--font-mono);font-size:9px;color:#ffffff59;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sb-logout-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-base);border:none;background:none;color:#fff6;cursor:pointer;flex-shrink:0;transition:color .15s,background .15s}.sb-logout-btn:hover{color:var(--red);background:#ef444414}.main-content>*{animation:pageIn .35s cubic-bezier(.22,1,.36,1) both}@keyframes pageIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.main-content{flex:1;margin-left:240px;position:relative;min-height:100vh;padding:16px}@media (min-width: 769px){.main-content{padding:28px 32px}}.mobile-topbar,.tabbar{display:none}@media (max-width: 768px){.sidebar{display:none}.mobile-topbar{display:flex;position:fixed;top:0;left:0;right:0;height:52px;padding:0 16px;background:#ffffffb8;backdrop-filter:blur(24px) saturate(180%);-webkit-backdrop-filter:blur(24px) saturate(180%);border-bottom:1px solid var(--glass-border);z-index:var(--z-dropdown);align-items:center;justify-content:space-between}.mobile-topbar-brand{display:flex;align-items:center;gap:10px}.mobile-topbar .sb-brand-gem{width:32px;height:32px;border-radius:var(--radius-pill)}.mobile-topbar-title{font-family:var(--font-display);font-size:15px;font-weight:800;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px;letter-spacing:-.3px}.mobile-topbar-avatar{width:32px;height:32px;border-radius:50%;background:var(--p50);color:var(--p500);font-family:var(--font-mono);font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.main-content{margin-left:0;padding:60px 16px 16px;padding-bottom:calc(56px + env(safe-area-inset-bottom));animation:mobilePageIn .2s ease-out}@keyframes mobilePageIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.tabbar{display:flex;position:fixed;bottom:0;left:0;right:0;height:calc(56px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:var(--glass);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border-top:1px solid var(--glass-border);z-index:var(--z-dropdown);justify-content:space-around;align-items:center}.tabbar-item{display:flex;flex-direction:column;align-items:center;gap:2px;font-size:10px;font-family:var(--font-body);color:var(--muted);text-decoration:none;padding:6px 8px;min-width:48px;min-height:48px;justify-content:center;border-radius:var(--radius-base);transition:color .2s ease,transform .15s ease;position:relative}.tabbar-item.active{color:var(--p500)}.tabbar-item.active:after{content:"";position:absolute;bottom:2px;left:50%;transform:translate(-50%);width:20px;height:3px;border-radius:2px;background:var(--p500)}}.sb-venue-switcher{padding:4px 10px 8px}.sb-venue-btn{display:flex;align-items:center;gap:8px;width:100%;padding:10px 12px;border:1.5px solid rgba(255,255,255,.12);border-radius:var(--radius);background:transparent;color:#fff;font-size:13px;font-weight:600;cursor:pointer;transition:var(--transition-normal);white-space:nowrap;overflow:hidden;font-family:inherit}.sb-venue-btn:hover{border-color:#fff3;background:#ffffff14;box-shadow:none}.sb-venue-label{flex:1;overflow:hidden;text-overflow:ellipsis;text-align:left}.sb-venue-dropdown{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:var(--z-modal);background:var(--surface);border:1px solid rgba(37,58,130,.08);border-radius:var(--radius-xl);padding:6px;box-shadow:var(--shadow-lg);max-height:300px;overflow-y:auto;min-width:200px;animation:venueDropIn .15s ease-out}@keyframes venueDropIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.sb-venue-option{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border:none;border-radius:var(--radius-base);background:transparent;color:var(--ink);font-size:13px;cursor:pointer;text-align:left;transition:background .15s;font-family:inherit}.sb-venue-option:hover{background:var(--bg)}.sb-venue-option.active{background:var(--p50);color:var(--p500)}.sb-venue-option.active .sb-venue-option-label{font-weight:700}.sb-venue-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;transition:background .15s}.sb-venue-option:disabled{opacity:.5;cursor:wait}.sb-venue-option-label{font-weight:600;font-size:13px;line-height:1.3}.sb-venue-option-group{font-size:11px;color:var(--muted);margin-top:2px;line-height:1.2}.sb-notif-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;border-radius:10px;background:#ffffff0f;color:var(--sidebar-fg, rgba(255,255,255,.7));cursor:pointer;position:relative;transition:background .15s,color .15s;margin-right:8px;flex-shrink:0}.sb-notif-btn:hover{background:#ffffff1f;color:#fff}.sb-notif-badge{position:absolute;top:6px;right:6px;width:8px;height:8px;border-radius:50%;background:var(--color-lime, #c8f040);border:2px solid var(--sidebar-bg, #0b1437);box-sizing:content-box}.notif-panel{position:fixed;z-index:9999;width:360px;max-height:480px;background:#fff;border-radius:20px;box-shadow:0 8px 32px #0b14372e,0 2px 8px #0b143714;display:flex;flex-direction:column;overflow:hidden;animation:notifSlideIn .18s ease-out}@keyframes notifSlideIn{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}.notif-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px 12px;border-bottom:1px solid rgba(11,20,55,.06)}.notif-title{font-size:15px;font-weight:700;color:var(--navy, #0b1437)}.notif-mark-read{background:none;border:none;color:var(--color-primary, #253A82);font-size:12px;font-weight:600;cursor:pointer;padding:0}.notif-mark-read:hover{text-decoration:underline}.notif-list{overflow-y:auto;flex:1;padding:4px 0}.notif-item{display:flex;align-items:flex-start;gap:12px;padding:12px 20px;cursor:pointer;transition:background .12s;border-left:3px solid transparent}.notif-item:hover{background:#253a8208}.notif-item.unread{border-left-color:var(--navy, #0b1437)}.notif-item-icon{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.notif-item-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.notif-item-title{font-size:13px;font-weight:600;color:var(--navy, #0b1437);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.notif-item-meta{font-size:9px;font-family:var(--font-mono, "SF Mono", monospace);color:var(--muted, #8b8fa3)}.notif-item-right{display:flex;flex-direction:column;align-items:flex-end;gap:6px;flex-shrink:0}.notif-item-time{font-size:9px;font-family:var(--font-mono, "SF Mono", monospace);color:var(--muted, #8b8fa3)}.notif-item-dot{width:7px;height:7px;border-radius:50%;background:var(--color-primary, #253A82)}.notif-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 20px;color:var(--muted, #8b8fa3);font-size:13px}@keyframes authFloat{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-12px) rotate(1deg)}}@keyframes authFloat2{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-8px) rotate(-1.5deg)}}@keyframes authGlow{0%,to{opacity:.25;transform:scale(1)}50%{opacity:.5;transform:scale(1.12)}}@keyframes authCardIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes authOrbDrift1{0%,to{transform:translate(0) scale(1)}33%{transform:translate(30px,-20px) scale(1.05)}66%{transform:translate(-15px,15px) scale(.95)}}@keyframes authOrbDrift2{0%,to{transform:translate(0) scale(1)}33%{transform:translate(-25px,25px) scale(1.08)}66%{transform:translate(20px,-10px) scale(.92)}}@keyframes authOrbDrift3{0%,to{transform:translate(0) scale(1)}50%{transform:translate(15px,20px) scale(1.1)}}.auth-shell{display:flex;min-height:100vh;min-height:100dvh}.auth-left{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;background:linear-gradient(135deg,#1c2d68,#253a82,#3d55b0);padding:48px;position:relative;overflow:hidden}.auth-orb{position:absolute;border-radius:50%;pointer-events:none;filter:blur(60px)}.auth-orb--1{width:300px;height:300px;background:radial-gradient(circle,rgba(227,252,135,.25) 0%,transparent 70%);top:10%;left:15%;animation:authOrbDrift1 14s ease-in-out infinite}.auth-orb--2{width:250px;height:250px;background:radial-gradient(circle,rgba(136,162,255,.3) 0%,transparent 70%);bottom:15%;right:10%;animation:authOrbDrift2 18s ease-in-out infinite}.auth-orb--3{width:200px;height:200px;background:radial-gradient(circle,rgba(61,85,176,.4) 0%,transparent 70%);top:55%;left:60%;animation:authOrbDrift3 12s ease-in-out infinite}.auth-left-content{text-align:center;color:#fff;position:relative;z-index:2}.auth-logo{display:flex;align-items:center;gap:10px;justify-content:center;margin-bottom:40px;font-family:var(--font-display);font-size:22px;font-weight:700;color:#fff;letter-spacing:-.4px}.auth-logo-gem{width:44px;height:44px;border-radius:12px;background:#e3fc8733;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 0 30px #e3fc8740;animation:authGlow 4s ease-in-out infinite}.auth-slogan{font-family:var(--font-display);font-size:clamp(26px,2.5vw,38px);font-weight:800;line-height:1.15;color:#fff;margin-bottom:14px;max-width:400px}.auth-subtitle{font-size:15px;color:#fff9;max-width:320px;margin:0 auto;line-height:1.5;letter-spacing:.5px}.auth-stat-cards{display:flex;gap:14px;margin-top:48px;justify-content:center;flex-wrap:wrap}.auth-stat-card{background:#ffffff1a;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.15);border-radius:14px;padding:18px 22px;text-align:center;min-width:110px}.auth-stat-card--1{animation:authFloat 6s ease-in-out infinite}.auth-stat-card--2{animation:authFloat2 7s ease-in-out .5s infinite}.auth-stat-card--3{animation:authFloat 8s ease-in-out 1s infinite}.auth-stat-value{font-family:var(--font-display);font-size:22px;font-weight:800;color:#e3fc87;margin-bottom:4px}.auth-stat-label{font-size:12px;color:#fff9;font-weight:500}.auth-right{width:480px;flex-shrink:0;display:flex;align-items:center;justify-content:center;padding:40px 48px;background:var(--surface, #fff)}.auth-form-box{width:100%;max-width:380px;animation:authCardIn .6s cubic-bezier(.22,1,.36,1) both}.auth-form-title{font-family:var(--font-display);font-size:24px;font-weight:700;color:var(--ink);margin-bottom:4px}.auth-form-subtitle{font-size:14px;color:var(--muted);margin-bottom:28px}.auth-field{margin-bottom:18px}.auth-label{display:block;font-size:13px;font-weight:500;color:var(--ink2);margin-bottom:6px}.auth-input{width:100%;padding:12px 14px;background:var(--bg, #f8f9fc);border:1.5px solid var(--border-solid, #e0dce8);border-radius:12px;font-size:15px;font-family:var(--font-body);color:var(--ink);outline:none;transition:border-color .2s,box-shadow .2s}.auth-input:focus{border-color:#1c2d68;box-shadow:0 0 0 3px #1c2d681f}.auth-input.has-error{border-color:var(--color-error-500);box-shadow:0 0 0 3px #ef444414}.auth-field-error{font-size:12px;color:var(--color-error-500);margin-top:4px}.auth-error-block{background:#ef444414;border:1px solid rgba(239,68,68,.2);border-radius:10px;padding:10px 14px;color:var(--color-error-500);font-size:13px;margin-bottom:16px;line-height:1.4}.auth-btn{width:100%;padding:14px;background:#e3fc87;border:none;border-radius:999px;font-family:var(--font-display);font-size:15px;font-weight:600;color:#1a2a00;cursor:pointer;transition:transform .2s,box-shadow .2s,background .2s}.auth-btn:hover{transform:translateY(-1px);box-shadow:0 4px 16px #e3fc8766;background:#d9f56e}.auth-btn:active{transform:translateY(0)}.auth-btn:disabled{opacity:.45;cursor:not-allowed;transform:none;box-shadow:none}.auth-link-row{text-align:center;margin-top:20px;font-size:13px;color:var(--muted)}.auth-link-row a{color:#1c2d68;font-weight:600;text-decoration:none}.auth-link-row a:hover{color:#3d55b0}.auth-password-wrap{position:relative}.auth-eye-btn{position:absolute;right:10px;top:50%;transform:translateY(-50%);border:none;background:none;cursor:pointer;color:var(--muted2);padding:4px;border-radius:8px;display:flex;align-items:center;justify-content:center;transition:color .15s}.auth-eye-btn:hover{color:#1c2d68}.auth-mobile-logo{display:none}@media (max-width: 768px){.auth-left,.auth-orb{display:none}.auth-right{width:100%;padding:48px 20px 32px;align-items:flex-start}.auth-mobile-logo{display:flex;align-items:center;gap:8px;justify-content:center;margin-bottom:24px}}@media (max-width: 480px){.auth-right{padding:24px 16px}.auth-form-box{max-width:100%}.auth-form-title{font-size:22px}}:root{--color-brand-50: #EEF4FF;--color-brand-100: #C0D8FF;--color-brand-200: #88A2FF;--color-brand-300: #3D55B0;--color-brand-400: #253A82;--color-brand-500: #253A82;--color-brand-600: #1C2D68;--color-brand-700: #131F4A;--p50: var(--color-brand-50);--p100: var(--color-brand-100);--p200: var(--color-brand-200);--p300: var(--color-brand-300);--p400: var(--color-brand-400);--p500: var(--color-brand-500);--p600: var(--color-brand-600);--p700: var(--color-brand-700);--p-primary: var(--color-brand-500);--p-primary-hover: var(--color-brand-300);--p-primary-soft: rgba(37, 58, 130, .08);--navy: #253A82;--navy-h: #3D55B0;--navy-p: #1C2D68;--sky: #C0D8FF;--ice: #EEF4FF;--lime: #E3FC87;--lime-h: #D4F570;--lime-dark: #C8F040;--lime-ink: #1a2a00;--rose: #FFB2F7;--violet: #AB9DFF;--color-ink-900: #111827;--color-ink-800: #1F2937;--color-ink-700: #374151;--color-ink-600: #4A5A8A;--color-ink-500: #6B7EA8;--color-ink-400: #C8D0E8;--color-ink-300: #C8D0E8;--color-ink-200: #E8ECFA;--color-ink-100: #F0F3FF;--color-ink-50: #F0F3FF;--ink: var(--color-ink-900);--ink2: var(--color-ink-700);--slate: var(--color-ink-600);--muted: var(--color-ink-500);--muted2: var(--color-ink-300);--faint: var(--color-ink-400);--surface: #FFFFFF;--w: #FFFFFF;--bg: var(--color-ink-100);--bg2: var(--color-ink-200);--color-success-50: #DCFCE7;--color-success-100: #BBF7D0;--color-success-500: #22C55E;--color-success-700: #15803D;--green: var(--color-success-500);--green-soft: rgba(34, 197, 94, .1);--green-pale: var(--color-success-50);--color-error-50: #FEE2E2;--color-error-100: #FECACA;--color-error-500: #EF4444;--color-error-700: #B91C1C;--red: var(--color-error-500);--red-soft: rgba(239, 68, 68, .08);--color-warning-50: #FEF3C7;--color-warning-100: #FDE68A;--color-warning-500: #F59E0B;--color-warning-700: #B45309;--amber: var(--color-warning-500);--amber-soft: rgba(245, 158, 11, .1);--color-info-50: #DBEAFE;--color-info-100: #BFDBFE;--color-info-500: #3B82F6;--color-info-700: #1D4ED8;--blue: var(--color-info-500);--blue-soft: rgba(59, 130, 246, .1);--pink: #EC4899;--pink-soft: rgba(236, 72, 153, .1);--gradient: linear-gradient(135deg, var(--navy) 0%, var(--navy-h) 100%);--gradient-brand: linear-gradient(135deg, var(--navy) 0%, var(--lime) 100%);--font-display: "Plus Jakarta Sans", sans-serif;--font-body: "Plus Jakarta Sans", sans-serif;--font-mono: "IBM Plex Mono", monospace;--f: var(--font-body);--m: var(--font-mono);--text-2xs: 8px;--text-xs: 9px;--text-sm: 11px;--text-base: 13px;--text-md: 14px;--text-lg: 16px;--text-xl: 18px;--text-2xl: 22px;--text-3xl: 28px;--text-4xl: 36px;--weight-light: 300;--weight-regular: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700;--weight-extrabold: 800;--weight-black: 900;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--space-20: 80px;--radius-none: 0;--radius-xs: 4px;--radius-sm: 6px;--radius-md: 8px;--radius-base: 10px;--radius: 12px;--radius-lg: 14px;--radius-xl: 16px;--radius-2xl: 20px;--radius-3xl: 24px;--radius-pill: 9999px;--r-xs: 6px;--r-sm: 8px;--r-md: 12px;--r-lg: 16px;--r-xl: 20px;--r-pill: 100px;--shadow-xs: 0 1px 3px rgba(37,58,130,.08);--shadow-sm: 0 2px 8px rgba(37,58,130,.08);--shadow-md: 0 4px 16px rgba(37,58,130,.1);--shadow-lg: 0 8px 32px rgba(37,58,130,.12);--shadow-xl: 0 24px 80px rgba(37,58,130,.16);--shadow-cta: 0 4px 16px rgba(37,58,130,.25);--shadow-cta-hover: 0 4px 16px rgba(200,240,64,.3);--sh-xs: var(--shadow-xs);--sh-sm: var(--shadow-sm);--sh-md: var(--shadow-md);--sh-lg: var(--shadow-lg);--sh-lime: 0 4px 16px rgba(200,240,64,.3);--sh-navy: 0 4px 16px rgba(37,58,130,.25);--duration-fast: .12s;--duration-normal: .18s;--duration-slow: .28s;--easing-default: cubic-bezier(.4, 0, .2, 1);--easing-spring: cubic-bezier(.34, 1.56, .64, 1);--easing-smooth: cubic-bezier(.22, 1, .36, 1);--transition-fast: all var(--duration-fast) var(--easing-default);--transition-normal: all var(--duration-normal) var(--easing-default);--transition-slow: all var(--duration-slow) var(--easing-default);--z-base: 0;--z-raised: 1;--z-dropdown: 100;--z-sticky: 200;--z-overlay: 500;--z-modal: 600;--z-toast: 700;--z-tooltip: 800;--z-max: 900;--card: var(--surface);--card-glass: rgba(255, 255, 255, .72);--card-radius: var(--radius-3xl);--card-shadow: var(--shadow-sm);--card-shadow-hover: var(--shadow-md);--card-border: 1px solid rgba(37,58,130,.08);--card-padding: var(--space-6);--btn-radius: var(--radius-pill);--btn-font: var(--font-body);--btn-weight: var(--weight-semibold);--btn-transition: var(--transition-normal);--input-radius: var(--radius);--input-border: 1.5px solid var(--color-ink-200);--input-border-focus: 1.5px solid var(--navy);--input-shadow-focus: 0 0 0 3px rgba(37,58,130,.1);--input-font: var(--font-body);--input-padding: 12px 16px;--badge-radius: var(--radius-pill);--badge-font: var(--font-mono);--badge-size: var(--text-xs);--badge-weight: var(--weight-bold);--badge-padding: 3px 10px;--toggle-width: 44px;--toggle-height: 24px;--toggle-radius: var(--radius-pill);--toggle-off-bg: var(--color-ink-200);--toggle-on-bg: var(--navy);--toggle-thumb: 16px;--toast-radius: 18px;--toast-shadow: var(--shadow-lg);--toast-bg: var(--surface);--toast-z: var(--z-toast);--modal-radius: var(--radius-3xl);--modal-shadow: var(--shadow-xl);--modal-backdrop: rgba(17, 24, 39, .25);--focus-ring: 0 0 0 3px rgba(37,58,130,.45);--focus-ring-error: 0 0 0 4px rgba(239, 68, 68, .08);--focus-ring-success: 0 0 0 4px rgba(34, 197, 94, .08);--disabled-opacity: .38;--sidebar-w-collapsed: 72px;--sidebar-w-expanded: 240px;--header-h: 56px;--border: rgba(37,58,130,.08);--border-hover: rgba(37,58,130,.14);--border-m: rgba(37,58,130,.14);--border-solid: var(--color-ink-200);--shadow-cta2: var(--shadow-cta-hover);--glass: rgba(255, 255, 255, .72);--glass-border: rgba(255, 255, 255, .6);--accent: var(--navy);--color-surface: var(--w);--color-surface-raised: var(--w);--color-surface-overlay: rgba(255, 255, 255, .72);--color-bg: var(--bg);--color-bg-secondary: var(--bg2);--color-text-primary: var(--ink);--color-text-secondary: var(--slate);--color-text-tertiary: var(--muted);--color-text-disabled: var(--faint);--color-border: var(--border);--color-border-strong: var(--border-m);--color-brand: var(--navy);--color-brand-hover: var(--navy-h);--color-brand-pressed: var(--navy-p);--color-accent: var(--lime);--color-accent-hover: var(--lime-h);--color-accent-dark: var(--lime-dark);--color-focus-ring: var(--focus-ring)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-body);font-size:var(--text-base);color:var(--ink);background:var(--bg);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-family:var(--font-display)}h1{line-height:1.15}h2{line-height:1.2}h3{line-height:1.25}h1{font-weight:var(--weight-bold);letter-spacing:-1px}h2{font-weight:var(--weight-bold);letter-spacing:-.8px}h3{font-weight:var(--weight-semibold);letter-spacing:-.3px}a{color:var(--color-brand-500);text-decoration:none}input[type=text],input[type=email],input[type=tel],input[type=password],input[type=number],input[type=url],input[type=search],input[type=date],input[type=time],input[type=datetime-local],select,textarea{font-family:var(--input-font);font-size:var(--text-base);color:var(--ink);background:var(--surface);border:var(--input-border);border-radius:var(--input-radius);padding:var(--input-padding);outline:none;transition:var(--transition-normal);width:100%;-webkit-appearance:none}input:focus,select:focus,textarea:focus{border-color:var(--color-brand-500);box-shadow:var(--input-shadow-focus)}input::placeholder,textarea::placeholder{color:var(--muted2)}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='14' height='14' viewBox='0 0 14 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2 5l5 5 5-5' stroke='%23B0A5CC' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:40px;cursor:pointer}textarea{resize:vertical;min-height:80px;line-height:1.8}button{font-family:var(--btn-font);font-weight:var(--btn-weight);letter-spacing:-.2px;cursor:pointer;transition:var(--btn-transition);border:none;outline:none}button:active:not(:disabled){transform:scale(.98)}button:disabled,button[aria-disabled=true]{opacity:var(--disabled-opacity);pointer-events:none;cursor:not-allowed;transform:none!important}input:disabled,select:disabled,textarea:disabled,input[aria-disabled=true],select[aria-disabled=true]{background:var(--color-ink-50);opacity:.55;pointer-events:none;cursor:not-allowed}*:focus-visible{outline:2px solid var(--navy, #253A82)!important;outline-offset:2px!important;box-shadow:var(--focus-ring)}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:none!important;border-color:var(--color-brand-500);box-shadow:var(--input-shadow-focus)}*:focus:not(:focus-visible){box-shadow:none}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-brand-100);border-radius:2px}body:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 512 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23g)'/%3E%3C/svg%3E");opacity:.03;mix-blend-mode:overlay;pointer-events:none;z-index:var(--z-max)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.anim-fade-up{animation:fadeUp .4s cubic-bezier(.22,1,.36,1) both}.anim-fade-up:nth-child(1){animation-delay:0s}.anim-fade-up:nth-child(2){animation-delay:.05s}.anim-fade-up:nth-child(3){animation-delay:.1s}.anim-fade-up:nth-child(4){animation-delay:.15s}.anim-fade-up:nth-child(5){animation-delay:.2s}.anim-fade-up:nth-child(6){animation-delay:.25s}@keyframes fadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.anim-scale-in{animation:scaleIn .25s cubic-bezier(.34,1.56,.64,1) both}@keyframes scaleIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.anim-slide-right{animation:slideRight .3s ease both}@keyframes slideRight{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:translate(0)}}.card-hover-lift{transition:transform .2s cubic-bezier(.22,1,.36,1),box-shadow .2s ease}.card-hover-lift:hover{transform:translateY(-3px);box-shadow:0 8px 32px #253a821f}.btn-press:active:not(:disabled){transform:scale(.97)!important;transition:transform .1s!important}.skeleton-shimmer{background:linear-gradient(90deg,var(--bg2, #E8ECFA) 25%,var(--ice, #EEF4FF) 50%,var(--bg2, #E8ECFA) 75%);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite;border-radius:8px}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.pulse-dot{position:relative}.pulse-dot:after{content:"";position:absolute;top:-3px;right:-3px;bottom:-3px;left:-3px;border-radius:50%;background:inherit;opacity:.4;animation:pulseDot 2s ease-in-out infinite}@keyframes pulseDot{0%,to{transform:scale(1);opacity:.4}50%{transform:scale(1.8);opacity:0}}.anim-count-up{animation:countPop .5s cubic-bezier(.34,1.56,.64,1) both}@keyframes countPop{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.anim-toast{animation:toastIn .4s cubic-bezier(.34,1.56,.64,1) both}@keyframes toastIn{0%{opacity:0;transform:translateY(16px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.anim-backdrop{animation:backdropIn .2s ease both}@keyframes backdropIn{0%{opacity:0}to{opacity:1}}.anim-spin{animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.lime-glow{animation:limeGlow 3s ease-in-out infinite}@keyframes limeGlow{0%,to{box-shadow:0 0 8px #c8f04033}50%{box-shadow:0 0 20px #c8f04066}}@media (prefers-reduced-motion: reduce){.anim-fade-up,.anim-scale-in,.anim-slide-right,.anim-toast,.anim-backdrop,.anim-count-up{animation-duration:.01ms!important}.card-hover-lift:hover{transform:none}}
