:root,[data-theme=dark]{color-scheme:dark;--bg: #090b10;--bg-elevated: #12151c;--bg-card: #161922;--bg-editor: #1a1d28;--surface: #161922;--surface-muted: #1e2230;--border: rgba(255, 255, 255, .08);--border-strong: rgba(255, 255, 255, .14);--text: #f1f3f9;--text-muted: #9aa3b5;--primary: #7c83ff;--primary-hover: #959bff;--primary-deep: #5b62e8;--accent: #22d3ee;--success: #34d399;--warning: #fbbf24;--error: #f87171;--easy: #34d399;--medium: #fbbf24;--hard: #f87171;--nav-hover: rgba(124, 131, 255, .12);--shadow: rgba(0, 0, 0, .45);--shadow-soft: 0 24px 80px rgba(0, 0, 0, .35);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--font: "Inter", system-ui, -apple-system, sans-serif;--font-display: "Plus Jakarta Sans", var(--font);--mono: "JetBrains Mono", ui-monospace, monospace;--header-h: 64px;--content-max: 1120px;--hero-glow: radial-gradient(ellipse 80% 60% at 50% -20%, rgba(124, 131, 255, .35), transparent 70%)}[data-theme=light]{color-scheme:light;--bg: #f6f8fc;--bg-elevated: #ffffff;--bg-card: #ffffff;--bg-editor: #f8fafc;--surface: #ffffff;--surface-muted: #f1f5f9;--border: rgba(15, 23, 42, .08);--border-strong: rgba(15, 23, 42, .14);--text: #0f172a;--text-muted: #64748b;--primary: #4f46e5;--primary-hover: #6366f1;--primary-deep: #4338ca;--accent: #0891b2;--success: #059669;--warning: #d97706;--error: #dc2626;--easy: #15803d;--medium: #b45309;--hard: #b91c1c;--nav-hover: rgba(79, 70, 229, .08);--shadow: rgba(15, 23, 42, .06);--shadow-soft: 0 24px 64px rgba(15, 23, 42, .08);--hero-glow: radial-gradient(ellipse 80% 60% at 50% -20%, rgba(79, 70, 229, .12), transparent 70%)}*{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{font-family:var(--font);background:var(--bg);color:var(--text);line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden;padding-left:env(safe-area-inset-left,0);padding-right:env(safe-area-inset-right,0)}#root{min-height:100vh;min-height:100dvh}body.nav-menu-open{overflow:hidden}a{color:var(--primary-hover);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3,.brand-text{font-family:var(--font-display);letter-spacing:-.02em}.site-header{position:sticky;top:0;z-index:200;border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--bg-elevated) 82%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);padding-top:env(safe-area-inset-top,0)}.navbar{display:flex;align-items:center;gap:8px;padding:0 clamp(16px,3vw,28px);height:var(--header-h);max-width:1280px;margin:0 auto}.brand-link{display:inline-flex;align-items:center;gap:10px;text-decoration:none!important;color:var(--text)}.brand-mark{width:28px;height:28px;border-radius:9px;background:linear-gradient(135deg,var(--primary) 0%,var(--accent) 100%);box-shadow:0 4px 14px color-mix(in srgb,var(--primary) 45%,transparent)}.brand-text{font-size:1.125rem;font-weight:800}.nav-shell{display:flex;align-items:center;gap:4px;margin-left:clamp(12px,2vw,28px);flex:1;min-width:0}.nav-links{display:flex;align-items:center;gap:2px;flex-wrap:wrap}.nav-link{padding:8px 12px;border-radius:var(--radius-sm);color:var(--text-muted);text-decoration:none!important;font-weight:500;font-size:.875rem;border:none;background:transparent;cursor:pointer;font-family:inherit;white-space:nowrap;transition:color .15s,background .15s}.nav-link.active,.nav-link:hover,.nav-more-trigger.active{color:var(--text);background:var(--nav-hover)}.nav-more-wrap{position:relative;margin-left:2px}.nav-more-trigger{display:inline-flex;align-items:center;gap:4px}.nav-chevron{width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid currentColor;opacity:.7;margin-top:2px}.nav-more-panel{position:absolute;top:calc(100% + 8px);left:0;min-width:220px;padding:8px;border-radius:var(--radius-md);border:1px solid var(--border-strong);background:var(--bg-elevated);box-shadow:var(--shadow-soft);display:flex;flex-direction:column;gap:2px;z-index:300}.nav-more-panel .nav-link{width:100%;text-align:left}.nav-menu-toggle{display:none;margin-left:auto;width:44px;height:44px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);cursor:pointer;align-items:center;justify-content:center}.nav-menu-icon,.nav-menu-icon:before,.nav-menu-icon:after{display:block;width:18px;height:2px;background:var(--text);border-radius:2px;position:relative}.nav-menu-icon:before,.nav-menu-icon:after{content:"";position:absolute;left:0}.nav-menu-icon:before{top:-6px}.nav-menu-icon:after{top:6px}.theme-toggle{width:40px;height:40px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);cursor:pointer;font-size:1rem;line-height:1;display:flex;align-items:center;justify-content:center;transition:background .15s,border-color .15s,transform .15s}.theme-toggle:hover{background:var(--nav-hover);border-color:color-mix(in srgb,var(--primary) 40%,var(--border))}.nav-user{margin-left:auto;display:flex;align-items:center;gap:8px;flex-shrink:0}.user-rating{color:var(--text-muted);font-size:.8125rem;font-variant-numeric:tabular-nums;padding:6px 10px;border-radius:999px;background:var(--surface-muted);border:1px solid var(--border)}.btn-nav{min-height:40px;padding:8px 14px;border-radius:var(--radius-sm)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 16px;min-height:44px;border-radius:var(--radius-sm);border:1px solid transparent;cursor:pointer;font-weight:600;font-size:.875rem;font-family:inherit;text-decoration:none!important;transition:background .15s,border-color .15s,box-shadow .15s,transform .12s}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:linear-gradient(180deg,var(--primary-hover) 0%,var(--primary-deep) 100%);color:#fff;box-shadow:0 1px #ffffff1f inset,0 8px 24px color-mix(in srgb,var(--primary) 35%,transparent)}.btn-primary:hover:not(:disabled){filter:brightness(1.05);transform:translateY(-1px)}.btn-secondary{background:var(--surface);color:var(--text);border-color:var(--border-strong)}.btn-secondary:hover:not(:disabled){background:var(--surface-muted);border-color:color-mix(in srgb,var(--primary) 25%,var(--border))}.btn-ghost{background:transparent;color:var(--text-muted);border-color:transparent}.btn-ghost:hover:not(:disabled){color:var(--text);background:var(--nav-hover)}.btn-full{width:100%;margin-top:8px}.btn-lg{padding:12px 24px;font-size:1rem;min-height:44px}.billing-feature-list{margin:.5rem 0 .75rem;padding-left:1.25rem;font-size:.875rem;color:var(--text-muted)}.billing-feature-list li{margin-bottom:.25rem}.billing-current-label{margin-top:.5rem;font-size:.875rem}.success-banner{padding:.75rem 1rem;border-radius:6px;background:color-mix(in srgb,var(--success, #22c55e) 15%,transparent);color:var(--text);margin-bottom:.75rem}.input,.select{padding:8px 12px;border-radius:6px;border:1px solid var(--border);background:var(--bg);color:var(--text);font-size:.875rem}.input:focus,.select:focus{outline:2px solid var(--primary);border-color:transparent}.page{max-width:1100px;margin:0 auto;padding:32px 24px}.page.problems-page{max-width:1200px}.page-container{max-width:1100px;margin:0 auto;padding:32px 28px 56px;color:var(--text)}.page-container>h1{font-family:var(--font-display);font-size:clamp(1.65rem,3vw,2rem);letter-spacing:-.02em;margin-bottom:8px;color:var(--text)}.page-container>.text-muted,.page-container>p.text-muted{margin-bottom:24px}.text-muted{color:var(--text-muted)}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:0 1px 2px var(--shadow);color:var(--text)}.page-header{margin-bottom:24px}.page-header h1{font-size:1.75rem;margin-bottom:4px}.page-header p{color:var(--text-muted)}.main-content{flex:1;min-height:calc(100vh - var(--header-h));background:radial-gradient(ellipse 120% 80% at 50% -30%,color-mix(in srgb,var(--primary) 8%,transparent),transparent 55%),var(--bg)}.filters{display:flex;gap:12px;margin-bottom:20px;flex-wrap:wrap}.filters .input{flex:1;min-width:180px;max-width:320px}.problem-table-wrap{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;overflow-x:auto;-webkit-overflow-scrolling:touch;box-shadow:0 2px 8px var(--shadow)}.problem-table{width:100%;border-collapse:separate;border-spacing:0;min-width:860px}.problem-table th{text-align:left;padding:12px 16px;color:var(--text);font-size:.8rem;font-weight:700;background:var(--bg-editor);border-bottom:2px solid var(--border);white-space:nowrap;position:sticky;top:0;z-index:1}.problem-table th:first-child,.problem-table td:first-child{width:88px;text-align:center;padding-left:16px;padding-right:8px}.problem-table th:nth-child(3),.problem-table td:nth-child(3){width:120px}.problem-table th:nth-child(4),.problem-table td:nth-child(4){width:170px}.problem-table th:nth-child(5),.problem-table td:nth-child(5){width:180px}.problem-table td{padding:13px 16px;border-bottom:1px solid var(--border);color:var(--text);vertical-align:middle;background:var(--bg-card)}.problem-table tbody tr:nth-child(2n) td{background:color-mix(in srgb,var(--bg-editor) 70%,var(--bg-card))}.problem-table tbody tr:hover td{background:var(--nav-hover)}.problem-table tbody tr:last-child td{border-bottom:none}.problem-link{color:var(--text);font-weight:600;text-decoration:none;display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap;line-height:1.35}.problem-link:hover{color:var(--primary-hover)}.status-dot{display:inline-block;width:12px;height:12px;border-radius:50%;border:2px solid var(--text-muted);vertical-align:middle}.status-dot.solved{background:var(--success);border-color:var(--success)}.badge{display:inline-block;padding:3px 10px;border-radius:999px;font-size:.72rem;font-weight:700;letter-spacing:.02em;white-space:nowrap}.badge-easy{background:#22c55e26;color:var(--easy)}.badge-medium{background:#f59e0b26;color:var(--medium)}.badge-hard{background:#ef444426;color:var(--hard)}.problem-table .tags{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.tag{display:inline-block;padding:3px 8px;background:#6366f11f;border:1px solid rgba(99,102,241,.2);border-radius:6px;font-size:.72rem;font-weight:500;color:var(--text);white-space:nowrap}.tag.company{background:#f59e0b1f;border-color:#f59e0b40;color:var(--medium)}.tag.solved-tag{background:#22c55e26;color:var(--success);border-color:transparent}.pagination{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:20px;color:var(--text);font-size:.875rem}.app-problem-workspace{height:100vh;overflow:hidden}.main-content--problem{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.problem-layout{display:grid;grid-template-columns:1fr 1fr;flex:1;min-height:0;height:calc(100vh - var(--header-h));overflow:hidden}.problem-panel{overflow-y:auto;min-height:0;border-right:1px solid var(--border);padding:20px}.problem-title-bar{display:flex;align-items:center;gap:12px;margin-bottom:16px}.tabs{display:flex;gap:4px;margin-bottom:16px;border-bottom:1px solid var(--border)}.tab{padding:8px 16px;background:none;border:none;color:var(--text-muted);cursor:pointer;border-bottom:2px solid transparent;font-weight:500}.tab.active{color:var(--primary);border-bottom-color:var(--primary)}.description-text,pre{font-family:var(--mono);font-size:.875rem;white-space:pre-wrap;line-height:1.7}.sample-case{background:var(--bg-card);border-radius:8px;padding:12px;margin:8px 0}.sample-case pre{margin-top:4px;color:var(--text-muted)}.hint-card{background:var(--bg-card);border-left:3px solid var(--primary);padding:12px 16px;margin-bottom:12px;border-radius:0 8px 8px 0}.editorial-solution-toolbar{display:flex;flex-wrap:wrap;gap:.5rem;margin:.75rem 0 .5rem}.editorial-solution-action{display:inline-flex;align-items:center;gap:.35rem}.solution-code{background:var(--bg-editor);padding:16px;border-radius:8px;overflow-x:auto}.editorial-section{margin-bottom:16px}.editorial-section h4{margin-bottom:6px;color:var(--primary-hover);font-size:.875rem}.editor-panel{display:flex;flex-direction:column;min-height:0;overflow:hidden;background:var(--bg-editor)}.editor-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;flex-shrink:0;padding:8px 12px;background:var(--bg-card);border-bottom:1px solid var(--border)}.editor-actions{display:flex;gap:8px}.monaco-wrapper{flex:1 1 auto;min-height:0}.results-panel{flex:0 0 auto;max-height:min(38vh,360px);overflow-y:auto;padding:14px 16px;background:var(--bg-card);border-top:1px solid var(--border);color:var(--text);position:relative;z-index:1}.verdict{padding:10px 14px;border-radius:8px;margin-bottom:12px;font-size:.9rem}.status-ac{background:#22c55e26;color:var(--success)}.status-wa{background:#ef444426;color:var(--error)}.status-tle,.status-re,.status-ce{background:#f59e0b26;color:var(--warning)}.status-pending{background:#6366f126;color:var(--primary-hover)}.error-msg{font-family:var(--mono);font-size:.8rem;margin-top:8px;color:var(--error);white-space:pre-wrap}.run-results{display:flex;flex-direction:column;gap:10px}.exec-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:4px}.exec-summary h4,.run-results>h4{margin:0;font-size:.95rem;color:var(--text)}.exec-summary-note{margin:2px 0 0;font-size:.75rem;color:var(--text-muted);font-weight:400}.summary-pass{color:var(--success);font-weight:700;font-size:.875rem}.summary-fail{color:var(--error);font-weight:700;font-size:.875rem}.run-case{padding:12px 14px;margin:0;border-radius:8px;font-size:.875rem;background:var(--bg);border:1px solid var(--border);color:var(--text)}.run-case.status-ac{border-color:#22c55e59}.run-case.status-wa{border-color:#ef444459}.case-header{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-bottom:8px;color:var(--text)}.pass-indicator{color:var(--success);font-weight:600}.fail-indicator{color:var(--error);font-weight:600}.time-indicator{color:var(--text-muted);font-size:.8rem;margin-left:auto}.case-details{display:grid;gap:8px}.case-field{display:grid;gap:4px}.field-label{font-size:.75rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em}.case-field pre{margin:0;padding:10px 12px;border-radius:6px;background:var(--bg-editor);border:1px solid var(--border);color:var(--text);font-family:var(--mono);font-size:.8rem;line-height:1.45;white-space:pre-wrap;word-break:break-word;max-height:160px;overflow:auto}.hero-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.features{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;max-width:var(--content-max);margin:0 auto;padding:0 24px 60px}.feature-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:24px}.feature-card h3{margin-bottom:8px}.home{overflow-x:clip}.home-hero{position:relative;padding:clamp(48px,8vw,88px) clamp(20px,4vw,32px) clamp(56px,10vw,96px);text-align:center}.home-hero-glow{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--hero-glow);pointer-events:none}.home-hero-inner{position:relative;max-width:820px;margin:0 auto}.home-eyebrow{display:inline-block;font-size:.8125rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--primary-hover);margin-bottom:16px;padding:6px 12px;border-radius:999px;border:1px solid color-mix(in srgb,var(--primary) 35%,transparent);background:color-mix(in srgb,var(--primary) 10%,transparent)}.home-hero h1{font-size:clamp(2rem,5vw,3.25rem);line-height:1.08;margin-bottom:16px;font-weight:800}.home-lead{color:var(--text-muted);font-size:clamp(1rem,2.2vw,1.125rem);max-width:640px;margin:0 auto 28px}.home-stat-row{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:10px 12px;margin:0 0 28px;padding:0}.home-stat-row li{display:flex;flex-direction:column;align-items:center;min-width:108px;padding:12px 16px;border-radius:var(--radius-md);border:1px solid var(--border);background:color-mix(in srgb,var(--surface) 90%,transparent)}.home-stat-row strong{font-family:var(--font-display);font-size:1.35rem;font-weight:800;color:var(--text);line-height:1.2}.home-stat-row span{font-size:.75rem;color:var(--text-muted);margin-top:2px}.home-search{display:flex;gap:10px;max-width:560px;margin:0 auto 24px;padding:6px;border-radius:var(--radius-lg);border:1px solid var(--border-strong);background:var(--surface);box-shadow:var(--shadow-soft)}.home-search-input{flex:1;min-width:0;padding:12px 14px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text);font-size:1rem;font-family:inherit}.home-search-input:focus{outline:none}.home-search:focus-within{border-color:color-mix(in srgb,var(--primary) 50%,var(--border));box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 18%,transparent)}.home-search .btn{min-height:44px;flex-shrink:0}.home-hero-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.home-section{max-width:var(--content-max);margin:0 auto;padding:clamp(40px,6vw,72px) clamp(20px,4vw,28px)}.home-section-muted{border-block:1px solid var(--border);background:color-mix(in srgb,var(--surface-muted) 55%,transparent)}.home-section-head{text-align:center;max-width:640px;margin:0 auto 32px}.home-section-head h2{font-size:clamp(1.5rem,3vw,2rem);margin-bottom:10px;font-weight:800}.home-section-head p{color:var(--text-muted);font-size:1rem}.home-lane-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.home-lane-card,.home-cap-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:24px;transition:border-color .2s,box-shadow .2s,transform .2s}.home-lane-card:hover,.home-cap-card:hover{border-color:color-mix(in srgb,var(--primary) 35%,var(--border));box-shadow:var(--shadow-soft);transform:translateY(-2px)}.home-lane-icon{font-size:1.75rem;display:block;margin-bottom:12px}.home-lane-card h3,.home-cap-card h3{font-size:1.125rem;margin-bottom:8px;font-weight:700}.home-lane-card p,.home-cap-card p{color:var(--text-muted);font-size:.9375rem;margin-bottom:16px}.home-card-link{font-weight:600;font-size:.875rem;text-decoration:none!important;color:var(--primary-hover)}.home-timeline{list-style:none;margin:0;padding:0;display:grid;gap:14px;max-width:720px;margin-inline:auto}.home-timeline li{display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:start;padding:20px;border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--surface)}.home-timeline-step{font-family:var(--font-display);font-weight:800;font-size:.875rem;padding:8px 10px;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--primary) 15%,transparent);color:var(--primary-hover);white-space:nowrap}.home-timeline h3{font-size:1rem;margin-bottom:4px;font-weight:700}.home-timeline p{color:var(--text-muted);font-size:.9375rem}.home-section-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:28px}.home-cap-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.home-cta-band{padding:clamp(48px,8vw,72px) 24px;margin-top:16px}.home-cta-inner{max-width:560px;margin:0 auto;text-align:center;padding:clamp(32px,5vw,48px);border-radius:var(--radius-xl);border:1px solid color-mix(in srgb,var(--primary) 30%,var(--border));background:linear-gradient(165deg,color-mix(in srgb,var(--primary) 14%,var(--surface)) 0%,var(--surface) 55%);box-shadow:var(--shadow-soft)}.home-cta-inner h2{font-size:clamp(1.5rem,3vw,2rem);margin-bottom:10px;font-weight:800}.home-cta-inner p{color:var(--text-muted);margin-bottom:20px}.home-hero-compact{padding-bottom:clamp(32px,6vw,56px)}.home-catalog-section{padding-top:0}.home-catalog-first{padding-top:clamp(24px,4vw,40px)}.home-quick-nav{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem;margin:0 0 1.25rem;max-width:640px;margin-left:auto;margin-right:auto}.home-quick-nav-link{padding:.45rem .9rem;border-radius:999px;font-size:.8125rem;font-weight:600;text-decoration:none!important;color:var(--text);border:1px solid var(--border-strong);background:var(--surface);transition:background .15s,border-color .15s,transform .15s}.home-quick-nav-link:hover{border-color:color-mix(in srgb,var(--primary) 40%,var(--border));background:var(--nav-hover);transform:translateY(-1px)}.home-featured-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.25rem;max-width:var(--content-max);margin:0 auto;padding:0 clamp(20px,4vw,28px) clamp(28px,5vw,40px)}.home-featured-card{padding:1.35rem 1.4rem;transition:box-shadow .15s,transform .15s}.home-featured-card:hover{box-shadow:var(--shadow-soft);transform:translateY(-1px)}.home-featured-title{margin:0 0 .35rem;font-size:1.05rem;font-weight:700}.home-featured-meta{font-size:.75rem;margin:0 0 .65rem}.home-featured-problem-link{display:block;font-weight:650;font-size:1.05rem;margin-bottom:.65rem;text-decoration:none;color:var(--text)}.home-featured-problem-link:hover{color:var(--primary-hover)}.home-featured-tags{display:flex;flex-wrap:wrap;gap:.45rem;align-items:center}.home-trending-list{list-style:none;margin:.5rem 0 0;padding:0}.home-trending-item{display:flex;justify-content:space-between;align-items:center;gap:.75rem;padding:.45rem 0;border-bottom:1px solid var(--border);font-size:.875rem}.home-trending-item:last-child{border-bottom:none}.home-trending-meta{display:flex;gap:.45rem;align-items:center;flex-shrink:0}.home-trending-meta .badge{font-size:.65rem}.home-trending-rate{font-size:.7rem;color:var(--text-muted)}.home-tier-jump,.learn-tier-jump{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:20px 0 0}.home-tier-jump-link,.learn-tier-jump-link{padding:8px 14px;border-radius:999px;font-size:.8125rem;font-weight:600;text-decoration:none!important;border:1px solid var(--border-strong);background:var(--surface);color:var(--text);transition:background .15s,border-color .15s}.home-tier-jump-link:hover,.learn-tier-jump-link:hover{border-color:color-mix(in srgb,var(--primary) 40%,var(--border));background:var(--nav-hover)}.tier-beginner.home-tier-jump-link,.tier-beginner.learn-tier-jump-link{border-color:color-mix(in srgb,var(--success) 35%,var(--border))}.tier-medium.home-tier-jump-link,.tier-medium.learn-tier-jump-link{border-color:color-mix(in srgb,var(--warning) 35%,var(--border))}.tier-advanced.home-tier-jump-link,.tier-advanced.learn-tier-jump-link{border-color:color-mix(in srgb,var(--error) 30%,var(--border))}.learn-tier-jump{margin:24px 0}.learn-catalog-toolbar{margin:24px 0 8px;padding:16px;border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--surface)}.learn-catalog-toolbar-label{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:10px}.learn-catalog-filters{display:flex;flex-wrap:wrap;gap:8px}.learn-catalog-filter{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;border:1px solid var(--border-strong);background:var(--bg);color:var(--text-muted);font-family:inherit;font-size:.875rem;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s,color .15s}.learn-catalog-filter:hover{border-color:color-mix(in srgb,var(--primary) 35%,var(--border));color:var(--text)}.learn-catalog-filter.is-active{background:color-mix(in srgb,var(--primary) 14%,transparent);border-color:color-mix(in srgb,var(--primary) 45%,var(--border));color:var(--text)}.learn-catalog-filter-count{font-size:.75rem;font-variant-numeric:tabular-nums;padding:2px 7px;border-radius:999px;background:var(--surface-muted);color:var(--text-muted)}.learn-catalog-filter.is-active .learn-catalog-filter-count{background:color-mix(in srgb,var(--primary) 20%,transparent);color:var(--primary-hover)}.learn-catalog-filter-summary{margin:12px 0 0;font-size:.875rem}.learn-catalog-empty{padding:24px;text-align:center}@media (max-width: 640px){.learn-catalog-filters{flex-direction:column;align-items:stretch}.learn-catalog-filter{justify-content:space-between;width:100%;min-height:44px}}.learning-catalog-by-kind{display:flex;flex-direction:column;gap:clamp(2rem,5vw,3rem)}.learning-kind-section{scroll-margin-top:calc(var(--header-h) + 12px)}.learning-kind-head{margin-bottom:1rem;max-width:720px}.learning-kind-head h2{font-size:clamp(1.25rem,2.5vw,1.5rem);margin-bottom:.35rem;font-family:var(--font-display)}.learning-kind-head p{color:var(--text-muted);font-size:.925rem;margin:0}.learning-catalog-tier{flex-shrink:0;align-self:flex-start;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:.2rem .5rem;border-radius:4px;background:color-mix(in srgb,var(--primary) 12%,transparent);color:var(--primary-hover)}.learning-catalog-tier.tier-beginner{background:color-mix(in srgb,var(--success) 14%,transparent);color:var(--success)}.learning-catalog-tier.tier-medium{background:color-mix(in srgb,var(--warning) 16%,transparent);color:var(--warning)}.learning-catalog-tier.tier-advanced{background:color-mix(in srgb,var(--error) 14%,transparent);color:var(--error)}.learn-catalog-toolbar-row{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem;margin-bottom:.65rem}.learn-catalog-toolbar-row .learn-catalog-toolbar-label{margin:0;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);min-width:3.25rem}.learn-kind-jump{display:flex;flex-wrap:wrap;gap:.4rem;margin:.5rem 0 .75rem}.learn-kind-jump-link{font-size:.8125rem;font-weight:600;padding:.35rem .75rem;border-radius:999px;border:1px solid var(--border);text-decoration:none!important;color:var(--text-muted)}.learn-kind-jump-link:hover{color:var(--text);border-color:color-mix(in srgb,var(--primary) 35%,var(--border));background:var(--nav-hover)}.search-filter-toolbar{margin:1.25rem 0 1rem}.search-suggest-row{display:flex;flex-wrap:wrap;gap:.5rem}.search-lang-filters{max-height:120px;overflow-y:auto}.search-result-lang{opacity:.85;font-weight:600}.account-header{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:1rem}.account-summary{padding:1.25rem 1.35rem;margin-bottom:1.5rem}.account-activity-list{list-style:none;margin:0;padding:0}.account-activity-list li{border-bottom:1px solid var(--border)}.account-activity-list li a{display:flex;flex-direction:column;gap:.2rem;padding:.65rem 0;text-decoration:none;color:inherit}.account-activity-list li a:hover strong{color:var(--primary-hover)}.account-problem-slugs{font-size:.875rem}.search-badge-track,.search-badge-plan,.search-badge-lesson,.search-badge-lab,.search-badge-project,.search-badge-problem,.search-badge-system-design{font-size:.7rem;font-weight:700;text-transform:uppercase}.learning-catalog{display:flex;flex-direction:column;gap:clamp(40px,6vw,64px)}.learning-tier-section{scroll-margin-top:calc(var(--header-h) + 16px)}.learning-tier-head{margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid var(--border)}.learning-tier-head h2{font-size:clamp(1.35rem,2.5vw,1.75rem);font-weight:800;margin-bottom:8px}.learning-tier-head p{color:var(--text-muted);font-size:.9375rem;max-width:720px}.learning-tier-count{font-size:.8125rem!important;margin-top:6px!important}.learning-tier-beginner .learning-tier-head h2{color:color-mix(in srgb,var(--success) 75%,var(--text))}.learning-tier-medium .learning-tier-head h2{color:color-mix(in srgb,var(--warning) 80%,var(--text))}.learning-tier-advanced .learning-tier-head h2{color:color-mix(in srgb,var(--primary-hover) 90%,var(--text))}.learning-catalog-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.learning-catalog-item{display:grid;grid-template-columns:auto 1fr auto;gap:12px 16px;align-items:start;padding:14px 16px;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--surface);text-decoration:none!important;color:inherit;transition:border-color .15s,box-shadow .15s,transform .12s}.learning-catalog-item:hover{border-color:color-mix(in srgb,var(--primary) 35%,var(--border));box-shadow:0 8px 24px var(--shadow);transform:translateY(-1px)}.learning-catalog-kind{font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:4px 8px;border-radius:6px;white-space:nowrap;align-self:start;margin-top:2px}.learning-catalog-kind.kind-track{background:color-mix(in srgb,var(--primary) 18%,transparent);color:var(--primary-hover)}.learning-catalog-kind.kind-plan{background:color-mix(in srgb,var(--accent) 15%,transparent);color:var(--accent)}.learning-catalog-kind.kind-lab{background:color-mix(in srgb,var(--success) 15%,transparent);color:var(--success)}.learning-catalog-kind.kind-project{background:color-mix(in srgb,var(--warning) 18%,transparent);color:var(--warning)}.learning-catalog-kind.kind-hub{background:var(--surface-muted);color:var(--text-muted)}.learning-catalog-body{display:flex;flex-direction:column;gap:4px;min-width:0}.learning-catalog-title{font-weight:600;font-size:.9375rem;color:var(--text)}.learning-catalog-desc{font-size:.8125rem;color:var(--text-muted);line-height:1.45}.learning-catalog-meta{font-size:.75rem;color:var(--text-muted);white-space:nowrap;align-self:center}.learn-section-muted{border:1px solid var(--border);border-radius:var(--radius-lg);padding:24px;background:color-mix(in srgb,var(--surface-muted) 50%,transparent)}.learn-sequence-list{max-width:none;margin-top:16px}.learning-tracks-page .learning-tracks-tier{margin-bottom:2.5rem}.learning-tracks-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface)}.learning-tracks-table{width:100%;border-collapse:collapse;font-size:.875rem}.learning-tracks-table th,.learning-tracks-table td{padding:12px 14px;text-align:left;border-bottom:1px solid var(--border)}.learning-tracks-table th{font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);background:color-mix(in srgb,var(--surface-muted) 80%,transparent)}.learning-tracks-table tbody tr:last-child td{border-bottom:none}.learning-tracks-table tbody tr:hover td{background:var(--nav-hover)}.learning-tracks-table .col-num{width:5rem;text-align:center;font-variant-numeric:tabular-nums;color:var(--text-muted)}.learning-tracks-link{font-weight:600;text-decoration:none!important;color:var(--text)}.learning-tracks-link:hover{color:var(--primary-hover)}.learning-tracks-slug{font-family:var(--mono);font-size:.8125rem;color:var(--text-muted)}@media (max-width: 640px){.learning-catalog-item{grid-template-columns:1fr;gap:8px}.learning-catalog-meta{align-self:start}}.languages-bar{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;padding:24px;border-top:1px solid var(--border)}.languages-bar span{padding:6px 14px;background:var(--bg-card);border-radius:20px;font-size:.875rem;color:var(--text-muted)}.contest-grid{display:grid;gap:20px}.contest-card{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:24px}.contest-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.contest-status{font-size:.8rem;font-weight:600;padding:2px 8px;border-radius:4px}.contest-status.running{background:#22c55e26;color:var(--success)}.contest-status.scheduled{background:#6366f126;color:var(--primary-hover)}.contest-status.ended{background:#9ca3af26;color:var(--text-muted)}.contest-desc{color:var(--text-muted);margin-bottom:12px}.contest-meta{display:flex;gap:16px;font-size:.8rem;color:var(--text-muted);margin-bottom:12px}.contest-problems{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.contest-problem-link{padding:4px 10px;background:var(--bg);border-radius:4px;font-size:.8rem;text-decoration:none}.contest-actions{display:flex;gap:8px;margin-bottom:12px}.leaderboard-table{width:100%;border-collapse:collapse;margin-top:12px;font-size:.875rem}.leaderboard-table th,.leaderboard-table td{padding:6px 10px;text-align:left;border-bottom:1px solid var(--border)}.auth-page{display:flex;justify-content:center;align-items:center;min-height:calc(100vh - 56px);padding:24px}.auth-shell{width:100%;max-width:440px}.auth-brand{text-align:center;margin-bottom:20px}.auth-logo{font-size:1.5rem;font-weight:700;color:var(--text);text-decoration:none}.auth-brand p{color:var(--text-muted);font-size:.875rem;margin-top:8px}.auth-card{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:32px;width:100%}.auth-card h1{margin-bottom:8px;font-size:1.5rem}.auth-sub{color:var(--text-muted);font-size:.875rem;margin-bottom:20px}.auth-card label{display:block;margin:12px 0 4px;font-size:.875rem;color:var(--text-muted)}.auth-card .input{width:100%}.auth-label-row{display:flex;justify-content:space-between;align-items:center;margin-top:12px}.auth-label-row label{margin:0}.auth-inline-link{font-size:.8rem;text-decoration:none}.auth-footer{margin-top:16px;text-align:center;color:var(--text-muted);font-size:.875rem}.auth-legal{margin-top:16px;text-align:center;color:var(--text-muted);font-size:.75rem;line-height:1.5}.auth-demo-hint{margin-top:12px;text-align:center;font-size:.75rem;color:var(--text-muted);background:#6366f11a;padding:8px 12px;border-radius:6px}.auth-success{color:var(--success);font-size:.875rem;margin-bottom:16px}.checkbox-label{display:flex!important;align-items:flex-start;gap:8px;margin-top:16px!important;font-size:.875rem!important;color:var(--text)!important;cursor:pointer}.checkbox-label input{margin-top:3px}.dev-hint{margin:16px 0;padding:12px;background:#f59e0b1a;border:1px solid rgba(245,158,11,.3);border-radius:8px;font-size:.8rem;color:var(--text-muted)}.dev-reset-link{display:block;margin-top:8px;word-break:break-all;font-size:.75rem}.error{color:var(--error);font-size:.875rem;margin-top:8px}.static-page{max-width:900px;margin:0 auto;padding:32px 24px 48px}.static-header{margin-bottom:32px}.static-header h1{margin-bottom:8px}.static-meta{color:var(--text-muted);font-size:.875rem}.static-content section{margin-bottom:28px}.static-content h2{font-size:1.125rem;margin-bottom:12px;color:var(--primary-hover)}.static-content p,.static-content li{color:var(--text-muted);font-size:.9375rem}.static-content ul{margin:8px 0 0 20px}.static-content li{margin-bottom:6px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:start}@media (max-width: 768px){.contact-grid{grid-template-columns:1fr}}.contact-info h2{margin-bottom:12px}.contact-info p{color:var(--text-muted);margin-bottom:20px}.contact-details{list-style:none;margin-bottom:20px}.contact-details li{display:flex;flex-direction:column;gap:4px;padding:12px 0;border-bottom:1px solid var(--border)}.contact-details strong{font-size:.8rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.contact-note{font-size:.875rem;color:var(--text-muted)}.contact-form-card{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:28px}.contact-form-card label{display:block;margin:12px 0 4px;font-size:.875rem;color:var(--text-muted)}.contact-form-card .input{width:100%}.textarea{resize:vertical;min-height:120px;font-family:var(--font)}.contact-success h2{margin-bottom:12px}.contact-success p{color:var(--text-muted);margin-bottom:20px}.site-footer{margin-top:auto;border-top:1px solid var(--border);background:color-mix(in srgb,var(--bg-elevated) 92%,transparent);padding:48px clamp(20px,4vw,28px) 24px}.footer-inner{max-width:1100px;margin:0 auto;display:flex;justify-content:space-between;gap:40px;flex-wrap:wrap}.footer-brand{max-width:280px}.footer-logo{font-weight:700;font-size:1.125rem;color:var(--text);text-decoration:none}.footer-brand p{color:var(--text-muted);font-size:.875rem;margin-top:8px}.footer-links{display:flex;gap:48px;flex-wrap:wrap}.footer-links h4{font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:12px}.footer-links div{display:flex;flex-direction:column;gap:8px}.footer-links a{color:var(--text-muted);font-size:.875rem;text-decoration:none}.footer-links a:hover{color:var(--primary-hover)}.footer-bottom{max-width:1100px;margin:24px auto 0;padding-top:20px;border-top:1px solid var(--border);font-size:.8rem;color:var(--text-muted)}.app{display:flex;flex-direction:column;min-height:100vh}.loading{text-align:center;padding:60px;color:var(--text-muted)}.learn-page .stats-bar{display:flex;gap:24px;padding:20px;background:var(--bg-card);border-radius:12px;margin-bottom:32px;border:1px solid var(--border)}.stat{text-align:center}.stat strong{display:block;font-size:1.5rem;color:var(--primary-hover)}.stat span{font-size:.8rem;color:var(--text-muted)}.learn-section{margin-bottom:48px}.learn-section h2{margin-bottom:8px}.section-desc{color:var(--text-muted);margin-bottom:20px}.track-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}.track-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:24px;text-decoration:none;color:inherit;transition:border-color .2s,box-shadow .2s,transform .2s}.track-card:hover{border-color:color-mix(in srgb,var(--primary) 40%,var(--border));text-decoration:none;box-shadow:var(--shadow-soft);transform:translateY(-1px)}.track-icon{font-size:2rem;display:block;margin-bottom:12px}.track-card h3{margin-bottom:8px}.track-card p{color:var(--text-muted);font-size:.875rem;margin-bottom:12px}.track-meta{display:flex;gap:12px;font-size:.8rem;color:var(--text-muted)}.plan-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.plan-card{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:20px}.plan-card-link{text-decoration:none;color:inherit}.plan-card-link:hover{border-color:var(--primary);text-decoration:none}.plan-card h3{margin-bottom:8px}.plan-card p{color:var(--text-muted);font-size:.875rem;margin-bottom:12px}.plan-meta{display:flex;gap:12px;font-size:.8rem;color:var(--text-muted);margin-bottom:12px}.plan-meta-wide{flex-wrap:wrap}.plan-meta .target{color:var(--primary-hover)}.btn-sm{padding:6px 12px;font-size:.8rem}.breadcrumb{font-size:.875rem;color:var(--text-muted);margin-bottom:16px}.breadcrumb a{color:var(--primary-hover)}.lesson-list{display:flex;flex-direction:column;gap:8px}.lesson-card{display:flex;align-items:center;gap:16px;padding:16px 20px;background:var(--bg-card);border:1px solid var(--border);border-radius:8px;text-decoration:none;color:inherit;transition:border-color .15s}.lesson-card:hover{border-color:var(--primary);text-decoration:none}.lesson-num{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:#6366f126;border-radius:50%;font-weight:600;font-size:.875rem;color:var(--primary-hover);flex-shrink:0}.lesson-info{flex:1}.lesson-info h3{font-size:1rem;margin-bottom:4px}.lesson-info p{color:var(--text-muted);font-size:.8rem}.lesson-complete{font-size:.75rem;color:var(--success);background:#22c55e1f;border:1px solid rgba(34,197,94,.24);padding:4px 8px;border-radius:999px}.lesson-level{font-size:.75rem;color:var(--text-muted)}.lesson-page{max-width:800px}.lesson-article header{margin-bottom:24px}.lesson-summary{color:var(--text-muted);margin:8px 0}.complexity-badge{display:inline-block;padding:4px 10px;background:#22c55e26;color:var(--success);border-radius:4px;font-size:.8rem;font-family:var(--mono)}.lesson-diagram{background:var(--bg-card);padding:16px;border-radius:8px;margin:16px 0;font-size:.8rem;overflow-x:auto}.lesson-content{margin:24px 0;color:var(--text)}.code-section{margin:24px 0}.code-section h3{margin-bottom:8px}.lesson-actions{display:flex;gap:12px;margin-top:32px;padding-top:24px;border-top:1px solid var(--border)}.practice-links{display:flex;flex-direction:column;gap:10px;margin-top:24px}.practice-link{display:flex;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid var(--border);border-radius:8px;background:var(--bg-card);text-decoration:none;color:inherit}.practice-link:hover{border-color:var(--primary);text-decoration:none}.practice-link span{color:var(--text-muted);font-size:.8rem}.real-life-box{background:linear-gradient(135deg,#6366f11f,#22c55e14);border:1px solid rgba(99,102,241,.3);border-radius:12px;padding:20px;margin:20px 0}.real-life-box h3{margin-bottom:12px;color:var(--primary-hover)}.real-life-content{line-height:1.7}.real-life-content strong{color:var(--text)}.real-life-content em{color:var(--text-muted)}.code-tabs-wrap{flex-wrap:wrap;gap:4px;margin-bottom:8px}.code-tabs-wrap .code-tab{font-size:.75rem;padding:5px 10px;border-radius:6px}.code-section h3{margin-bottom:12px;font-size:1rem}.code-tab{padding:6px 16px;border:1px solid var(--border);background:var(--bg-card);color:var(--text-muted);border-radius:6px 6px 0 0;cursor:pointer;font-weight:500}.code-tab.active{background:var(--bg-editor);color:var(--primary-hover);border-bottom-color:var(--bg-editor)}.lesson-formatted-wrapper,.lesson-formatted-wrapper p,.lesson-formatted-wrapper li{color:var(--text)}.lesson-formatted-wrapper h2,.lesson-formatted-wrapper h3,.lesson-formatted-wrapper h4{margin:20px 0 10px;color:var(--text)}.lesson-formatted-wrapper strong{color:var(--text);font-weight:700}.lesson-formatted-wrapper em{color:var(--text);font-style:italic}.lesson-formatted-wrapper hr{border:none;border-top:1px solid var(--border);margin:24px 0}.lesson-formatted-wrapper ul.lesson-list,.lesson-formatted-wrapper ol.lesson-list{margin:12px 0 16px 24px;line-height:1.7}.lesson-formatted-wrapper blockquote.lesson-quote{margin:16px 0;padding:12px 16px;border-left:4px solid var(--accent, #6366f1);background:var(--bg-card);border-radius:0 8px 8px 0;font-style:italic}.lesson-formatted-wrapper code.lesson-inline-code{font-family:ui-monospace,monospace;font-size:.9em;padding:2px 6px;border-radius:4px;background:var(--bg-card);border:1px solid var(--border)}.lesson-formatted-wrapper pre.lesson-code-block{background:#1e1e1e;color:#4ec9b0;padding:1rem;border-radius:8px;overflow:auto;font-size:13px;margin:16px 0;line-height:1.5}.lesson-formatted-wrapper pre.lesson-code-block code{font-family:ui-monospace,monospace;background:transparent;border:none;padding:0}.lesson-table{width:100%;border-collapse:collapse;margin:16px 0;font-size:.875rem}.lesson-table td{padding:8px 12px;border:1px solid var(--border)}.lesson-table tr:first-child td{background:var(--bg-card);font-weight:600}.study-plan-page{max-width:980px}.track-chip-row{display:flex;flex-wrap:wrap;gap:10px}.track-chip{padding:8px 12px;border-radius:999px;border:1px solid var(--border);background:var(--bg-card);text-decoration:none;color:var(--text)}.track-chip:hover{border-color:var(--primary);text-decoration:none}.plan-progress-card{display:flex;flex-wrap:wrap;gap:16px;align-items:center;padding:20px;background:var(--bg-card);border:1px solid var(--border);border-radius:12px}.plan-progress-row{min-width:180px;display:flex;flex-direction:column;gap:4px}.plan-progress-row strong{font-size:1.4rem;color:var(--primary-hover)}.plan-progress-row span{color:var(--text-muted);font-size:.85rem}.week-plan-list{display:flex;flex-direction:column;gap:16px}.week-plan-card{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:20px}.week-plan-header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:14px}.week-plan-header p{color:var(--text-muted);margin-top:4px}.week-section-label{font-size:.8125rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin:0 0 8px}.week-lesson-list{margin-bottom:16px}.week-lesson-items{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.week-lesson-link{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:#ffffff05}.week-lesson-link:hover{border-color:var(--accent)}.week-lesson-title{font-weight:500}.week-lesson-track{font-size:.8125rem}.week-problem-list{display:flex;flex-direction:column;gap:10px}.week-problem-link{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:12px 14px;border:1px solid var(--border);border-radius:8px;background:#ffffff03;text-decoration:none;color:inherit}.week-problem-link:hover{border-color:var(--primary);text-decoration:none}.interview-timer{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.interview-timer strong{min-width:64px;text-align:center;color:var(--primary-hover)}.submission-history{display:flex;flex-direction:column;gap:10px}.lab-workspace{max-width:900px}.lab-instruction{background:var(--bg-card);border:1px solid var(--border);padding:1rem;border-radius:8px;margin-bottom:.5rem;color:var(--text);line-height:1.55}.lab-code-editor{width:100%;min-height:200px;font-family:var(--mono);font-size:14px;padding:12px;border-radius:0 8px 8px;border:1px solid var(--border);background:var(--bg-editor);color:var(--text);resize:vertical;line-height:1.45}.lab-code-editor:focus{outline:2px solid var(--primary);border-color:transparent}.lab-output{background:#1e1e2e;color:#4ec9b0;padding:.75rem;border-radius:6px;font-family:var(--mono);margin-top:.5rem;overflow-x:auto}.lab-output pre{margin:0;white-space:pre-wrap;color:inherit}.lab-output-error{color:#f87171!important;margin-bottom:.5rem}.lab-feedback{padding:.75rem;border-radius:6px;margin-top:.5rem;white-space:pre-wrap}.lab-feedback.passed{background:#22c55e1f;color:var(--success)}.lab-feedback.failed{background:#ef44441f;color:var(--error)}.lab-hint-summary{cursor:pointer;color:var(--text-muted)}.lab-hint-body{padding:.5rem;margin-top:.5rem;background:var(--bg-card);border:1px solid var(--border);border-radius:4px;color:var(--text)}.lab-login-banner{padding:.75rem;background:#f59e0b1f;color:var(--warning);border-radius:6px;margin-bottom:1rem}.projects-page{max-width:980px}.project-how-it-works{padding:20px 22px;margin-bottom:24px}.project-how-it-works h2{margin:0 0 12px;font-size:1.1rem;color:var(--text)}.project-how-steps{margin:0 0 12px;padding-left:1.25rem;color:var(--text);line-height:1.55;font-size:.95rem}.project-how-steps li{margin-bottom:8px}.project-how-note{margin:0;padding:12px 14px;border-radius:8px;background:var(--bg-editor);border:1px solid var(--border);color:var(--text);font-size:.875rem;line-height:1.5}.project-list{display:grid;gap:16px}.project-card{display:block;width:100%;text-align:left;padding:22px 24px;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease;font:inherit;color:inherit}.project-card:hover{border-color:var(--primary);box-shadow:0 4px 14px var(--shadow)}.project-card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:8px}.project-card-top h3{margin:0;font-size:1.1rem;color:var(--text);line-height:1.35}.project-card-desc{margin:0 0 12px;color:var(--text-muted);font-size:.9rem;line-height:1.5}.project-card-meta{display:flex;flex-wrap:wrap;gap:8px 16px;font-size:.8rem;color:var(--text-muted);margin-bottom:12px}.project-card-preview{margin:0 0 12px;padding:12px 14px;border-radius:8px;background:var(--bg-editor);border:1px solid var(--border)}.project-card-preview strong{display:block;margin-bottom:6px;color:var(--text);font-size:.8rem}.project-card-preview ul{margin:0;padding-left:1.1rem;color:var(--text);font-size:.85rem;line-height:1.45}.project-card-preview-q{background:#6366f114;border-color:#6366f140}.project-meta-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:8px 0 12px}.project-spotlight-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:8px 0 28px}.project-spotlight{padding:18px 20px}.project-spotlight h2{margin:0 0 8px;font-size:1.05rem;color:var(--text)}.project-spotlight-lead{margin:0 0 14px;color:var(--text);font-size:.875rem;line-height:1.45;opacity:.85}.project-spotlight-lead strong{color:var(--text)}.project-spotlight-questions{background:color-mix(in srgb,var(--primary) 8%,var(--bg-card));border-color:color-mix(in srgb,var(--primary) 30%,var(--border))}.project-question-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}.project-question-list li{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border-radius:8px;background:var(--bg-card);border:1px solid var(--border);color:var(--text)}.project-q-index{flex-shrink:0;font-size:.75rem;font-weight:700;color:var(--primary-hover);padding-top:2px}.project-q-text{font-size:.9rem;line-height:1.45;font-weight:500}.project-expectation-list{display:grid;gap:12px}.project-expectation-item{padding:12px;border-radius:8px;background:var(--bg-editor);border:1px solid var(--border)}.project-expectation-head{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:4px;color:var(--text)}.project-expectation-criteria{margin:0 0 8px;color:var(--text);font-size:.875rem;font-weight:500}.project-score-levels{list-style:none;margin:0;padding:0;display:grid;gap:6px}.project-score-levels li{display:flex;gap:8px;align-items:flex-start;font-size:.8rem;color:var(--text-muted);line-height:1.4}.project-score-pill{flex-shrink:0;min-width:28px;text-align:center;font-weight:700;font-size:.72rem;padding:1px 6px;border-radius:999px;background:#6366f126;color:var(--primary-hover)}.project-section{margin:28px 0}.project-section h2{font-size:1.15rem;margin-bottom:8px;color:var(--text)}.project-milestone-list{display:grid;gap:12px}.project-milestone{padding:18px 20px}.project-milestone h4{margin:0 0 6px;color:var(--text)}.project-milestone p{margin:0 0 10px;color:var(--text-muted);font-size:.9rem;line-height:1.5}.project-deliverables-block{padding:10px 12px;border-radius:8px;background:var(--bg-editor);border:1px solid var(--border)}.project-deliverables-block strong{display:block;margin-bottom:6px;font-size:.8rem;color:var(--text)}.project-deliverables-block ul{margin:0;padding-left:1.1rem;color:var(--text);font-size:.85rem;line-height:1.45}.project-tech-row{display:flex;flex-wrap:wrap;gap:8px}.project-code-block,.project-repo-block{background:var(--bg-editor);color:var(--text);border:1px solid var(--border);padding:1rem;border-radius:8px;font-size:12px;overflow-x:auto;font-family:var(--mono);line-height:1.5}.project-code-block{background:#1e1e2e;color:#4ec9b0;border:none}.project-checklist{display:grid;gap:10px}.project-check-item{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;font-size:.9rem;color:var(--text);padding:10px 12px;background:var(--bg-card);border:1px solid var(--border);border-radius:8px}.project-check-label{flex:1;min-width:200px}.project-sev-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.project-sev-dot.sev-critical{background:var(--error)}.project-sev-dot.sev-high{background:var(--warning)}.project-sev-dot.sev-medium,.project-sev-dot.sev-low{background:var(--success)}.project-obs-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.project-obs-card{padding:14px 16px}.project-obs-card h4{margin:0 0 8px;color:var(--text)}.project-obs-card ul,.project-resume-card ul{margin:0;padding-left:1.1rem;color:var(--text);font-size:.875rem;line-height:1.55}.project-resume-card{padding:18px 20px}.project-resume-card h4{margin:0 0 8px;color:var(--text)}.project-impact{margin:0 0 14px;padding:10px 12px;border-radius:8px;background:#22c55e1a;border:1px solid rgba(34,197,94,.25);color:var(--text);font-size:.9rem;line-height:1.45}@media (max-width: 800px){.project-spotlight-grid,.project-obs-grid{grid-template-columns:1fr}.project-card-top{flex-direction:column;align-items:flex-start}}@media (max-width: 1024px){.home-lane-grid,.home-cap-grid{grid-template-columns:1fr}}.nav-mobile-actions{display:none}@media (max-width: 960px){.nav-menu-toggle{display:inline-flex;flex-shrink:0;margin-left:4px}.navbar{gap:6px;padding:0 12px}.nav-user{margin-left:auto;gap:6px}.nav-user .btn-nav,.nav-user .user-rating:not(.user-rating-mobile){display:none}.nav-shell{display:none;flex:none;width:auto}.nav-shell.is-open{display:flex;position:fixed;inset:var(--header-h) 0 0 0;margin:0;padding:20px 16px calc(24px + env(safe-area-inset-bottom,0));flex-direction:column;align-items:stretch;gap:16px;background:var(--bg-elevated);border-top:1px solid var(--border);overflow-y:auto;-webkit-overflow-scrolling:touch;z-index:250;animation:nav-drawer-in .2s ease-out}@keyframes nav-drawer-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.nav-links-primary{flex-direction:column;align-items:stretch}.nav-links-primary .nav-link,.nav-more-wrap .nav-more-trigger{width:100%;justify-content:flex-start;padding:14px;font-size:1rem;min-height:48px}.nav-more-panel{position:static;box-shadow:none;border:none;padding:0 0 0 8px;background:transparent;margin-top:4px}.nav-more-panel .nav-link{min-height:44px}.nav-mobile-actions{display:flex;flex-direction:column;gap:10px;margin-top:auto;padding-top:16px;border-top:1px solid var(--border)}.user-rating-mobile{display:block!important;text-align:center;width:100%}}@media (max-width: 640px){.page,.page-container,.static-page{padding:20px 16px 40px}.page-header h1,.page-container>h1{font-size:1.5rem}.home-hero{padding-left:16px;padding-right:16px}.home-search{flex-direction:column;align-items:stretch;padding:10px;max-width:none}.home-search .btn{width:100%}.home-stat-row{gap:8px}.home-stat-row li{min-width:calc(50% - 4px);flex:1 1 calc(50% - 4px);padding:10px 12px}.home-hero-actions,.home-section-actions,.hero-actions{flex-direction:column;align-items:stretch;width:100%;max-width:400px;margin-left:auto;margin-right:auto}.home-hero-actions .btn,.home-section-actions .btn,.hero-actions .btn{width:100%}.home-tier-jump,.learn-tier-jump{flex-direction:column;align-items:stretch;max-width:400px;margin-left:auto;margin-right:auto}.home-tier-jump-link,.learn-tier-jump-link{text-align:center}.home-section,.home-cta-band{padding-left:16px;padding-right:16px}.sd-hub-hero-actions{flex-direction:column;align-items:stretch;max-width:320px;margin:0 auto}.sd-hub-hero-actions .btn{width:100%}.sd-hub-subnav{justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;-webkit-overflow-scrolling:touch;padding-bottom:.5rem}.sd-hub-subnav-link{flex-shrink:0}.home-cta-inner{padding:28px 20px}.learn-page .stats-bar{flex-wrap:wrap;justify-content:center;gap:16px 20px;padding:16px}.stat{min-width:72px;flex:1 1 72px}.stat strong{font-size:1.25rem}.filters{flex-direction:column;align-items:stretch}.filters .input,.filters .select{max-width:none;width:100%}.track-grid,.plan-grid{grid-template-columns:1fr}.footer-inner{flex-direction:column;gap:28px}.footer-links{gap:24px;width:100%}.auth-page{padding:24px 16px 16px;align-items:flex-start}.auth-card{padding:24px 20px}.contact-grid{grid-template-columns:1fr}.learning-tier-head h2{font-size:1.35rem}.learning-catalog-item{padding:12px 14px}.learning-catalog-kind{font-size:.625rem}.brand-text{font-size:1rem}.brand-mark{width:24px;height:24px}.problem-table th:nth-child(4),.problem-table td:nth-child(4),.problem-table th:nth-child(5),.problem-table td:nth-child(5){display:none}.problem-table th,.problem-table td{padding:10px 8px;font-size:.8125rem}.site-footer{padding-bottom:calc(24px + env(safe-area-inset-bottom,0))}}@media (max-width: 900px){.app-problem-workspace{height:100vh;height:100dvh}.problem-layout{grid-template-columns:1fr;grid-template-rows:minmax(0,42vh) minmax(0,1fr);height:calc(100vh - var(--header-h));height:calc(100dvh - var(--header-h))}.problem-panel{max-height:none}.editor-panel,.monaco-wrapper{min-height:0}.results-panel{max-height:min(40vh,320px)}.plan-progress-card,.week-plan-header,.lesson-actions,.interview-timer{flex-direction:column;align-items:stretch}}:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.btn:focus-visible,.code-tab:focus-visible,.nav-link:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.error-banner{background:color-mix(in srgb,var(--error) 15%,transparent);border:1px solid var(--error);color:var(--text);padding:.75rem 1rem;border-radius:8px;margin:.75rem 0}.plan-card-link:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;left:-9999px;top:0;z-index:1000;padding:.75rem 1rem;background:var(--surface);color:var(--text);border:2px solid var(--primary);border-radius:8px;font-weight:600;text-decoration:none}.skip-link:focus{left:.75rem;top:.75rem}.tab:focus-visible,.lesson-card:focus-visible,.week-problem-link:focus-visible,.track-chip:focus-visible,details summary:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.lab-step-progress,.plan-track-progress{width:100%;height:.65rem;margin:.75rem 0 1rem;accent-color:var(--primary)}.loading[role=status]{padding:2rem;text-align:center;color:var(--text-muted)}.quiz-fieldset{border:none;padding:0;margin:0}.quiz-fieldset .week-problem-link{margin-bottom:.75rem}.onboarding-legend{font-size:1.25rem;font-weight:600;margin-bottom:1rem;padding:0}.oauth-providers{margin-top:1.25rem;display:flex;flex-direction:column;gap:.5rem}.oauth-divider{text-align:center;font-size:.9rem;margin-bottom:.5rem}.search-form{display:flex;gap:.75rem;margin:1.5rem 0 .5rem;max-width:640px}.hero-search{margin:1.25rem auto 1.5rem;max-width:560px}.search-input{flex:1;padding:.65rem .85rem;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);font-size:1rem}.search-hint{font-size:.9rem;margin-bottom:1.5rem}.search-results-list{list-style:none;padding:0;margin:1rem 0 0;display:flex;flex-direction:column;gap:.75rem}.search-result-card{display:flex;flex-direction:column;gap:.25rem;padding:1rem 1.25rem;border:1px solid var(--border);border-radius:10px;background:var(--surface);text-decoration:none;color:inherit;transition:border-color .15s ease}.search-result-card:hover,.search-result-card:focus-visible{border-color:var(--primary);outline:none}.search-result-title{font-weight:600;font-size:1.05rem}.search-result-subtitle{color:var(--text-muted);font-size:.9rem}.badge-lesson{background:color-mix(in srgb,var(--primary) 20%,transparent)}.badge-problem{background:color-mix(in srgb,var(--warning) 20%,transparent)}.badge-lab{background:color-mix(in srgb,var(--success) 20%,transparent)}.badge-system-design{background:color-mix(in srgb,#8b5cf6 20%,transparent)}.lab-catalog-card{cursor:pointer;padding:1rem;text-align:left;width:100%;border:1px solid var(--border);background:var(--surface);color:inherit;font:inherit}.lab-catalog-card:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.onboarding-options{display:flex;flex-direction:column;gap:.75rem;margin-top:1rem}.onboarding-option{text-align:left;width:100%;padding:.85rem 1rem;white-space:normal}.sd-topic-checklist{list-style:none;padding:0;margin:.5rem 0 .75rem;display:grid;gap:.25rem;font-size:13px}.sd-topic-checklist .covered{color:var(--success, #2e7d32)}.sd-topic-checklist .missing{color:var(--text-muted, #666)}.week-problem-locked{opacity:.85;cursor:not-allowed;background:var(--surface-muted, #f5f5f5)}.study-plan-prereqs{display:flex;flex-wrap:wrap;gap:.35rem .5rem;align-items:center;margin-top:.35rem;font-size:13px}.study-plan-prereq-link{color:var(--primary);text-decoration:underline}.lab-step-progress{width:100%;height:6px;margin-bottom:.5rem}.learn-panel{margin:1.25rem 0;padding:1rem 1.25rem;border-radius:10px;border:1px solid var(--border);background:color-mix(in srgb,var(--primary) 6%,var(--surface))}.learn-panel-title{margin:0 0 .5rem;font-size:1.15rem}.learn-panel-lead{margin:0 0 1rem;color:var(--text-muted);font-size:.95rem}.learn-panel-grid{display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.learn-panel-card{padding:.75rem;border-radius:8px;background:var(--surface);border:1px solid var(--border)}.learn-panel-card-warn{border-color:color-mix(in srgb,var(--warning) 40%,var(--border))}.learn-panel-footer{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.pattern-kind-badge{display:inline-block;font-size:12px;font-weight:600;padding:.2rem .5rem;border-radius:999px;margin-bottom:.35rem}.pattern-kind-creational{background:#dbeafe;color:#1e40af}.pattern-kind-structural{background:#ede9fe;color:#5b21b6}.pattern-kind-behavioral{background:#dcfce7;color:#166534}.pattern-kind-modern{background:#fef3c7;color:#92400e}.sd-block-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.5rem;margin:.75rem 0}.sd-block-card{display:flex;flex-direction:column;gap:.25rem;padding:.65rem;border-radius:8px;border:1px solid var(--border);background:var(--surface);text-decoration:none;color:inherit;min-height:44px}.sd-block-card:hover{border-color:var(--primary)}.sd-curriculum-map{margin-top:1rem;font-size:.92rem}.sd-stage-list{margin:.5rem 0 0;padding-left:1.2rem}.learn-notes-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:.5rem}.learn-notes-area{width:100%}.learn-bookmark-label{display:flex;align-items:center;gap:.4rem;font-weight:500}.sd-exemplar-box{margin-top:.75rem;padding:.75rem;border-radius:8px;background:#f0fdf4;border:1px solid #86efac}.admin-track-grid{display:grid;gap:.5rem;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));margin-top:1rem}.admin-track-card{padding:.75rem;border:1px solid var(--border);border-radius:8px;text-decoration:none;color:inherit;display:flex;flex-direction:column;gap:.25rem;min-height:44px}.admin-stats-list{display:flex;flex-wrap:wrap;gap:1rem;list-style:none;padding:0}.algo-viz-list{line-height:1.8}.sd-copilot-steps{list-style:none;padding:0}.sd-copilot-steps li{margin-bottom:.5rem;display:flex;gap:.5rem;align-items:baseline}.sd-copilot-steps li.active{font-weight:600}.sd-curriculum-map-open{margin-top:1rem}.sd-curriculum-map-open h3{margin:0 0 .5rem;font-size:1rem}.sd-hub-page{max-width:none;padding:0;margin:0}.sd-hub{color:var(--text)}.sd-hub-hero{position:relative;padding:clamp(2.5rem,6vw,4rem) clamp(1.25rem,4vw,2rem) clamp(2rem,4vw,3rem);border-bottom:1px solid var(--border);overflow:hidden}.sd-hub-hero-glow{position:absolute;inset:-40% -20% auto;height:70%;background:radial-gradient(ellipse 70% 60% at 50% 0%,color-mix(in srgb,var(--primary) 28%,transparent),transparent 70%);pointer-events:none}.sd-hub-hero-inner{position:relative;max-width:720px;margin:0 auto;text-align:center}.sd-hub-eyebrow{margin:0 0 .5rem;font-size:.8rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}.sd-hub-title{margin:0 0 .75rem;font-family:var(--font-display);font-size:clamp(1.85rem,4vw,2.75rem);letter-spacing:-.03em;line-height:1.15}.sd-hub-lead{margin:0 auto 1.5rem;max-width:540px;font-size:1.05rem;line-height:1.55;color:var(--text-muted)}.sd-hub-hero-actions{display:flex;flex-wrap:wrap;gap:.65rem;justify-content:center}.sd-hub-subnav{display:flex;flex-wrap:wrap;gap:.35rem;justify-content:center;padding:.75rem clamp(1rem,3vw,1.5rem);position:sticky;top:var(--header-h);z-index:50;background:color-mix(in srgb,var(--bg-elevated) 90%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border)}.sd-hub-subnav-link{padding:.4rem .85rem;border-radius:999px;font-size:.8125rem;font-weight:600;color:var(--text-muted);text-decoration:none;border:1px solid transparent;transition:color .15s,background .15s,border-color .15s}.sd-hub-subnav-link:hover{color:var(--text);background:var(--nav-hover);border-color:var(--border)}.sd-hub-section{max-width:1080px;margin:0 auto;padding:clamp(1.75rem,4vw,2.5rem) clamp(1.25rem,4vw,2rem);scroll-margin-top:calc(var(--header-h) + 52px)}.sd-hub-section-title{margin:0 0 .35rem;font-size:1.35rem;font-family:var(--font-display);letter-spacing:-.02em}.sd-hub-section-head{margin-bottom:1.25rem}.sd-hub-section-desc{margin:0;color:var(--text-muted);font-size:.95rem;max-width:52ch}.sd-hub-steps{list-style:none;margin:0;padding:0;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.sd-hub-step-card{display:flex;gap:1rem;padding:1.15rem 1.25rem;border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--bg-card);box-shadow:0 1px 2px var(--shadow)}.sd-hub-step-num{flex-shrink:0;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;border-radius:10px;font-weight:800;font-size:.9rem;background:linear-gradient(135deg,var(--primary),var(--accent));color:#fff}.sd-hub-step-card strong{display:block;margin-bottom:.35rem}.sd-hub-step-card p{margin:0 0 .5rem;font-size:.9rem;color:var(--text-muted);line-height:1.45}.sd-hub-step-card a{font-size:.875rem;font-weight:600}.sd-hub-block-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.85rem}.sd-hub-block-card{display:flex;flex-direction:column;gap:.35rem;padding:1.1rem 1.15rem;border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--bg-card);text-decoration:none;color:inherit;min-height:44px;transition:transform .15s,border-color .15s,box-shadow .15s;box-shadow:0 1px 2px var(--shadow)}.sd-hub-block-card:hover{border-color:color-mix(in srgb,var(--primary) 45%,var(--border));transform:translateY(-2px);box-shadow:var(--shadow-soft)}.sd-hub-block-icon{font-size:1.5rem;line-height:1}.sd-hub-block-blurb{font-size:.8125rem;color:var(--text-muted);line-height:1.4;flex:1}.sd-hub-block-cta{font-size:.75rem;font-weight:700;color:var(--primary-hover);margin-top:.25rem}.sd-hub-stage-tabs{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:1rem}.sd-hub-stage-tab{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .85rem;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text-muted);font-size:.8125rem;font-weight:600;cursor:pointer;font-family:inherit;transition:background .15s,color .15s,border-color .15s}.sd-hub-stage-tab.is-active{background:color-mix(in srgb,var(--primary) 14%,var(--surface));border-color:color-mix(in srgb,var(--primary) 35%,var(--border));color:var(--text)}.sd-hub-stage-tab-num{width:1.25rem;height:1.25rem;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-size:.7rem;background:var(--border)}.sd-hub-stage-tab.is-active .sd-hub-stage-tab-num{background:var(--primary);color:#fff}.sd-hub-stage-panel{padding:1.25rem 1.35rem;border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--bg-card)}.sd-hub-stage-summary{margin:0 0 1rem;color:var(--text-muted);font-size:.95rem}.sd-hub-stage-links{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.sd-hub-path-link{display:flex;align-items:center;gap:.65rem;padding:.65rem .85rem;border-radius:var(--radius-sm);text-decoration:none;color:var(--text);font-weight:500;border:1px solid transparent;transition:background .15s,border-color .15s}.sd-hub-path-link:hover,.sd-hub-path-link.active{background:var(--nav-hover);border-color:var(--border)}.sd-hub-path-kind{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:.15rem .45rem;border-radius:4px;background:color-mix(in srgb,var(--primary) 12%,transparent);color:var(--primary-hover)}.sd-hub-path-kind-mock{background:color-mix(in srgb,var(--warning) 18%,transparent);color:var(--warning)}.sd-hub-track-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem}.sd-hub-track-card{display:flex;flex-direction:column;gap:.4rem;padding:1.25rem;border-radius:var(--radius-lg);border:1px solid var(--border);background:linear-gradient(165deg,color-mix(in srgb,var(--primary) 6%,var(--bg-card)),var(--bg-card));text-decoration:none;color:inherit;transition:transform .15s,box-shadow .15s}.sd-hub-track-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-soft)}.sd-hub-track-badge{align-self:flex-start;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:.2rem .5rem;border-radius:4px;background:color-mix(in srgb,var(--primary) 15%,transparent);color:var(--primary-hover)}.sd-hub-track-badge-adv{background:color-mix(in srgb,var(--accent) 15%,transparent);color:var(--accent)}.sd-hub-track-card p{margin:0;flex:1;font-size:.875rem;color:var(--text-muted);line-height:1.45}.nav-sd-panel{min-width:280px;padding:.5rem}.nav-panel-heading{margin:.35rem .5rem .5rem;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}.nav-sd-item{display:flex;flex-direction:column;gap:.15rem;padding:.65rem .75rem;border-radius:var(--radius-sm);text-decoration:none!important;color:inherit;transition:background .15s}.nav-sd-item:hover,.nav-sd-item.active{background:var(--nav-hover)}.nav-sd-item-label{font-weight:600;font-size:.875rem;color:var(--text)}.nav-sd-item-desc{font-size:.75rem;color:var(--text-muted);line-height:1.35}.lang-catalog-page{color:var(--text)}.lang-catalog-hero{padding:3rem 1.5rem 2rem;text-align:center;border-bottom:1px solid var(--border)}.lang-catalog-hero h1{font-size:2.5rem;margin:0 0 .75rem;color:var(--text)}.lang-catalog-lead{font-size:1.15rem;max-width:780px;margin:0 auto 1rem;line-height:1.5;color:var(--text)}.lang-catalog-filters{padding:1.5rem;max-width:1200px;margin:0 auto;display:flex;flex-direction:column;gap:1rem}.lang-catalog-search-row{display:flex;gap:.5rem;flex-wrap:wrap}.lang-catalog-search{flex:1 1 300px}.lang-catalog-chips{display:flex;gap:.4rem;flex-wrap:wrap}.lang-catalog-chip{padding:.35rem .75rem;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;font-size:.85rem}.lang-catalog-chip.is-active{background:var(--primary);color:#fff;border-color:var(--primary)}.lang-catalog-grid{padding:1rem 1.5rem 4rem;max-width:1200px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:1.5rem}.lang-catalog-empty{grid-column:1 / -1;text-align:center;padding:2rem}.lang-catalog-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:1.5rem;display:flex;flex-direction:column;gap:.9rem;border-top-width:4px;border-top-style:solid;color:var(--text)}.lang-catalog-card-header{display:flex;align-items:center;gap:.75rem}.lang-catalog-emoji{font-size:2.25rem}.lang-catalog-card h2{margin:0;font-size:1.4rem;color:var(--text)}.lang-catalog-tagline{margin:.25rem 0 0;font-size:.85rem;color:var(--text-muted);font-style:italic}.lang-catalog-section h3{font-size:.75rem;letter-spacing:.08em;margin:0 0 .35rem;color:var(--text-muted);text-transform:uppercase}.lang-catalog-section p{margin:0;font-size:.92rem;line-height:1.5;color:var(--text)}.lang-catalog-tags{display:flex;flex-wrap:wrap;gap:.35rem}.lang-catalog-tag{padding:.2rem .55rem;border-radius:999px;background:var(--surface-muted);border:1px solid var(--border);font-size:.75rem;color:var(--text)}.lang-catalog-meta{font-size:.85rem;margin:0;color:var(--text)}.lang-catalog-cta{display:block;margin-top:auto;padding:.75rem 1.25rem;border-radius:8px;font-weight:600;text-decoration:none;text-align:center}.nav-sd-wrap .nav-more-panel{min-width:12rem}.nav-locale-select{max-width:4.5rem;padding:.35rem .5rem;font-size:.85rem;min-height:44px}.home-tracker{margin:2rem 0;padding:1.5rem;border-radius:14px;border:1px solid var(--border);background:var(--surface)}.home-tracker-guest{margin-bottom:1rem}.home-tracker-overall{display:grid;grid-template-columns:1fr auto;gap:.5rem 1rem;align-items:center;margin-bottom:1.25rem}.home-tracker-overall-bar{grid-column:1 / -1;width:100%;height:10px}.home-tracker-overall-pct{font-weight:700;color:var(--primary)}.home-tracker-sections{display:flex;flex-direction:column;gap:1rem}.home-tracker-section{padding:1rem;border-radius:10px;border:1px solid var(--border);background:var(--surface-muted, var(--bg))}.home-tracker-section-head{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:.5rem}.home-tracker-section-head h3{margin:0;font-size:1.05rem}.home-tracker-section-meta{text-align:right;white-space:nowrap}.home-tracker-section-progress{width:100%;height:6px;margin-bottom:.5rem}.home-tracker-item-list{list-style:none;padding:0;margin:.75rem 0 0;display:flex;flex-direction:column;gap:.35rem}.home-tracker-item{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;font-size:.9rem}.home-tracker-detail{font-size:.8rem;width:100%}.tracker-status{font-size:.7rem;font-weight:600;padding:.15rem .45rem;border-radius:999px;text-transform:uppercase;letter-spacing:.04em}.tracker-status-completed{background:#dcfce7;color:#166534}.tracker-status-in_progress{background:#fef9c3;color:#854d0e}.tracker-status-pending{background:var(--surface-muted);color:var(--text-muted);border:1px solid var(--border)}[data-theme=dark] .tracker-status-completed{background:#14532d;color:#bbf7d0}[data-theme=dark] .tracker-status-in_progress{background:#713f12;color:#fef08a}.outcomes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(10rem,1fr));gap:.75rem;margin:1rem 0 1.5rem}.outcome-card{padding:.85rem 1rem;border-radius:10px;border:1px solid var(--border);background:var(--surface);display:flex;flex-direction:column;gap:.25rem}.outcome-label{font-size:.75rem;color:var(--text-muted)}.voice-mock-panel{padding:1.25rem;border-radius:12px;border:1px solid var(--border);background:var(--surface)}.editor-lang-picker{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;min-width:0}.editor-lang-label{font-size:.85rem;font-weight:600;color:var(--text-muted);white-space:nowrap}.editor-language-select{min-height:44px;min-width:10rem;flex:1;max-width:14rem}@media (max-width: 720px){.editor-language-select{width:100%;max-width:none;margin-left:0;margin-top:.35rem}}
