@import"https://fonts.googleapis.com/css2?family=Inter+Tight:ital,wght@0,100..900;1,100..900&display=swap";*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--navy: #1f1f1f;--navy-2: #2d2d2d;--navy-3: #414141;--teal: #16c1ad;--teal-light: #70cdc2;--teal-dim: #109285;--bg: #f5f5f5;--bg-white: #ffffff;--bg-warm: #c3e4e1;--text-primary: #1f1f1f;--text-secondary: #636363;--text-muted: #9e9e9e;--border: #e0e0e0;--border-light: #f0f0f0;--shadow-xs: 0 1px 2px rgba(0,0,0,.05);--shadow-sm: 0 1px 4px rgba(0,0,0,.06), 0 2px 8px rgba(0,0,0,.04);--shadow-md: 0 4px 16px rgba(0,0,0,.08), 0 1px 4px rgba(0,0,0,.04);--shadow-lg: 0 12px 40px rgba(0,0,0,.12), 0 4px 12px rgba(0,0,0,.06);--shadow-xl: 0 24px 64px rgba(0,0,0,.16), 0 8px 20px rgba(0,0,0,.08);--radius: 12px;--radius-sm: 8px;--radius-xs: 6px}body{font-family:Inter Tight,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--bg);color:var(--text-primary);line-height:1.6;min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.app-shell{display:flex;min-height:100vh}.main-panel{flex:1;margin-left:240px;min-height:100vh;background:var(--bg);display:flex;flex-direction:column}.sidebar{width:240px;background:var(--bg-white);border-right:1px solid var(--border);display:flex;flex-direction:column;position:fixed;top:0;left:0;height:100vh;z-index:100}.sidebar-logo{padding:18px 16px 16px;display:flex;align-items:center;gap:10px;border-bottom:1px solid var(--border);flex-shrink:0}.sidebar-logo-img{height:36px;width:auto;object-fit:contain}.sidebar-nav{flex:1;padding:10px 10px 0;display:flex;flex-direction:column;gap:1px;overflow-y:auto}.sidebar-item{display:flex;align-items:center;gap:9px;padding:9px 12px;border-radius:var(--radius-sm);border:none;background:none;cursor:pointer;width:100%;text-align:left;font-size:.845rem;font-weight:500;color:var(--text-secondary);transition:background .12s,color .12s;font-family:inherit;letter-spacing:-.01em}.sidebar-item:hover{background:#F3F4F6;color:var(--text-primary)}.sidebar-item.active{background:rgba(22,193,173,.1);color:var(--teal-dim);font-weight:600}.sidebar-item-icon{display:flex;align-items:center;flex-shrink:0;color:var(--text-muted);transition:color .12s}.sidebar-item:hover .sidebar-item-icon{color:var(--text-primary)}.sidebar-item.active .sidebar-item-icon{color:var(--teal-dim)}.sidebar-item-label{flex:1}.sidebar-bottom{padding:10px;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:2px;flex-shrink:0}.sidebar-admin-item{font-size:.8rem;color:var(--text-muted)}.sidebar-user{display:flex;align-items:center;gap:9px;padding:10px 12px;border-radius:var(--radius-sm);background:var(--bg);margin-top:4px;transition:background .15s}.sidebar-user:hover{background:var(--bg-hover, #f0f0f0)}.sidebar-avatar{width:28px;height:28px;border-radius:50%;background:var(--teal);color:#fff;font-size:.72rem;font-weight:800;display:flex;align-items:center;justify-content:center;flex-shrink:0}.sidebar-user-info{flex:1;min-width:0}.sidebar-user-name{font-size:.8rem;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;letter-spacing:-.01em}.sidebar-user-sub{font-size:.68rem;color:var(--text-muted);display:block}.sidebar-logout-btn{background:none;border:none;cursor:pointer;color:var(--text-muted);padding:4px;display:flex;align-items:center;border-radius:5px;flex-shrink:0;transition:color .12s,background .12s}.sidebar-logout-btn:hover{color:var(--text-primary);background:#E8ECF0}.header{background:linear-gradient(135deg,var(--navy) 0%,var(--navy-2) 100%);padding:0 2.5rem;height:64px;display:flex;align-items:center;justify-content:space-between;box-shadow:0 1px #ffffff0d,0 2px 12px #0000002e;position:sticky;top:0;z-index:100}.header-logo{display:flex;align-items:center;gap:10px;background:none;border:none;cursor:pointer;padding:0;text-decoration:none}.logo-waves{width:46px;height:36px;flex-shrink:0}.logo-divider{width:1px;height:28px;background:rgba(255,255,255,.18);flex-shrink:0}.logo-wordmark{display:flex;flex-direction:column;gap:2px}.logo-bversity{font-family:Inter Tight,sans-serif;font-size:1.05rem;font-weight:800;color:#fff;letter-spacing:-.025em;line-height:1.1}.logo-school{font-size:.6rem;font-weight:400;color:#ffffff6b;letter-spacing:.1px;line-height:1}.header-tagline{font-size:.75rem;color:#fff6;font-weight:400;letter-spacing:.2px}.header-student{display:flex;align-items:center;gap:8px}.student-avatar{width:30px;height:30px;border-radius:50%;background:linear-gradient(135deg,var(--teal) 0%,var(--teal-light) 100%);color:var(--navy);font-size:.75rem;font-weight:800;display:flex;align-items:center;justify-content:center;box-shadow:0 1px 4px #16c1ad66}.student-name{font-size:.82rem;color:#fffc;font-weight:500}.logout-btn{background:none;border:none;cursor:pointer;color:#fff6;padding:5px;display:flex;align-items:center;border-radius:var(--radius-xs);transition:color .15s}.logout-btn:hover{color:#ffffffd9}.dashboard-nav-btn{display:flex;align-items:center;gap:6px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-xs);padding:5px 11px;font-size:.76rem;font-weight:600;color:#ffffffa6;cursor:pointer;transition:all .15s;font-family:inherit;letter-spacing:.1px}.dashboard-nav-btn:hover,.dashboard-nav-btn.active{background:var(--teal);border-color:var(--teal);color:#fff}.admin-nav-btn{background:none;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-xs);padding:4px 10px;font-size:.7rem;font-weight:600;color:#ffffff59;cursor:pointer;transition:all .15s;font-family:inherit;letter-spacing:.5px;text-transform:uppercase}.admin-nav-btn:hover{color:#ffffffb3;border-color:#fff3}.onboarding-screen{min-height:100vh;background:var(--bg);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem}.onboarding-progress{display:flex;gap:8px;margin-bottom:2rem}.onboarding-pip{width:32px;height:4px;border-radius:2px;background:var(--border);transition:background .3s}.onboarding-pip.active{background:var(--teal)}.onboarding-card{width:100%;max-width:560px;background:var(--bg-white);border:1px solid var(--border-light);border-radius:20px;padding:2.5rem 2.5rem 2rem;box-shadow:0 4px 6px -1px #0000000a,0 20px 40px -8px #00000014}.onboarding-step-label{font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--teal-dim);margin-bottom:.75rem}.onboarding-heading{font-size:1.55rem;font-weight:800;color:var(--navy);letter-spacing:-.03em;line-height:1.2;margin-bottom:.5rem}.onboarding-sub{font-size:.88rem;color:var(--text-secondary);line-height:1.6;margin-bottom:1.75rem}.onboarding-fields{display:flex;flex-direction:column;gap:1.25rem;margin-bottom:1.75rem}.onboarding-field label{display:block;font-size:.82rem;font-weight:600;color:var(--navy);margin-bottom:.5rem}.onboarding-optional{font-weight:400;color:var(--text-muted)}.onboarding-input{width:100%;border:1.5px solid var(--border);border-radius:var(--radius-xs);padding:.72rem 1rem;font-size:.92rem;font-family:inherit;color:var(--text-primary);background:var(--bg);outline:none;transition:border-color .15s,box-shadow .15s}.onboarding-input:focus{border-color:var(--teal);background:white;box-shadow:0 0 0 3px #16c1ad1a}.onboarding-textarea{width:100%;border:1.5px solid var(--border);border-radius:var(--radius-xs);padding:.72rem 1rem;font-size:.88rem;font-family:inherit;color:var(--text-primary);background:var(--bg);outline:none;resize:vertical;line-height:1.6;transition:border-color .15s,box-shadow .15s}.onboarding-textarea:focus{border-color:var(--teal);background:white;box-shadow:0 0 0 3px #16c1ad1a}.onboarding-chips{display:flex;flex-wrap:wrap;gap:8px}.motivation-chips{gap:8px}.onboarding-chip{border:1.5px solid var(--border);border-radius:20px;padding:6px 14px;font-size:.82rem;font-weight:500;font-family:inherit;color:var(--text-secondary);background:var(--bg-white);cursor:pointer;transition:border-color .15s,color .15s,background .15s}.onboarding-chip:hover{border-color:var(--teal);color:var(--navy)}.onboarding-chip.selected{border-color:var(--teal);background:rgba(22,193,173,.08);color:var(--navy);font-weight:600}.onboarding-nav{display:flex;align-items:center;justify-content:space-between}.onboarding-back{background:none;border:none;font-size:.85rem;font-family:inherit;color:var(--text-muted);cursor:pointer;padding:0;transition:color .15s}.onboarding-back:hover{color:var(--navy)}.onboarding-next{display:inline-flex;align-items:center;gap:6px;background:linear-gradient(135deg,var(--teal),var(--teal-dim));color:var(--navy);font-family:inherit;font-size:.9rem;font-weight:700;border:none;border-radius:var(--radius-xs);padding:.7rem 1.4rem;cursor:pointer;transition:opacity .15s,transform .15s}.onboarding-next:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.onboarding-next:disabled{opacity:.45;cursor:not-allowed;transform:none}.onboarding-finish{background:linear-gradient(135deg,var(--teal),var(--teal-dim))}.onboarding-skip{display:block;margin:.75rem auto 0;background:none;border:none;font-size:.8rem;font-family:inherit;color:var(--text-muted);cursor:pointer;text-decoration:underline;padding:0;transition:color .15s}.onboarding-skip:hover{color:var(--text-secondary)}.ob-explore-skip{text-align:center;margin-top:1.25rem;padding-top:1.25rem;border-top:1px solid var(--border)}.ob-explore-btn{background:none;border:none;font-family:inherit;font-size:.82rem;color:var(--text-muted);cursor:pointer;text-decoration:underline;text-underline-offset:2px;transition:color .15s;padding:0}.ob-explore-btn:hover{color:var(--text-secondary)}.onboarding-screen--wide{justify-content:flex-start;padding-top:2rem}.onboarding-card--wide{max-width:900px}.ob-career-clusters{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:.5rem}.ob-career-cluster-section{display:flex;flex-direction:column;gap:.6rem}.ob-career-cluster-label{font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;display:flex;align-items:center;gap:6px}.ob-career-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.65rem}.ob-career-card{border:1.5px solid var(--border);border-radius:var(--radius-sm);padding:.9rem;cursor:pointer;transition:border-color .15s,box-shadow .15s,background .15s;background:var(--bg-white);position:relative}.ob-career-card:hover{border-color:var(--career-color, var(--teal));box-shadow:0 2px 10px #00000012}.ob-career-card.selected{border-color:var(--career-color, var(--teal));background:color-mix(in srgb,var(--career-color, var(--teal)) 6%,white);box-shadow:0 0 0 3px color-mix(in srgb,var(--career-color, var(--teal)) 20%,transparent)}.ob-career-card-top{display:flex;align-items:flex-start;gap:.55rem;margin-bottom:.4rem}.ob-career-icon{width:28px;height:28px;flex-shrink:0;display:flex;align-items:center;justify-content:center}.ob-career-icon svg{width:22px;height:22px}.ob-career-meta{flex:1;min-width:0}.ob-career-title{font-size:.82rem;font-weight:700;color:var(--text-primary);line-height:1.25}.ob-career-salary{font-size:.7rem;color:var(--text-muted);margin-top:2px}.ob-career-check{flex-shrink:0;width:18px;height:18px;background:var(--career-color, var(--teal));color:#fff;border-radius:50%;font-size:.65rem;font-weight:700;display:flex;align-items:center;justify-content:center}.ob-career-desc{font-size:.73rem;color:var(--text-muted);line-height:1.5;margin:0}.welcome-screen{position:relative;width:100vw;height:100vh;overflow:hidden;background:#060d0c;display:flex;flex-direction:column}.welcome-video-bg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;z-index:0}.welcome-video-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to bottom,rgba(6,13,12,.55) 0%,rgba(6,13,12,.35) 25%,rgba(6,13,12,.55) 55%,rgba(6,13,12,.92) 85%,rgba(6,13,12,1) 100%);z-index:1}.welcome-header{position:relative;z-index:10;display:flex;align-items:center;justify-content:center;padding:2rem 3rem}.welcome-brand{display:flex;align-items:center;gap:10px}.welcome-logo-img,.login-logo-img,.admin-auth-logo-img{height:120px;width:auto;object-fit:contain}.welcome-wordmark{display:flex;flex-direction:column;line-height:1.15}.welcome-bversity{font-size:1rem;font-weight:800;color:#fff;letter-spacing:-.03em}.welcome-school{font-size:.64rem;font-weight:500;color:#ffffff8c;text-transform:uppercase;letter-spacing:.06em}.welcome-invite-badge{display:inline-flex;align-items:center;gap:5px;background:rgba(255,255,255,.08);color:#ffffffd9;border:1px solid rgba(255,255,255,.2);border-radius:20px;padding:6px 14px;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.welcome-content-block{position:relative;z-index:10;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding-bottom:5rem}.welcome-hero{display:flex;flex-direction:column;align-items:center;text-align:center;padding:2rem 2rem 1rem}.welcome-tag{display:inline-block;font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--teal-light);border:1px solid rgba(22,193,173,.35);border-radius:20px;padding:5px 16px;margin-bottom:1.6rem;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:rgba(22,193,173,.08)}.welcome-headline{font-size:clamp(2.8rem,6vw,5rem);font-weight:300;color:#ffffffe6;letter-spacing:-.02em;line-height:1.08;margin-bottom:1.2rem;text-shadow:0 2px 20px rgba(0,0,0,.4)}.welcome-headline-accent{display:block;font-weight:900;color:#0d9e8c;letter-spacing:-.04em}.welcome-subline{font-size:1.05rem;color:#ffffffb3;line-height:1.7;max-width:500px;margin-bottom:2.4rem}.welcome-cta-row{display:flex;gap:14px;align-items:center;justify-content:center;flex-wrap:wrap}.welcome-cta{display:inline-flex;align-items:center;gap:8px;background:var(--teal);color:#fff;font-family:inherit;font-size:.97rem;font-weight:700;border:none;border-radius:50px;padding:.9rem 2rem;cursor:pointer;transition:transform .15s,box-shadow .15s;box-shadow:0 4px 20px #16c1ad66}.welcome-cta:hover{transform:translateY(-2px);box-shadow:0 8px 28px #16c1ad80}.welcome-cta-ghost{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.08);color:#ffffffe6;font-family:inherit;font-size:.97rem;font-weight:600;border:1.5px solid rgba(255,255,255,.25);border-radius:50px;padding:.9rem 2rem;cursor:pointer;transition:background .15s,border-color .15s;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.welcome-cta-ghost:hover{background:rgba(255,255,255,.14);border-color:#fff6}.welcome-subjects-bar{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;padding:.5rem 2rem 1rem}.welcome-subject-pill{display:inline-flex;align-items:center;gap:6px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.15);border-radius:20px;padding:5px 13px;font-size:.78rem;font-weight:500;color:#ffffffbf;white-space:nowrap;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.welcome-pill-icon{display:inline-flex;align-items:center;opacity:.8}.welcome-pill-icon svg{width:12px;height:12px}.welcome-footer{position:absolute;bottom:1rem;left:0;right:0;z-index:10;text-align:center;font-size:.72rem;color:#fff6;letter-spacing:.02em}.login-page{min-height:100vh;display:grid;grid-template-columns:1fr 1fr}@media (max-width: 860px){.login-page{grid-template-columns:1fr}.login-left{display:none}}.login-left{background:linear-gradient(150deg,#113d39 0%,#176d64 55%,#109285 100%);padding:4rem;display:flex;align-items:center;position:relative;overflow:hidden}.login-left:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(circle at 1px 1px,rgba(255,255,255,.035) 1px,transparent 0);background-size:28px 28px;pointer-events:none}.login-left:after{content:"";position:absolute;bottom:-120px;right:-120px;width:360px;height:360px;background:radial-gradient(circle,rgba(22,193,173,.12) 0%,transparent 70%);pointer-events:none}.login-left-inner{position:relative;z-index:1;max-width:440px}.login-brand{display:flex;align-items:center;gap:12px;margin-bottom:3rem}.login-logo-waves{width:62px;height:48px}.login-logo-divider{height:38px}.login-logo-bversity{font-size:1.35rem!important}.login-logo-school{font-size:.7rem!important;color:#ffffff80!important}.login-brand-wordmark{font-size:1.4rem;font-weight:800;color:#fff;letter-spacing:-.03em}.login-headline{font-family:Inter Tight,sans-serif;font-size:2rem;font-weight:800;color:#fff;line-height:1.22;letter-spacing:-.03em;margin-bottom:1rem}.login-subline{font-size:.95rem;color:#ffffff8c;line-height:1.7;margin-bottom:2.25rem}.login-features{display:flex;flex-direction:column;gap:.8rem;margin-bottom:2.5rem}.login-feature{display:flex;align-items:center;gap:10px;color:#ffffffbf;font-size:.875rem;font-weight:400}.login-feature-dot{width:6px;height:6px;border-radius:50%;background:var(--teal-light);flex-shrink:0;box-shadow:0 0 6px #00cebc99}.login-chips{display:flex;flex-wrap:wrap;gap:7px}.login-chip{padding:4px 12px;border-radius:20px;border:1px solid rgba(255,255,255,.13);font-size:.72rem;font-weight:500;color:#ffffff73;background:rgba(255,255,255,.05);letter-spacing:.2px}.login-right{background:var(--bg-white);display:flex;align-items:center;justify-content:center;padding:4rem}.login-form-wrap{width:100%;max-width:380px}.login-form-top{margin-bottom:2.25rem}.login-form-top h2{font-family:Inter Tight,sans-serif;font-size:1.75rem;font-weight:800;color:var(--navy);letter-spacing:-.03em;margin-bottom:.4rem}.login-form-top p{font-size:.88rem;color:var(--text-muted)}.login-form{display:flex;flex-direction:column;gap:1.1rem}.form-group{display:flex;flex-direction:column;gap:.4rem}.form-group label{font-size:.78rem;font-weight:600;color:var(--text-primary);letter-spacing:.1px}.form-group input{border:1.5px solid var(--border);border-radius:var(--radius-xs);padding:.72rem 1rem;font-size:.92rem;font-family:inherit;color:var(--text-primary);background:var(--bg);outline:none;transition:border-color .15s,box-shadow .15s}.form-group input:focus{border-color:var(--teal);background:white;box-shadow:0 0 0 3px #16c1ad1f}.form-group input::placeholder{color:var(--text-muted)}.form-error{font-size:.8rem;color:#e53e3e;font-weight:500}.login-btn{background:linear-gradient(135deg,var(--teal) 0%,var(--teal-light) 100%);color:var(--navy);border:none;border-radius:var(--radius-xs);padding:.85rem;font-size:.92rem;font-weight:700;cursor:pointer;transition:opacity .15s,transform .1s,box-shadow .15s;font-family:inherit;margin-top:.25rem;letter-spacing:-.01em;box-shadow:0 4px 16px #16c1ad59}.login-btn:hover:not(:disabled){opacity:.92;transform:translateY(-1px);box-shadow:0 8px 24px #16c1ad73}.login-btn:disabled{opacity:.45;cursor:not-allowed}.login-note{text-align:center;font-size:.75rem;color:var(--text-muted);margin-top:1.25rem;line-height:1.6}.login-back-link{background:none;border:none;font-size:.8rem;color:var(--text-muted);cursor:pointer;font-family:inherit;padding:0;margin-bottom:1rem;display:block;transition:color .12s}.login-back-link:hover{color:var(--text-primary)}.code-input{font-size:2rem!important;font-weight:800!important;letter-spacing:.3em!important;text-align:center!important;padding:.85rem 1rem!important;font-family:Inter Tight,monospace!important}.login-resend-btn{background:none;border:none;color:var(--teal-dim);font-size:inherit;font-family:inherit;cursor:pointer;padding:0;text-decoration:underline;text-underline-offset:2px}.home{max-width:1140px;margin:0 auto;padding:3.5rem 2.5rem 5rem}.home-hero{text-align:center;margin-bottom:3.5rem}.home-hero h1{font-family:Inter Tight,sans-serif;font-size:2.75rem;font-weight:900;color:var(--navy);line-height:1.15;letter-spacing:-.04em;margin-bottom:.75rem}.home-hero h1 span{background:linear-gradient(135deg,var(--teal) 0%,var(--teal-light) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.home-hero p{font-size:1.05rem;color:var(--text-secondary);max-width:520px;margin:0 auto;line-height:1.7}.subjects-section{margin-bottom:2.5rem}.subjects-section--explore{padding-top:1.5rem;border-top:1px solid var(--border)}.subjects-section-header{margin-bottom:1.25rem}.subjects-section-title{font-size:1.05rem;font-weight:700;color:var(--text-primary);margin:0 0 4px;letter-spacing:-.01em}.subjects-section--explore .subjects-section-title{color:var(--text-secondary)}.subjects-section-sub{font-size:.82rem;color:var(--text-muted);margin:0}.subjects-set-career-link{background:none;border:none;padding:0;font-size:inherit;color:var(--teal-dim);font-weight:600;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.subjects-set-career-link:hover{color:var(--teal)}.subjects-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}@media (max-width: 980px){.subjects-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 600px){.subjects-grid{grid-template-columns:1fr}.home-hero h1{font-size:2rem}}.lp-section{margin-bottom:2.5rem}.lp-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.75rem}.lp-title{font-size:1.05rem;font-weight:700;color:var(--text-primary);margin:0 0 3px;letter-spacing:-.01em}.lp-subtitle{font-size:.8rem;color:var(--text-muted);margin:0}.lp-progress-pill{display:flex;flex-direction:column;align-items:flex-end;gap:4px;min-width:110px}.lp-progress-num{font-size:.9rem;font-weight:700;color:var(--text-primary)}.lp-progress-label{font-size:.72rem;color:var(--text-muted);margin-top:-4px}.lp-progress-bar-track{width:100%;height:4px;background:var(--border);border-radius:99px;overflow:hidden}.lp-progress-bar-fill{height:100%;background:var(--teal);border-radius:99px;transition:width .4s ease}.lp-track{display:flex;flex-direction:column}.lp-step{display:flex;gap:0;align-items:stretch}.lp-step-left{display:flex;flex-direction:column;align-items:center;width:40px;flex-shrink:0}.lp-step-circle{width:32px;height:32px;border-radius:50%;border:2px solid var(--border);background:var(--bg-white);display:flex;align-items:center;justify-content:center;font-size:.78rem;font-weight:700;color:var(--text-muted);flex-shrink:0;z-index:1;transition:all .2s}.lp-step--done .lp-step-circle{color:#fff}.lp-step-line{flex:1;width:2px;background:var(--border);margin:4px 0;min-height:16px;transition:background .3s}.lp-step-card{flex:1;background:var(--bg-white);border:1px solid var(--border-light);border-radius:var(--radius);padding:1rem 1.1rem;margin-bottom:.75rem;cursor:pointer;transition:box-shadow .15s,border-color .15s;margin-left:.75rem}.lp-step--locked .lp-step-card{opacity:.55;cursor:default}.lp-step--active .lp-step-card,.lp-step--paused .lp-step-card{box-shadow:var(--shadow-sm)}.lp-step--active .lp-step-card:hover{box-shadow:var(--shadow);border-color:var(--border)}.lp-step-card-top{display:flex;align-items:flex-start;gap:.75rem}.lp-step-icon{width:22px;height:22px;flex-shrink:0;color:var(--text-muted);margin-top:1px}.lp-step-icon svg{width:100%;height:100%}.lp-step-meta{flex:1;min-width:0}.lp-step-name{font-size:.9rem;font-weight:600;color:var(--text-primary);margin-bottom:3px}.lp-step--locked .lp-step-name{color:var(--text-secondary)}.lp-step-info{font-size:.75rem;color:var(--text-muted);display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.lp-dot{opacity:.4}.lp-step-badges{display:flex;gap:.4rem;align-items:center;flex-shrink:0}.lp-badge{font-size:.68rem;font-weight:600;padding:2px 8px;border-radius:99px;letter-spacing:.01em}.lp-badge--active{background:#d1fae5;color:#065f46}.lp-badge--done{background:#dbeafe;color:#1e40af}.lp-badge--paused{background:#fef9c3;color:#92400e}.lp-badge--locked{background:var(--bg-subtle);color:var(--text-muted)}.lp-step-progress{display:flex;align-items:center;gap:.75rem;margin-top:.65rem}.lp-step-bar-track{flex:1;height:5px;background:var(--border);border-radius:99px;overflow:hidden;position:relative}.lp-step-bar-cov,.lp-step-bar-mast{position:absolute;top:0;left:0;height:100%;border-radius:99px;transition:width .4s ease}.lp-step-pct{font-size:.72rem;font-weight:600;white-space:nowrap;flex-shrink:0}.lp-step-footer{display:flex;align-items:center;gap:.75rem;margin-top:.6rem}.lp-step-desc{flex:1;font-size:.77rem;color:var(--text-muted);line-height:1.5;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.lp-step-cta{background:none;border:1px solid;border-radius:var(--radius-sm);padding:4px 10px;font-size:.78rem;font-weight:600;cursor:pointer;white-space:nowrap;flex-shrink:0;transition:opacity .15s}.lp-step-cta:hover{opacity:.75}.lp-step-pause{background:none;border:none;font-size:.72rem;color:var(--text-muted);cursor:pointer;padding:0;flex-shrink:0}.lp-step-pause:hover{color:var(--text-secondary)}@media (max-width: 600px){.lp-header{flex-direction:column}.lp-progress-pill{align-items:flex-start;width:100%}.lp-step-desc{display:none}}.subject-card{background:var(--bg-white);border-radius:var(--radius);box-shadow:var(--shadow-sm);border:1px solid var(--border-light);cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;display:flex;flex-direction:column;overflow:hidden}.subject-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--card-color, var(--teal))}.subject-card-banner{position:relative;height:155px;overflow:hidden;border-radius:var(--radius) var(--radius) 0 0;background:var(--bg)}.subject-card-banner-img{width:100%;height:100%;object-fit:cover;display:block}.subject-card-banner-overlay{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.subject-banner-badges{position:absolute;top:10px;right:10px;display:flex;gap:5px;align-items:center}.subject-banner-tutor{position:absolute;bottom:10px;left:12px;display:flex;align-items:center;gap:9px}.subject-banner-tutor-name{font-size:.78rem;font-weight:700;color:#fff;white-space:nowrap;text-shadow:0 1px 4px rgba(0,0,0,.5)}.subject-banner-tutor-org{font-size:.67rem;color:#ffffffe0;white-space:nowrap;text-shadow:0 1px 3px rgba(0,0,0,.4);margin-top:1px}.tutor-photo-sm{width:38px;height:38px;border-radius:50%;object-fit:cover;border:2px solid rgba(255,255,255,.75);flex-shrink:0;background:var(--border)}.tutor-photo-md{width:44px;height:44px;border-radius:50%;object-fit:cover;border:2px solid var(--border);flex-shrink:0;background:var(--border)}.subject-banner-pct{font-size:1.6rem;font-weight:900;line-height:1;letter-spacing:-.04em;flex-shrink:0}.subject-banner-pct-sym{font-size:.9rem;font-weight:700;letter-spacing:0}.subject-card-body{padding:1rem 1.5rem 1.5rem;display:flex;flex-direction:column;gap:.6rem;flex:1}.subject-name{font-size:1rem;font-weight:700;color:var(--text-primary);line-height:1.3;letter-spacing:-.01em}.subject-description{font-size:.83rem;color:var(--text-secondary);line-height:1.6;flex:1}.subject-progress{display:flex;align-items:center;gap:8px}.progress-bar-track{flex:1;height:5px;background:var(--border-light);border-radius:10px;overflow:hidden;position:relative}.progress-bar-fill{position:absolute;top:0;left:0;height:100%;border-radius:10px;transition:width .5s ease}.progress-label{font-size:.7rem;font-weight:700;color:var(--text-muted);white-space:nowrap}.subject-cta{display:inline-flex;align-items:center;gap:6px;font-size:.82rem;font-weight:700;color:var(--card-color, var(--teal));margin-top:.25rem;letter-spacing:-.01em}.subject-cta svg{transition:transform .15s ease}.subject-card:hover .subject-cta svg{transform:translate(4px)}.career-path-badge{display:inline-flex;align-items:center;gap:14px;margin-top:1.5rem;padding:14px 22px;background:white;border:1.5px solid var(--teal);border-radius:var(--radius);cursor:pointer;transition:box-shadow .2s,transform .2s;max-width:500px;box-shadow:var(--shadow-sm)}.career-path-badge:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.cpb-icon{width:36px;height:36px;flex-shrink:0;display:flex;align-items:center;justify-content:center;color:var(--teal)}.cpb-icon svg{width:24px;height:24px}.cpb-text{text-align:left}.cpb-title{font-size:1rem;font-weight:700;color:var(--navy);line-height:1.3;letter-spacing:-.01em}.cpb-sub{font-size:.76rem;color:var(--teal);font-weight:500;margin-top:2px}.career-path-nudge{display:inline-block;margin-top:1.5rem;padding:11px 20px;background:rgba(22,193,173,.07);border:1.5px dashed rgba(22,193,173,.45);border-radius:var(--radius);font-size:.88rem;color:var(--teal-dim);font-weight:500;cursor:pointer;transition:background .15s,border-color .15s}.career-path-nudge:hover{background:rgba(22,193,173,.12);border-color:var(--teal)}.chat-view{display:flex;flex-direction:column;height:100vh;background:var(--bg)}.chat-header{background:var(--bg-white);border-bottom:1px solid var(--border-light);padding:.85rem 1.75rem;display:flex;align-items:center;gap:1rem;box-shadow:var(--shadow-xs)}.chat-back-btn{background:none;border:1.5px solid var(--border);border-radius:var(--radius-xs);padding:6px 13px;font-size:.79rem;font-weight:600;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;gap:5px;transition:all .15s;flex-shrink:0}.chat-back-btn:hover{border-color:var(--navy);color:var(--navy);background:var(--bg)}.chat-subject-info{display:flex;align-items:center;gap:10px;flex:1;min-width:0}.chat-tutor-photo{width:42px;height:42px;border-radius:50%;object-fit:cover;border:2px solid var(--border);flex-shrink:0;background:var(--bg)}.chat-faculty-info{display:flex;flex-direction:column;gap:1px;min-width:0}.chat-faculty-name{font-size:.92rem;font-weight:700;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:-.01em}.chat-faculty-meta{font-size:.7rem;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-career-chip{font-size:.7rem;font-weight:600;padding:3px 10px;border-radius:20px;border:1px solid;background:transparent;white-space:nowrap;display:flex;align-items:center;gap:4px;flex-shrink:0}.chat-progress{display:flex;align-items:center;gap:8px;margin-left:auto;flex-shrink:0}.chat-progress-bar-track{width:120px;height:8px;background:var(--border);border-radius:10px;overflow:hidden;position:relative}.chat-progress-bar-fill{position:absolute;top:0;left:0;height:100%;border-radius:10px;transition:width .5s ease}.chat-progress-label{font-size:.75rem;font-weight:700;color:var(--text-secondary);white-space:nowrap}.mock-banner{background:rgba(195,228,225,.25);border-bottom:1px solid #FCD34D;padding:.55rem 1.75rem;font-size:.8rem;color:#92400e;text-align:center}.career-detected-banner{display:flex;align-items:center;gap:6px;background:#F0FDF9;border-bottom:2px solid var(--teal);padding:.6rem 1.75rem;font-size:.82rem;color:var(--text-primary);animation:slideDown .3s ease}.career-detected-icon{display:flex;align-items:center;color:var(--teal-dim);flex-shrink:0}.career-path-nudge-icon{display:inline-flex;align-items:center;vertical-align:middle;margin-right:4px;color:var(--teal-dim)}.capstone-unlocked-banner{border-bottom:2px solid;padding:.7rem 1.75rem;display:flex;align-items:center;gap:10px;font-size:.82rem;color:var(--text-primary);background:#FAFBFF;animation:slideDown .3s ease}.capstone-unlock-emoji{width:24px;height:24px;flex-shrink:0;display:flex;align-items:center;color:var(--teal)}.capstone-unlock-emoji svg{width:18px;height:18px}.capstone-banner-btn{margin-left:auto;flex-shrink:0;border:none;border-radius:var(--radius-xs);padding:5px 14px;font-size:.76rem;font-weight:700;color:#fff;cursor:pointer;transition:opacity .15s;font-family:inherit}.capstone-banner-btn:hover{opacity:.85}.concept-unlocked-banner{border-bottom:2px solid;padding:.5rem 1.75rem;font-size:.82rem;color:var(--text-primary);animation:slideDown .3s ease}.concept-unlocked-banner.covered{background:#F0F9FF}.concept-unlocked-banner.mastered{background:#F0FDF9}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.messages-area{flex:1;overflow-y:auto;padding:1.75rem;display:flex;flex-direction:column;gap:1rem}.messages-area.is-empty{justify-content:center;align-items:flex-start}.messages-area::-webkit-scrollbar{width:4px}.messages-area::-webkit-scrollbar-track{background:transparent}.messages-area::-webkit-scrollbar-thumb{background:var(--border);border-radius:10px}.history-loading{text-align:center;color:var(--text-muted);font-size:.85rem;padding:2rem}.welcome-message{background:linear-gradient(135deg,var(--navy) 0%,var(--navy-3) 100%);border-radius:var(--radius);padding:1.5rem;color:#fff;max-width:620px;box-shadow:var(--shadow-md)}.welcome-faculty{display:flex;align-items:center;gap:10px;margin-bottom:.75rem}.welcome-faculty-icon{display:flex;align-items:center;width:22px;height:22px;flex-shrink:0}.welcome-faculty-icon svg{width:22px;height:22px}.welcome-faculty-name{font-size:.92rem;font-weight:700;color:#fff;letter-spacing:-.01em}.welcome-faculty-role{font-size:.7rem;color:#ffffff8c;margin-top:2px}.welcome-message p{font-size:.88rem;color:#fffc;line-height:1.65}.starter-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:1rem;max-width:620px}.starter-chip{background:var(--bg-white);border:1px solid var(--border);border-radius:20px;padding:6px 14px;font-size:.8rem;color:var(--text-secondary);cursor:pointer;transition:border-color .15s,color .15s,background .15s;white-space:nowrap}.starter-chip:hover{border-color:currentColor;color:var(--text-primary);background:var(--bg)}.message-row{display:flex;gap:.75rem;align-items:flex-start}.message-row.user{flex-direction:row-reverse}.message-avatar{width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.78rem;font-weight:700;flex-shrink:0;color:#fff}.message-avatar.bot{background:var(--navy);font-size:1rem;box-shadow:var(--shadow-xs)}.message-avatar.user{background:linear-gradient(135deg,var(--teal) 0%,var(--teal-light) 100%);font-size:.72rem;box-shadow:0 1px 4px #16c1ad59}.message-bubble{max-width:72%;padding:.9rem 1.15rem;border-radius:18px;font-size:.9rem;line-height:1.68}.message-row.bot .message-bubble{background:var(--bg-white);border:1px solid var(--border-light);border-radius:4px 18px 18px;color:var(--text-primary);box-shadow:var(--shadow-sm)}.message-row.user .message-bubble{background:var(--navy);color:#fff;border-radius:18px 4px 18px 18px}.message-row.bot .message-bubble strong{font-weight:700;background:rgba(22,193,173,.15);border-radius:3px;padding:0 3px;color:var(--teal-dim)}.message-row.user .message-bubble strong{font-weight:700}.message-bubble code{background:rgba(22,193,173,.1);padding:1px 5px;border-radius:4px;font-family:SF Mono,Fira Code,monospace;font-size:.82em}.message-row.user .message-bubble code{background:rgba(255,255,255,.15)}.typing-indicator{display:flex;gap:5px;align-items:center;padding:.9rem 1.15rem;background:var(--bg-white);border:1px solid var(--border-light);border-radius:4px 18px 18px;box-shadow:var(--shadow-sm);width:fit-content}.typing-dot{width:7px;height:7px;background:var(--text-muted);border-radius:50%;animation:bounce 1.2s infinite}.typing-dot:nth-child(2){animation-delay:.2s}.typing-dot:nth-child(3){animation-delay:.4s}@keyframes bounce{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-6px)}}.quiz-label{font-size:.66rem;font-weight:700;text-transform:uppercase;letter-spacing:.9px;color:var(--teal);margin-bottom:5px}.chat-input-area{background:var(--bg-white);border-top:1px solid var(--border-light);padding:1rem 1.75rem}.chat-input-row{display:flex;gap:.75rem;align-items:flex-end;max-width:880px;margin:0 auto}.chat-input{flex:1;border:1.5px solid var(--border);border-radius:var(--radius-sm);padding:.75rem 1rem;font-size:.9rem;font-family:inherit;color:var(--text-primary);background:var(--bg);resize:none;min-height:48px;max-height:140px;transition:border-color .15s,box-shadow .15s;line-height:1.5;outline:none}.chat-input:focus{border-color:var(--teal);background:white;box-shadow:0 0 0 3px #16c1ad1a}.chat-input::placeholder{color:var(--text-muted)}.send-btn{width:48px;height:48px;border-radius:var(--radius-sm);border:none;background:linear-gradient(135deg,var(--teal) 0%,var(--teal-light) 100%);color:var(--navy);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:opacity .15s,transform .1s;flex-shrink:0;box-shadow:0 2px 8px #16c1ad59}.send-btn:hover:not(:disabled){opacity:.9;transform:scale(1.04)}.send-btn:disabled{background:var(--border);box-shadow:none;cursor:not-allowed}.quiz-btn{padding:0 14px;height:48px;border-radius:var(--radius-sm);border:1.5px solid var(--teal);background:none;color:var(--teal);font-size:.8rem;font-weight:700;cursor:pointer;white-space:nowrap;transition:all .15s;font-family:inherit;flex-shrink:0}.quiz-btn:hover:not(:disabled){background:var(--teal);color:#fff}.quiz-btn:disabled{opacity:.4;cursor:not-allowed}.input-hint{text-align:center;font-size:.7rem;color:var(--text-muted);margin-top:.5rem}.dashboard{max-width:1100px;margin:0 auto;padding:2.75rem 2.5rem 5rem}.dashboard-hero{margin-bottom:2.5rem}.dashboard-hero h1{font-family:Inter Tight,sans-serif;font-size:2rem;font-weight:800;color:var(--navy);letter-spacing:-.03em;margin-bottom:1.25rem}.dashboard-stats{display:flex;gap:1rem;flex-wrap:wrap}.stat-card{background:var(--bg-white);border:1px solid var(--border-light);border-radius:var(--radius);padding:1.1rem 1.5rem;display:flex;flex-direction:column;align-items:center;gap:4px;min-width:130px;box-shadow:var(--shadow-sm)}.stat-card.mastered{border-color:#16c1ad66}.stat-value{font-size:2.25rem;font-weight:900;color:var(--navy);letter-spacing:-.04em}.stat-card.mastered .stat-value{color:var(--teal)}.stat-label{font-size:.72rem;color:var(--text-muted);font-weight:500;letter-spacing:.2px}.dashboard-loading{text-align:center;color:var(--text-muted);font-size:.88rem;padding:4rem}.dashboard-subjects{display:flex;flex-direction:column;gap:1.5rem}.dashboard-subject-card{background:var(--bg-white);border:1px solid var(--border-light);border-radius:var(--radius);padding:1.5rem;box-shadow:var(--shadow-sm)}.dashboard-subject-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;flex-wrap:wrap;gap:.5rem}.dashboard-subject-title{display:flex;align-items:center;gap:12px}.subject-icon{display:flex;align-items:center;justify-content:center;width:26px;height:26px;flex-shrink:0}.subject-icon svg{width:26px;height:26px}.dashboard-subject-title .tutor-photo-md{border-color:var(--border)}.dashboard-subject-name{font-size:1rem;font-weight:700;color:var(--text-primary);letter-spacing:-.01em}.dashboard-subject-tutor{font-size:.79rem;font-weight:700}.dashboard-subject-org{font-size:.67rem;color:var(--text-muted);font-weight:400;margin-top:1px}.dashboard-subject-stats{display:flex;align-items:center;gap:6px;font-size:.78rem}.ds-covered{color:var(--text-muted)}.ds-mastered{font-weight:700}.ds-total{color:var(--text-muted)}.ds-sep{color:var(--border)}.dashboard-progress-bar-track{height:6px;background:var(--border-light);border-radius:10px;overflow:hidden;position:relative;margin-bottom:1.25rem}.dashboard-progress-covered,.dashboard-progress-mastered{position:absolute;top:0;left:0;height:100%;border-radius:10px;transition:width .5s ease}.concept-map{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:1.25rem}.concept-node{display:flex;align-items:center;gap:5px;padding:4px 10px;border-radius:20px;border:1px solid var(--border);font-size:.73rem;color:var(--text-muted);background:var(--bg);transition:all .15s}.concept-node.covered{border-color:var(--subject-color, var(--teal));color:var(--text-primary);background:white}.concept-node.mastered{border-color:var(--subject-color, var(--teal));background:var(--subject-color, var(--teal));color:#fff}.concept-node-icon{font-size:.62rem;font-weight:800}.concept-node-name{font-weight:500}.dashboard-subject-footer{display:flex;align-items:center;gap:1rem;margin-bottom:.25rem;flex-wrap:wrap}.study-btn{background:none;border:1.5px solid;border-radius:var(--radius-xs);padding:6px 16px;font-size:.8rem;font-weight:700;cursor:pointer;transition:all .15s;font-family:inherit;letter-spacing:-.01em}.study-btn:hover{opacity:.75}.capstone-status-chip{cursor:pointer;margin-left:auto}.cs-chip{display:inline-flex;align-items:center;gap:5px;padding:4px 12px;border-radius:20px;border:1.5px solid;font-size:.73rem;font-weight:600;transition:opacity .15s}.cs-chip:hover{opacity:.75}.cs-locked{border-color:var(--border);color:var(--text-muted);background:var(--bg)}.cs-unlocked,.cs-pending,.cs-scored{background:var(--bg-white)}.upload-btn{display:inline-flex;align-items:center;gap:4px;border:1.5px solid;border-radius:var(--radius-xs);padding:4px 12px;font-size:.76rem;font-weight:600;cursor:pointer;transition:opacity .15s;background:none;font-family:inherit}.upload-btn:hover{opacity:.7}.upload-error{font-size:.78rem;color:#e53e3e;font-weight:500}.career-select-view{max-width:1100px;margin:0 auto;padding:2.5rem 2.5rem 5rem}.career-select-top{margin-bottom:1.5rem}.career-select-hero{margin-bottom:3rem;text-align:center}.career-select-hero h1{font-size:2.25rem;font-weight:900;color:var(--navy);letter-spacing:-.04em;margin-bottom:.65rem}.career-select-hero p{font-size:1rem;color:var(--text-secondary);max-width:560px;margin:0 auto;line-height:1.7}.career-loading{text-align:center;color:var(--text-muted);font-size:.88rem;padding:4rem}.career-cluster-section{margin-bottom:2.75rem}.career-cluster-label{display:flex;align-items:center;gap:8px;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:1.2px;margin-bottom:1rem}.career-cluster-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.career-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:1rem}.career-card{background:var(--bg-white);border:1px solid var(--border-light);border-radius:var(--radius);padding:1.25rem;cursor:pointer;transition:transform .18s,box-shadow .18s,border-color .18s;position:relative;overflow:hidden;box-shadow:var(--shadow-sm)}.career-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--career-color, var(--teal));border-radius:var(--radius) var(--radius) 0 0}.career-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:var(--career-color, var(--teal))}.career-card.selected{border-color:var(--career-color, var(--teal));background:color-mix(in srgb,var(--career-color, var(--teal)) 5%,white)}.career-card-top{display:flex;align-items:flex-start;gap:10px;margin-bottom:.7rem}.career-card-icon{width:36px;height:36px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:8px;background:var(--bg)}.career-card-icon svg{width:22px;height:22px}.career-card-meta{flex:1}.career-card-title{font-size:.92rem;font-weight:700;color:var(--text-primary);line-height:1.3;letter-spacing:-.01em}.career-card-salary{font-size:.72rem;color:var(--text-muted);margin-top:3px}.career-selected-check{font-size:.82rem;font-weight:800;color:var(--career-color, var(--teal));flex-shrink:0}.career-card-desc{font-size:.8rem;color:var(--text-secondary);line-height:1.55;margin-bottom:.75rem}.career-card-cta{font-size:.76rem;font-weight:700;color:var(--career-color, var(--teal));letter-spacing:-.01em}.career-map-view{max-width:1000px;margin:0 auto;padding:2.5rem 2.5rem 5rem}.career-map-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:2rem}.change-path-btn{background:none;border:1.5px solid var(--border);border-radius:var(--radius-xs);padding:6px 14px;font-size:.8rem;font-weight:600;color:var(--text-secondary);cursor:pointer;transition:all .15s;font-family:inherit}.change-path-btn:hover{border-color:var(--navy);color:var(--navy)}.career-map-hero{text-align:center;margin-bottom:2.5rem;padding:2.5rem;background:var(--bg-white);border-radius:var(--radius);border:1px solid var(--border-light);box-shadow:var(--shadow-sm)}.career-map-cluster-badge{display:inline-block;font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:1px;padding:4px 12px;border-radius:20px;margin-bottom:1rem}.career-map-icon{width:56px;height:56px;display:flex;align-items:center;justify-content:center;border-radius:14px;background:rgba(255,255,255,.15);margin-bottom:.75rem}.career-map-icon svg{width:32px;height:32px}.career-map-title{font-size:2rem;font-weight:900;color:var(--navy);letter-spacing:-.04em;margin-bottom:.6rem;line-height:1.2}.career-map-desc{font-size:.95rem;color:var(--text-secondary);max-width:580px;margin:0 auto 1.25rem;line-height:1.65}.career-salary-badge{display:inline-block;padding:6px 18px;border:1.5px solid;border-radius:20px;font-size:.88rem;font-weight:700}.career-map-body{display:flex;flex-direction:column;gap:1.5rem}.career-map-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}@media (max-width: 700px){.career-map-grid{grid-template-columns:1fr}}.career-map-section{background:var(--bg-white);border:1px solid var(--border-light);border-radius:var(--radius);padding:1.5rem;box-shadow:var(--shadow-sm)}.cms-title{font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:1px;color:var(--text-muted);margin-bottom:.75rem}.cms-text{font-size:.88rem;color:var(--text-secondary);line-height:1.68}.industry-tags{display:flex;flex-wrap:wrap;gap:6px}.industry-tag{font-size:.76rem;font-weight:500;padding:4px 10px;border-radius:20px;border:1px solid;background:transparent}.career-progression{display:flex;flex-direction:column;gap:0}.progression-step{display:flex;align-items:center;gap:10px;position:relative}.progression-dot{width:12px;height:12px;border-radius:50%;border:2px solid;flex-shrink:0;z-index:1}.progression-label{font-size:.86rem}.progression-connector{position:absolute;left:5px;top:14px;width:2px;height:28px;background:var(--border);z-index:0}.career-progression-section{grid-column:1 / -1}.readiness-summary{display:flex;align-items:baseline;gap:8px;margin-bottom:.75rem}.readiness-pct{font-size:2.5rem;font-weight:900;line-height:1;letter-spacing:-.05em}.readiness-label{font-size:.8rem;color:var(--text-muted)}.readiness-bar-track{height:8px;background:var(--border-light);border-radius:10px;overflow:hidden;position:relative;margin-bottom:.5rem}.readiness-bar-covered,.readiness-bar-mastered{position:absolute;top:0;left:0;height:100%;border-radius:10px;transition:width .5s ease}.readiness-legend{display:flex;gap:12px;font-size:.73rem;font-weight:600;flex-wrap:wrap}.readiness-remaining{color:var(--text-muted)}.career-concepts-section{background:var(--bg-white);border:1px solid var(--border-light);border-radius:var(--radius);padding:1.5rem;box-shadow:var(--shadow-sm)}.career-concepts-grid{display:flex;flex-wrap:wrap;gap:6px;margin-top:.75rem}.career-concept-chip{display:flex;align-items:center;gap:5px;padding:5px 12px;border-radius:20px;border:1.5px solid var(--border);font-size:.76rem;color:var(--text-muted);background:var(--bg)}.career-concept-chip.covered{border-color:var(--chip-color, var(--teal));color:var(--text-primary);background:white}.career-concept-chip.mastered{border-color:var(--chip-color, var(--teal));background:var(--chip-color, var(--teal));color:#fff}.chip-status{font-size:.63rem;font-weight:800}.chip-name{font-weight:500}.career-study-cta{background:var(--bg-white);border:1px solid var(--border-light);border-radius:var(--radius);padding:1.5rem;box-shadow:var(--shadow-sm)}.career-study-cta p{font-size:.86rem;color:var(--text-secondary);margin-bottom:1rem;font-weight:500}.career-study-btns{display:flex;flex-wrap:wrap;gap:.75rem}.career-study-btn{background:none;border:1.5px solid;border-radius:var(--radius-xs);padding:7px 14px;font-size:.82rem;font-weight:600;cursor:pointer;transition:all .15s;font-family:inherit;display:flex;align-items:center;gap:6px}.career-study-btn:hover{opacity:.75}.capstone-view{max-width:860px;margin:0 auto;padding:2.5rem 2.5rem 5rem}.capstone-loading{text-align:center;color:var(--text-muted);font-size:.88rem;padding:4rem}.capstone-nav{display:flex;align-items:center;gap:12px;margin-bottom:2rem}.capstone-nav-meta{margin-left:auto}.capstone-subject-pill{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:20px;font-size:.76rem;font-weight:600}.capstone-hero{background:var(--bg-white);border:1.5px solid;border-radius:var(--radius);padding:2rem;margin-bottom:1.5rem;box-shadow:var(--shadow-sm)}.capstone-hero-label{font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:1.2px;margin-bottom:.5rem}.capstone-title{font-size:1.6rem;font-weight:800;color:var(--navy);line-height:1.25;letter-spacing:-.03em}.capstone-locked-banner{background:rgba(195,228,225,.25);border:1px solid #FCD34D;border-radius:var(--radius);padding:1rem 1.25rem;display:flex;align-items:flex-start;gap:10px;font-size:.86rem;color:#78450a;margin-bottom:1.5rem}.capstone-lock-icon{width:20px;height:20px;flex-shrink:0;display:flex;align-items:center}.capstone-lock-icon svg{width:16px;height:16px}.capstone-body{display:flex;flex-direction:column;gap:1.25rem}.capstone-section{background:var(--bg-white);border:1px solid var(--border-light);border-radius:var(--radius);padding:1.5rem;box-shadow:var(--shadow-sm)}.capstone-section-label{font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:1px;color:var(--text-muted);margin-bottom:.75rem}.capstone-section-text{font-size:.9rem;color:var(--text-secondary);line-height:1.72}.capstone-instructions{padding-left:1.25rem;display:flex;flex-direction:column;gap:.5rem}.capstone-instructions li{font-size:.9rem;color:var(--text-secondary);line-height:1.65}.capstone-rubric-table{width:100%;border-collapse:collapse;font-size:.86rem}.capstone-rubric-table th{text-align:left;padding:8px 12px;background:var(--bg);font-weight:700;font-size:.7rem;text-transform:uppercase;letter-spacing:.8px;color:var(--text-muted);border-bottom:1.5px solid var(--border-light)}.capstone-rubric-table td{padding:10px 12px;border-bottom:1px solid var(--border-light);color:var(--text-secondary)}.capstone-rubric-table tr:last-child td{border-bottom:none}.rubric-marks{text-align:right;font-weight:700;color:var(--text-primary);width:60px}.rubric-total-row td{font-weight:700;color:var(--navy);border-top:1.5px solid var(--border)}.capstone-submitted-card{background:var(--bg-white);border:2px solid;border-radius:var(--radius);padding:2rem;box-shadow:var(--shadow-sm);text-align:center;display:flex;flex-direction:column;align-items:center;gap:.75rem}.capstone-score-display{display:flex;align-items:baseline;gap:4px}.capstone-score-number{font-size:3.5rem;font-weight:900;line-height:1;letter-spacing:-.05em}.capstone-score-denom{font-size:1.2rem;color:var(--text-muted);font-weight:600}.capstone-marked-label{font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:1px;color:var(--text-muted)}.capstone-feedback{background:var(--bg);border-radius:var(--radius-sm);padding:1rem 1.25rem;text-align:left;width:100%}.capstone-feedback-label{font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.8px;color:var(--text-muted);margin-bottom:.4rem}.capstone-feedback p{font-size:.86rem;color:var(--text-secondary);line-height:1.65}.capstone-pending-icon{font-size:2rem}.capstone-pending-title{font-size:1.1rem;font-weight:700;color:var(--navy);letter-spacing:-.02em}.capstone-pending-file{font-size:.8rem;color:var(--text-muted)}.capstone-pending-sub{font-size:.84rem;color:var(--text-secondary);max-width:380px;line-height:1.6}.capstone-resubmit-hint{margin-top:.25rem}.capstone-upload-card{background:var(--bg-white);border:2px dashed var(--border);border-radius:var(--radius);padding:2.5rem 2rem;text-align:center;display:flex;flex-direction:column;align-items:center;gap:.75rem;transition:border-color .15s}.capstone-upload-card:hover{border-color:var(--teal)}.capstone-upload-title{font-size:1.05rem;font-weight:700;color:var(--navy);letter-spacing:-.02em}.capstone-upload-hint{font-size:.8rem;color:var(--text-muted)}.capstone-upload-success{font-size:.84rem;font-weight:600;color:var(--teal)}.capstone-upload-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 24px;border-radius:var(--radius-xs);font-size:.88rem;font-weight:700;color:#fff;cursor:pointer;transition:opacity .15s,transform .1s;border:none;font-family:inherit;margin-top:.25rem}.capstone-upload-btn:hover{opacity:.88;transform:translateY(-1px)}.admin-view{max-width:1000px;margin:0 auto;padding:2.5rem 2.5rem 5rem}.admin-nav{display:flex;align-items:center;gap:1rem;margin-bottom:2rem;flex-wrap:wrap}.admin-tabs{display:flex;gap:4px;margin-left:auto;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);padding:3px}.admin-tab{padding:6px 16px;border:none;border-radius:6px;background:none;font-size:.82rem;font-weight:500;color:var(--text-muted);cursor:pointer;font-family:inherit;transition:background .12s,color .12s}.admin-tab.active{background:var(--bg-white);color:var(--text-primary);font-weight:600;box-shadow:var(--shadow-xs)}.access-section{max-width:560px}.access-title{font-size:1.1rem;font-weight:700;color:var(--navy);letter-spacing:-.02em;margin-bottom:4px}.access-subtitle{font-size:.84rem;color:var(--text-muted);margin-bottom:1.25rem}.access-add-form{display:flex;gap:8px;margin-bottom:1.5rem}.access-email-input{flex:1;border:1.5px solid var(--border);border-radius:var(--radius-xs);padding:.65rem .9rem;font-size:.88rem;font-family:inherit;color:var(--text-primary);background:var(--bg-white);outline:none;transition:border-color .15s,box-shadow .15s}.access-email-input:focus{border-color:var(--teal);box-shadow:0 0 0 3px #16c1ad1a}.access-add-btn{padding:.65rem 1.1rem;background:var(--navy);color:#fff;border:none;border-radius:var(--radius-xs);font-size:.84rem;font-weight:600;cursor:pointer;font-family:inherit;white-space:nowrap;transition:opacity .15s}.access-add-btn:disabled{opacity:.45;cursor:not-allowed}.access-add-btn:hover:not(:disabled){opacity:.85}.access-list{display:flex;flex-direction:column;gap:2px}.access-empty{font-size:.84rem;color:var(--text-muted);padding:1rem 0}.access-row{display:flex;align-items:center;gap:12px;padding:10px 14px;background:var(--bg-white);border:1px solid var(--border);border-radius:var(--radius-xs);transition:border-color .12s}.access-row:hover{border-color:var(--border-light)}.access-email{flex:1;font-size:.86rem;color:var(--text-primary);font-weight:500}.access-date{font-size:.76rem;color:var(--text-muted)}.access-remove-btn{background:none;border:1px solid var(--border);border-radius:5px;padding:3px 10px;font-size:.75rem;color:var(--text-muted);cursor:pointer;font-family:inherit;transition:border-color .12s,color .12s}.access-remove-btn:hover{border-color:#e53e3e;color:#e53e3e}.admin-title{font-size:1.4rem;font-weight:800;color:var(--navy);letter-spacing:-.03em}.student-avatar-circle{border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:800;color:#fff;flex-shrink:0;letter-spacing:-.02em}.profile-view{max-width:680px;margin:0 auto;padding:2.5rem 2.5rem 5rem}.profile-header{display:flex;align-items:center;gap:1rem;margin-bottom:2rem}.profile-title{font-size:1.4rem;font-weight:800;color:var(--navy);letter-spacing:-.03em}.profile-body{background:var(--bg-white);border:1px solid var(--border-light);border-radius:20px;overflow:hidden;box-shadow:0 2px 8px #0000000a}.profile-avatar-section{display:flex;align-items:center;gap:1.25rem;padding:2rem 2rem 1.5rem}.profile-avatar-right{display:flex;flex-direction:column;gap:.35rem}.profile-name{font-size:1.15rem;font-weight:800;color:var(--navy);letter-spacing:-.02em}.profile-avatar-label{font-size:.75rem;color:var(--text-muted);font-weight:500}.profile-color-picker{display:flex;gap:6px;flex-wrap:wrap;margin-top:2px}.profile-color-dot{width:20px;height:20px;border-radius:50%;border:2.5px solid transparent;cursor:pointer;transition:transform .12s,border-color .12s;padding:0}.profile-color-dot:hover{transform:scale(1.2)}.profile-color-dot.selected{border-color:var(--navy);transform:scale(1.15)}.profile-divider{height:1px;background:var(--border-light);margin:0 2rem}.profile-section{padding:1.5rem 2rem;display:flex;flex-direction:column;gap:1.1rem}.profile-section-title{font-size:.72rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.1rem}.profile-row{display:flex;gap:1rem;flex-wrap:wrap}.profile-field{display:flex;flex-direction:column;gap:.4rem;flex:1;min-width:180px}.profile-field-sm{max-width:180px}.profile-field label{font-size:.8rem;font-weight:600;color:var(--navy);display:flex;align-items:center;gap:5px}.profile-input{border:1.5px solid var(--border);border-radius:var(--radius-xs);padding:.65rem .9rem;font-size:.88rem;font-family:inherit;color:var(--text-primary);background:var(--bg);outline:none;transition:border-color .15s,box-shadow .15s;width:100%}.profile-input:focus{border-color:var(--teal);background:white;box-shadow:0 0 0 3px #16c1ad1a}.profile-select{border:1.5px solid var(--border);border-radius:var(--radius-xs);padding:.65rem .9rem;font-size:.88rem;font-family:inherit;color:var(--text-primary);background:var(--bg);outline:none;width:100%;cursor:pointer;transition:border-color .15s}.profile-select:focus{border-color:var(--teal)}.profile-textarea{border:1.5px solid var(--border);border-radius:var(--radius-xs);padding:.65rem .9rem;font-size:.88rem;font-family:inherit;color:var(--text-primary);background:var(--bg);outline:none;resize:vertical;line-height:1.6;width:100%;transition:border-color .15s,box-shadow .15s}.profile-textarea:focus{border-color:var(--teal);background:white;box-shadow:0 0 0 3px #16c1ad1a}.profile-nudge{display:flex;align-items:flex-start;gap:6px;background:rgba(22,193,173,.07);border:1px solid rgba(22,193,173,.2);border-radius:var(--radius-xs);padding:8px 10px;font-size:.78rem;color:var(--teal-dim);line-height:1.5}.profile-nudge svg{flex-shrink:0;margin-top:1px}.profile-nudge a{color:var(--teal-dim);font-weight:700;text-decoration:underline;text-underline-offset:2px}.profile-nudge a:hover{color:var(--navy)}.profile-link-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:20px;font-size:.8rem;font-weight:600;text-decoration:none;border:1px solid;transition:opacity .15s;margin-top:4px}.profile-link-badge:hover{opacity:.8}.profile-link-badge.linkedin{color:#0077b5;border-color:#0077b530;background:#0077B508}.profile-link-badge.github{color:#333;border-color:#33333330;background:#33333308}.profile-save-bar{display:flex;align-items:center;justify-content:flex-end;gap:1rem;padding:1.25rem 2rem;border-top:1px solid var(--border-light);background:var(--bg)}.profile-saved-msg{font-size:.82rem;font-weight:600;color:#059669}.profile-save-btn{background:linear-gradient(135deg,var(--teal),var(--teal-dim));color:var(--navy);font-family:inherit;font-size:.88rem;font-weight:700;border:none;border-radius:var(--radius-xs);padding:.65rem 1.4rem;cursor:pointer;transition:opacity .15s}.profile-save-btn:hover:not(:disabled){opacity:.88}.profile-save-btn:disabled{opacity:.5;cursor:not-allowed}.admin-auth-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg);padding:2rem}.admin-auth-card{width:100%;max-width:400px;background:var(--bg-white);border:1px solid var(--border-light);border-radius:20px;padding:2.5rem 2.25rem 2rem;box-shadow:0 4px 6px -1px #0000000a,0 20px 40px -8px #00000014;display:flex;flex-direction:column;align-items:center;gap:0}.admin-auth-brand{display:flex;align-items:center;gap:10px;margin-bottom:1.5rem}.admin-auth-waves{width:32px;height:25px}.admin-auth-wordmark{display:flex;flex-direction:column;line-height:1.15}.admin-auth-bversity{font-size:1rem;font-weight:800;color:var(--navy);letter-spacing:-.03em}.admin-auth-school{font-size:.68rem;font-weight:500;color:var(--text-muted);letter-spacing:.01em;text-transform:uppercase}.admin-auth-divider{width:100%;height:1px;background:var(--border-light);margin-bottom:1.75rem}.admin-auth-badge{display:inline-flex;align-items:center;gap:5px;background:rgba(22,193,173,.1);color:#b8750a;border:1px solid rgba(22,193,173,.25);border-radius:20px;padding:4px 12px;font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;margin-bottom:1rem}.admin-auth-heading{font-size:1.55rem;font-weight:800;color:var(--navy);letter-spacing:-.03em;margin-bottom:.35rem;text-align:center}.admin-auth-sub{font-size:.86rem;color:var(--text-secondary);text-align:center;line-height:1.55;margin-bottom:1.5rem;max-width:280px}.admin-auth-form{width:100%;display:flex;flex-direction:column;gap:.75rem}.admin-key-wrap{position:relative;width:100%}.admin-key-input{width:100%;border:1.5px solid var(--border);border-radius:var(--radius-xs);padding:.72rem 2.75rem .72rem 1rem;font-size:.92rem;font-family:inherit;color:var(--text-primary);background:var(--bg);outline:none;transition:border-color .15s,box-shadow .15s;box-sizing:border-box}.admin-key-input:focus{border-color:var(--teal);background:white;box-shadow:0 0 0 3px #16c1ad1f}.admin-key-toggle{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;color:var(--text-muted);display:flex;align-items:center;padding:0;transition:color .15s}.admin-key-toggle:hover{color:var(--navy)}.admin-auth-back-link{margin-top:1.25rem;background:none;border:none;font-size:.82rem;color:var(--text-muted);cursor:pointer;font-family:inherit;transition:color .15s}.admin-auth-back-link:hover{color:var(--navy)}.admin-overview-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:1rem;margin-bottom:2rem}.admin-ov-card{background:var(--bg-white);border:1.5px solid var(--border-light);border-radius:var(--radius);padding:1.25rem 1.25rem 1rem;display:flex;flex-direction:column;gap:.2rem;box-shadow:var(--shadow-xs)}.admin-ov-card.alert{border-color:#16c1ad;background:rgba(195,228,225,.25)}.admin-ov-value{font-size:2rem;font-weight:800;color:var(--navy);letter-spacing:-.03em;line-height:1}.admin-ov-card.alert .admin-ov-value{color:#c97a00}.admin-ov-label{font-size:.82rem;font-weight:700;color:var(--text-primary);margin-top:.25rem}.admin-ov-sub{font-size:.72rem;color:var(--text-muted)}.admin-ov-section-title{font-size:.75rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.75rem}.admin-students-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.admin-students-count{font-size:.82rem;font-weight:600;color:var(--text-muted)}.admin-students-list{display:flex;flex-direction:column;gap:.6rem}.admin-students-list--full .admin-student-row{padding:1rem 1.25rem}.admin-student-row{display:flex;align-items:center;gap:1rem;background:var(--bg-white);border:1px solid var(--border-light);border-radius:var(--radius-sm);padding:.85rem 1rem;transition:box-shadow .15s}.admin-student-row:hover{box-shadow:var(--shadow-sm)}.admin-st-avatar{width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1rem;font-weight:700;color:#fff;flex-shrink:0}.admin-st-info{flex:1;min-width:0}.admin-st-name{font-size:.88rem;font-weight:700;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-st-email{font-size:.72rem;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-st-college{font-size:.7rem;color:var(--text-muted);margin-top:2px}.admin-st-career{font-size:.78rem;font-weight:600;color:var(--text-secondary);white-space:nowrap;max-width:180px;overflow:hidden;text-overflow:ellipsis}.admin-st-career--none{color:var(--text-muted);font-weight:400;font-style:italic}.admin-st-progress-col{display:flex;flex-direction:column;gap:3px;min-width:160px}.admin-st-prog-label{font-size:.7rem;color:var(--text-muted)}.admin-st-prog-bar-track{height:4px;background:var(--border);border-radius:2px;overflow:hidden}.admin-st-prog-bar-fill{height:100%;background:linear-gradient(90deg,var(--teal),var(--teal-light));border-radius:2px;transition:width .4s}.admin-st-meta{display:flex;flex-direction:column;align-items:flex-end;gap:2px;flex-shrink:0}.admin-st-last-label{font-size:.65rem;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}.admin-st-last{font-size:.78rem;font-weight:600;color:var(--text-secondary)}.admin-st-stats{display:flex;align-items:center;gap:.35rem;font-size:.75rem;color:var(--text-muted);white-space:nowrap}.admin-st-dot{opacity:.4}.admin-st-location{font-size:.68rem;color:var(--text-muted)}.admin-stats-bar{display:flex;gap:2rem;background:var(--bg-white);border:1px solid var(--border-light);border-radius:var(--radius);padding:1rem 1.5rem;margin-bottom:1.5rem;flex-wrap:wrap;box-shadow:var(--shadow-sm)}.admin-stat{font-size:.86rem;color:var(--text-secondary)}.admin-stat strong{color:var(--navy);font-weight:700}.admin-empty{text-align:center;color:var(--text-muted);font-size:.88rem;padding:3rem}.admin-submissions-list{display:flex;flex-direction:column;gap:1rem}.admin-submission-card{background:var(--bg-white);border:1px solid var(--border-light);border-radius:var(--radius);padding:1.5rem;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:.75rem}.admin-sub-header{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.admin-sub-student{display:flex;align-items:center;gap:10px;flex:1;min-width:160px}.admin-sub-avatar{width:34px;height:34px;border-radius:50%;background:var(--navy);color:#fff;font-size:.78rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.admin-sub-name{font-size:.92rem;font-weight:700;color:var(--text-primary);letter-spacing:-.01em}.admin-sub-date{font-size:.7rem;color:var(--text-muted);margin-top:1px}.admin-sub-subject-pill{font-size:.73rem;font-weight:600;padding:4px 10px;border-radius:20px;white-space:nowrap}.admin-sub-score{font-size:1.1rem;font-weight:900;margin-left:auto;letter-spacing:-.02em}.admin-sub-pending{font-size:.72rem;font-weight:600;color:#b45309;background:rgba(195,228,225,.25);border:1px solid #FCD34D;border-radius:20px;padding:3px 10px;margin-left:auto}.admin-sub-file{display:flex;align-items:center;gap:10px;background:var(--bg);border-radius:var(--radius-xs);padding:8px 12px}.admin-sub-filename{flex:1;font-size:.8rem;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-download-btn{background:none;border:1.5px solid var(--border);border-radius:var(--radius-xs);padding:4px 12px;font-size:.76rem;font-weight:600;color:var(--text-secondary);cursor:pointer;transition:all .15s;font-family:inherit;white-space:nowrap;flex-shrink:0}.admin-download-btn:hover{border-color:var(--navy);color:var(--navy)}.admin-sub-feedback-preview{font-size:.8rem;color:var(--text-secondary);background:var(--bg);border-radius:var(--radius-xs);padding:8px 12px;line-height:1.55}.admin-feedback-label{font-weight:700;color:var(--text-muted)}.admin-mark-success{font-size:.8rem;font-weight:600;color:var(--teal);padding:4px 0}.admin-mark-btn{background:none;border:1.5px solid var(--border);border-radius:var(--radius-xs);padding:6px 14px;font-size:.8rem;font-weight:600;color:var(--text-secondary);cursor:pointer;transition:all .15s;font-family:inherit;align-self:flex-start}.admin-mark-btn:hover{border-color:var(--navy);color:var(--navy)}.admin-mark-form{background:var(--bg);border-radius:var(--radius-sm);padding:1rem;display:flex;flex-direction:column;gap:.75rem}.admin-mark-row{display:flex;flex-direction:column;gap:4px}.admin-mark-row label{font-size:.76rem;font-weight:600;color:var(--text-primary)}.admin-score-input{border:1.5px solid var(--border);border-radius:var(--radius-xs);padding:.6rem .8rem;font-size:.9rem;font-family:inherit;color:var(--text-primary);background:white;outline:none;width:100px;transition:border-color .15s}.admin-score-input:focus{border-color:var(--navy)}.admin-feedback-input{border:1.5px solid var(--border);border-radius:var(--radius-xs);padding:.7rem .9rem;font-size:.86rem;font-family:inherit;color:var(--text-primary);background:white;outline:none;width:100%;resize:vertical;transition:border-color .15s;line-height:1.55}.admin-feedback-input:focus{border-color:var(--navy)}.admin-mark-actions{display:flex;gap:.75rem;align-items:center}.admin-submit-mark-btn{border:none;border-radius:var(--radius-xs);padding:8px 18px;font-size:.84rem;font-weight:700;color:#fff;cursor:pointer;transition:opacity .15s,transform .1s;font-family:inherit}.admin-submit-mark-btn:hover{opacity:.88;transform:translateY(-1px)}.admin-cancel-btn{background:none;border:1.5px solid var(--border);border-radius:var(--radius-xs);padding:7px 14px;font-size:.8rem;font-weight:600;color:var(--text-secondary);cursor:pointer;transition:all .15s;font-family:inherit}.admin-cancel-btn:hover{border-color:var(--navy);color:var(--navy)}.career-change-screen{flex:1;display:flex;align-items:flex-start;justify-content:center;padding:2.5rem 1rem 4rem;background:var(--bg);min-height:100%;overflow-y:auto}.career-change-card{background:var(--bg-white);border-radius:var(--radius);border:1px solid var(--border);box-shadow:var(--shadow-md);padding:2rem 2rem 2.25rem;width:100%;max-width:560px;display:flex;flex-direction:column;gap:1.25rem}.career-change-cancel-link{display:inline-flex;align-items:center;gap:.4rem;background:none;border:none;color:var(--text-muted);font-size:.8rem;font-weight:600;cursor:pointer;padding:0;font-family:inherit;transition:color .15s}.career-change-cancel-link:hover{color:var(--text-primary)}.career-change-current{display:flex;align-items:center;gap:.75rem;padding:.65rem 1rem;border-radius:var(--radius-sm);border:1.5px solid}.career-change-current-label{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);white-space:nowrap}.career-change-current-name{font-size:.9rem;font-weight:700}.career-change-heading{font-size:1.35rem;font-weight:800;color:var(--navy);letter-spacing:-.02em;margin:0}.career-change-sub{font-size:.88rem;color:var(--text-secondary);line-height:1.55;margin-top:-.5rem}.career-change-reasons{display:flex;flex-direction:column;gap:.5rem}.career-change-reason{display:flex;align-items:flex-start;gap:.75rem;background:none;border:1.5px solid var(--border);border-radius:var(--radius-sm);padding:.75rem 1rem;cursor:pointer;font-family:inherit;text-align:left;transition:border-color .15s,background .15s}.career-change-reason:hover{border-color:var(--navy-3)}.ccr-radio{width:18px;height:18px;border-radius:50%;border:2px solid var(--border);flex-shrink:0;margin-top:2px;display:flex;align-items:center;justify-content:center;transition:border-color .15s,background .15s}.ccr-radio-dot{width:7px;height:7px;border-radius:50%;background:white}.ccr-text{display:flex;flex-direction:column;gap:.15rem}.ccr-label{font-size:.88rem;font-weight:700;color:var(--navy)}.ccr-sub{font-size:.78rem;color:var(--text-muted)}.career-change-notes-wrap{display:flex;flex-direction:column;gap:.4rem}.career-change-notes-label{font-size:.8rem;font-weight:600;color:var(--text-secondary)}.ccr-optional{font-weight:400;color:var(--text-muted)}.career-change-notes{width:100%;border:1.5px solid var(--border);border-radius:var(--radius-sm);padding:.6rem .75rem;font-size:.85rem;font-family:inherit;color:var(--text-primary);background:var(--bg);resize:vertical;transition:border-color .15s}.career-change-notes:focus{outline:none;border-color:var(--navy)}.career-change-notes::placeholder{color:var(--text-muted)}.career-change-actions{display:flex;flex-direction:column;gap:.6rem}.career-change-proceed-btn{width:100%;padding:.75rem 1.5rem;border:none;border-radius:var(--radius-sm);font-size:.9rem;font-weight:700;color:#fff;background:var(--text-muted);cursor:pointer;font-family:inherit;transition:opacity .15s,transform .1s,background .2s}.career-change-proceed-btn:not(:disabled):hover{opacity:.88;transform:translateY(-1px)}.career-change-proceed-btn:disabled{opacity:.45;cursor:not-allowed}.career-change-tutor-btn{width:100%;padding:.65rem 1rem;border:1.5px solid var(--border);border-radius:var(--radius-sm);font-size:.84rem;font-weight:600;color:var(--text-secondary);background:none;cursor:pointer;font-family:inherit;transition:border-color .15s,color .15s}.career-change-tutor-btn:hover{border-color:var(--navy);color:var(--navy)}.career-hero-badges{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;justify-content:center}.career-qual-badge{display:inline-flex;align-items:center;gap:.3rem;padding:.3rem .75rem;border-radius:20px;font-size:.78rem;font-weight:600;border:1.5px solid}.qual-btech{background:#f0fdf4;border-color:#86efac;color:#16a34a}.qual-msc{background:#fefce8;border-color:#fde047;color:#ca8a04}.qual-any{background:#f0f9ff;border-color:#7dd3fc;color:#0369a1}.community-view{flex:1;display:flex;flex-direction:column;gap:1.5rem;padding:2rem 2rem 3rem;background:var(--bg);min-height:100%;overflow-y:auto}.community-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap}.community-title{font-size:1.4rem;font-weight:800;color:var(--navy);letter-spacing:-.02em}.community-subtitle{font-size:.88rem;color:var(--text-secondary);margin-top:.2rem}.community-add-btn{flex-shrink:0;background:var(--navy);color:#fff;border:none;border-radius:var(--radius-sm);padding:.55rem 1rem;font-size:.84rem;font-weight:700;cursor:pointer;font-family:inherit;transition:opacity .15s}.community-add-btn:hover{opacity:.85}.community-map-wrap{display:flex;flex-direction:column;gap:.75rem}.community-map-glass{position:relative;background:linear-gradient(135deg,#113d39 0%,#176d64 50%,#113d39 100%);border-radius:20px;border:1px solid rgba(0,255,136,.12);box-shadow:0 0 0 1px #00ff880f,0 24px 60px #00000080,0 4px 16px #0000004d,inset 0 1px #ffffff0d;overflow:hidden;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.map-glow{position:absolute;border-radius:50%;pointer-events:none;z-index:0}.map-glow-1{width:350px;height:350px;top:-80px;left:15%;background:radial-gradient(circle,rgba(0,168,150,.12) 0%,transparent 70%)}.map-glow-2{width:280px;height:280px;bottom:-60px;right:20%;background:radial-gradient(circle,rgba(107,63,160,.1) 0%,transparent 70%)}.community-map-glass svg{position:relative;z-index:1}@keyframes dotPulse{0%{r:5;opacity:1}70%{r:10;opacity:0}to{r:10;opacity:0}}@keyframes dotPulseMe{0%{r:7;opacity:1}70%{r:14;opacity:0}to{r:14;opacity:0}}.map-dot,.map-dot-me{transition:r .15s}.map-dot:hover{r:7!important}.community-map-glass circle.map-dot:after{content:""}.map-empty-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;z-index:2;pointer-events:none}.map-empty-badge{width:48px;height:48px;display:flex;align-items:center;justify-content:center;opacity:.5}.map-empty-badge svg{width:32px;height:32px}.map-empty-title{font-size:1.05rem;font-weight:700;color:#ffffffd9;text-align:center}.map-empty-sub{font-size:.84rem;color:#ffffff73;text-align:center}.community-legend{display:flex;align-items:center;gap:1.25rem;padding:0 .25rem}.legend-item{display:flex;align-items:center;gap:.4rem;font-size:.78rem;font-weight:600;color:var(--text-muted)}.legend-dot-green{display:inline-block;width:9px;height:9px;border-radius:50%;background:#00ff88;box-shadow:0 0 6px #0f8;flex-shrink:0}.legend-dot-amber{display:inline-block;width:9px;height:9px;border-radius:50%;background:#16c1ad;box-shadow:0 0 6px #16c1ad;flex-shrink:0}.legend-first{color:var(--text-muted);font-weight:500}.map-popup-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:rgba(7,14,31,.55);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:1rem}.map-popup{position:relative;background:rgba(12,22,44,.92);border:1px solid rgba(0,255,136,.18);border-radius:16px;box-shadow:0 0 0 1px #00ff880f,0 20px 50px #0009;padding:1.75rem 1.75rem 1.5rem;width:260px;display:flex;flex-direction:column;align-items:center;gap:.5rem;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.map-popup-close{position:absolute;top:.75rem;right:.75rem;background:rgba(255,255,255,.07);border:none;color:#ffffff80;border-radius:50%;width:26px;height:26px;font-size:1.1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s;font-family:inherit}.map-popup-close:hover{background:rgba(255,255,255,.14);color:#fff}.map-popup-avatar{width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.3rem;font-weight:800;color:#fff;box-shadow:0 0 16px #0f83;margin-bottom:.25rem}.map-popup-name{font-size:1rem;font-weight:700;color:#ffffffeb;text-align:center}.map-popup-career{font-size:.78rem;color:#0f8c;font-weight:600;text-align:center}.map-popup-location{display:flex;align-items:center;gap:.3rem;font-size:.75rem;color:#ffffff73}.map-popup-links{display:flex;gap:.5rem;margin-top:.25rem;flex-wrap:wrap;justify-content:center}.map-popup-link{display:inline-flex;align-items:center;gap:.3rem;padding:.35rem .8rem;border-radius:20px;font-size:.75rem;font-weight:600;text-decoration:none;transition:opacity .15s}.map-popup-link:hover{opacity:.8}.map-popup-link-li{background:rgba(0,119,181,.25);color:#5eadde;border:1px solid rgba(0,119,181,.35)}.map-popup-link-gh{background:rgba(255,255,255,.08);color:#ffffffb3;border:1px solid rgba(255,255,255,.12)}.map-popup-no-links{font-size:.75rem;color:#ffffff4d}.profile-section-sub{font-size:.8rem;color:var(--text-muted);margin-top:-.5rem;margin-bottom:.75rem}.profile-map-toggle{display:flex;align-items:center;gap:.6rem;cursor:pointer;margin-top:.25rem}.profile-map-toggle input[type=checkbox]{display:none}.profile-map-toggle-track{width:36px;height:20px;border-radius:10px;background:var(--border);flex-shrink:0;position:relative;transition:background .2s}.profile-map-toggle-track:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:white;transition:left .2s;box-shadow:0 1px 3px #0003}.profile-map-toggle input:checked+.profile-map-toggle-track{background:#00A896}.profile-map-toggle input:checked+.profile-map-toggle-track:after{left:18px}.profile-map-toggle-label{font-size:.84rem;font-weight:600;color:var(--text-secondary)}.certificate-view{min-height:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:2rem 1.5rem 3rem;background:#EEF2EE}.certificate-back-btn{align-self:flex-start;background:none;border:none;color:var(--text-secondary);font-size:.9rem;font-weight:500;cursor:pointer;padding:.4rem 0;margin-bottom:1.5rem;display:flex;align-items:center;gap:.4rem;transition:color .15s}.certificate-back-btn:hover{color:var(--text-primary)}.certificate-loading{color:var(--text-muted);margin-top:4rem;font-size:.95rem}.certificate-locked-card{background:var(--bg-white);border:1.5px solid var(--border);border-radius:var(--radius);padding:2.5rem 2rem;max-width:480px;width:100%;text-align:center;box-shadow:var(--shadow-sm)}.certificate-locked-icon{width:52px;height:52px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:rgba(22,193,173,.1);color:var(--teal);margin:0 auto 1rem}.certificate-locked-icon svg{width:28px;height:28px}.certificate-locked-title{font-size:1.15rem;font-weight:700;color:var(--text-primary);margin-bottom:.5rem}.certificate-locked-msg{font-size:.9rem;color:var(--text-muted);line-height:1.5;margin-bottom:1.5rem}.certificate-locked-progress{display:flex;align-items:center;gap:.75rem;margin-bottom:1.5rem}.certificate-locked-bar-track{flex:1;height:8px;background:var(--border);border-radius:4px;overflow:hidden}.certificate-locked-bar-fill{height:100%;border-radius:4px;background:linear-gradient(90deg,#16c1ad,#70cdc2);transition:width .4s}.certificate-locked-pct{font-size:.8rem;font-weight:700;color:var(--text-secondary);white-space:nowrap}.certificate-locked-study-btn{background:var(--navy);color:#fff;border:none;border-radius:var(--radius-sm);padding:.65rem 1.5rem;font-size:.9rem;font-weight:600;cursor:pointer;transition:background .15s}.certificate-locked-study-btn:hover{background:var(--navy-3)}.certificate-parchment{width:100%;max-width:580px;background:#ffffff;border:8px solid #113d39;position:relative;box-shadow:0 12px 48px #07382a38,0 2px 8px #07382a1a}.certificate-parchment:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='22' viewBox='0 0 200 22'%3E%3Cpath d='M0 11 C30 3,70 3,100 11 C130 19,170 19,200 11' fill='none' stroke='rgba(7,56,42,0.05)' stroke-width='1.2'/%3E%3C/svg%3E");background-repeat:repeat;pointer-events:none;z-index:0}.cert-inner-border{margin:8px;border:1.5px solid rgba(7,56,42,.22);padding:2rem 2.25rem 1.5rem;display:flex;flex-direction:column;align-items:center;position:relative;z-index:1;gap:0}.cert-p-logo{display:flex;flex-direction:column;align-items:center;gap:.1rem;margin-bottom:1rem}.cert-p-logo-img{height:48px;object-fit:contain}.cert-p-logo-sub{font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:#113d39;font-weight:500}.cert-p-heading{font-size:3.2rem;font-weight:900;color:#113d39;letter-spacing:-.01em;line-height:1;text-align:center;margin-bottom:.1rem}.cert-p-subheading{font-size:1.05rem;font-weight:600;color:#113d39;letter-spacing:.22em;text-transform:uppercase;text-align:center;margin-bottom:1.5rem}.cert-p-divider{width:60%;height:1px;background:linear-gradient(90deg,transparent,rgba(7,56,42,.3),transparent);margin-bottom:1.2rem}.cert-p-certify-text{font-size:.92rem;color:#3a5a4a;margin-bottom:.5rem}.cert-p-student-name{font-size:2rem;font-weight:700;color:#113d39;text-align:center;line-height:1.1;margin-bottom:.3rem;letter-spacing:-.01em}.cert-p-name-underline{width:70%;height:1.5px;background:rgba(7,56,42,.25);margin-bottom:.9rem}.cert-p-awarded-text{font-size:.88rem;color:#3a5a4a;text-align:center;line-height:1.55;margin-bottom:.75rem;max-width:88%}.cert-p-course{font-size:1.15rem;font-weight:800;color:#113d39;text-align:center;letter-spacing:.02em;line-height:1.3;margin-bottom:1.2rem;text-transform:uppercase}.cert-p-recognition{font-size:.82rem;color:#4a6a5a;text-align:center;line-height:1.65;max-width:90%;margin-bottom:1.6rem}.cert-p-sig-row{display:flex;align-items:flex-start;justify-content:space-between;width:100%;gap:1rem;margin-bottom:1.2rem}.cert-p-sig-person{display:flex;flex-direction:column;align-items:center;flex:1;gap:.15rem}.cert-p-sig-line{width:100%;height:1.5px;background:rgba(7,56,42,.3);margin-bottom:.3rem}.cert-p-sig-name{font-size:.8rem;font-weight:700;color:#113d39;text-align:center}.cert-p-sig-title{font-size:.68rem;color:#4a6a5a;text-align:center;line-height:1.4}.cert-p-seal{display:flex;flex-direction:column;align-items:center;justify-content:center;width:72px;height:72px;border-radius:50%;background:radial-gradient(circle,#D4A520 0%,#9A6F1A 60%,#7A5212 100%);box-shadow:0 0 0 4px #d4a52040,0 3px 10px #7a521266;flex-shrink:0;position:relative;overflow:hidden}.cert-p-seal:before{content:"";position:absolute;top:5px;right:5px;bottom:5px;left:5px;border-radius:50%;border:1.5px solid rgba(255,255,255,.3)}.cert-p-seal-text{font-size:.48rem;font-weight:900;color:#fffffff2;letter-spacing:.1em;text-transform:uppercase;text-align:center;line-height:1.3;position:relative;z-index:1;padding:0 8px}.cert-p-seal-icon{width:20px;height:20px;display:flex;align-items:center;justify-content:center;color:#113d39;margin-bottom:2px}.cert-p-seal-icon svg{width:18px;height:18px}.cert-p-cert-no{font-size:.75rem;color:#3a5a4a;font-weight:500;letter-spacing:.04em;margin-bottom:.35rem}.cert-p-legal{font-size:.6rem;color:#07382a73;text-align:center;line-height:1.5}.certificate-actions{display:flex;gap:1rem;margin-top:1.5rem;flex-wrap:wrap;justify-content:center}.cert-action-btn{display:flex;align-items:center;gap:.5rem;padding:.65rem 1.4rem;border-radius:var(--radius-sm);font-size:.9rem;font-weight:600;cursor:pointer;border:none;transition:opacity .15s,transform .1s}.cert-action-btn:hover{opacity:.88;transform:translateY(-1px)}.cert-action-btn:active{transform:translateY(0)}.cert-action-download{background:#113d39;color:#fff}.cert-action-linkedin{background:#0077B5;color:#fff}.cert-action-copy{background:var(--bg-subtle);color:var(--text-primary);border:1px solid var(--border)}.cert-credential-note{margin-top:1rem;font-size:.75rem;color:var(--text-muted);text-align:center}.cert-verify-link{color:var(--teal);text-decoration:underline;text-underline-offset:2px}.cert-public-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 2rem;background:white;border-bottom:1px solid var(--border-light)}.cert-public-verified-badge{display:flex;align-items:center;gap:.4rem;font-size:.78rem;font-weight:600;color:#065f46;background:#d1fae5;padding:4px 10px;border-radius:99px}.cert-public-footer{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:.75rem;padding:1.5rem 1rem 3rem}.cert-public-meta{font-size:.75rem;color:var(--text-muted)}.cert-public-cta{font-size:.85rem;font-weight:600;color:var(--teal);text-decoration:none}.cert-public-cta:hover{opacity:.75}.ds-cert-btn{display:inline-flex;align-items:center;gap:.35rem;font-size:.78rem;font-weight:600;padding:.35rem .85rem;border-radius:20px;cursor:pointer;border:1.5px solid rgba(7,56,42,.35);background:rgba(7,56,42,.06);color:#113d39;transition:background .15s,border-color .15s}.ds-cert-btn:hover{background:rgba(7,56,42,.12);border-color:#07382a99}@media print{@page{size:A4 portrait;margin:0}body *{visibility:hidden!important}.certificate-parchment,.certificate-parchment *{visibility:visible!important}.certificate-parchment{position:fixed!important;top:0!important;right:0!important;bottom:0!important;left:0!important;max-width:100%!important;width:100%!important;height:100%!important;border:12px solid #113d39!important;box-shadow:none!important;margin:0!important}.cert-inner-border{padding:3rem 3.5rem 2rem!important;justify-content:center;min-height:calc(100% - 16px)}.cert-p-heading{font-size:4rem!important}.cert-p-student-name{font-size:2.6rem!important}}.subject-banner-badges{display:flex;align-items:center;gap:.4rem;margin-left:auto;flex-wrap:wrap;justify-content:flex-end}.subject-badge{font-size:.65rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;padding:.2rem .55rem;border-radius:99px;white-space:nowrap;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.subject-badge--active{background:#d1fae5;color:#065f46}.subject-badge--paused{background:#fef3c7;color:#92400e}.subject-badge--done{background:#dbeafe;color:#1e40af}.subject-badge--locked{background:#f3f4f6;color:#6b7280;display:inline-flex;align-items:center;gap:3px}.subject-badge--locked svg{width:11px;height:11px}.subject-badge--rec{background:#ede9fe;color:#5b21b6}.subject-card--paused{opacity:.82}.subject-card--locked{opacity:.6;cursor:default}.subject-card--completed{outline:2px solid var(--teal);outline-offset:2px}.subject-pause-link{display:inline-block;margin-top:.5rem;font-size:.72rem;color:var(--text-muted);background:none;border:none;cursor:pointer;padding:0;text-decoration:underline;text-underline-offset:2px}.subject-pause-link:hover{color:var(--text-secondary)}.home-active-hint{font-size:.78rem;color:var(--text-muted);background:var(--bg-white);border:1px solid var(--border-light);border-radius:var(--radius-sm);padding:.5rem .85rem;margin-top:.75rem;width:fit-content}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.38);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1.5rem}.unlock-modal{background:var(--bg-white);border:1.5px solid var(--border-light);border-radius:var(--radius);box-shadow:0 20px 60px #0000002e;max-width:440px;width:100%;position:relative;overflow:hidden}.unlock-modal-close{position:absolute;top:.75rem;right:.75rem;background:none;border:none;cursor:pointer;color:var(--text-muted);display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;z-index:1}.unlock-modal-close:hover{background:var(--bg-subtle);color:var(--text-primary)}.unlock-modal-banner{display:flex;align-items:center;gap:.85rem;padding:1rem 1.1rem}.unlock-modal-subject-name{font-size:.92rem;font-weight:600;color:var(--text-primary)}.unlock-modal-tutor{font-size:.72rem;color:var(--text-muted);margin-top:1px}.unlock-modal-body{padding:1.25rem 1.4rem .5rem}.unlock-modal-body h3{font-size:1rem;font-weight:600;color:var(--text-primary);margin-bottom:.5rem}.unlock-modal-body p{font-size:.84rem;color:var(--text-secondary);line-height:1.55}.unlock-modal-alt{margin-top:.75rem;font-style:italic}.unlock-modal-progress-wrap{display:flex;align-items:center;gap:.75rem;margin-top:.85rem}.unlock-modal-progress-track{flex:1;height:7px;background:var(--bg-subtle);border-radius:99px;overflow:hidden}.unlock-modal-progress-fill{height:100%;border-radius:99px;transition:width .4s ease}.unlock-modal-progress-label{font-size:.75rem;color:var(--text-muted);white-space:nowrap}.unlock-modal-active-list{display:flex;flex-direction:column;gap:.5rem;margin-top:.85rem}.unlock-modal-active-row{display:flex;align-items:center;gap:.7rem;padding:.65rem .85rem;border:1.5px solid var(--border-light);border-radius:var(--radius-sm)}.unlock-modal-active-name{flex:1;font-size:.85rem;font-weight:500}.unlock-modal-pause-btn{font-size:.75rem;font-weight:600;padding:.3rem .7rem;border:1.5px solid var(--border);border-radius:var(--radius-sm);background:none;cursor:pointer;color:var(--text-secondary)}.unlock-modal-pause-btn:hover{background:var(--bg-subtle)}.unlock-modal-actions{display:flex;justify-content:flex-end;gap:.65rem;padding:.85rem 1.4rem 1.25rem}.unlock-modal-cancel{font-size:.83rem;padding:.55rem 1rem;border:1.5px solid var(--border);border-radius:var(--radius-sm);background:none;cursor:pointer;color:var(--text-secondary)}.unlock-modal-cancel:hover{background:var(--bg-subtle)}.unlock-modal-confirm{font-size:.83rem;font-weight:600;padding:.55rem 1.1rem;border:none;border-radius:var(--radius-sm);color:#fff;cursor:pointer;display:flex;align-items:center;gap:.3rem;transition:opacity .15s}.unlock-modal-confirm:hover:not(:disabled){opacity:.88}.unlock-modal-confirm:disabled{opacity:.5;cursor:not-allowed}.unlock-modal-error{font-size:.78rem;color:#dc2626;padding:0 1.4rem 1rem;margin:0}.chat-back-group{display:flex;align-items:center;gap:.75rem}.chat-pause-btn{font-size:.72rem;font-weight:600;padding:.3rem .7rem;border:1.5px solid var(--border);border-radius:var(--radius-sm);background:none;cursor:pointer;color:var(--text-muted);letter-spacing:.02em}.chat-pause-btn:hover{background:var(--bg-subtle);color:var(--text-secondary)}.concept-module{display:flex;flex-direction:column;gap:.25rem;padding:.45rem .6rem;border:1px solid var(--border-light);border-radius:var(--radius-sm);cursor:default;transition:border-color .15s}.concept-module.covered{background:color-mix(in srgb,var(--subject-color) 5%,transparent)}.concept-module.mastered{background:color-mix(in srgb,var(--subject-color) 10%,transparent)}.concept-module-header{display:flex;align-items:center;gap:.4rem}.concept-module-icon{font-size:.7rem;font-weight:700;width:18px;text-align:center}.concept-module-name{font-size:.72rem;font-weight:500;color:var(--text-secondary);line-height:1.3}.concept-module-subs{display:flex;gap:3px;padding-left:22px}.concept-sub-dot{width:8px;height:8px;border-radius:50%;background:var(--border-light);flex-shrink:0}.dot-pending{background:var(--bg-subtle);border:1px solid var(--border-light)}.career-subject-progress-list{display:flex;flex-direction:column;gap:.55rem;margin-top:.5rem}.career-subj-row{display:flex;align-items:center;gap:.75rem;padding:.65rem .85rem;border:1px solid var(--border-light);border-radius:var(--radius-sm);cursor:pointer;transition:background .12s;background:var(--bg-white)}.career-subj-row:hover{background:var(--bg-subtle)}.career-subj-icon{width:20px;height:20px;flex-shrink:0}.career-subj-info{flex:1;min-width:0}.career-subj-name{font-size:.82rem;font-weight:500;color:var(--text-primary);margin-bottom:.3rem}.career-subj-bar-track{position:relative;height:5px;background:var(--bg-subtle);border-radius:99px;overflow:hidden;display:flex}.career-subj-bar-fill{height:100%;border-radius:99px}.career-subj-stat{font-size:.72rem;font-weight:600;white-space:nowrap}.videos-section{max-width:860px}.videos-subject-row{margin:1.5rem 0 1rem}.videos-subject-select{background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--text);font-size:.9rem;padding:8px 14px;min-width:280px;cursor:pointer}.videos-concept-list{display:flex;flex-direction:column;gap:2px}.videos-concept-row{display:flex;align-items:center;gap:12px;padding:10px 14px;border-radius:8px;border:1px solid transparent;transition:background .15s}.videos-concept-row:hover{background:rgba(255,255,255,.03)}.videos-concept-row.has-video{border-color:var(--border);background:rgba(0,168,150,.04)}.videos-concept-info{flex:1;min-width:0}.videos-concept-name{display:block;font-size:.88rem;font-weight:600;color:var(--text)}.videos-concept-id{display:block;font-size:.72rem;color:var(--text-muted);margin-top:1px}.videos-existing{display:flex;align-items:center;gap:8px}.videos-existing-title{font-size:.82rem;color:#00a896;font-weight:500;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.videos-edit-btn{font-size:.78rem;padding:4px 10px;border-radius:6px;border:1px solid var(--border);background:transparent;color:var(--text-muted);cursor:pointer}.videos-delete-btn{font-size:.78rem;padding:4px 10px;border-radius:6px;border:1px solid #ff444422;background:transparent;color:#ff6b6b;cursor:pointer}.videos-add-btn{font-size:.78rem;padding:4px 12px;border-radius:6px;border:1px solid var(--border);background:transparent;color:var(--text-muted);cursor:pointer}.videos-add-btn:hover{border-color:#00a896;color:#00a896}.videos-edit-form{display:flex;flex-direction:column;gap:8px;flex:1}.videos-url-input,.videos-title-input{background:var(--surface-2, rgba(255,255,255,.06));border:1px solid var(--border);border-radius:7px;color:var(--text);font-size:.85rem;padding:7px 12px;width:100%}.videos-edit-actions{display:flex;gap:8px}.concept-video-card{margin:8px 16px 8px 52px;border-radius:12px;overflow:hidden;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.03)}.concept-video-label{display:flex;align-items:center;gap:6px;font-size:.8rem;font-weight:600;padding:8px 14px;border-bottom:1px solid rgba(255,255,255,.06)}.concept-video-frame-wrap{position:relative;padding-bottom:56.25%;height:0}.concept-video-frame{position:absolute;top:0;left:0;width:100%;height:100%;border:none}.concept-watch-btn{margin-left:auto;background:none;border:none;font-size:.75rem;cursor:pointer;opacity:.7;padding:0 2px;line-height:1;flex-shrink:0}.concept-watch-btn:hover{opacity:1}.dash-video-modal{background:#0f1923;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;width:min(640px,94vw);box-shadow:0 24px 60px #0009}.dash-video-modal-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid rgba(255,255,255,.07)}.dash-video-modal-title{display:flex;align-items:center;gap:6px;font-size:.85rem;font-weight:600;color:#ffffffd9}.message-bubble p{margin:0 0 .55em}.message-bubble p:last-child{margin-bottom:0}.msg-list{margin:.4em 0 .7em;padding:0;list-style:none}.msg-list li{margin-bottom:.45em;line-height:1.6;padding-left:1.2em;position:relative}.msg-list-ul li:before{content:"•";position:absolute;left:0;color:var(--teal);font-weight:700}.msg-list-ol{counter-reset:ol-counter}.msg-list-ol li{counter-increment:ol-counter}.msg-list-ol li:before{content:counter(ol-counter) ".";position:absolute;left:0;color:var(--teal);font-weight:700;font-size:.85em}.message-bubble .msg-list:last-child{margin-bottom:0}.chat-notes-btn{display:flex;align-items:center;gap:5px;font-size:.78rem;font-weight:600;padding:5px 10px;border-radius:7px;border:1px solid var(--border);background:transparent;color:var(--text-muted);cursor:pointer;transition:all .15s}.chat-notes-btn:hover,.chat-notes-btn.active{border-color:#ffffff40;color:var(--text);background:rgba(255,255,255,.06)}.chat-notes-count{background:#00A896;color:#fff;border-radius:99px;font-size:.68rem;padding:1px 5px}.chat-view.notes-open{display:grid;grid-template-columns:1fr 320px;grid-template-rows:auto 1fr auto}.chat-view.notes-open .chat-header,.chat-view.notes-open .mock-banner,.chat-view.notes-open .career-detected-banner,.chat-view.notes-open .capstone-unlocked-banner,.chat-view.notes-open .concept-unlocked-banner{grid-column:1 / -1}.chat-view.notes-open .messages-area{grid-column:1;grid-row:2}.chat-view.notes-open .chat-input-area{grid-column:1;grid-row:3}.notes-panel{grid-column:2;grid-row:2 / 4;border-left:1px solid var(--border);display:flex;flex-direction:column;background:rgba(0,0,0,.2);overflow:hidden}.notes-panel-header{display:flex;align-items:center;justify-content:space-between;padding:12px 14px 10px;border-bottom:1px solid var(--border);flex-shrink:0}.notes-panel-title{font-size:.82rem;font-weight:700;color:var(--text)}.notes-panel-close{background:none;border:none;color:var(--text-muted);font-size:1.2rem;cursor:pointer;padding:0 2px}.notes-freeform{padding:10px 12px;border-bottom:1px solid var(--border);flex-shrink:0;display:flex;flex-direction:column;gap:6px}.notes-freeform-input{background:rgba(255,255,255,.05);border:1px solid var(--border);border-radius:7px;color:var(--text);font-size:.82rem;padding:8px 10px;resize:none;font-family:inherit}.notes-freeform-save{align-self:flex-end;font-size:.78rem;font-weight:600;color:#fff;border:none;border-radius:7px;padding:5px 14px;cursor:pointer}.notes-freeform-save:disabled{opacity:.4;cursor:not-allowed}.notes-list{flex:1;overflow-y:auto;padding:8px 12px;display:flex;flex-direction:column;gap:8px}.notes-empty{font-size:.8rem;color:var(--text-muted);text-align:center;margin-top:24px}.notes-item{background:rgba(255,255,255,.04);border:1px solid var(--border);border-radius:8px;padding:10px 12px}.notes-item-content{font-size:.8rem;color:#ffffffd9;line-height:1.55;max-height:120px;overflow-y:auto}.notes-item-content p{margin:0 0 .3em}.notes-item-content p:last-child{margin:0}.notes-item-footer{display:flex;align-items:center;justify-content:space-between;margin-top:6px}.notes-item-date{font-size:.7rem;color:var(--text-muted)}.notes-item-delete{font-size:.7rem;color:#ff6b6b;background:none;border:none;cursor:pointer}.msg-save-btn{display:inline-flex;align-items:center;gap:4px;margin-top:8px;font-size:.72rem;color:var(--text-muted);background:none;border:1px solid transparent;border-radius:5px;padding:3px 8px;cursor:pointer;opacity:0;transition:opacity .15s,border-color .15s}.message-bubble:hover .msg-save-btn{opacity:1;border-color:var(--border)}.lag-banner{display:flex;align-items:center;gap:10px;background:#113d39;border:1px solid #176d64;border-radius:10px;padding:10px 16px;margin-top:16px;font-size:.85rem;color:#fff}.lag-banner-icon{width:20px;height:20px;flex-shrink:0;display:flex;align-items:center;color:#70cdc2}.lag-banner-icon svg{width:16px;height:16px}.study-plan-section{padding:0 24px 24px}.study-plan-header{display:flex;align-items:center;gap:12px;margin-bottom:14px}.study-plan-title{font-size:1rem;font-weight:700;color:var(--text);margin:0}.study-plan-lag-chip{font-size:.72rem;font-weight:700;background:#113d39;color:#fff;border:1px solid #176d64;border-radius:99px;padding:2px 10px}.study-plan-scroll{display:flex;gap:10px;overflow-x:auto;padding-bottom:8px;scrollbar-width:thin}.plan-day-card{flex-shrink:0;width:120px;background:rgba(255,255,255,.03);border:1px solid var(--border);border-radius:10px;padding:10px 10px 8px;display:flex;flex-direction:column;gap:6px;transition:border-color .15s}.plan-day-card.today{border-color:#00a896;background:rgba(0,168,150,.07)}.plan-day-card.overdue{border-color:#113d39;background:rgba(17,61,57,.06)}.plan-day-card.done{opacity:.5}.plan-day-label{font-size:.68rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.plan-day-card.today .plan-day-label{color:#00a896}.plan-day-card.overdue .plan-day-label{color:#113d39;font-weight:800}.plan-day-num{font-size:.75rem;font-weight:600;color:var(--text)}.plan-day-concepts{display:flex;flex-direction:column;gap:4px}.plan-concept-chip{font-size:.66rem;padding:3px 6px;border-radius:5px;border:1px solid var(--border);color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.plan-concept-chip.covered{font-weight:600}.plan-concept-chip.clickable{cursor:pointer}.plan-concept-chip.clickable:hover{border-color:var(--navy-3);color:var(--navy-3);background:#e8edf7}.module-quiz-banner{margin:8px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid;border-radius:10px;padding:12px 16px;background:rgba(255,255,255,.03)}.module-quiz-left{display:flex;align-items:flex-start;gap:10px}.module-quiz-icon{font-size:1.1rem;flex-shrink:0;margin-top:1px}.module-quiz-title{font-size:.85rem;color:#ffffffe6}.module-quiz-sub{font-size:.75rem;color:var(--text-muted);margin-top:2px}.module-quiz-btn{flex-shrink:0;font-size:.8rem;font-weight:700;color:#fff;border:none;border-radius:7px;padding:7px 16px;cursor:pointer;white-space:nowrap}.concept-resources-card{margin:6px 16px 6px 52px;border-radius:10px;border:1px solid var(--border);background:rgba(255,255,255,.03);overflow:hidden}.concept-resources-label{display:flex;align-items:center;gap:6px;font-size:.78rem;font-weight:600;padding:8px 12px;border-bottom:1px solid rgba(255,255,255,.06)}.resource-link-row{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;padding:7px 12px;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.04);transition:background .12s}.resource-link-row:last-child{border-bottom:none}.resource-link-row:hover{background:rgba(255,255,255,.05)}.resource-type-badge{flex-shrink:0;font-size:.62rem;font-weight:700;border-radius:4px;padding:1px 6px;text-transform:uppercase;letter-spacing:.04em}.resource-type-paper{background:rgba(123,97,255,.2);color:#a08eff}.resource-type-article{background:rgba(0,168,150,.2);color:#00d4ba}.resource-type-book{background:rgba(245,166,35,.2);color:#f5a623}.resource-type-case-study{background:rgba(255,107,107,.2);color:#ff8585}.resource-type-video{background:rgba(255,64,129,.2);color:#ff80ab}.resource-type-tool{background:rgba(100,200,100,.2);color:#80e080}.resource-link-title{font-size:.82rem;font-weight:600;color:#ffffffd9}.resource-link-desc{font-size:.74rem;color:var(--text-muted);width:100%;margin-top:-2px}.concept-revisit-btn{background:none;border:none;font-size:.8rem;color:var(--text-muted);cursor:pointer;padding:0 2px;opacity:.5;transition:opacity .15s;flex-shrink:0}.concept-module-header:hover .concept-revisit-btn{opacity:1}.analytics-section{margin-bottom:2rem}.analytics-subject-table{display:flex;flex-direction:column;gap:6px;margin-top:.75rem}.analytics-subject-row{display:grid;grid-template-columns:220px 160px 1fr;align-items:center;gap:12px;padding:10px 14px;border-radius:8px;background:rgba(255,255,255,.03);border:1px solid var(--border)}.analytics-subject-name{display:flex;align-items:center;gap:8px;font-size:.84rem;font-weight:600;color:var(--text-primary)}.analytics-subject-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.analytics-subject-stats{display:flex;gap:6px;flex-wrap:wrap}.analytics-stat-pill{font-size:.72rem;font-weight:600;padding:2px 8px;border-radius:10px;background:rgba(255,255,255,.07);color:var(--text-muted)}.analytics-stat-green{background:rgba(0,168,150,.15);color:#00d4ba}.analytics-coverage-wrap{display:flex;align-items:center;gap:8px}.analytics-coverage-track{flex:1;height:6px;border-radius:3px;background:rgba(255,255,255,.08)}.analytics-coverage-fill{height:100%;border-radius:3px;transition:width .4s ease}.analytics-coverage-pct{font-size:.72rem;color:var(--text-muted);flex-shrink:0;width:44px;text-align:right}.analytics-heatmap{margin-top:.75rem;display:flex;flex-direction:column;gap:4px}.analytics-heat-row{display:grid;grid-template-columns:280px 1fr 32px;align-items:center;gap:10px;padding:5px 10px;border-radius:6px}.analytics-heat-row:hover{background:rgba(255,255,255,.03)}.analytics-heat-name{font-size:.78rem;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.analytics-heat-track{height:8px;border-radius:4px;background:rgba(255,255,255,.06);overflow:hidden}.analytics-heat-fill{height:100%;border-radius:4px;background:#00A896;transition:width .35s ease}.analytics-heat-count{font-size:.72rem;color:var(--text-muted);text-align:right}.analytics-quiz-row{display:flex;gap:14px;margin-top:.75rem}.analytics-quiz-card{flex:1;padding:18px 20px;border-radius:10px;border:1px solid var(--border);background:rgba(255,255,255,.03);text-align:center}.subject-complete-banner{display:flex;align-items:center;gap:14px;margin:8px 16px;padding:16px 20px;border-radius:12px;background:linear-gradient(135deg,rgba(0,168,150,.12),rgba(123,97,255,.08));border:1px solid rgba(0,168,150,.35)}.subject-complete-icon{width:40px;height:40px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:50%;background:rgba(22,193,173,.12);color:var(--teal)}.subject-complete-icon svg{width:22px;height:22px}.subject-complete-body{flex:1}.subject-complete-title{font-size:.95rem;font-weight:700;color:var(--text-primary);margin-bottom:3px}.subject-complete-sub{font-size:.8rem;color:var(--text-secondary);line-height:1.4}.subject-complete-btn{flex-shrink:0;border:none;border-radius:8px;padding:8px 16px;font-size:.82rem;font-weight:600;color:#fff;cursor:pointer;white-space:nowrap;transition:opacity .15s}.subject-complete-btn:hover{opacity:.88}.email-sent-toast{background:rgba(0,168,150,.15);color:#00d4ba;border:1px solid rgba(0,168,150,.3);border-radius:8px;padding:10px 16px;font-size:.84rem;font-weight:600;margin-bottom:1.25rem}.email-campaigns-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:2rem}.email-campaign-card{border:1px solid var(--border);border-radius:12px;background:rgba(255,255,255,.03);padding:20px;display:flex;flex-direction:column;gap:14px}.email-camp-header{display:flex;align-items:flex-start;gap:12px}.email-camp-icon{width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:1.1rem;flex-shrink:0}.email-camp-title{font-size:.9rem;font-weight:700;color:var(--text-primary);margin-bottom:4px}.email-camp-desc{font-size:.78rem;color:var(--text-muted);line-height:1.4}.email-camp-meta{display:flex;align-items:baseline;gap:8px}.email-camp-count{font-size:2rem;font-weight:800;color:var(--text-primary);line-height:1}.email-camp-count-label{font-size:.78rem;color:var(--text-muted)}.email-camp-targets{background:rgba(255,255,255,.03);border-radius:8px;border:1px solid var(--border);overflow:hidden;max-height:140px;overflow-y:auto}.email-camp-target-row{display:flex;justify-content:space-between;align-items:center;padding:6px 10px;border-bottom:1px solid var(--border);font-size:.78rem}.email-camp-target-row:last-child{border-bottom:none}.email-camp-target-name{color:var(--text-secondary)}.email-camp-target-meta{color:#ff8585;font-size:.72rem;font-weight:600}.email-send-btn{margin-top:auto;border:none;border-radius:8px;padding:10px 16px;font-size:.82rem;font-weight:700;cursor:pointer;transition:opacity .15s;background:#E05C00;color:#fff}.email-send-btn--teal{background:#00A896}.email-send-btn:disabled{opacity:.4;cursor:not-allowed}.email-send-btn:not(:disabled):hover{opacity:.85}.email-auto-section{margin-top:.5rem}.email-auto-list{display:flex;flex-direction:column;gap:8px;margin-top:.75rem}.email-auto-row{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:10px;border:1px solid var(--border);background:rgba(255,255,255,.02)}.email-auto-icon{font-size:1.2rem;flex-shrink:0}.email-auto-title{font-size:.84rem;font-weight:600;color:var(--text-primary);margin-bottom:2px}.email-auto-desc{font-size:.76rem;color:var(--text-muted)}.email-auto-badge{margin-left:auto;flex-shrink:0;font-size:.65rem;font-weight:700;padding:2px 8px;border-radius:10px;background:rgba(0,168,150,.15);color:#00d4ba;letter-spacing:.05em}.quiz-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:rgba(0,0,0,.72);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:24px}.quiz-modal{background:var(--navy-2);border:1px solid var(--border);border-radius:16px;width:100%;max-width:640px;max-height:88vh;display:flex;flex-direction:column;box-shadow:0 24px 64px #00000080}.quiz-modal-header{display:flex;align-items:center;justify-content:space-between;padding:18px 24px;border-bottom:1px solid var(--border);flex-shrink:0}.quiz-modal-title{font-size:.92rem;font-weight:600;color:var(--text-primary);display:flex;align-items:center;gap:8px}.quiz-modal-icon{font-size:1rem}.quiz-modal-close{background:none;border:none;font-size:1.4rem;line-height:1;color:var(--text-muted);cursor:pointer;padding:2px 6px;border-radius:4px}.quiz-modal-close:hover{color:var(--text-primary);background:rgba(255,255,255,.06)}.quiz-modal-body{overflow-y:auto;padding:20px 24px;flex:1;display:flex;flex-direction:column;gap:20px}.quiz-loading{text-align:center;color:var(--text-muted);font-size:.88rem;padding:40px 0;animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.quiz-error{background:rgba(255,107,107,.12);border:1px solid rgba(255,107,107,.3);color:#ff8585;border-radius:8px;padding:12px 16px;font-size:.84rem}.quiz-cooldown{text-align:center;padding:40px 24px}.quiz-cooldown-icon{width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:rgba(22,193,173,.1);color:var(--teal);margin:0 auto 12px}.quiz-cooldown-icon svg{width:24px;height:24px}.quiz-cooldown-title{font-size:1rem;font-weight:700;color:var(--text-primary);margin-bottom:8px}.quiz-cooldown-sub{font-size:.84rem;color:var(--text-secondary);line-height:1.6}.quiz-results-banner{display:flex;align-items:center;gap:16px;border-radius:10px;padding:14px 18px;border:1px solid}.quiz-results-banner.passed{border-color:#00a89666;background:rgba(0,168,150,.1)}.quiz-results-banner.failed{border-color:#ff6b6b59;background:rgba(255,107,107,.08)}.quiz-results-score{display:flex;flex-direction:column;align-items:center;gap:2px;flex-shrink:0}.quiz-results-num{font-size:1.8rem;font-weight:800;color:var(--text-primary);line-height:1}.quiz-results-label{font-size:.7rem;color:var(--text-muted)}.quiz-results-right{flex:1}.quiz-results-verdict{font-size:1rem;font-weight:700;margin-bottom:3px}.quiz-results-banner.failed .quiz-results-verdict{color:#ff8585}.quiz-results-sub{font-size:.78rem;color:var(--text-muted)}.quiz-q-block{background:rgba(255,255,255,.03);border:1px solid var(--border);border-radius:10px;padding:16px 18px}.quiz-q-block.q-correct{border-color:#00a8964d}.quiz-q-block.q-wrong{border-color:#ff6b6b4d}.quiz-q-num{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:8px}.quiz-q-text{font-size:.88rem;font-weight:600;color:var(--text-primary);line-height:1.5;margin-bottom:14px}.quiz-options{display:flex;flex-direction:column;gap:8px}.quiz-option{display:flex;align-items:center;gap:10px;padding:9px 14px;border-radius:8px;cursor:pointer;border:1px solid var(--border);background:rgba(255,255,255,.02);transition:border-color .12s,background .12s}.quiz-option:not([style]):hover{background:rgba(255,255,255,.05);border-color:#ffffff26}.quiz-option input[type=radio]{display:none}.quiz-option.opt-selected{border-color:#ffffff4d;background:rgba(255,255,255,.06)}.quiz-option.opt-correct{border-color:#00a89680!important;background:rgba(0,168,150,.1)!important}.quiz-option.opt-wrong{border-color:#ff6b6b66;background:rgba(255,107,107,.08)}.opt-letter{flex-shrink:0;width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:700;border:1px solid rgba(255,255,255,.2);color:var(--text-muted)}.opt-text{font-size:.83rem;color:var(--text-secondary);line-height:1.4}.quiz-explanation{margin-top:10px;font-size:.78rem;color:var(--text-muted);background:rgba(255,107,107,.07);border-radius:6px;padding:8px 12px;border-left:2px solid rgba(255,107,107,.4);line-height:1.5}.quiz-explanation--correct{background:rgba(0,168,150,.07);border-left-color:#00a89666}.quiz-modal-footer{padding:14px 24px;border-top:1px solid var(--border);flex-shrink:0;display:flex;justify-content:flex-end}.quiz-submit-btn{border:none;border-radius:8px;padding:10px 24px;font-size:.86rem;font-weight:700;color:#fff;cursor:pointer;background:rgba(255,255,255,.15);transition:opacity .15s}.quiz-submit-btn:disabled{opacity:.35;cursor:not-allowed}.quiz-submit-btn:not(:disabled):hover{opacity:.88}.quiz-retry-btn{border:1px solid var(--border);border-radius:8px;padding:10px 24px;font-size:.86rem;font-weight:600;color:var(--text-secondary);background:none;cursor:pointer;transition:background .12s}.quiz-retry-btn:hover{background:rgba(255,255,255,.05)}.module-quiz-banner.mq-passed .module-quiz-icon{font-weight:700}.ai-assessment-panel{margin-top:16px;border-radius:12px;border:1px solid;background:rgba(160,142,255,.06);overflow:hidden}.ai-assessment-header{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid rgba(255,255,255,.07)}.ai-assessment-badge{font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;background:rgba(160,142,255,.2);color:#a08eff;padding:3px 10px;border-radius:10px}.ai-assessment-score{font-size:1.6rem;font-weight:800;line-height:1}.ai-assessment-denom{font-size:.9rem;font-weight:500;opacity:.6}.ai-assessment-note{font-size:.76rem;color:var(--text-muted);padding:8px 18px 0;margin:0}.ai-criteria-list{padding:10px 18px;display:flex;flex-direction:column;gap:10px}.ai-criterion-row{border-radius:8px;padding:10px 12px;background:rgba(255,255,255,.03);border:1px solid var(--border)}.ai-criterion-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.ai-criterion-name{font-size:.8rem;font-weight:600;color:var(--text-secondary)}.ai-criterion-marks{font-size:.82rem;font-weight:700}.ai-criterion-comments{font-size:.76rem;color:var(--text-muted);line-height:1.5}.ai-feedback-section{padding:10px 18px;border-top:1px solid rgba(255,255,255,.05)}.ai-feedback-label{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted);margin-bottom:5px}.ai-feedback-text{font-size:.8rem;color:var(--text-secondary);line-height:1.55}.admin-ai-score-badge{font-size:.76rem;font-weight:700;padding:3px 10px;border-radius:10px;background:rgba(160,142,255,.15);color:#a08eff}.admin-ai-assessment{margin:10px 0;border-radius:10px;border:1px solid rgba(160,142,255,.25);background:rgba(160,142,255,.05);overflow:hidden}.admin-ai-header{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-bottom:1px solid rgba(160,142,255,.15)}.admin-ai-label{font-size:.78rem;font-weight:700;color:#a08eff}.admin-ai-use-btn{background:rgba(160,142,255,.2);border:1px solid rgba(160,142,255,.35);color:#a08eff;border-radius:6px;padding:5px 12px;font-size:.76rem;font-weight:700;cursor:pointer;transition:background .12s}.admin-ai-use-btn:hover{background:rgba(160,142,255,.32)}.admin-ai-criterion{display:grid;grid-template-columns:1fr 60px;gap:4px;padding:7px 14px;border-bottom:1px solid rgba(255,255,255,.04);font-size:.76rem}.admin-ai-criterion:last-child{border-bottom:none}.admin-ai-crit-name{font-weight:600;color:var(--text-secondary);grid-column:1}.admin-ai-crit-marks{font-weight:700;color:#a08eff;text-align:right;grid-column:2;grid-row:1}.admin-ai-crit-comment{color:var(--text-muted);grid-column:1 / -1;line-height:1.4}.feedback-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.45);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.feedback-modal{background:var(--bg-white);border-radius:16px;padding:2rem;width:100%;max-width:480px;max-height:90vh;overflow-y:auto;box-shadow:0 8px 40px #0000002e}.feedback-modal-title{font-size:1.2rem;font-weight:700;color:var(--text-primary);margin:0 0 .3rem}.feedback-modal-sub{font-size:.86rem;color:var(--text-secondary);margin:0 0 1.4rem}.feedback-question{margin-bottom:1.2rem}.feedback-q-label{font-size:.88rem;font-weight:600;color:var(--text-primary);margin:0 0 .6rem}.feedback-optional{font-weight:400;color:var(--text-muted)}.feedback-options{display:flex;flex-wrap:wrap;gap:8px}.feedback-option{background:var(--bg);border:1.5px solid var(--border);border-radius:20px;padding:6px 14px;font-size:.82rem;color:var(--text-secondary);cursor:pointer;font-family:inherit;transition:all .12s}.feedback-option:hover{border-color:var(--teal);color:var(--teal)}.feedback-option.selected{background:rgba(22,193,173,.1);border-color:var(--teal);color:var(--teal);font-weight:600}.feedback-stars{display:flex;gap:4px}.feedback-star{background:none;border:none;cursor:pointer;font-size:1.8rem;color:var(--border);transition:color .1s;line-height:1;padding:0}.feedback-star.active{color:#f5a623}.feedback-textarea{width:100%;border:1.5px solid var(--border);border-radius:8px;padding:10px 12px;font-size:.88rem;color:var(--text-primary);background:var(--bg);resize:none;box-sizing:border-box;font-family:inherit}.feedback-textarea:focus{outline:none;border-color:var(--teal)}.feedback-modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:1.2rem}.feedback-skip-btn{background:none;border:1.5px solid var(--border);border-radius:8px;padding:9px 18px;font-size:.88rem;color:var(--text-secondary);cursor:pointer;font-weight:600}.feedback-submit-btn{background:var(--teal);color:#fff;border:none;border-radius:8px;padding:9px 22px;font-size:.88rem;font-weight:700;cursor:pointer}.feedback-submit-btn:disabled{opacity:.45;cursor:default}.feedback-modal-done{display:flex;flex-direction:column;align-items:center;gap:.8rem;padding:1.5rem 0;font-size:1rem;font-weight:600;color:var(--text-primary)}.feedback-admin-section{max-width:700px}.feedback-admin-list{display:flex;flex-direction:column;gap:12px;margin-top:1rem}.feedback-admin-row{background:var(--bg);border:1px solid var(--border);border-radius:10px;padding:14px 16px}.feedback-admin-meta{display:flex;align-items:center;gap:10px;margin-bottom:10px;flex-wrap:wrap}.feedback-admin-name{font-weight:700;font-size:.9rem;color:var(--text-primary)}.feedback-admin-email{font-size:.82rem;color:var(--text-secondary)}.feedback-admin-date{font-size:.78rem;color:var(--text-muted);margin-left:auto}.feedback-admin-stars{color:#f5a623;font-size:.95rem}.feedback-admin-answers{display:flex;flex-direction:column;gap:5px}.feedback-admin-answer{font-size:.84rem;color:var(--text-secondary);line-height:1.4}.feedback-admin-q{font-weight:600;color:var(--text-primary);margin-right:4px}.welcome-waitlist-count{margin-top:1rem;font-size:.8rem;color:#ffffff80;letter-spacing:.02em}.waitlist-screen{position:relative;width:100vw;min-height:100vh;background:#060d0c;display:flex;align-items:center;justify-content:center;overflow:auto;padding:2rem 1rem}.waitlist-card{position:relative;z-index:10;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.12);border-radius:20px;padding:2.5rem 2.5rem 2rem;width:100%;max-width:640px;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.waitlist-back-link{display:inline-flex;align-items:center;gap:6px;background:none;border:none;color:#ffffff80;font-size:.85rem;cursor:pointer;padding:0;margin-bottom:1.5rem;transition:color .15s}.waitlist-back-link:hover{color:#ffffffd9}.waitlist-logo{display:block;height:120px;width:auto;object-fit:contain;margin-bottom:1.2rem}.waitlist-title{font-size:1.6rem;font-weight:700;color:#fff;margin-bottom:.4rem}.waitlist-subtitle{font-size:.9rem;color:#ffffff8c;margin-bottom:1.8rem}.waitlist-form{display:flex;flex-direction:column;gap:14px}.waitlist-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.waitlist-field{display:flex;flex-direction:column;gap:5px}.waitlist-field-full{grid-column:1 / -1}.waitlist-field label{font-size:.78rem;font-weight:600;color:#ffffffa6;letter-spacing:.04em;text-transform:uppercase}.waitlist-field input,.waitlist-field select,.waitlist-field textarea{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.15);border-radius:10px;padding:10px 13px;font-size:.9rem;font-family:inherit;color:#fff;outline:none;transition:border-color .15s;resize:vertical}.waitlist-field input::placeholder,.waitlist-field textarea::placeholder{color:#ffffff4d}.waitlist-field select option{background:#1a2a28;color:#fff}.waitlist-field input:focus,.waitlist-field select:focus,.waitlist-field textarea:focus{border-color:#16c1ad99;background:rgba(22,193,173,.05)}.waitlist-error{font-size:.85rem;color:#f87171;background:rgba(248,113,113,.1);border:1px solid rgba(248,113,113,.2);border-radius:8px;padding:8px 12px}.waitlist-submit{margin-top:4px;background:var(--teal);color:#fff;font-family:inherit;font-size:1rem;font-weight:700;border:none;border-radius:50px;padding:.85rem 2rem;cursor:pointer;transition:transform .15s,box-shadow .15s,opacity .15s;box-shadow:0 4px 20px #16c1ad66}.waitlist-submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 28px #16c1ad80}.waitlist-submit:disabled{opacity:.6;cursor:not-allowed}.waitlist-success-icon{display:flex;justify-content:center;margin-bottom:1.2rem}.waitlist-success-title{font-size:1.6rem;font-weight:700;color:#fff;text-align:center;margin-bottom:.6rem}.waitlist-success-pos{font-size:1.1rem;color:var(--teal);text-align:center;margin-bottom:1rem}.waitlist-success-pos strong{color:var(--teal);font-size:1.4rem}.waitlist-success-sub{font-size:.9rem;color:#fff9;text-align:center;line-height:1.6;margin-bottom:2rem}.waitlist-back-btn{display:block;width:100%;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);border-radius:50px;padding:.8rem;color:#fffc;font-family:inherit;font-size:.95rem;font-weight:600;cursor:pointer;transition:background .15s}.waitlist-back-btn:hover{background:rgba(255,255,255,.14)}.admin-tab-badge{display:inline-flex;align-items:center;justify-content:center;background:var(--teal);color:#fff;font-size:.65rem;font-weight:700;border-radius:10px;padding:1px 5px;margin-left:5px;min-width:16px}.waitlist-admin-list{display:flex;flex-direction:column;gap:12px;margin-top:1rem}.waitlist-admin-row{background:var(--bg);border:1px solid var(--border);border-radius:12px;padding:16px}.waitlist-admin-row.waitlist-status-approved{border-color:#16c1ad4d;background:rgba(22,193,173,.04)}.waitlist-admin-row.waitlist-status-rejected{opacity:.55}.waitlist-admin-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:8px;gap:12px}.waitlist-admin-identity{display:flex;flex-direction:column;gap:2px}.waitlist-admin-name{font-weight:700;font-size:.95rem;color:var(--text-primary)}.waitlist-admin-email{font-size:.82rem;color:var(--text-secondary)}.waitlist-admin-phone{font-size:.8rem;color:var(--text-muted)}.waitlist-status-badge-pending{background:rgba(251,191,36,.15);color:#b45309;border:1px solid rgba(251,191,36,.3);border-radius:20px;padding:2px 10px;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.waitlist-status-badge-approved{background:rgba(22,193,173,.12);color:var(--teal-dim);border:1px solid rgba(22,193,173,.25);border-radius:20px;padding:2px 10px;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.waitlist-status-badge-rejected{background:rgba(239,68,68,.1);color:#b91c1c;border:1px solid rgba(239,68,68,.2);border-radius:20px;padding:2px 10px;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.waitlist-admin-details{display:flex;flex-wrap:wrap;gap:12px;font-size:.82rem;color:var(--text-secondary);margin-bottom:8px}.waitlist-admin-reason{font-size:.84rem;color:var(--text-secondary);line-height:1.5;margin-bottom:12px;padding:8px 10px;background:var(--bg-white);border-radius:8px}.waitlist-admin-actions{display:flex;gap:8px}.waitlist-approve-btn{background:var(--teal);color:#fff;border:none;border-radius:8px;padding:7px 16px;font-size:.82rem;font-weight:700;font-family:inherit;cursor:pointer;transition:opacity .15s}.waitlist-approve-btn:hover:not(:disabled){opacity:.85}.waitlist-approve-btn:disabled{opacity:.6;cursor:not-allowed}.waitlist-reject-btn{background:var(--bg-white);color:var(--text-secondary);border:1px solid var(--border);border-radius:8px;padding:7px 14px;font-size:.82rem;font-weight:600;font-family:inherit;cursor:pointer;transition:background .15s}.waitlist-reject-btn:hover:not(:disabled){background:#fee2e2;color:#b91c1c;border-color:#fca5a5}.waitlist-reject-btn:disabled{opacity:.6;cursor:not-allowed}
