:root{--color-primary: #8B2F5B;--color-primary-dark: #6B1F45;--color-primary-light: #A44370;--color-primary-subtle: rgba(139, 47, 91, .08);--color-primary-border: rgba(139, 47, 91, .2);--color-slate-900: #0F172A;--color-slate-800: #1E293B;--color-slate-700: #334155;--color-slate-600: #475569;--color-slate-500: #64748B;--color-slate-400: #94A3B8;--color-slate-300: #CBD5E1;--color-slate-200: #E2E8F0;--color-slate-100: #F1F5F9;--color-slate-50: #F8FAFC;--color-background: var(--color-slate-50);--color-surface: #FFFFFF;--color-surface-raised: #FFFFFF;--color-border: var(--color-slate-200);--color-border-subtle: var(--color-slate-100);--color-text: var(--color-slate-900);--color-text-secondary: var(--color-slate-600);--color-text-muted: var(--color-slate-500);--color-success: #16A34A;--color-success-bg: #F0FDF4;--color-warning: #D97706;--color-warning-bg: #FFFBEB;--color-error: #DC2626;--color-error-bg: #FEF2F2;--color-info: #2563EB;--color-info-bg: #EFF6FF;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-7: 1.75rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--spacing-xs: var(--space-1);--spacing-sm: var(--space-2);--spacing-md: var(--space-4);--spacing-lg: var(--space-6);--spacing-xl: var(--space-8);--spacing-2xl: var(--space-12);--radius-sm: .25rem;--radius-md: .375rem;--radius-lg: .5rem;--radius-xl: .75rem;--radius-2xl: 1rem;--shadow-xs: 0 1px 2px 0 rgba(15, 23, 42, .04);--shadow-sm: 0 1px 3px 0 rgba(15, 23, 42, .08), 0 1px 2px -1px rgba(15, 23, 42, .06);--shadow-md: 0 4px 6px -1px rgba(15, 23, 42, .08), 0 2px 4px -2px rgba(15, 23, 42, .05);--shadow-lg: 0 10px 15px -3px rgba(15, 23, 42, .08), 0 4px 6px -4px rgba(15, 23, 42, .05);--shadow-xl: 0 20px 25px -5px rgba(15, 23, 42, .08), 0 8px 10px -6px rgba(15, 23, 42, .04);--shadow-inner: inset 0 2px 4px 0 rgba(15, 23, 42, .05);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-feature-settings:"cv02","cv03","cv04","cv11";line-height:1.6;font-weight:400;color-scheme:light;color:var(--color-text);background-color:var(--color-background);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}body{min-height:100vh;background-color:var(--color-background)}h1,h2,h3,h4,h5,h6{color:var(--color-text);font-weight:600;line-height:1.25;letter-spacing:-.015em}h1{font-size:2.25rem;letter-spacing:-.025em}h2{font-size:1.75rem}h3{font-size:1.25rem}h4{font-size:1.125rem}h5{font-size:1rem}h6{font-size:.875rem;font-weight:500;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-secondary)}p{line-height:1.7}a{color:var(--color-primary);text-decoration:none;transition:color .15s ease}a:hover{color:var(--color-primary-dark)}button{font-family:inherit;cursor:pointer;border:none;outline:none;transition:all .15s ease}input,textarea,select{font-family:inherit;font-size:.9375rem;outline:none;transition:all .15s ease}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 var(--space-6)}.container-wide{width:100%;max-width:1400px;margin:0 auto;padding:0 var(--space-6)}.card{background:var(--color-surface);border-radius:var(--radius-xl);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);padding:var(--space-6)}.card-flat{background:var(--color-surface);border-radius:var(--radius-xl);border:1px solid var(--color-border);padding:var(--space-6)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:.5625rem var(--space-5);border-radius:var(--radius-md);font-weight:500;font-size:.9375rem;letter-spacing:-.01em;transition:all .15s ease;cursor:pointer;border:none;white-space:nowrap}.btn-primary{background-color:var(--color-primary);color:#fff;box-shadow:0 1px 2px #6b1f4540}.btn-primary:hover{background-color:var(--color-primary-dark);box-shadow:0 3px 8px #6b1f454d;transform:translateY(-1px)}.btn-primary:active{transform:none;box-shadow:none}.btn-primary:disabled{background-color:var(--color-slate-300);box-shadow:none;cursor:not-allowed;transform:none}.btn-secondary{background-color:var(--color-slate-800);color:#fff}.btn-secondary:hover{background-color:var(--color-slate-700)}.btn-outline{background-color:transparent;border:1px solid var(--color-border);color:var(--color-text-secondary)}.btn-outline:hover{border-color:var(--color-slate-300);background-color:var(--color-slate-50);color:var(--color-text)}.btn-ghost{background:transparent;color:var(--color-text-secondary)}.btn-ghost:hover{background:var(--color-slate-100);color:var(--color-text)}.btn-sm{padding:.375rem var(--space-3);font-size:.8125rem;border-radius:var(--radius-sm)}.btn-lg{padding:.75rem var(--space-8);font-size:1rem;border-radius:var(--radius-md)}.btn-xl{padding:1rem var(--space-10);font-size:1.0625rem;border-radius:var(--radius-lg);font-weight:600}.badge{display:inline-flex;align-items:center;gap:var(--space-1);padding:.1875rem var(--space-2);border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;letter-spacing:.03em;text-transform:uppercase}.badge-success{background:var(--color-success-bg);color:var(--color-success);border:1px solid rgba(22,163,74,.15)}.badge-warning{background:var(--color-warning-bg);color:var(--color-warning);border:1px solid rgba(217,119,6,.15)}.badge-error{background:var(--color-error-bg);color:var(--color-error);border:1px solid rgba(220,38,38,.15)}.badge-info{background:var(--color-info-bg);color:var(--color-info);border:1px solid rgba(37,99,235,.15)}.badge-neutral{background:var(--color-slate-100);color:var(--color-slate-500);border:1px solid var(--color-border)}.input-group{margin-bottom:var(--space-5)}.input-label{display:block;margin-bottom:var(--space-2);color:var(--color-text);font-weight:500;font-size:.875rem;letter-spacing:-.005em}.input-field{width:100%;padding:.5625rem var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-surface);color:var(--color-text);font-size:.9375rem;transition:border-color .15s,box-shadow .15s}.input-field:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-subtle)}.input-field::placeholder{color:var(--color-text-muted)}.input-field:disabled{background:var(--color-slate-50);color:var(--color-text-muted);cursor:not-allowed}.input-hint{display:block;margin-top:var(--space-1);font-size:.8125rem;color:var(--color-text-muted)}.text-muted{color:var(--color-text-secondary)}.text-faint{color:var(--color-text-muted)}.text-center{text-align:center}.text-success{color:var(--color-success)}.text-error{color:var(--color-error)}.text-warning{color:var(--color-warning)}.mt-sm{margin-top:var(--space-2)}.mt-md{margin-top:var(--space-4)}.mt-lg{margin-top:var(--space-6)}.mt-xl{margin-top:var(--space-8)}.mb-sm{margin-bottom:var(--space-2)}.mb-md{margin-bottom:var(--space-4)}.mb-lg{margin-bottom:var(--space-6)}.mb-xl{margin-bottom:var(--space-8)}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-sm{gap:var(--space-2)}.gap-md{gap:var(--space-4)}.gap-lg{gap:var(--space-6)}.gap-xl{gap:var(--space-8)}.divider{border:none;border-top:1px solid var(--color-border);margin:var(--space-6) 0}.app-header{position:sticky;top:0;z-index:50;height:56px;background:#ffffffeb;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--color-border)}.app-header-inner{display:flex;align-items:center;justify-content:space-between;height:100%}.app-logo{display:flex;align-items:center;gap:var(--space-2);text-decoration:none;color:inherit}.app-logo-icon{width:32px;height:32px;color:var(--color-primary);flex-shrink:0}.app-logo-name{font-size:1.0625rem;font-weight:700;color:var(--color-slate-900);letter-spacing:-.02em}.app-logo-name span{color:var(--color-primary)}.header-user{display:flex;align-items:center;gap:var(--space-4)}.header-user-name{font-size:.875rem;font-weight:500;color:var(--color-text-secondary)}.breadcrumb{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-8);font-size:.875rem}.breadcrumb-link{background:none;border:none;padding:0;color:var(--color-text-secondary);cursor:pointer;font-size:.875rem;transition:color .15s}.breadcrumb-link:hover{color:var(--color-primary)}.breadcrumb-separator{color:var(--color-text-muted);-webkit-user-select:none;user-select:none}.breadcrumb>span:last-child{color:var(--color-text);font-weight:500}.app-shell{display:flex;height:100vh;overflow:hidden;background:var(--color-background)}.app-sidebar{width:224px;min-width:224px;background:var(--color-slate-900);border-right:1px solid var(--color-slate-800);display:flex;flex-direction:column;height:100vh;overflow-y:auto;overflow-x:hidden;flex-shrink:0;scrollbar-width:none}.app-sidebar::-webkit-scrollbar{display:none}.sidebar-logo{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-5) var(--space-4);background:none;border:none;border-bottom:1px solid var(--color-slate-800);cursor:pointer;width:100%;text-align:left;transition:opacity .15s;flex-shrink:0}.sidebar-logo:hover{opacity:.8}.sidebar-logo-icon{width:26px;height:26px;color:var(--color-primary-light);flex-shrink:0}.sidebar-logo-name{font-size:1rem;font-weight:700;color:#fff;letter-spacing:-.025em}.sidebar-logo-name span{color:var(--color-primary-light)}.sidebar-primary-nav{display:flex;flex-direction:column;padding:var(--space-3) var(--space-2);gap:2px}.sidebar-nav-icon{width:16px;height:16px;flex-shrink:0;opacity:.7}.sidebar-nav-item{display:flex;align-items:center;gap:var(--space-3);padding:.5rem var(--space-3);border-radius:var(--radius-md);font-size:.875rem;font-weight:500;color:var(--color-slate-400);background:none;border:none;cursor:pointer;text-align:left;width:100%;transition:background .15s,color .15s}.sidebar-nav-item:hover:not(:disabled){background:#ffffff0f;color:#fff}.sidebar-nav-item:hover:not(:disabled) .sidebar-nav-icon{opacity:1}.sidebar-nav-item.active{background:#8b2f5b38;color:#fff}.sidebar-nav-item.active .sidebar-nav-icon{color:var(--color-primary-light);opacity:1}.sidebar-nav-item-soon{opacity:.6;cursor:not-allowed!important}.sidebar-soon-badge{margin-left:auto;font-size:.6875rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--color-slate-400);background:#ffffff0d;border:1px solid var(--color-slate-700);padding:.1rem .4rem;border-radius:var(--radius-sm)}.sidebar-project-context{padding:0 var(--space-2) var(--space-2)}.sidebar-context-divider{height:1px;background:var(--color-slate-800);margin:var(--space-1) var(--space-2) var(--space-3)}.sidebar-back-btn{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-2);background:none;border:none;cursor:pointer;font-size:.8125rem;color:var(--color-slate-400);transition:color .15s;margin-bottom:var(--space-3);width:100%;text-align:left}.sidebar-back-btn:hover{color:var(--color-slate-200)}.sidebar-back-icon{width:13px;height:13px;flex-shrink:0}.sidebar-project-label{padding:0 var(--space-3) var(--space-3)}.sidebar-project-name{font-size:.875rem;font-weight:600;color:#fff;line-height:1.35;margin-bottom:var(--space-1);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.sidebar-project-meta{font-size:.8125rem;color:var(--color-slate-400)}.sidebar-sub-nav{display:flex;flex-direction:column;gap:2px}.sidebar-sub-item{display:block;padding:.4rem var(--space-3);border-radius:var(--radius-md);font-size:.875rem;color:var(--color-slate-400);background:none;border:none;cursor:pointer;text-align:left;width:100%;transition:background .15s,color .15s}.sidebar-sub-item:hover{background:#ffffff0d;color:var(--color-slate-200)}.sidebar-sub-item.active{color:#fff;background:#ffffff12;font-weight:500}.sidebar-spacer{flex:1;min-height:var(--space-4)}.sidebar-footer{padding:var(--space-4);border-top:1px solid var(--color-slate-800);flex-shrink:0}.sidebar-user-row{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);min-width:0}.sidebar-avatar{width:30px;height:30px;min-width:30px;border-radius:50%;background:var(--color-primary-dark);color:#ffffffe6;font-size:.6875rem;font-weight:700;display:flex;align-items:center;justify-content:center;letter-spacing:.02em}.sidebar-user-info{min-width:0}.sidebar-user-name{font-size:.8125rem;font-weight:500;color:var(--color-slate-200);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user-email{font-size:.75rem;color:var(--color-slate-400);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-signout{width:100%;padding:.375rem var(--space-2);background:none;border:1px solid var(--color-slate-700);border-radius:var(--radius-md);font-size:.8125rem;color:var(--color-slate-400);cursor:pointer;text-align:center;transition:border-color .15s,color .15s,background .15s}.sidebar-signout:hover{border-color:var(--color-slate-500);color:var(--color-slate-200);background:#ffffff0a}.app-content{flex:1;min-width:0;height:100vh;overflow-y:auto}@media(max-width:768px){.app-sidebar{display:none}.app-shell{height:auto;overflow:visible}.app-content{height:auto;min-height:100vh;overflow-y:visible}}.sidebar-credits{padding:0 var(--space-3) var(--space-3)}.credit-balance-widget{display:flex;align-items:center;justify-content:space-between;background:#ffffff0d;border:1px solid var(--color-slate-700);border-radius:8px;padding:var(--space-2) var(--space-3);gap:var(--space-2)}.credit-balance-label{font-size:.75rem;color:var(--color-slate-300);font-weight:500;flex:1}.credit-balance-low{color:#f87171}.credit-balance-topup{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--color-primary-light, #60a5fa);background:none;border:1px solid var(--color-primary-light, #60a5fa);border-radius:4px;padding:2px 8px;cursor:pointer;white-space:nowrap;transition:background .15s}.credit-balance-topup:hover{background:#60a5fa1a}.login-page{display:flex;flex-direction:column;min-height:100vh;background:var(--color-background)}.login-nav{background:#fff;border-bottom:1px solid var(--color-border);position:relative;z-index:10}.login-nav-inner{display:flex;align-items:center;justify-content:space-between;height:56px}.login-nav-logo{display:flex;align-items:center;gap:var(--space-2)}.login-nav-icon{width:26px;height:26px;color:var(--color-primary)}.login-nav-brand{font-size:1rem;font-weight:700;color:var(--color-slate-900);letter-spacing:-.02em}.login-nav-brand span{color:var(--color-primary)}.login-nav-links{display:flex;align-items:center;gap:var(--space-1)}.nav-text-link{background:none;border:none;padding:var(--space-2) var(--space-3);font-size:.875rem;font-weight:500;color:var(--color-text-secondary);cursor:pointer;border-radius:var(--radius-md);transition:color .15s,background .15s}.nav-text-link:hover{color:var(--color-text);background:var(--color-slate-100)}.login-main{flex:1;display:flex}.login-split{display:flex;flex:1;min-height:calc(100vh - 56px)}.login-brand-panel{width:45%;background:linear-gradient(160deg,var(--color-primary-dark) 0%,var(--color-primary) 100%);display:flex;align-items:center;padding:var(--space-16) var(--space-12);position:relative;overflow:hidden}.login-brand-panel:before{content:"";position:absolute;top:-80px;right:-80px;width:320px;height:320px;border-radius:50%;background:#ffffff0a}.login-brand-panel:after{content:"";position:absolute;bottom:-60px;left:-60px;width:240px;height:240px;border-radius:50%;background:#ffffff0a}.login-brand-content{position:relative;z-index:1}.login-brand-logo{width:72px;height:72px;color:#ffffffe6;margin-bottom:var(--space-6)}.login-brand-logo svg{width:100%;height:100%}.login-brand-name{font-size:2.25rem;font-weight:700;color:#fff;letter-spacing:-.03em;margin-bottom:var(--space-4)}.login-brand-tagline{font-size:1.0625rem;color:#ffffffe0;line-height:1.7;max-width:380px;margin-bottom:var(--space-10)}.login-brand-stats{display:flex;align-items:center;gap:var(--space-5);padding-top:var(--space-8);border-top:1px solid rgba(255,255,255,.15)}.login-stat{text-align:center}.login-stat-number{font-size:1.25rem;font-weight:700;color:#fff;letter-spacing:-.02em}.login-stat-label{font-size:.8125rem;color:#fffc;margin-top:var(--space-1)}.login-stat-divider{width:1px;height:32px;background:#ffffff26}.login-form-panel{flex:1;display:flex;align-items:center;justify-content:center;padding:var(--space-12) var(--space-8);background:#fff}.login-form-container{width:100%;max-width:400px}.login-form-header{margin-bottom:var(--space-8)}.login-form-header h2{font-size:1.75rem;font-weight:700;letter-spacing:-.025em;margin-bottom:var(--space-2)}.login-form-header p{font-size:.9375rem;margin:0}.login-form{margin-bottom:var(--space-5)}.error-banner{display:flex;align-items:center;gap:var(--space-3);background:var(--color-error-bg);color:var(--color-error);border:1px solid rgba(220,38,38,.2);border-left:3px solid var(--color-error);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);margin-bottom:var(--space-5);font-size:.875rem;font-weight:500}.error-icon{width:18px;height:18px;background:var(--color-error);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700;flex-shrink:0}.login-submit{width:100%;margin-top:var(--space-2);font-weight:600}.login-divider{display:flex;align-items:center;gap:var(--space-4);margin:var(--space-5) 0;color:var(--color-text-muted);font-size:.8125rem}.login-divider:before,.login-divider:after{content:"";flex:1;height:1px;background:var(--color-border)}.login-trial-btn{width:100%;font-weight:500}.login-demo-note{margin-top:var(--space-6);padding-top:var(--space-5);border-top:1px solid var(--color-border);font-size:.8125rem;color:var(--color-text-muted);text-align:center;margin-bottom:0}@media(max-width:768px){.login-split{flex-direction:column}.login-brand-panel{width:100%;padding:var(--space-8) var(--space-6);min-height:auto}.login-brand-tagline,.login-brand-stats{display:none}.login-form-panel{padding:var(--space-8) var(--space-6);align-items:flex-start}}.public-nav{position:sticky;top:0;z-index:50;background:#fffffff2;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--color-border)}.public-nav-inner{display:flex;align-items:center;justify-content:space-between;height:60px}.nav-logo{display:flex;align-items:center;gap:var(--space-2);background:none;border:none;cursor:pointer;padding:0}.nav-logo-icon{width:28px;height:28px;color:var(--color-primary)}.nav-logo-name{font-size:1.0625rem;font-weight:700;color:var(--color-slate-900);letter-spacing:-.02em}.nav-logo-name span{color:var(--color-primary)}.public-nav-links{display:flex;align-items:center;gap:var(--space-2)}.nav-link{background:none;border:none;padding:var(--space-2) var(--space-3);font-size:.9375rem;font-weight:500;color:var(--color-text-secondary);cursor:pointer;border-radius:var(--radius-md);transition:color .15s,background .15s}.nav-link:hover,.nav-link.active{color:var(--color-text);background:var(--color-slate-100)}.about-hero{padding:var(--space-24) 0 var(--space-20);background:linear-gradient(160deg,#fff 60%,#8b2f5b0a);border-bottom:1px solid var(--color-border)}.about-hero-inner{max-width:760px}.about-hero-eyebrow{display:inline-block;font-size:.8125rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--color-primary);background:var(--color-primary-subtle);border:1px solid var(--color-primary-border);padding:.25rem var(--space-3);border-radius:var(--radius-sm);margin-bottom:var(--space-6)}.about-hero-title{font-size:clamp(2.25rem,5vw,3.5rem);font-weight:700;line-height:1.1;letter-spacing:-.03em;color:var(--color-slate-900);margin-bottom:var(--space-6)}.about-hero-subtitle{font-size:1.125rem;line-height:1.75;color:var(--color-text-secondary);max-width:640px;margin-bottom:var(--space-10)}.about-hero-actions{display:flex;align-items:center;gap:var(--space-4);flex-wrap:wrap}.about-stats{padding:var(--space-12) 0;background:var(--color-slate-900)}.stats-grid{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap}.stat-item{flex:1;min-width:160px;text-align:center;padding:var(--space-4)}.stat-number{font-size:2.5rem;font-weight:700;color:#fff;letter-spacing:-.03em;line-height:1;margin-bottom:var(--space-1)}.stat-unit{font-size:.875rem;font-weight:500;color:var(--color-primary-light);margin-bottom:var(--space-2)}.stat-label{font-size:.8125rem;color:var(--color-slate-400);line-height:1.5}.stat-divider{width:1px;height:60px;background:var(--color-slate-700);flex-shrink:0}.about-section{padding:var(--space-20) 0}.about-section-alt{background:var(--color-slate-50);border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}.about-section-header{margin-bottom:var(--space-12)}.about-section-header h2{font-size:2rem;font-weight:700;letter-spacing:-.025em;margin-top:var(--space-3)}.about-section-header h6{color:var(--color-primary)}.about-section-inner{display:grid;gap:var(--space-12)}.about-section-inner.two-col{grid-template-columns:1fr 1fr;align-items:center}.about-section-inner.two-col.reverse{direction:rtl}.about-section-inner.two-col.reverse>*{direction:ltr}.about-section-text h6{color:var(--color-primary);margin-bottom:var(--space-3)}.about-section-text h2{font-size:1.875rem;letter-spacing:-.025em;margin-bottom:var(--space-5)}.about-section-text p{color:var(--color-text-secondary);line-height:1.75;margin-bottom:var(--space-4)}.about-problem-card{background:var(--color-surface)}.about-problem-card h4{font-size:.9375rem;font-weight:600;color:var(--color-text);margin-bottom:var(--space-5)}.problem-list{list-style:none;display:flex;flex-direction:column;gap:var(--space-5)}.problem-list li{display:flex;gap:var(--space-4);align-items:flex-start}.problem-icon{color:var(--color-primary);font-weight:700;font-size:1.25rem;line-height:1.4;flex-shrink:0}.problem-list strong{display:block;font-size:.9375rem;font-weight:600;margin-bottom:var(--space-1)}.problem-list p{font-size:.875rem;color:var(--color-text-secondary);line-height:1.6;margin:0}.steps-grid{display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;align-items:start;gap:0}.step-card{padding:var(--space-6);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm)}.step-number{font-size:.75rem;font-weight:700;letter-spacing:.08em;color:var(--color-primary);margin-bottom:var(--space-3);font-variant-numeric:tabular-nums}.step-card h4{font-size:1rem;font-weight:600;margin-bottom:var(--space-3);letter-spacing:-.01em}.step-card p{font-size:.875rem;color:var(--color-text-secondary);line-height:1.65;margin:0}.step-connector{width:40px;height:1px;background:var(--color-border);margin-top:60px;flex-shrink:0}.audience-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-5)}.audience-card{padding:var(--space-8) var(--space-6);border-radius:var(--radius-xl);transition:box-shadow .2s,border-color .2s}.audience-card:hover{border-color:var(--color-primary-border);box-shadow:var(--shadow-md)}.audience-icon{font-size:1.5rem;color:var(--color-primary);margin-bottom:var(--space-4);display:block}.audience-card h4{font-size:1rem;font-weight:600;margin-bottom:var(--space-3)}.audience-card p{font-size:.875rem;color:var(--color-text-secondary);line-height:1.65;margin:0}.about-future-visual{padding:var(--space-8)}.future-metric{margin-bottom:var(--space-8);padding-bottom:var(--space-8);border-bottom:1px solid var(--color-border)}.future-metric-number{font-size:3rem;font-weight:700;color:var(--color-primary);letter-spacing:-.04em;line-height:1;margin-bottom:var(--space-2)}.future-metric-label{font-size:.875rem;color:var(--color-text-secondary)}.future-bar-label{font-size:.8125rem;font-weight:600;color:var(--color-text);margin-bottom:var(--space-4);text-transform:uppercase;letter-spacing:.04em}.future-bar-row{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3)}.future-bar-tag{font-size:.8125rem;color:var(--color-text-secondary);width:120px;flex-shrink:0}.future-bar-track{flex:1;height:8px;background:var(--color-slate-100);border-radius:4px;overflow:hidden}.future-bar-fill{height:100%;border-radius:4px;transition:width .6s ease}.future-bar-fill.high{background:var(--color-primary)}.future-bar-fill.low{background:var(--color-slate-300)}.future-bar-pct{font-size:.8125rem;font-weight:600;color:var(--color-text);width:32px;text-align:right}.about-cta{padding:var(--space-20) 0;background:linear-gradient(135deg,var(--color-primary-dark) 0%,var(--color-primary) 100%)}.about-cta-inner{max-width:640px}.about-cta h2{font-size:2rem;font-weight:700;letter-spacing:-.025em;color:#fff;margin-bottom:var(--space-4)}.about-cta .text-muted{color:#ffffffb3;font-size:1.0625rem;margin-bottom:var(--space-8)}.about-cta .btn-primary{background:#fff;color:var(--color-primary-dark)}.about-cta .btn-primary:hover{background:var(--color-slate-100)}.about-cta .btn-outline{border-color:#fff6;color:#fff}.about-cta .btn-outline:hover{background:#ffffff1a;border-color:#fff9;color:#fff}.public-footer{padding:var(--space-8) 0;background:var(--color-slate-900);border-top:1px solid var(--color-slate-800)}.public-footer-inner{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-4)}.footer-brand{font-size:.9375rem;font-weight:700;color:#fff;letter-spacing:-.02em}.footer-copy{font-size:.8125rem;color:var(--color-slate-400)}.footer-links{display:flex;gap:var(--space-2)}.footer-link{background:none;border:none;padding:var(--space-1) var(--space-3);font-size:.8125rem;color:var(--color-slate-400);cursor:pointer;transition:color .15s}.footer-link:hover{color:#fff}.about-outcomes{background:var(--color-slate-900);border-top:1px solid var(--color-slate-800);border-bottom:1px solid var(--color-slate-800)}.about-outcomes .about-section-header h6{color:var(--color-primary-light);background:#8b2f5b26;border-color:#8b2f5b4d;display:inline-block;padding:.25rem var(--space-3);border-radius:var(--radius-sm);border:1px solid}.about-outcomes .about-section-header h2{color:#fff;font-size:clamp(1.625rem,3vw,2.125rem);margin-top:var(--space-3)}.about-outcomes-intro{font-size:1.0625rem;color:var(--color-slate-400);max-width:640px;margin:var(--space-4) auto 0;line-height:1.75}.outcomes-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-5)}.outcome-card{background:var(--color-slate-800);border:1px solid var(--color-slate-700);border-radius:var(--radius-xl);padding:var(--space-8) var(--space-6);display:flex;flex-direction:column;transition:border-color .2s,box-shadow .2s}.outcome-card:hover{border-color:#8b2f5b73;box-shadow:0 0 0 1px #8b2f5b33,var(--shadow-lg)}.outcome-card-accent{background:linear-gradient(160deg,rgba(139,47,91,.18) 0%,var(--color-slate-800) 60%);border-color:#8b2f5b59}.outcome-card-accent:hover{border-color:#8b2f5b99}.outcome-number{font-size:3.25rem;font-weight:700;color:var(--color-primary-light);letter-spacing:-.04em;line-height:1;margin-bottom:var(--space-1)}.outcome-card-accent .outcome-number{color:#e8a0c4}.outcome-metric{font-size:.8125rem;font-weight:500;color:var(--color-slate-400);margin-bottom:var(--space-5);line-height:1.4}.outcome-card h4{font-size:1rem;font-weight:600;color:#fff;margin-bottom:var(--space-3);letter-spacing:-.01em}.outcome-card p{font-size:.875rem;color:var(--color-slate-400);line-height:1.7;flex:1;margin-bottom:var(--space-6)}.outcome-tag{display:inline-block;font-size:.75rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--color-slate-500);background:#ffffff0a;border:1px solid var(--color-slate-700);padding:.2rem var(--space-2);border-radius:var(--radius-sm);align-self:flex-start;margin-top:auto}.outcome-tag-accent{color:var(--color-primary-light);background:#8b2f5b1f;border-color:#8b2f5b4d}@media(max-width:1024px){.audience-grid{grid-template-columns:1fr 1fr}.steps-grid{grid-template-columns:1fr 1fr;gap:var(--space-4)}.step-connector{display:none}.outcomes-grid{grid-template-columns:1fr 1fr}}@media(max-width:768px){.about-section-inner.two-col{grid-template-columns:1fr}.about-section-inner.two-col.reverse{direction:ltr}.stats-grid{justify-content:center}.stat-divider{display:none}.audience-grid,.steps-grid,.outcomes-grid{grid-template-columns:1fr}.about-hero-title{font-size:2rem}.public-nav-links .btn{display:none}}.pricing-hero{padding:var(--space-20) 0 var(--space-12);background:linear-gradient(160deg,#fff 60%,#8b2f5b0a);border-bottom:1px solid var(--color-border)}.pricing-hero-inner{max-width:640px;margin:0 auto}.pricing-eyebrow{display:inline-block;font-size:.8125rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--color-primary);background:var(--color-primary-subtle);border:1px solid var(--color-primary-border);padding:.25rem var(--space-3);border-radius:var(--radius-sm);margin-bottom:var(--space-5)}.pricing-title{font-size:clamp(1.875rem,4vw,2.75rem);font-weight:700;letter-spacing:-.025em;color:var(--color-slate-900);margin-bottom:var(--space-4)}.pricing-subtitle{font-size:1.0625rem;color:var(--color-text-secondary);line-height:1.7;margin-bottom:var(--space-8)}.billing-toggle{display:inline-flex;align-items:center;gap:var(--space-3);background:var(--color-slate-100);border:1px solid var(--color-border);border-radius:100px;padding:var(--space-2) var(--space-4)}.toggle-label{font-size:.875rem;font-weight:500;color:var(--color-text-muted);display:flex;align-items:center;gap:var(--space-2);transition:color .15s}.toggle-label.active{color:var(--color-text)}.toggle-badge{font-size:.75rem;font-weight:700;letter-spacing:.04em;background:var(--color-primary);color:#fff;padding:.125rem var(--space-2);border-radius:100px}.toggle-switch{position:relative;width:40px;height:22px;background:var(--color-slate-300);border-radius:11px;border:none;cursor:pointer;transition:background .2s;flex-shrink:0}.toggle-switch.annual{background:var(--color-primary)}.toggle-thumb{position:absolute;top:3px;left:3px;width:16px;height:16px;background:#fff;border-radius:50%;box-shadow:var(--shadow-sm);transition:left .2s}.toggle-switch.annual .toggle-thumb{left:21px}.pricing-plans-section{padding:var(--space-16) 0;background:var(--color-background)}.plans-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-5);margin-bottom:var(--space-6);align-items:start}.plan-card.card-flat{padding:var(--space-8);border-radius:var(--radius-xl)}.plan-card-highlighted{background:var(--color-surface);border-radius:var(--radius-xl);border:2px solid var(--color-primary);box-shadow:0 0 0 4px var(--color-primary-subtle),var(--shadow-lg);padding:var(--space-8);position:relative}.plan-badge{position:absolute;top:-13px;left:50%;transform:translate(-50%);background:var(--color-primary);color:#fff;font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:.25rem var(--space-4);border-radius:100px;white-space:nowrap}.plan-header{margin-bottom:var(--space-6)}.plan-name{font-size:1.125rem;font-weight:700;color:var(--color-slate-900);margin-bottom:var(--space-2);letter-spacing:-.02em}.plan-tagline{font-size:.875rem;color:var(--color-text-secondary);line-height:1.5;margin:0}.plan-price{margin-bottom:var(--space-6);padding-bottom:var(--space-6);border-bottom:1px solid var(--color-border)}.price-amount{font-size:2.5rem;font-weight:700;color:var(--color-slate-900);letter-spacing:-.04em;line-height:1}.price-period{font-size:.875rem;color:var(--color-text-muted);margin-left:var(--space-1)}.price-monthly-equiv{margin-top:var(--space-2);font-size:.8125rem;color:var(--color-text-muted);text-decoration:line-through}.plan-limits{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-6)}.plan-limit-item{display:flex;align-items:center;gap:var(--space-2);font-size:.875rem;font-weight:500;color:var(--color-text)}.limit-icon{font-size:.75rem;color:var(--color-primary);width:16px;text-align:center}.plan-cta{width:100%;margin-bottom:var(--space-6);font-weight:600}.plan-features{border-top:1px solid var(--color-border);padding-top:var(--space-5)}.plan-features-label{font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:var(--space-4)}.plan-features ul{list-style:none;display:flex;flex-direction:column;gap:var(--space-3)}.plan-features li{display:flex;align-items:flex-start;gap:var(--space-2);font-size:.875rem;color:var(--color-text-secondary);line-height:1.5}.feature-check{color:var(--color-success);font-weight:700;font-size:.75rem;flex-shrink:0;margin-top:2px}.enterprise-card{display:flex;align-items:center;justify-content:space-between;gap:var(--space-10);padding:var(--space-8) var(--space-10);border-radius:var(--radius-xl);border:1px solid var(--color-border);background:var(--color-slate-900)}.enterprise-eyebrow{font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--color-primary-light);margin-bottom:var(--space-3)}.enterprise-left h3{font-size:1.25rem;font-weight:700;color:#fff;margin-bottom:var(--space-3);letter-spacing:-.02em}.enterprise-left p{font-size:.9375rem;color:var(--color-slate-400);line-height:1.7;max-width:560px;margin:0}.enterprise-right{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);flex-shrink:0;text-align:center}.enterprise-price{font-size:1.5rem;font-weight:700;color:#fff;letter-spacing:-.025em}.enterprise-note{font-size:.8125rem;color:var(--color-slate-400);margin:0}.comparison-section{padding:var(--space-20) 0;background:var(--color-slate-50);border-top:1px solid var(--color-border)}.comparison-title{font-size:1.5rem;font-weight:700;letter-spacing:-.025em;margin-bottom:var(--space-8)}.comparison-table-wrap{overflow-x:auto;border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface)}.comparison-table{width:100%;border-collapse:collapse;font-size:.875rem}.comparison-table th{padding:var(--space-4) var(--space-5);text-align:left;font-size:.8125rem;font-weight:600;letter-spacing:-.01em;color:var(--color-text);background:var(--color-slate-50);border-bottom:1px solid var(--color-border)}.comparison-table th:first-child{width:40%;border-radius:var(--radius-xl) 0 0 0}.comparison-table th.col-highlighted{background:var(--color-primary-subtle);color:var(--color-primary-dark);border-bottom-color:var(--color-primary-border)}.comparison-table td{padding:var(--space-3) var(--space-5);color:var(--color-text-secondary);border-bottom:1px solid var(--color-border-subtle)}.comparison-table td.col-highlighted{background:#8b2f5b08}.comparison-table tr:last-child td{border-bottom:none}.table-section-row td{padding:var(--space-4) var(--space-5) var(--space-2);font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted);background:var(--color-slate-50)!important;border-bottom:1px solid var(--color-border)}.table-check{color:var(--color-success);font-weight:700}.table-dash{color:var(--color-text-muted)}.faq-section{padding:var(--space-20) 0;background:var(--color-surface);border-top:1px solid var(--color-border)}.faq-title{font-size:1.5rem;font-weight:700;letter-spacing:-.025em;margin-bottom:var(--space-10)}.faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-8) var(--space-12)}.faq-item h4{font-size:.9375rem;font-weight:600;margin-bottom:var(--space-3);color:var(--color-text);letter-spacing:-.01em}.faq-item p{font-size:.875rem;color:var(--color-text-secondary);line-height:1.7;margin:0}@media(max-width:1024px){.plans-grid{grid-template-columns:1fr;max-width:500px;margin-left:auto;margin-right:auto}.enterprise-card{flex-direction:column;text-align:center}.enterprise-left p{max-width:100%}.faq-grid{grid-template-columns:1fr}}@media(max-width:768px){.pricing-title{font-size:1.875rem}.comparison-table{font-size:.8125rem}}.dashboard-page{min-height:100vh;background:var(--color-background)}.dashboard-main{padding:var(--space-8) 0 var(--space-16)}.dashboard-title-row{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-6)}.dashboard-title-row h1{font-size:1.75rem;letter-spacing:-.025em;margin-bottom:var(--space-1)}.dashboard-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-4);margin-bottom:var(--space-8)}.dash-stat{padding:var(--space-5) var(--space-6);border-radius:var(--radius-xl);border:1px solid var(--color-border);background:var(--color-surface)}.dash-stat-number{font-size:1.875rem;font-weight:700;color:var(--color-text);letter-spacing:-.04em;line-height:1;margin-bottom:var(--space-2)}.dash-stat-label{font-size:.8125rem;color:var(--color-text-secondary);font-weight:500}.project-table{padding:0;overflow:hidden}.project-table-header{display:grid;grid-template-columns:2fr 1.2fr 1.4fr 100px 100px 60px;gap:var(--space-4);padding:var(--space-3) var(--space-6);background:var(--color-slate-50);border-bottom:1px solid var(--color-border);font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted)}.project-table-row{display:grid;grid-template-columns:2fr 1.2fr 1.4fr 100px 100px 60px;gap:var(--space-4);padding:var(--space-4) var(--space-6);border-bottom:1px solid var(--color-border-subtle);align-items:center;cursor:pointer;transition:background .12s}.project-table-row:last-child{border-bottom:none}.project-table-row:hover{background:var(--color-slate-50)}.project-name-cell{overflow:hidden}.project-name{font-size:.9375rem;font-weight:600;color:var(--color-text);margin-bottom:var(--space-1);letter-spacing:-.01em}.project-desc{font-size:.8125rem;color:var(--color-text-muted);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.project-cell{font-size:.875rem;color:var(--color-text-secondary)}.project-type-cell{font-size:.8125rem}.project-date-cell{font-size:.8125rem;color:var(--color-text-muted)}.project-action-cell{text-align:right}.project-view-link{font-size:.8125rem;font-weight:500;color:var(--color-primary);opacity:0;transition:opacity .15s}.project-table-row:hover .project-view-link{opacity:1}.empty-state{text-align:center;padding:var(--space-20) var(--space-8)}.empty-icon{font-size:3rem;color:var(--color-text-muted);margin-bottom:var(--space-5)}.empty-state h3{font-size:1.25rem;margin-bottom:var(--space-2)}@media(max-width:1024px){.project-table-header,.project-table-row{grid-template-columns:2fr 1fr 100px 80px 48px}.project-table-header span:nth-child(3),.project-table-row .project-type-cell{display:none}}@media(max-width:768px){.dashboard-stats{grid-template-columns:1fr 1fr}.dashboard-title-row{flex-direction:column;gap:var(--space-4)}.project-table-header,.project-table-row{grid-template-columns:1fr 100px 48px}.project-table-header span:nth-child(2),.project-table-header span:nth-child(3),.project-table-header span:nth-child(5),.project-table-row .project-cell:nth-child(2),.project-table-row .project-type-cell,.project-table-row .project-date-cell{display:none}}.new-project-page{min-height:100vh;background:var(--color-background)}.new-project-main{padding:var(--space-8) 0 var(--space-16)}.new-project-layout{display:grid;grid-template-columns:1fr 300px;gap:var(--space-8);align-items:start}.new-project-heading{margin-bottom:var(--space-6)}.new-project-heading h1{font-size:1.75rem;letter-spacing:-.025em;margin-bottom:var(--space-2)}.new-project-heading p{font-size:.9375rem;line-height:1.65;margin:0}.project-form{display:flex;flex-direction:column;gap:var(--space-4)}.form-section{padding:var(--space-6)}.form-section-label{font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:var(--space-5)}.form-section-desc{font-size:.875rem;color:var(--color-text-secondary);line-height:1.6;margin-bottom:var(--space-5)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}.textarea-field{resize:vertical;min-height:100px;line-height:1.6}.select-field{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2364748B' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-3) center;padding-right:var(--space-8);cursor:pointer}.form-actions{display:flex;justify-content:flex-end;gap:var(--space-3);padding-top:var(--space-2)}.new-project-info-col{display:flex;flex-direction:column;gap:var(--space-4);position:sticky;top:calc(56px + var(--space-8))}.info-card{padding:var(--space-5)}.info-card h4{font-size:.875rem;font-weight:600;color:var(--color-text);margin-bottom:var(--space-4);letter-spacing:-.01em}.info-code-list{list-style:none;display:flex;flex-direction:column;gap:var(--space-3)}.info-code-list li{font-size:.8125rem;color:var(--color-text-secondary);line-height:1.5;display:flex;flex-direction:column;gap:var(--space-1)}.info-code-tag{font-size:.7rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--color-primary)}.info-tips-list{list-style:none;display:flex;flex-direction:column;gap:var(--space-3)}.info-tips-list li{font-size:.8125rem;color:var(--color-text-secondary);line-height:1.5;padding-left:var(--space-4);position:relative}.info-tips-list li:before{content:"→";position:absolute;left:0;color:var(--color-primary);font-size:.75rem}@media(max-width:900px){.new-project-layout{grid-template-columns:1fr}.new-project-info-col{position:static}.form-row{grid-template-columns:1fr}}.upload-page{min-height:100vh;background:var(--color-background)}.upload-main{padding:var(--space-8) 0 var(--space-16)}.upload-container{width:100%}.upload-header{margin-bottom:var(--space-8)}.upload-header h1{font-size:1.75rem;letter-spacing:-.025em;margin-bottom:var(--space-2)}.upload-sections{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4);margin-bottom:var(--space-8)}.upload-section{padding:var(--space-5)}.section-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-4);gap:var(--space-3)}.section-header h3{font-size:1rem;font-weight:600;letter-spacing:-.01em;margin-bottom:var(--space-1)}.section-header p{font-size:.8125rem;margin:0}.upload-zone{border:1.5px dashed var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6) var(--space-4);text-align:center;background:var(--color-slate-50);transition:all .15s ease;cursor:pointer}.upload-zone:hover{border-color:var(--color-primary);background:var(--color-primary-subtle)}.upload-zone.drag-active{border-color:var(--color-primary);background:var(--color-primary-subtle);transform:scale(1.01)}.file-input{display:none}.upload-label{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);cursor:pointer}.upload-icon{font-size:1.75rem;opacity:.5}.upload-text{font-size:.875rem;font-weight:500;color:var(--color-text)}.upload-hint{font-size:.75rem;color:var(--color-text-muted)}.file-list{margin-top:var(--space-4);display:flex;flex-direction:column;gap:var(--space-2)}.file-item{display:flex;justify-content:space-between;align-items:center;padding:var(--space-3) var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md)}.file-info{display:flex;align-items:center;gap:var(--space-3);flex:1;min-width:0}.file-icon{font-size:1.25rem;flex-shrink:0}.file-details{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.file-name{font-size:.875rem;font-weight:500;color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-size{font-size:.75rem;color:var(--color-text-muted)}.file-progress{display:flex;align-items:center;gap:var(--space-3);width:160px}.progress-bar{flex:1;height:4px;background:var(--color-slate-200);border-radius:2px;overflow:hidden}.progress-fill{height:100%;background:var(--color-primary);transition:width .2s ease}.progress-text{font-size:.75rem;color:var(--color-text-muted);min-width:32px;text-align:right;font-variant-numeric:tabular-nums}.btn-remove{background:none;border:none;color:var(--color-text-muted);font-size:1rem;cursor:pointer;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:all .15s;flex-shrink:0}.btn-remove:hover{background:var(--color-error-bg);color:var(--color-error)}.upload-actions{display:flex;justify-content:flex-end;gap:var(--space-3);padding-top:var(--space-6);border-top:1px solid var(--color-border)}@media(max-width:768px){.upload-sections{grid-template-columns:1fr}.upload-actions{flex-direction:column-reverse}.upload-actions button{width:100%}}.analysis-page{min-height:100vh;background:var(--color-background)}.analysis-main{padding:var(--space-8) 0 var(--space-16)}.processing-wrapper{display:flex;align-items:center;justify-content:center;min-height:70vh;padding:var(--space-8) 0}.processing-card{max-width:560px;width:100%;text-align:center;padding:var(--space-10)}.processing-spinner{display:flex;justify-content:center;margin-bottom:var(--space-8)}.spinner-ring{width:56px;height:56px;border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin .9s linear infinite}.processing-card h2{font-size:1.375rem;letter-spacing:-.02em;margin-bottom:var(--space-3)}.processing-card p{font-size:.9375rem;margin-bottom:var(--space-8);max-width:420px;margin-left:auto;margin-right:auto}.progress-track{width:100%;height:4px;background:var(--color-slate-200);border-radius:2px;overflow:hidden;margin-bottom:var(--space-3)}.progress-fill-bar{height:100%;background:linear-gradient(90deg,var(--color-primary-dark) 0%,var(--color-primary-light) 100%);border-radius:2px;transition:width .3s ease}.progress-meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-8)}.progress-pct{font-size:.875rem;font-weight:700;color:var(--color-primary);font-variant-numeric:tabular-nums}.progress-step-text{font-size:.8125rem;color:var(--color-text-muted)}.analysis-steps{display:flex;flex-direction:column;gap:var(--space-3);padding-top:var(--space-6);border-top:1px solid var(--color-border);text-align:left}.analysis-step{display:flex;align-items:center;gap:var(--space-3);font-size:.875rem;color:var(--color-text-muted);transition:color .3s}.analysis-step.step-active{color:var(--color-text-secondary)}.step-dot{width:20px;height:20px;border-radius:50%;border:1.5px solid var(--color-border);background:var(--color-surface);display:flex;align-items:center;justify-content:center;font-size:.6875rem;color:var(--color-success);font-weight:700;flex-shrink:0;transition:all .3s}.analysis-step.step-active .step-dot{border-color:var(--color-primary);background:var(--color-primary-subtle)}.report-header-row{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-8);gap:var(--space-6)}.report-header-row h1{font-size:1.75rem;letter-spacing:-.025em;margin-bottom:var(--space-1)}.report-header-actions{display:flex;gap:var(--space-3);flex-shrink:0}.summary-row{display:flex;gap:var(--space-4);margin-bottom:var(--space-8);align-items:stretch}.summary-status-card{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-5) var(--space-6);border-radius:var(--radius-xl);border:1px solid var(--color-border);min-width:200px;flex-shrink:0}.status-indicator{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.125rem;font-weight:700;flex-shrink:0}.status-card-compliant .status-indicator{background:var(--color-success);color:#fff}.status-card-non-compliant .status-indicator{background:var(--color-error);color:#fff}.status-card-needs-review .status-indicator{background:var(--color-warning);color:#fff}.status-label{font-size:.75rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:var(--space-1)}.status-value{font-size:1.0625rem;font-weight:700;color:var(--color-text);letter-spacing:-.01em}.summary-metrics{display:flex;gap:var(--space-3);flex:1}.metric-card{flex:1;padding:var(--space-5) var(--space-4);text-align:center;border-radius:var(--radius-xl);border:1px solid var(--color-border);background:var(--color-surface)}.metric-number{font-size:1.875rem;font-weight:700;letter-spacing:-.04em;line-height:1;margin-bottom:var(--space-2);color:var(--color-text)}.metric-label{font-size:.75rem;color:var(--color-text-muted);font-weight:500}.filter-tabs{display:flex;gap:var(--space-1);border-bottom:1px solid var(--color-border);margin-bottom:var(--space-6)}.filter-tab{background:none;border:none;padding:var(--space-3) var(--space-4);font-size:.875rem;font-weight:500;color:var(--color-text-muted);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:color .15s,border-color .15s}.filter-tab:hover{color:var(--color-text)}.filter-tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.checks-list{display:flex;flex-direction:column;gap:var(--space-4);margin-bottom:var(--space-8)}.check-card{padding:var(--space-5) var(--space-6);border-left-width:3px;border-left-style:solid}.check-pass{border-left-color:var(--color-success)}.check-fail{border-left-color:var(--color-error)}.check-warning{border-left-color:var(--color-warning)}.check-pending{border-left-color:var(--color-slate-300)}.check-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-6);margin-bottom:var(--space-4)}.check-title-group{flex:1}.check-code-name{font-size:.9375rem;font-weight:600;color:var(--color-text);margin-bottom:var(--space-2);letter-spacing:-.01em}.check-requirement{font-size:.875rem;color:var(--color-text-secondary);line-height:1.6}.check-badges{display:flex;gap:var(--space-2);flex-shrink:0}.sev-badge{display:inline-flex;align-items:center;padding:.1875rem var(--space-2);border-radius:var(--radius-sm);font-size:.75rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.sev-critical{background:var(--color-error-bg);color:var(--color-error);border:1px solid rgba(220,38,38,.15)}.sev-major{background:var(--color-warning-bg);color:var(--color-warning);border:1px solid rgba(217,119,6,.15)}.sev-minor{background:var(--color-info-bg);color:var(--color-info);border:1px solid rgba(37,99,235,.15)}.sev-info{background:var(--color-slate-100);color:var(--color-slate-600);border:1px solid var(--color-border)}.check-body{display:flex;flex-direction:column;gap:var(--space-3);padding-top:var(--space-4);border-top:1px solid var(--color-border-subtle)}.check-detail-row{display:grid;grid-template-columns:100px 1fr;gap:var(--space-4);align-items:baseline}.check-detail-label{font-size:.75rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-muted);flex-shrink:0}.check-detail-value{font-size:.9375rem;color:var(--color-text-secondary);line-height:1.65}.check-fix{display:flex;gap:var(--space-4);padding:var(--space-4) var(--space-5);background:var(--color-primary-subtle);border:1px solid var(--color-primary-border);border-radius:var(--radius-md);align-items:flex-start}.check-fix-icon{font-size:1rem;color:var(--color-primary);flex-shrink:0;font-weight:600}.check-fix-label{display:block;font-size:.75rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--color-primary);margin-bottom:var(--space-1)}.check-fix-text{font-size:.9375rem;color:var(--color-text-secondary);line-height:1.65;margin:0}.no-results{text-align:center;padding:var(--space-10)}.report-footer-actions{display:flex;justify-content:flex-end;gap:var(--space-3)}@media(max-width:768px){.report-header-row{flex-direction:column}.report-header-actions{width:100%}.summary-row{flex-direction:column}.summary-metrics{flex-wrap:wrap}.metric-card{min-width:calc(50% - var(--space-2))}.check-header{flex-direction:column;gap:var(--space-3)}.check-badges{align-self:flex-start}.check-detail-row{grid-template-columns:1fr;gap:var(--space-1)}.report-footer-actions{flex-direction:column-reverse}.report-footer-actions button{width:100%}}.project-detail-page{padding:var(--space-8);background:var(--color-background);min-height:100%}.pd-container{max-width:1100px;margin:0 auto}.pd-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-8);margin-bottom:var(--space-7);margin-top:var(--space-5)}.pd-header-main{flex:1;min-width:0}.pd-header-title-row{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;margin-bottom:var(--space-2)}.pd-header-title-row h1{font-size:clamp(1.375rem,2.5vw,1.875rem);font-weight:700;letter-spacing:-.025em;line-height:1.2}.pd-header-meta{font-size:.9375rem;color:var(--color-text-secondary);margin-bottom:var(--space-2)}.pd-meta-sep{margin:0 var(--space-2);color:var(--color-text-muted)}.pd-description{font-size:.875rem;color:var(--color-text-secondary);line-height:1.65;max-width:580px}.pd-header-actions{display:flex;gap:var(--space-3);flex-shrink:0}.pd-stats-row{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-4);margin-bottom:var(--space-7)}.pd-stat{text-align:center;padding:var(--space-6) var(--space-5)}.pd-stat-number{font-size:1.875rem;font-weight:700;letter-spacing:-.04em;color:var(--color-text);line-height:1;margin-bottom:var(--space-2)}.pd-stat-label{font-size:.8125rem;color:var(--color-text-secondary)}.pd-body-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-6);margin-bottom:var(--space-6)}.pd-section{padding:var(--space-6)}.pd-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-5)}.pd-section-header h3{font-size:.9375rem;font-weight:600;letter-spacing:-.01em}.pd-empty{padding:var(--space-3) 0}.sub-table-head{display:grid;grid-template-columns:160px 140px 60px 60px 60px 70px 80px auto;gap:var(--space-3);padding:0 var(--space-2) var(--space-3);font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted);border-bottom:1px solid var(--color-border)}.sub-table-row{display:grid;grid-template-columns:160px 140px 60px 60px 60px 70px 80px auto;gap:var(--space-3);align-items:center;padding:var(--space-3) var(--space-2);border-bottom:1px solid var(--color-border-subtle);cursor:pointer;border-radius:var(--radius-md);margin:0 calc(-1 * var(--space-2));transition:background .15s;white-space:nowrap}.sub-table-row:hover{background:var(--color-slate-50)}.sub-table-row:last-child{border-bottom:none}.sub-num{font-size:.875rem;font-weight:600;color:var(--color-text-secondary)}.sub-date{font-size:.875rem;color:var(--color-text)}.sub-comment-ct{font-size:.8125rem;color:var(--color-text-secondary);white-space:nowrap}.sub-cost{font-size:.8125rem;color:var(--color-text-secondary);font-variant-numeric:tabular-nums}.sub-cta{font-size:.8125rem;color:var(--color-primary);font-weight:500;text-align:right}.documents-list{display:flex;flex-direction:column;gap:var(--space-3)}.document-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-lg);transition:border-color .15s,box-shadow .15s}.document-item:hover{border-color:var(--color-primary-border);box-shadow:var(--shadow-sm)}.doc-icon{font-size:1.25rem;flex-shrink:0}.doc-info{flex:1;min-width:0}.doc-title{font-size:.875rem;font-weight:500;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.doc-desc{font-size:.75rem;color:var(--color-text-secondary);margin-top:var(--space-1);display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.doc-badges{display:flex;gap:var(--space-1);flex-shrink:0}.doc-type-badge,.doc-ext-badge{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;padding:.15rem var(--space-2);border-radius:var(--radius-sm)}.doc-type-badge{background:var(--color-primary-subtle);color:var(--color-primary);border:1px solid var(--color-primary-border)}.doc-ext-badge{background:var(--color-slate-100);color:var(--color-slate-600);border:1px solid var(--color-border)}.pd-analysis{padding:var(--space-6)}.pd-analysis-actions{display:flex;gap:var(--space-2)}.analysis-summary-row{display:flex;align-items:center;gap:var(--space-6);flex-wrap:wrap}.analysis-overall{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-radius:var(--radius-lg);border:1px solid}.status-card-compliant{background:var(--color-success-bg);border-color:#16a34a33}.status-card-non-compliant{background:var(--color-error-bg);border-color:#dc262633}.status-card-needs-review{background:var(--color-warning-bg);border-color:#d9770633}.ao-icon{font-size:1.125rem;font-weight:700}.status-card-compliant .ao-icon{color:var(--color-success)}.status-card-non-compliant .ao-icon{color:var(--color-error)}.status-card-needs-review .ao-icon{color:var(--color-warning)}.ao-label{font-size:.75rem;color:var(--color-text-secondary);margin-bottom:var(--space-1)}.ao-value{font-size:.9375rem;font-weight:600;color:var(--color-text)}.analysis-metrics{display:flex;gap:var(--space-6)}.am-item{text-align:center}.am-number{font-size:1.5rem;font-weight:700;letter-spacing:-.03em;line-height:1;margin-bottom:var(--space-1)}.am-label{font-size:.75rem;color:var(--color-text-secondary)}.modal-overlay{position:fixed;inset:0;background:#0f172a8c;z-index:200;display:flex;align-items:center;justify-content:center;padding:var(--space-4);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal-card{width:100%;max-width:480px;padding:var(--space-6)}.modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-3)}.modal-header h3{font-size:1.0625rem;font-weight:600}.modal-close{background:none;border:none;font-size:1rem;color:var(--color-text-muted);cursor:pointer;padding:var(--space-1);line-height:1;transition:color .15s}.modal-close:hover{color:var(--color-text)}.modal-desc{font-size:.875rem;margin-bottom:var(--space-5)}.modal-footer{display:flex;gap:var(--space-3);justify-content:flex-end;margin-top:var(--space-5);padding-top:var(--space-5);border-top:1px solid var(--color-border)}@media(max-width:960px){.pd-body-grid{grid-template-columns:1fr}.pd-stats-row{grid-template-columns:1fr 1fr}.pd-header{flex-direction:column}.pd-header-actions{width:100%}}@media(max-width:600px){.project-detail-page{padding:var(--space-4)}.pd-stats-row{grid-template-columns:1fr 1fr;gap:var(--space-3)}.analysis-metrics{gap:var(--space-4)}.sub-table-head,.sub-table-row{grid-template-columns:1fr 120px 50px 50px 60px}.sub-table-head span:nth-child(n+6),.sub-table-row span:nth-child(n+6){display:none}.sub-table-head span:nth-child(6),.sub-table-row span:nth-child(6){display:block}}.submission-detail-page{padding:var(--space-8);background:var(--color-background);min-height:100%}.sd-container{max-width:1100px;margin:0 auto}.sd-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-6);margin-top:var(--space-5);margin-bottom:var(--space-7)}.sd-title-block{flex:1;min-width:0}.sd-title-row{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;margin-bottom:var(--space-2)}.sd-title-row h1{font-size:clamp(1.25rem,2.5vw,1.75rem);font-weight:700;letter-spacing:-.025em;line-height:1.2}.sd-meta{font-size:.9375rem;color:var(--color-text-secondary);line-height:1.5}.sd-body-grid{display:grid;grid-template-columns:1fr 360px;gap:var(--space-6);align-items:start}.sd-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-4)}.sd-section-header h3{font-size:.9375rem;font-weight:600;letter-spacing:-.01em;display:flex;align-items:center;gap:var(--space-2)}.sd-count-badge{font-size:.75rem;font-weight:700;background:var(--color-slate-100);color:var(--color-slate-600);border:1px solid var(--color-border);padding:.1rem var(--space-2);border-radius:999px;line-height:1.5}.sd-empty{padding:var(--space-6);text-align:left}.add-comment-form{padding:var(--space-5);margin-bottom:var(--space-5)}.add-comment-row{display:flex;gap:var(--space-4);margin-bottom:var(--space-4)}.add-comment-actions{display:flex;gap:var(--space-3);justify-content:flex-end}.comments-list{display:flex;flex-direction:column;gap:var(--space-4)}.comment-card{padding:var(--space-5);border-left:3px solid var(--color-border);transition:border-color .15s}.comment-card.comment-status-resolved{border-left-color:var(--color-success);opacity:.85}.comment-card.comment-status-open{border-left-color:var(--color-warning)}.comment-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-3);flex-wrap:wrap}.comment-match{display:flex;align-items:center}.match-badge{display:inline-block;font-size:.6875rem;font-weight:700;letter-spacing:.03em;padding:.2rem var(--space-2);border-radius:var(--radius-sm);border:1px solid}.match-tp{background:#16a34a14;color:#15803d;border-color:#16a34a33}.match-fn{background:#dc262614;color:#b91c1c;border-color:#dc262633}.match-fp{background:#2563eb14;color:#1d4ed8;border-color:#2563eb33}.match-unknown{background:var(--color-slate-100);color:var(--color-slate-500);border-color:var(--color-border)}.comment-type-badges{display:flex;gap:var(--space-1);flex-wrap:wrap}.comment-text{font-size:.875rem;color:var(--color-text);line-height:1.65;margin-bottom:var(--space-2)}.comment-resolved{font-size:.75rem;color:var(--color-success);font-weight:500}.accuracy-panel{padding:var(--space-6);margin-bottom:var(--space-5)}.accuracy-panel-header{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:var(--space-5)}.accuracy-panel-header h4{font-size:.9375rem;font-weight:600}.accuracy-sub{font-size:.75rem;color:var(--color-text-muted)}.accuracy-scores{display:flex;align-items:stretch;gap:0;margin-bottom:var(--space-5);background:var(--color-slate-50);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden}.accuracy-score{flex:1;padding:var(--space-5) var(--space-4);text-align:center}.accuracy-divider{width:1px;background:var(--color-border);flex-shrink:0}.accuracy-pct{font-size:1.75rem;font-weight:700;letter-spacing:-.04em;color:var(--color-text);line-height:1;margin-bottom:var(--space-1)}.accuracy-label{font-size:.8125rem;font-weight:600;color:var(--color-text);margin-bottom:var(--space-1)}.accuracy-desc{font-size:.6875rem;color:var(--color-text-muted);line-height:1.4}.accuracy-bars{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-4)}.accuracy-bar-row{display:flex;align-items:center;gap:var(--space-3)}.accuracy-bar-label{font-size:.75rem;color:var(--color-text-secondary);width:52px;flex-shrink:0}.accuracy-bar-track{flex:1;height:6px;background:var(--color-slate-100);border-radius:999px;overflow:hidden}.accuracy-bar-fill{height:100%;border-radius:999px;transition:width .6s ease}.accuracy-bar-fill.recall{background:var(--color-primary-light)}.accuracy-bar-fill.precision{background:var(--color-success)}.accuracy-bar-pct{font-size:.75rem;font-weight:600;color:var(--color-text-secondary);width:36px;text-align:right;flex-shrink:0}.accuracy-breakdown{display:flex;flex-direction:column;gap:var(--space-2);padding-top:var(--space-4);border-top:1px solid var(--color-border-subtle)}.ab-row{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.ab-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.ab-dot.tp{background:var(--color-success)}.ab-dot.fn{background:var(--color-error)}.ab-dot.fp{background:#3b82f6}.ab-text{font-size:.8125rem;color:var(--color-text-secondary)}.ab-learning{font-size:.6875rem;font-weight:600;color:var(--color-primary);background:var(--color-primary-subtle);border:1px solid var(--color-primary-border);padding:.1rem var(--space-2);border-radius:var(--radius-sm)}.response-panel{padding:var(--space-6)}.rp-header{margin-bottom:var(--space-4)}.rp-header h4{font-size:.9375rem;font-weight:600;margin-bottom:var(--space-2)}.rp-desc{font-size:.875rem;line-height:1.6}.rp-generate-btn{width:100%;justify-content:center;display:flex;align-items:center;gap:var(--space-2)}.btn-spinner{display:inline-block;width:14px;height:14px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite;flex-shrink:0}@keyframes spin{to{transform:rotate(360deg)}}.rp-hint{margin-top:var(--space-3);font-size:.8125rem;text-align:center}.letter-output{margin-top:var(--space-4)}.letter-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-3)}.letter-label{font-size:.8125rem;font-weight:600;color:var(--color-text-secondary)}.letter-actions{display:flex;gap:var(--space-2)}.letter-text{font-family:Courier New,Courier,monospace;font-size:.75rem;line-height:1.7;color:var(--color-text);background:var(--color-slate-50);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5);white-space:pre-wrap;word-break:break-word;max-height:400px;overflow-y:auto}.letter-disclaimer{font-size:.6875rem;margin-top:var(--space-3);line-height:1.5}@media(max-width:960px){.sd-body-grid{grid-template-columns:1fr}.sd-header{flex-direction:column}}@media(max-width:600px){.submission-detail-page{padding:var(--space-4)}.add-comment-row{flex-direction:column}}.billing-page{max-width:960px;margin:0 auto;padding:var(--space-8) var(--space-6)}.billing-header{margin-bottom:var(--space-8)}.billing-title{font-size:1.5rem;font-weight:700;color:var(--color-text);margin:0 0 var(--space-1);letter-spacing:-.01em}.billing-subtitle{color:var(--color-text-muted);font-size:.875rem;margin:0}.billing-loading{padding:var(--space-16);text-align:center;color:var(--color-text-muted);font-size:.875rem}.billing-alert{padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);margin-bottom:var(--space-5);font-size:.875rem;display:flex;align-items:center;justify-content:space-between;cursor:pointer;gap:var(--space-3)}.billing-alert-error{background:var(--color-error-bg);border:1px solid #fecaca;color:var(--color-error)}.billing-alert-success{background:var(--color-success-bg);border:1px solid #bbf7d0;color:var(--color-success)}.billing-alert-dismiss{font-size:.75rem;opacity:.55;flex-shrink:0}.billing-balance-banner{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-6) var(--space-8);margin-bottom:var(--space-6);display:flex;align-items:center;justify-content:space-between;gap:var(--space-6);box-shadow:var(--shadow-sm)}.billing-balance-left{display:flex;flex-direction:column;gap:var(--space-1)}.billing-balance-label{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted)}.billing-balance-amount{font-size:2.75rem;font-weight:800;color:var(--color-text);line-height:1;letter-spacing:-.02em}.billing-balance-amount.is-low{color:var(--color-error)}.billing-balance-note{font-size:.8rem;color:var(--color-text-muted);margin-top:var(--space-1)}.billing-low-chip{display:inline-flex;align-items:center;gap:var(--space-1);background:var(--color-error-bg);color:var(--color-error);border:1px solid #fecaca;border-radius:100px;padding:2px 10px;font-size:.72rem;font-weight:600;margin-top:var(--space-2);width:fit-content}.billing-balance-right{display:flex;align-items:center;gap:var(--space-3);flex-shrink:0}.billing-columns{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-5);margin-bottom:var(--space-6)}@media(max-width:700px){.billing-columns{grid-template-columns:1fr}.billing-balance-banner{flex-direction:column;align-items:flex-start}.billing-balance-amount{font-size:2rem}}.billing-section{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-5);box-shadow:var(--shadow-sm);display:flex;flex-direction:column}.billing-section-title{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted);margin-bottom:var(--space-4)}.billing-packages{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-4)}.billing-package{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);border:1.5px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-background);cursor:pointer;text-align:left;transition:border-color .15s,background .15s,box-shadow .15s;gap:var(--space-3)}.billing-package:hover{border-color:var(--color-primary-light);box-shadow:var(--shadow-xs)}.billing-package.is-selected{border-color:var(--color-primary);background:var(--color-primary-subtle);box-shadow:0 0 0 3px var(--color-primary-border)}.billing-package-name{font-size:.875rem;font-weight:600;color:var(--color-text)}.billing-package-credits{font-size:.75rem;color:var(--color-text-muted);margin-top:1px}.billing-package-price{font-size:1rem;font-weight:700;color:var(--color-primary);flex-shrink:0}.billing-pay-options{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-4)}.billing-radio{display:flex;align-items:center;gap:var(--space-2);cursor:pointer;font-size:.875rem;color:var(--color-text)}.billing-radio input[type=radio]{accent-color:var(--color-primary)}.billing-card-form,.billing-save-card-form{margin-bottom:var(--space-3);display:flex;flex-direction:column;gap:var(--space-2)}.billing-square-container{border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-3);background:var(--color-background);min-height:48px}.billing-card-loading{font-size:.8rem;color:var(--color-text-muted);text-align:center;padding:var(--space-2)}.billing-cardholder-input{width:100%;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-lg);font-size:.875rem;background:var(--color-background);color:var(--color-text);outline:none;transition:border-color .15s}.billing-cardholder-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-border)}.billing-pay-btn{width:100%;margin-top:auto;padding-top:var(--space-3);padding-bottom:var(--space-3);font-size:.9rem;font-weight:600}.billing-add-card-btn{margin-top:var(--space-2);margin-bottom:var(--space-3);align-self:flex-start;font-size:.8rem}.billing-pm-empty{font-size:.875rem;color:var(--color-text-muted);padding:var(--space-4) 0;text-align:center;border:1.5px dashed var(--color-border);border-radius:var(--radius-lg);margin-bottom:var(--space-4)}.billing-pm-list{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-3)}.billing-pm-row{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-background);gap:var(--space-3)}.billing-pm-info{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.billing-pm-brand{font-size:.8rem;font-weight:700;color:var(--color-text)}.billing-pm-last4{font-size:.8rem;color:var(--color-text-secondary);font-family:Courier New,monospace}.billing-pm-exp{font-size:.75rem;color:var(--color-text-muted)}.billing-pm-default-badge{background:var(--color-primary-subtle);color:var(--color-primary);border:1px solid var(--color-primary-border);font-size:.62rem;font-weight:700;padding:1px 7px;border-radius:100px;text-transform:uppercase;letter-spacing:.04em}.billing-pm-actions{display:flex;align-items:center;gap:var(--space-3);flex-shrink:0}.billing-auto-charge-toggle{display:flex;align-items:center;gap:var(--space-1);cursor:pointer;font-size:.75rem;color:var(--color-text-muted);white-space:nowrap}.billing-auto-charge-toggle input[type=checkbox]{accent-color:var(--color-primary)}.billing-remove-card{font-size:.75rem;color:var(--color-error);background:none;border:none;cursor:pointer;padding:0;line-height:1}.billing-remove-card:hover{text-decoration:underline}.billing-history{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-5);box-shadow:var(--shadow-sm)}.billing-history-title{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted);margin-bottom:var(--space-4)}.billing-history-empty{font-size:.875rem;color:var(--color-text-muted);padding:var(--space-8) 0;text-align:center;border:1.5px dashed var(--color-border);border-radius:var(--radius-lg)}.billing-tx-table{width:100%;border-collapse:collapse;font-size:.8rem}.billing-tx-table th{text-align:left;padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-border);color:var(--color-text-muted);font-weight:600;font-size:.68rem;text-transform:uppercase;letter-spacing:.06em;white-space:nowrap}.billing-tx-table td{padding:var(--space-3) var(--space-3);border-bottom:1px solid var(--color-border-subtle);color:var(--color-text);vertical-align:middle}.billing-tx-table tr:last-child td{border-bottom:none}.billing-tx-table tr:hover td{background:var(--color-slate-50)}.billing-tx-row-failed td{opacity:.55}.billing-tx-credit{color:var(--color-success);font-weight:600}.billing-tx-debit{color:var(--color-error);font-weight:600}.billing-tx-type-pill{display:inline-block;font-size:.68rem;font-weight:600;padding:2px 8px;border-radius:100px;background:var(--color-slate-100);color:var(--color-slate-700);white-space:nowrap}.billing-tx-type-pill.pill-grant{background:var(--color-success-bg);color:var(--color-success)}.billing-tx-type-pill.pill-purchase{background:var(--color-primary-subtle);color:var(--color-primary)}.billing-tx-type-pill.pill-review{background:var(--color-slate-100);color:var(--color-slate-700)}.billing-tx-type-pill.pill-refund{background:var(--color-warning-bg);color:var(--color-warning)}.billing-tx-failed-badge{display:inline-block;font-size:.62rem;background:var(--color-error-bg);color:var(--color-error);padding:1px 6px;border-radius:100px;margin-left:var(--space-1);font-weight:600}.billing-tx-date{color:var(--color-text-muted);white-space:nowrap}.billing-tx-desc{color:var(--color-text-muted);max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
