.discovery-content{overflow-wrap:anywhere;max-width:76ch;margin:2rem auto;padding:0 1rem;line-height:1.7}.discovery-content h1,.discovery-content h2,.discovery-content h3{margin-top:1.6em;line-height:1.25}.discovery-content pre{white-space:pre-wrap;overflow-wrap:anywhere;border:1px solid;border-radius:.5rem;padding:1rem}.discovery-content li{margin:.5rem 0}.discovery-content a{text-underline-offset:.2em;text-decoration:underline}.discovery-overview{max-width:80rem;margin:2rem auto;padding:1rem}.discovery-content a:focus-visible{outline-offset:4px;outline:2px solid #5ee6ac}.learner-page{max-width:1280px;color:var(--ink);margin:auto;padding:36px 28px 64px;font-size:15px;line-height:1.55}.learner-page h1{letter-spacing:-.025em;margin:0 0 8px;font-size:30px}.learner-page h2,.learner-dialog h2{margin:0 0 14px;font-size:19px;line-height:1.35}.learner-page h3{font-size:15px}.learner-page p{margin:10px 0}.learner-page .account-page-tabs{margin:20px 0 28px}.learner-page a{overflow-wrap:anywhere}.learner-grid{grid-template-columns:minmax(0,1fr) minmax(280px,340px);align-items:start;gap:22px;display:grid}.learner-stack{gap:20px;min-width:0;display:grid}.learner-panel{border:1px solid var(--line);background:var(--surface);border-radius:14px;min-width:0;padding:22px}.learner-kicker{letter-spacing:.1em;color:var(--blue);font-size:11px;font-weight:700}.learner-bio{white-space:pre-wrap;overflow-wrap:anywhere}.learner-wrap{overflow-wrap:anywhere}.learner-profile .google-profile{margin-bottom:18px}.learner-profile hr{border:0;border-top:1px solid var(--line);margin:24px 0}.learner-stats{gap:12px;margin:18px 0;display:grid}.learner-stats>div{justify-content:space-between;align-items:baseline;gap:14px;display:flex}.learner-stats dt{color:var(--muted)}.learner-stats dd{white-space:nowrap;margin:0;font-weight:700}.learner-overview{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:20px 0;display:grid}.learner-overview>div{border:1px solid var(--line);background:var(--surface);border-radius:12px;padding:20px}.learner-overview span{color:var(--muted);font-size:13px;display:block}.learner-overview strong{font-size:30px;line-height:1.5;display:block}.learner-overview small{color:var(--muted);font-size:17px}.learner-resume{border-color:var(--blue)}.learner-resume .button{margin-top:8px}.learner-collection{flex-wrap:wrap;align-items:end;gap:18px;display:flex}.learner-page label,.learner-dialog label{gap:6px;min-width:0;font-size:13px;font-weight:600;display:grid}.learner-page input,.learner-page select,.learner-dialog input,.learner-dialog textarea,.learner-dialog select{border:1px solid var(--line);background:var(--surface);width:100%;min-width:0;color:var(--ink);font:inherit;box-sizing:border-box;border-radius:7px;padding:9px 10px}.learner-filters{grid-template-columns:1.5fr 1fr 1fr;gap:10px;display:grid}.learner-topic{border-top:1px solid var(--line)}.learner-topic h3{margin:0}.learner-topic h3 button{text-align:left;width:100%;color:var(--ink);background:0 0;border:0;border-radius:0;justify-content:space-between;align-items:center;gap:12px;padding:15px 0;font-weight:650;display:flex}.learner-topic h3 span{color:var(--muted);font-size:12px;font-weight:400}.learner-problem{border-top:1px solid var(--line);grid-template-columns:32px minmax(0,1fr) 180px;align-items:center;gap:10px;padding:11px 0;display:grid}.learner-problem small,.learner-history small{color:var(--muted);font-size:12px;display:block}.learner-status-control select{width:100%;max-width:220px;font-size:12px}.learner-status-control .learner-notice{margin:8px 0;padding:8px;font-size:12px}.learner-inline{border-bottom:1px solid var(--line);padding:10px 16px;font-size:13px}.learner-inline select{border:1px solid var(--line);background:var(--surface);max-width:240px;color:var(--ink);border-radius:6px;padding:7px}.learner-calendar{grid-template-columns:repeat(14,minmax(0,1fr));gap:4px;margin:18px 0;display:grid}.learner-calendar button{aspect-ratio:1;border:1px solid var(--line);background:var(--bg);border-radius:3px;min-width:0;min-height:0;padding:0}.learner-calendar button.active{background:var(--blue);border-color:var(--blue)}.learner-calendar button.unrecorded{background:0 0;border-style:dashed}.learner-calendar button[aria-pressed=true]{outline:2px solid var(--ink);outline-offset:2px}.learner-links{gap:10px;padding-left:18px;display:grid}.learner-history{margin:0;padding:0;list-style:none}.learner-history li{border-bottom:1px solid var(--line);justify-content:space-between;gap:16px;padding:13px 0;display:flex}.learner-history time{text-align:right;flex-shrink:0;font-size:12px}.learner-notice{border:1px solid var(--line);border-left:3px solid var(--blue);background:var(--surface);border-radius:8px;margin:12px 0;padding:14px}.learner-freshness{margin-top:22px;font-size:12px}.learner-freshness button{margin-left:10px}.learner-dialog{border:1px solid var(--line);background:var(--surface);color:var(--ink);box-sizing:border-box;border-radius:14px;width:min(560px,100% - 32px);max-height:calc(100dvh - 32px);padding:24px;overflow:auto}.learner-dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#111c3570}.learner-dialog fieldset{border:0;gap:13px;min-width:0;padding:0;display:grid}.learner-dialog small,.learner-dialog .muted{color:var(--muted);font-size:12px}.learner-actions{justify-content:flex-end;gap:10px;margin-top:20px;display:flex}.learner-page :focus-visible,.learner-dialog :focus-visible,.learner-inline :focus-visible{outline:3px solid var(--blue);outline-offset:3px}.learner-panel details>summary{cursor:pointer;font-weight:650}.learner-page .community-topic-row{grid-template-columns:minmax(0,1fr) minmax(170px,auto)}@media (width<=1000px){.learner-grid{grid-template-columns:minmax(0,1fr)}.learner-grid>aside{grid-template-columns:repeat(2,minmax(0,1fr))}.learner-grid>aside>:first-child{grid-column:1/-1}}@media (width<=600px){.learner-page{padding:24px 16px 44px;font-size:14px}.learner-page h1{font-size:26px}.learner-grid>aside{grid-template-columns:minmax(0,1fr)}.learner-panel{padding:16px}.learner-overview{gap:8px}.learner-overview>div{padding:11px}.learner-overview span{font-size:11px}.learner-overview strong{font-size:23px}.learner-filters{grid-template-columns:1fr 1fr}.learner-filters>label:first-child{grid-column:1/-1}.learner-problem{grid-template-columns:28px minmax(0,1fr)}.learner-problem .learner-status-control{grid-column:2}.learner-status-control select{max-width:none}.learner-topic h3 button{flex-direction:column;align-items:start;gap:2px}.learner-history li{flex-direction:column;gap:4px}.learner-history time{text-align:left}.learner-page .community-topic-row{grid-template-columns:minmax(0,1fr);gap:8px}.learner-dialog{padding:20px}.learner-dialog input{font-size:16px}}.learner-page,.learner-inline,.learner-dialog{--blue:var(--accent,#163cff)}.dark .learner-page,.dark .learner-inline,.dark .learner-dialog{--blue:var(--accent,#8297ff)}.learner-page .community-topic-row{border-top:1px solid var(--line);align-items:center;padding:14px 0;display:grid}.learner-layout{padding:0 0 32px}.learner-layout>h1{min-height:1.3em;line-height:1.3}.learner-layout>.account-page-tabs{min-height:46px;margin:20px 0 28px}.learner-layout>.account-page-tabs a{border-bottom:2px solid #0000;padding:12px 0}.learner-layout>.account-page-tabs a[aria-current=page]{border-bottom-color:var(--accent)}.learner-content{min-width:0;min-height:360px;animation:.15s ease-out both learner-enter}.learner-pending{box-sizing:border-box;min-height:360px;padding:24px 0}.learner-signin-area{box-sizing:border-box;place-items:center;min-height:360px;padding:32px 0 48px;display:grid}.learner-signin-card{box-sizing:border-box;text-align:center;border:1px solid var(--line);background:var(--surface);border-radius:16px;width:min(100%,480px);padding:36px 28px}.learner-signin-card h2{letter-spacing:-.025em;margin:0 0 10px;font-size:24px}.learner-signin-card p{margin:0 0 24px}.learner-signin-card .google-signin{max-width:min(100%,100vw - 176px)}.learner-signin-card .google-signin span{overflow-wrap:anywhere;min-width:0}@keyframes learner-enter{0%{opacity:.65}to{opacity:1}}@media (width<=600px){.learner-layout{padding:0 0 24px}.learner-signin-card{padding:28px 20px}.learner-signin-card h2{font-size:22px}}@media (prefers-reduced-motion:reduce){.learner-content{animation:none}}.studio-shell,.studio-public{--accent:var(--fc-accent);--soft:var(--fc-tint)}.studio-shell{background:var(--bg);min-height:100vh;color:var(--ink);grid-template-columns:220px minmax(0,1fr);display:grid}.studio-sidebar{background:var(--surface);border-right:1px solid var(--line);flex-direction:column;gap:12px;height:100vh;padding:28px 18px;display:flex;position:sticky;top:0}.studio-brand{letter-spacing:-.7px;font-size:20px;font-weight:750}.studio-brand span{color:var(--accent)}.studio-sidebar>small{letter-spacing:2px;color:var(--muted);margin-bottom:22px}.studio-sidebar nav{gap:6px;display:grid}.studio-sidebar nav button{border-color:#0000;justify-content:flex-start}.studio-sidebar [aria-current=page]{background:var(--soft);color:var(--accent);border-color:var(--line)}.studio-sidebar-note{color:var(--muted);margin-top:auto;font-size:13px;line-height:1.6}.studio-sidebar>a:last-child{font-size:12px}.studio-workspace{min-width:0}.studio-topbar{border-bottom:1px solid var(--line);background:var(--surface);color:var(--muted);justify-content:space-between;align-items:center;gap:16px;padding:16px 30px;font-size:13px;display:flex}.studio-topbar>div{gap:8px;display:flex}.studio-canvas{max-width:1400px;margin:auto;padding:32px}.studio-heading{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px;display:flex}.studio-heading h1{overflow-wrap:anywhere;margin:8px 0;font-size:28px;line-height:1.3}.studio-heading p{color:var(--muted);margin:8px 0;line-height:1.65}.studio-heading .eyebrow{color:var(--accent);letter-spacing:1.5px;font-size:11px}.studio-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.studio-panel{background:var(--surface);border:1px solid var(--line);border-radius:12px;min-width:0;margin-bottom:20px;padding:22px}.studio-panel h2{margin:0 0 18px;font-size:17px}.studio-panel h3{font-size:15px}.studio-muted,.studio-panel small{color:var(--muted);font-size:12px;line-height:1.7}.studio-toolbar{flex-wrap:wrap;align-items:flex-end;gap:12px;margin-bottom:22px;display:flex}.studio-toolbar .studio-field{flex:1;min-width:190px;max-width:360px;margin:0}.studio-field{gap:8px;margin-bottom:20px;font-size:13px;font-weight:550;display:grid}.studio-field input,.studio-field textarea,.studio-field select{border:1px solid var(--line);background:var(--surface);width:100%;min-height:44px;color:var(--ink);font:inherit;border-radius:8px;max-width:100%;padding:11px 12px;font-weight:400}.studio-field textarea{resize:vertical;line-height:1.7}.studio-field select[multiple]{min-height:100px}.studio-field small{font-weight:400}.studio-two-col{grid-template-columns:1fr 1fr;gap:0 20px;display:grid}.studio-fields{border:0;min-width:0;margin:0;padding:0}.studio-fields:disabled{opacity:.85}.studio-fields input:disabled{background:var(--soft)}.studio-nested{border:1px solid var(--line);border-radius:10px;min-width:0;margin:0 0 20px;padding:20px}.studio-nested legend{padding:0 8px;font-size:13px;font-weight:600}.studio-table-wrap{padding:0;overflow:auto}.studio-table{border-collapse:collapse;width:100%;font-size:13px}.studio-table th{color:var(--muted);text-align:left;background:var(--bg);padding:14px 18px;font-size:11px;font-weight:550}.studio-table td{border-top:1px solid var(--line);vertical-align:middle;overflow-wrap:anywhere;padding:18px;line-height:1.7}.studio-table small{color:var(--muted);font-size:11px;display:block}.studio-pagination{color:var(--muted);flex-wrap:wrap;align-items:center;gap:10px;font-size:12px;display:flex}.studio-pagination span{margin-right:auto}.studio-badge{border:1px solid var(--line);color:var(--ink);background:var(--soft);border-radius:6px;padding:3px 8px;font-size:11px;display:inline-flex}.studio-badge.review{color:#805200;background:#fff7e6;border-color:#e6d2a2}.studio-badge.approved{color:var(--accent)}.studio-empty{text-align:center;padding:35px}.studio-empty p{color:var(--muted);font-size:13px}.studio-metrics{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.studio-metrics strong{margin-top:14px;font-size:32px;display:block}.studio-grid{grid-template-columns:1.3fr 1fr;gap:20px;display:grid}.studio-section-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.studio-section-head select{border:1px solid var(--line);background:var(--surface);min-height:44px;color:var(--ink);border-radius:8px;padding:8px}.studio-chart{width:100%;color:var(--muted);margin-top:16px;display:block}.studio-chart text{fill:currentColor;font-size:12px}.studio-panel details{font-size:13px;line-height:1.7}.studio-panel summary{cursor:pointer;color:var(--accent);min-height:44px;padding:14px 0}.studio-stack{background:var(--bg);border-radius:4px;height:12px;margin:10px 0 7px;display:flex;overflow:hidden}.studio-stack i:first-child{background:var(--muted)}.studio-stack i:nth-child(2){background:color-mix(in srgb, var(--accent) 55%, var(--surface))}.studio-stack i:nth-child(3){background:var(--accent)}.studio-bar-group{margin:20px 0;font-size:13px}.studio-flow{gap:14px;margin:0;padding:0;list-style:none;display:flex}.studio-flow li{border:1px solid var(--line);border-radius:9px;flex:1;padding:16px 12px;font-size:13px;position:relative}.studio-flow li:not(:last-child):after{content:"→";color:var(--muted);position:absolute;top:42%;right:-13px}.studio-flow span{color:var(--accent);margin-bottom:8px;font-size:12px;display:block}.studio-events{margin:0;padding:0;list-style:none}.studio-events li{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:15px;padding:15px 0;font-size:13px;display:flex}.studio-events small{display:block}.studio-stepper{margin:0 0 24px}.studio-stepper ol{gap:8px;margin:0;padding:0;list-style:none;display:flex}.studio-stepper li{flex:1}.studio-stepper button{border-color:#0000;gap:8px;width:100%;padding:10px 8px;font-size:12px}.studio-stepper span{border:1px solid var(--line);border-radius:50%;flex-shrink:0;place-items:center;width:24px;height:24px;display:grid}.studio-stepper [aria-current=step]{background:var(--soft);color:var(--accent);border-color:var(--line)}.studio-stepper [aria-current=step] span{background:var(--accent);color:var(--surface);border-color:var(--accent)}.studio-editor{padding:26px}.studio-form-footer{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:center;gap:12px;margin-top:25px;padding-top:22px;font-size:12px;display:flex}.studio-alert{color:#704900;background:#fff7e6;border:1px solid #cba95e;border-radius:9px;margin:0 0 20px;padding:16px;font-size:13px;line-height:1.7}.studio-alert p{margin-top:0}.studio-alert button{color:inherit}.studio-alert ul button{text-align:left;background:0 0;border:0;justify-content:flex-start;min-height:32px;padding:4px;text-decoration:underline}.studio-success{border:1px solid var(--line);background:var(--soft);border-radius:8px;padding:12px 16px;font-size:13px}.studio-check{align-items:center;gap:9px;margin:12px 0;font-size:13px;display:flex}.studio-check input{width:18px;height:18px;min-height:18px;accent-color:var(--accent)}.studio-tabs{flex-wrap:wrap;gap:8px;margin-bottom:20px;display:flex}.studio-tabs [aria-pressed=true]{color:var(--accent);background:var(--soft)}.studio-picker{border:1px solid var(--line);border-radius:8px;padding:16px}.studio-picker-options{max-height:240px;padding:0;list-style:none;overflow:auto}.studio-selected{flex-wrap:wrap;align-items:center;gap:8px;font-size:12px;display:flex}.studio-related{margin-top:25px}.studio-checklist{padding-left:22px;font-size:13px;line-height:1.9}.studio-decision{border-top:1px solid var(--line);margin-top:20px;padding-top:20px}.studio-content-view h1{font-size:28px}.studio-content-view h2{margin-top:24px}.studio-content-view pre,.studio-compare pre{background:var(--bg);border:1px solid var(--line);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:8px;padding:16px;font-size:13px;line-height:1.7}.studio-prose{white-space:pre-wrap;overflow-wrap:anywhere;font-size:15px;line-height:1.8}.studio-outcome{color:var(--muted);line-height:1.7}.studio-roadmap{padding-left:22px}.studio-roadmap>li{border-left:2px solid var(--line);padding:10px 20px 20px}.studio-code{font-family:ui-monospace,monospace!important}.studio-catalog{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.studio-catalog .studio-panel{font-size:14px}.studio-catalog p{color:var(--muted);font-size:13px}.studio-compare{grid-template-columns:1fr 1fr;gap:20px;display:grid}.studio-compare>div{min-width:0}.studio-back{min-height:32px;color:var(--muted);background:0 0;border:0;padding:0;font-size:12px}.studio-sr{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}.studio-gate{padding:60px 20px}.studio-gate .button{margin-right:12px}.studio-public{padding-bottom:30px}.studio-shell :focus-visible{outline:3px solid var(--accent);outline-offset:3px}.studio-shell button:disabled{cursor:not-allowed}@media (width<=1100px){.studio-shell{grid-template-columns:190px minmax(0,1fr)}.studio-canvas{padding:24px}.studio-grid{grid-template-columns:1fr}.studio-metrics{grid-template-columns:repeat(2,1fr)}.studio-heading{flex-wrap:wrap}.studio-catalog{grid-template-columns:repeat(2,1fr)}}@media (width<=760px){.studio-shell{display:block}.studio-sidebar{border-right:0;border-bottom:1px solid var(--line);gap:6px;height:auto;padding:16px;position:static}.studio-sidebar>small,.studio-sidebar-note,.studio-sidebar>a:last-child{display:none}.studio-sidebar nav{gap:4px;margin-top:8px;display:flex;overflow:auto}.studio-sidebar nav button{white-space:nowrap;padding:8px 10px;font-size:12px}.studio-topbar{padding:12px 16px;font-size:12px}.studio-canvas{padding:22px 14px}.studio-heading h1{font-size:25px}.studio-two-col,.studio-compare,.studio-catalog{grid-template-columns:1fr}.studio-panel,.studio-editor{padding:17px}.studio-table-wrap{padding:0}.studio-table th{display:table-cell}.studio-table,.studio-table tbody,.studio-table tr,.studio-table td{display:block}.studio-table tr{border-bottom:1px solid var(--line);padding:14px}.studio-table td{border:0;padding:5px 0}.studio-table td small{margin-left:8px;display:inline}.studio-stepper ol{flex-wrap:wrap}.studio-stepper li{flex:1 0 30%}.studio-stepper button{justify-content:flex-start}.studio-flow{flex-direction:column}.studio-flow li:not(:last-child):after{content:"↓";top:auto;bottom:-17px;right:20px}.studio-flow span{margin-right:12px;display:inline}.studio-events li{flex-wrap:wrap}.studio-toolbar .studio-field{max-width:none}.studio-nested{padding:14px}.studio-content-view h1{font-size:25px}.studio-metrics{gap:10px}.studio-metrics strong{font-size:27px}}.app.app:has(.studio-shell){padding-top:0}.app.app:has(.studio-shell)>main{max-width:none;margin:0;padding:0}.studio-sidebar nav{border:0;width:100%;max-width:none;margin:0;padding:0}.dark .studio-shell,.dark .studio-public{--accent:var(--fc-accent);--soft:var(--fc-tint)}.studio-shell .primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.studio-field-error{color:var(--ink);font-weight:600}.studio-canvas>h1,.studio-public>h1{margin:0 0 20px;font-size:clamp(24px,3vw,32px)}.studio-canvas fieldset,.studio-public fieldset{border:1px solid var(--line,#dce2ed);border-radius:10px;min-width:0;margin:14px 0;padding:18px}.studio-canvas fieldset>fieldset,.studio-public fieldset>fieldset{background:var(--surface,#fff)}.studio-canvas legend,.studio-public legend{padding:0 6px;font-weight:600}.studio-canvas form,.studio-public form{max-width:960px}.studio-canvas details,.studio-public details{margin:14px 0}.studio-canvas summary,.studio-public summary{cursor:pointer;padding:10px 0;font-weight:600}.studio-check{align-items:flex-start;gap:10px;margin:10px 0;display:flex}.studio-check input{width:auto;margin-top:4px}.studio-data-grid{grid-template-columns:minmax(140px,1fr) 2fr;gap:14px;display:grid}.studio-data-grid dd{margin:0}.studio-logo{object-fit:contain;width:96px;height:96px}.studio-queue-chart{gap:12px;margin:20px 0;display:grid}.studio-queue-chart button{text-align:left;grid-template-columns:minmax(140px,1fr) 2fr 60px;align-items:center;gap:16px;display:grid}.studio-queue-bar{background:var(--accent,var(--accent));border-radius:4px;height:16px}.studio-site-preview{padding-block:20px}.studio-canvas p,.studio-public p,.studio-table td{overflow-wrap:anywhere}@media (width<=700px){.studio-sidebar{padding:12px 16px}.studio-sidebar nav{flex-wrap:nowrap;padding-bottom:5px;display:flex;overflow-x:auto}.studio-sidebar nav button{white-space:nowrap;flex:none}.studio-sidebar-note,.studio-sidebar>small,.studio-sidebar>a:not(.studio-brand){display:none}.studio-brand{margin-bottom:8px;font-size:19px}.studio-table thead{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.studio-table tr{border-bottom:1px solid var(--line,#dce2ed);padding:12px 0;display:grid}.studio-table td{border:0;grid-template-columns:minmax(90px,1fr) 2fr;gap:12px;display:grid}.studio-table td:before{content:attr(data-label);font-weight:500}.studio-data-grid{grid-template-columns:1fr}.studio-queue-chart button{grid-template-columns:1fr 1fr 40px;gap:8px}.studio-canvas fieldset,.studio-public fieldset{padding:12px}}.studio-canvas .studio-panel>fieldset.studio-form-body{background:0 0;border:0;margin:20px 0 0;padding:0}.studio-permission-grid,.studio-choice-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:8px 20px;display:grid}.studio-permission-grid .studio-check,.studio-choice-grid .studio-check{margin:0;padding-block:8px}.studio-form-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:24px;display:flex}.studio-canvas fieldset>fieldset,.studio-public fieldset>fieldset{border-inline:0;background:0 0;border-bottom:0;border-radius:0}.dark .studio-canvas fieldset>fieldset,.dark .studio-public fieldset>fieldset{background:0 0}.studio-canvas .studio-permission-grid>fieldset{border:0;margin:0;padding:8px 0}@media (width>=701px){.studio-table-wrap>.studio-table{min-width:640px}.studio-table-wrap .studio-table button{overflow-wrap:normal;word-break:normal;min-width:120px}}.studio-table-wrap:focus-visible{outline:2px solid var(--accent);outline-offset:2px}._placeholder_1355s_1{text-align:center;min-block-size:52vh;color:var(--ink);flex-direction:column;justify-content:center;align-items:center;gap:20px;padding-block:32px;display:flex}._robot_1355s_13{flex-shrink:0;block-size:128px;inline-size:128px}._title_1355s_19{letter-spacing:-.035em;text-wrap:balance;margin:0;font-size:clamp(1.5rem,4vw,2rem);line-height:1.3}._panel_1355s_27{gap:12px;min-block-size:200px;padding-block:24px}._panel_1355s_27 ._robot_1355s_13{block-size:80px;inline-size:80px}._panel_1355s_27 ._title_1355s_19{margin:0;font-size:1.125rem;line-height:1.4}._idle_1f67x_1{bottom:max(20px, env(safe-area-inset-bottom));z-index:60;width:min(960px,100% - 40px);position:fixed;left:50%;transform:translate(-50%)}._composer_1f67x_9{border:2px solid var(--accent);background:var(--surface);min-height:74px;box-shadow:0 0 0 4px color-mix(in srgb, var(--accent) 4.71%, transparent), 0 12px 36px #111c3512;border-radius:40px;align-items:center;gap:10px;padding:10px 12px 10px 26px;transition:border-color .16s,box-shadow .16s;display:flex}._composer_1f67x_9:focus-within{border-color:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb, var(--accent) 12.55%, transparent), 0 12px 36px #111c3512}._composer_1f67x_9 textarea{min-width:0;color:var(--ink);font:inherit;resize:none;field-sizing:content;background:0 0;border:0;border-radius:0;flex:1;max-height:120px;padding:8px 0;font-size:18px}._composer_1f67x_9 textarea:focus-visible{box-shadow:none;outline:none}._composer_1f67x_9 textarea::placeholder{color:var(--muted);opacity:1}._composer_1f67x_9 button,._launcher_1f67x_54{border:0;border-radius:50%;flex-shrink:0;place-items:center;width:50px;height:50px;padding:0;transition:transform .14s,background-color .14s;display:grid}._composer_1f67x_9 ._send_1f67x_67,._launcher_1f67x_54{background:var(--accent);color:var(--accent-ink)}._composer_1f67x_9 ._send_1f67x_67:hover:not(:disabled),._launcher_1f67x_54:hover{background:var(--accent-hover)}._composer_1f67x_9 ._send_1f67x_67:disabled{opacity:.5;cursor:default}._composer_1f67x_9 ._close_1f67x_80{background:var(--page);color:var(--ink)}._composer_1f67x_9 button:active:not(:disabled),._launcher_1f67x_54:active{transform:scale(.94)}._composer_1f67x_9 button:focus-visible,._launcher_1f67x_54:focus-visible{outline:2px solid var(--accent);outline-offset:4px}._launcher_1f67x_54{bottom:max(20px, env(safe-area-inset-bottom));z-index:60;width:56px;height:56px;box-shadow:0 6px 24px color-mix(in srgb, var(--accent) 18.82%, transparent);animation:.18s ease-out _emerge_1f67x_1;position:fixed;right:24px}._dialog_1f67x_103{inset:auto 0 max(20px, env(safe-area-inset-bottom));border:1px solid var(--line);background:var(--surface);width:min(960px,100% - 40px);max-width:none;height:min(760px,100dvh - 40px);max-height:none;color:var(--ink);border-radius:28px;margin:0 auto;padding:0;overflow:hidden;box-shadow:0 24px 80px #111c3529}._dialog_1f67x_103[open]{flex-direction:column;animation:.26s cubic-bezier(.22,1,.36,1) _reveal_1f67x_1;display:flex}._dialog_1f67x_103[data-closing]{animation:.22s ease-in forwards _collapse_1f67x_1}._dialog_1f67x_103::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#111c3510;animation:.26s _fade_1f67x_1}._header_1f67x_134{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:24px 30px;display:flex}._header_1f67x_134 strong{letter-spacing:-.5px;font-size:21px}._header_1f67x_134 strong span{color:var(--accent)}._header_1f67x_134>span{color:var(--muted);font-size:13px}._conversation_1f67x_153{overscroll-behavior:contain;flex:1;min-height:0;padding:30px;overflow:auto}._empty_1f67x_160,._status_1f67x_161{color:var(--muted);overflow-wrap:anywhere;line-height:1.7}._status_1f67x_161{color:var(--ink)}._bottom_1f67x_169{padding:16px 18px 20px}@keyframes _reveal_1f67x_1{0%{clip-path:inset(calc(100% - 96px) 0 0 round 38px);opacity:.6;transform:translateY(10px)}to{clip-path:inset(0 round 28px);opacity:1;transform:translateY(0)}}@keyframes _collapse_1f67x_1{to{clip-path:inset(calc(100% - 96px) 0 0 round 38px);opacity:0;transform:translateY(10px)}}@keyframes _emerge_1f67x_1{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes _fade_1f67x_1{0%{opacity:0}to{opacity:1}}@media (width<=600px){._idle_1f67x_1{width:calc(100% - 28px);bottom:max(16px, env(safe-area-inset-bottom))}._composer_1f67x_9{gap:8px;min-height:64px;padding:7px 9px 7px 18px}._composer_1f67x_9 textarea{font-size:16px}._composer_1f67x_9 button{width:44px;height:44px}._dialog_1f67x_103{width:calc(100% - 28px);height:calc(100dvh - 32px);bottom:max(16px, env(safe-area-inset-bottom));border-radius:24px}._header_1f67x_134{padding:20px}._conversation_1f67x_153{padding:22px}._bottom_1f67x_169{padding:12px}._header_1f67x_134>span{font-size:12px}}@media (prefers-reduced-motion:reduce){._dialog_1f67x_103[open],._dialog_1f67x_103[data-closing],._dialog_1f67x_103::backdrop,._dialog_1f67x_103[data-closing]::backdrop,._launcher_1f67x_54{animation:none}._composer_1f67x_9,._composer_1f67x_9 button,._launcher_1f67x_54{transition:none}._composer_1f67x_9 button:active:not(:disabled),._launcher_1f67x_54:active{transform:none}}._idle_1f67x_1,._dialog_1f67x_103,._launcher_1f67x_54,body[data-theme=dark] ._idle_1f67x_1,body[data-theme=dark] ._dialog_1f67x_103,body[data-theme=dark] ._launcher_1f67x_54{--ink:var(--fc-ink);--muted:var(--fc-muted);--line:var(--fc-line);--surface:var(--fc-surface);--page:var(--fc-bg)}._dialog_1f67x_103{height:min(920px,100dvh - 40px)}._dialog_1f67x_103[open],._dialog_1f67x_103[data-closing]{animation:none}._dialog_1f67x_103::backdrop{animation:.32s cubic-bezier(.22,1,.36,1) _fade_1f67x_1}._dialog_1f67x_103[data-closing]::backdrop{animation:.32s reverse forwards _fade_1f67x_1}._idle_1f67x_1{animation:.18s cubic-bezier(.2,.8,.2,1) _composerEnter_1f67x_1}._idle_1f67x_1[data-hiding]{pointer-events:none}._launcher_1f67x_54{box-shadow:0 6px 18px color-mix(in srgb, var(--accent) 20.0%, transparent), inset 0 1px 0 #fff3;animation:none}._launcher_1f67x_54[data-emerging]{pointer-events:none;animation:.18s .14s both _emerge_1f67x_1}._hint_1f67x_312{border:1px solid var(--line);background:var(--surface);color:var(--accent);white-space:nowrap;opacity:0;pointer-events:none;border-radius:24px;padding:10px 15px;font-size:14px;transition:opacity .18s,transform .18s;display:flex;position:absolute;top:50%;right:calc(100% + 12px);transform:translate(4px,-50%);box-shadow:0 6px 20px #111c350d}._launcher_1f67x_54[data-hint] ._hint_1f67x_312,._launcher_1f67x_54:hover ._hint_1f67x_312,._launcher_1f67x_54:focus-visible ._hint_1f67x_312{opacity:1;transform:translateY(-50%)}._launcher_1f67x_54[data-hint] ._hint_1f67x_312>span{animation:.24s cubic-bezier(.22,1,.36,1) both _letterEnter_1f67x_1}._launcher_1f67x_54[data-hint]{animation:.64s cubic-bezier(.22,1,.36,1) _attentionNudge_1f67x_1}@keyframes _composerEnter_1f67x_1{0%{opacity:0;transform:translate(-50%,6px)}to{opacity:1;transform:translate(-50%)}}@keyframes _letterEnter_1f67x_1{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}@keyframes _attentionNudge_1f67x_1{0%,to{transform:translateY(0)}35%{transform:translateY(-3px)}65%{transform:translateY(-1px)}}@media (width<=600px){._dialog_1f67x_103{height:min(760px,100dvh - 32px)}}@media (prefers-reduced-motion:reduce){._idle_1f67x_1,._launcher_1f67x_54[data-emerging],._launcher_1f67x_54[data-hint],._launcher_1f67x_54[data-hint] ._hint_1f67x_312>span,._dialog_1f67x_103::backdrop,._dialog_1f67x_103[data-closing]::backdrop{animation:none}._hint_1f67x_312{transition:none}}:root{color:#111c35;font-synthesis:none;background:#f8f9fc;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}button,.button{border:1px solid var(--line);background:var(--surface);min-height:44px;color:var(--ink);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:18px;padding:10px 18px;font-weight:600;display:inline-flex}button:disabled{opacity:.55;cursor:not-allowed}.primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.app{--ink:#111c35;--muted:#55627a;--line:#dbe0eb;--surface:#fff;--bg:#f8f9fc;background:var(--bg);color:var(--ink);min-height:100vh}.dark{--ink:#eef2ff;--muted:#b9c2d8;--line:#35425e;--surface:#1a2640;--bg:#111a2c}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.environment{text-align:center;background:var(--surface);color:var(--muted);border-bottom:1px solid var(--line);padding:8px 16px;font-size:12px;line-height:1.6}.site-header{justify-content:space-between;align-items:center;max-width:1240px;margin:auto;padding:24px 32px 18px;display:flex}.brand{letter-spacing:-1px;gap:12px;font-size:25px;font-weight:750;display:flex}.brand-icon{background:var(--accent);width:42px;height:46px;color:var(--accent-ink);border-radius:12px;place-items:center;font-size:29px;display:grid}.brand small{letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);margin-top:2px;font-size:10px;font-weight:500;display:block}.blue{color:var(--accent)}.header-tools{gap:8px;display:flex}.header-tools button{padding:8px 12px}.compact{font-size:13px}nav{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:8px 22px;max-width:1176px;margin:auto;padding:12px 0 18px;font-size:13px;font-weight:600;display:flex}nav a{min-height:32px;color:var(--muted);align-items:center;display:flex}nav a.active{color:var(--ink)}main{max-width:1240px;min-height:55vh;margin:auto;padding:50px 32px 80px}h1{letter-spacing:-1.8px;margin:12px 0 24px;font-size:46px;line-height:1.14}h2{letter-spacing:-.8px;font-size:26px}h3{margin:0;font-size:18px}p{color:var(--muted);line-height:1.65}.eyebrow{letter-spacing:2px;color:var(--accent);margin:0 0 20px;font-size:11px;font-weight:700}.hero{grid-template-columns:1.3fr 1fr;align-items:start;gap:30px 80px;padding:30px 0 70px;display:grid}.hero .eyebrow{grid-column:1/-1}.hero h1{white-space:pre-line;letter-spacing:-3px;margin:0;font-size:65px;line-height:1.08}.hero-copy{grid-column:1;max-width:460px;margin:0;font-size:17px}.path-picker{background:var(--surface);border:1px solid var(--line);border-radius:16px;grid-area:2/2/4;align-self:center;padding:32px}.path-picker label{margin-bottom:18px;font-weight:600;display:block}.path-picker select{width:100%;padding:16px;font-weight:600}.actions{flex-wrap:wrap;gap:12px;margin-top:24px;display:flex}.actions a:not(.button){color:var(--accent);text-decoration:underline}.track-list{grid-template-columns:1fr 1fr;gap:0 42px;display:grid}.track-list>a{border-top:1px solid var(--line);align-items:flex-start;gap:18px;padding:28px 0;display:flex}.track-list>a>span:last-child{margin-left:auto}.track-list p{max-width:410px;margin:10px 0;font-size:14px}.track-list small{color:var(--muted);font-size:11px}.track-number{color:var(--accent);padding-top:5px;font-size:12px;font-weight:600}.journey>div{grid-template-columns:repeat(3,1fr);gap:36px;display:grid}.journey strong{color:var(--ink);margin-bottom:12px;display:block}footer{border-top:1px solid var(--line);max-width:1176px;margin:auto;padding:32px 0 180px;font-size:13px}footer>a:first-child{font-weight:700}label{margin:20px 0 8px;display:block}input,select,textarea{color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:6px;max-width:100%;padding:12px}input{width:100%;margin-top:8px;display:block}.narrow{max-width:740px;margin:auto}.lede{max-width:700px;font-size:18px}.notice{background:var(--surface);border-left:3px solid var(--accent);padding:14px 18px;font-size:14px}.roadmap-list{max-width:920px;margin-top:40px;padding:0;list-style:none}.roadmap-list li{border-top:1px solid var(--line);gap:24px;padding:28px 0;display:flex}.roadmap-list h2{margin:0}.roadmap-list small{color:var(--muted)}.node-number{border:1px solid var(--line);width:42px;height:42px;color:var(--accent);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.workspace{border:1px solid var(--line);background:var(--surface);border-radius:10px;grid-template-columns:1fr 1.1fr;display:grid;overflow:hidden}.problem{max-height:900px;padding:28px;overflow:auto}.problem h1{font-size:29px}.problem h2{font-size:18px}.editor-pane{border-left:1px solid var(--line);min-width:0;padding:22px}.editor-header{justify-content:space-between;align-items:center;display:flex}.code-input{resize:vertical;tab-size:2;width:100%;min-height:420px;font-family:ui-monospace,monospace;line-height:1.7}.muted,.draft-status{font-size:13px}.language-select{align-items:center;gap:20px;margin:0 0 24px;display:flex}.language-select select{max-width:220px}pre{background:var(--bg);border-radius:6px;padding:18px;font-size:13px;overflow:auto}table{border-collapse:collapse;width:100%;margin-top:30px}th,td{text-align:left;border-bottom:1px solid var(--line);padding:18px}td a{color:var(--accent)}code{overflow-wrap:anywhere;font-family:ui-monospace,monospace}.assistant{left:50%;bottom:calc(20px + env(safe-area-inset-bottom,0px));z-index:20;color:#111c35;width:min(820px,100vw - 32px);position:fixed;transform:translate(-50%)}.composer{background:#fff;border:1px solid #dbe0eb;border-radius:34px;align-items:center;gap:10px;min-height:64px;padding:9px 12px 9px 24px;display:flex;box-shadow:0 8px 30px #111c3520}.composer:focus-within{outline:3px solid var(--accent);outline-offset:3px}.composer textarea:focus-visible{outline:none}.composer textarea{resize:none;color:#111c35;field-sizing:content;background:0 0;border:0;flex:1;min-width:0;max-height:120px;padding:6px 0;line-height:1.5}.composer button{color:#111c35;background:#f2f4fa;border:0;border-radius:50%;min-width:44px;padding:8px}.composer .send{background:var(--accent);color:var(--accent-ink);font-size:24px}.assistant-panel{background:#fff;border:1px solid #dbe0eb;border-radius:18px;max-height:min(420px,55dvh);margin-bottom:12px;padding:22px;overflow:auto;box-shadow:0 8px 30px #111c3518}.assistant-panel header{justify-content:space-between;align-items:center;display:flex}.assistant-panel button{color:#111c35;background:#f2f4fa;border-color:#dbe0eb}.assistant-panel p{color:#55627a}.ask-reopen{z-index:20;background:var(--accent);color:var(--accent-ink);position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip{background:var(--accent);color:var(--accent-ink);z-index:100;padding:12px;position:fixed;top:-100px}.skip:focus{top:8px}@media (width<=900px){.hero{grid-template-columns:1fr;gap:24px}.hero h1{font-size:52px}.hero-copy{grid-column:1}.path-picker{grid-area:auto/1}.track-list{grid-template-columns:1fr}.journey>div{grid-template-columns:1fr;gap:0}nav{margin:0 24px}.workspace{grid-template-columns:1fr}.editor-pane{border-left:0;border-top:1px solid var(--line)}footer{margin:0 24px}.problem{max-height:none}}@media (width<=480px){.site-header{padding:18px 16px}.brand{gap:8px;font-size:20px}.brand-icon{width:34px;height:40px}.header-tools{gap:4px}.header-tools button{padding:8px}.header-tools .button{padding:8px;font-size:11px}main{padding:30px 18px 60px}h1{font-size:34px}.hero{padding:10px 0 40px}.hero h1{letter-spacing:-2px;font-size:43px}.path-picker{padding:22px}.actions{gap:8px}nav{gap:4px 14px;margin:0 18px;font-size:12px}.language-select{flex-direction:column;align-items:flex-start;gap:8px}.composer{padding-left:18px}.assistant-panel{max-height:45dvh}.problem,.editor-pane{padding:18px}th,td{padding:12px 8px;font-size:13px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}body[data-theme=dark] .assistant{color:#eef2ff}body[data-theme=dark] .composer,body[data-theme=dark] .assistant-panel{background:#1a2640;border-color:#35425e}body[data-theme=dark] .composer textarea{color:#eef2ff}body[data-theme=dark] .assistant-panel p{color:#b9c2d8}body[data-theme=dark] .assistant-panel button,body[data-theme=dark] .composer button:not(.send){color:#eef2ff;background:#35425e;border-color:#35425e}.dark .blue,.dark .eyebrow,.dark .track-number,.dark .node-number,.dark .actions a:not(.button),.dark td a{color:var(--accent)}.site-header{padding-top:18px;padding-bottom:12px}.brand{font-size:22px}.brand-icon{width:36px;height:40px;font-size:25px}nav{gap:8px 24px;padding-bottom:12px}main{padding-top:36px}.hero{grid-template-columns:1.1fr 1fr;gap:16px 54px;padding:22px 0 54px}.hero .eyebrow{grid-area:1/1;margin-bottom:8px}.hero h1{letter-spacing:-2.7px;grid-area:2/1;font-size:56px}.hero-copy{grid-area:3/1;max-width:510px;font-size:16px}.hero-graph{grid-area:1/2/5;align-self:center;min-width:0}.path-picker{background:0 0;border:0;border-radius:0;grid-area:4/1;margin-top:12px;padding:0}.path-picker label{margin:0 0 8px;font-size:13px}.path-picker p{margin:10px 0;font-size:13px}.path-picker .actions{margin-top:16px}.preview-caption{text-align:center;color:var(--muted);margin-top:8px;font-size:11px;display:block}.graph-preview,.graph-canvas{background-color:var(--surface);background-image:radial-gradient(var(--line) 1px, transparent 1px);border:1px solid var(--line);background-size:20px 20px;border-radius:12px;position:relative;overflow:auto}.graph-preview{height:420px}.graph-content{transform-origin:top;width:600px;max-width:100%;height:440px;margin:auto;position:relative}.graph-edges{width:100%;height:440px;color:var(--muted);position:absolute}.graph-edges>path{fill:none;stroke:currentColor;stroke-width:1.5px}.graph-node{background:var(--surface);border:1px solid var(--line);width:230px;min-height:64px;color:var(--ink);text-align:center;border-radius:8px;flex-direction:column;justify-content:center;gap:4px;padding:10px 14px;display:flex;position:absolute;left:50%;transform:translate(-50%);box-shadow:0 3px 10px #111c3507}.graph-node.selected{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb, var(--accent) 9.41%, transparent)}.graph-node:hover{border-color:var(--accent);text-decoration:none}.graph-step{color:var(--muted);font-size:10px;position:absolute;top:12px;left:12px}.graph-node strong{font-size:13px;font-weight:600}.graph-node small{color:var(--muted);font-size:10px;font-weight:400}.graph-canvas{min-height:500px}.canvas-controls{gap:4px;display:flex;position:absolute;bottom:14px;left:14px}.canvas-controls button{min-width:44px;padding:8px}.roadmap-toolbar{color:var(--muted);align-items:center;gap:18px;margin:28px 0 16px;font-size:13px;display:flex}.roadmap-layout{grid-template-columns:1.3fr 1fr;gap:20px;display:grid}.topic-panel{border:1px solid var(--line);background:var(--surface);border-radius:10px;min-width:0;padding:26px}.topic-panel h2{font-size:24px}.topic-panel h3{margin-top:32px;font-size:14px}.topic-panel table{margin-top:16px}.topic-panel th,.topic-panel td{padding:12px 8px;font-size:12px}.lesson-link{border:1px solid var(--line);color:var(--accent);border-radius:6px;padding:12px;font-size:13px;display:block}.dark .lesson-link{color:var(--accent)}.practice-catalog{grid-template-columns:200px 1fr;gap:28px;display:grid}.practice-sidebar{border:1px solid var(--line);background:var(--surface);border-radius:10px;flex-direction:column;align-self:start;padding:8px;display:flex}.practice-sidebar button{text-align:left;background:0 0;border:0;justify-content:flex-start;padding:12px;font-size:12px;font-weight:500;line-height:1.4}.practice-sidebar button.active{background:color-mix(in srgb, var(--accent) 5.1%, transparent);color:var(--accent)}.dark .practice-sidebar button.active{color:#b4c1ff;background:#35425e}.practice-body{min-width:0}.catalog-header{border:1px solid var(--line);background:var(--surface);border-radius:10px;padding:28px}.catalog-header h1{font-size:34px}.catalog-header p{margin-bottom:0}.practice-filters{align-items:flex-end;gap:16px;margin:4px 0 28px;display:flex}.practice-filters label:first-child{flex:1}.practice-filters label{font-size:12px}.practice-filters input,.practice-filters select{width:100%;min-height:44px;margin-top:8px}.problem-group{border:1px solid var(--line);background:var(--surface);border-radius:10px;padding:20px 24px}.problem-group h2{margin:4px 0;font-size:17px}.problem-group table{margin-top:16px;font-size:13px}.problem-group th{letter-spacing:1px;text-transform:uppercase;color:var(--muted);font-size:10px}.ungraded{color:var(--muted);font-size:11px}.difficulty{border:1px solid var(--line);border-radius:4px;padding:4px 8px;font-size:11px}.empty{text-align:center;padding:20px;font-size:14px}@media (width<=900px){.hero{grid-template-columns:1fr;gap:18px}.hero h1{font-size:48px}.hero .eyebrow,.hero h1,.hero-copy,.path-picker,.hero-graph{grid-area:auto/1}.hero-graph{order:5}.path-picker{order:4}.hero-graph{width:100%;max-width:620px;margin:20px auto 0}.roadmap-layout,.practice-catalog{grid-template-columns:1fr}.practice-sidebar{flex-direction:row;gap:4px;max-width:100%;overflow:auto}.practice-sidebar button{white-space:normal;min-width:130px}.practice-filters{align-items:stretch}}@media (width<=480px){.hero h1{font-size:40px}.graph-preview{height:410px}.graph-node{width:220px}.practice-filters{flex-direction:column;gap:0}.catalog-header{padding:20px}.catalog-header h1{font-size:28px}.problem-group{padding:16px 10px}.roadmap-toolbar{flex-direction:column;align-items:flex-start;gap:10px}.topic-panel{padding:20px}.graph-canvas{min-height:440px}}.skip:not(:focus){clip-path:inset(50%);width:1px;height:1px;overflow:hidden}.clean-header{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:28px;max-width:1240px;padding:14px 32px}.clean-header .brand{letter-spacing:-.8px;white-space:nowrap;align-items:center;font-size:20px}.clean-header .brand-icon{border-radius:8px;width:30px;height:32px;font-size:22px}.clean-header .primary-nav{border:0;flex-wrap:nowrap;flex:1;align-items:center;gap:22px;max-width:none;margin:0;padding:0;font-size:12px}.primary-nav>a{white-space:nowrap;min-height:44px}.primary-nav>a.active,.dark .primary-nav>a.active{color:var(--accent)}.header-tools{align-items:center;margin-left:auto}.header-tools button{background:0 0;border:0;min-width:44px;padding:8px;font-size:12px}.header-tools .button{background:var(--ink);color:var(--surface);border-color:var(--ink);padding:8px 14px}.more-nav{color:var(--muted);position:relative}.more-nav summary{cursor:pointer;align-items:center;gap:6px;min-height:44px;list-style:none;display:flex}.more-nav summary::-webkit-details-marker{display:none}.more-nav .community-chevron{transform-origin:50%;flex-shrink:0;transition:transform .18s cubic-bezier(.22,1,.36,1);display:block}.more-nav[open] .community-chevron{transform:rotate(180deg)}.more-nav div{background:var(--surface);border:1px solid var(--line);z-index:30;border-radius:8px;width:180px;padding:8px;position:absolute;top:44px;right:0;box-shadow:0 8px 24px #111c3515}.more-nav a{padding:10px;font-size:12px}.more-nav[open]>div{animation:.18s cubic-bezier(.22,1,.36,1) community-menu-enter}@keyframes community-menu-enter{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.more-nav .community-chevron{transition:none}.more-nav[open]>div{animation:none}}.menu-toggle{display:none}.mobile-nav{top:100%;max-width:none;max-height:calc(100vh - 72px - env(safe-area-inset-top,0px));max-height:calc(100dvh - 72px - env(safe-area-inset-top,0px));padding:4px 20px max(20px, env(safe-area-inset-bottom,0px));border-bottom:1px solid var(--line);background:var(--surface);overscroll-behavior:contain;opacity:0;visibility:hidden;pointer-events:none;margin:0;transition:opacity .18s cubic-bezier(.22,1,.36,1),transform .18s cubic-bezier(.22,1,.36,1),visibility 0s .18s;display:none;position:absolute;inset-inline:0;overflow-y:auto;transform:translateY(-8px)}.mobile-nav[data-open=true]{opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s;transform:translateY(0)}.mobile-nav-links{border:0;flex-direction:column;align-items:stretch;gap:0;max-width:none;margin:0;padding:0;display:flex}.mobile-nav a{border-bottom:1px solid var(--line);overflow-wrap:anywhere;border-radius:0;align-items:center;min-height:56px;padding:14px 0;font-size:15px;line-height:1.5;display:flex}.mobile-nav a:hover,.mobile-nav a.active{color:var(--accent)}.mobile-nav a.active{font-weight:600}.mobile-nav-settings{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;padding-top:22px;display:grid}.mobile-nav-settings button{min-height:52px;color:var(--ink);text-align:start;background:0 0;border:0;flex-direction:column;align-items:flex-start;gap:6px;padding:4px 0;font-size:13px;display:flex}.mobile-nav-settings small{color:var(--muted);font-size:11px}.menu-toggle-lines,.menu-toggle-lines:before{background:currentColor;width:24px;height:1px;transition:transform .18s cubic-bezier(.22,1,.36,1);display:block}.menu-toggle-lines:before{content:"";transform:translateY(-6px)}.menu-toggle[aria-expanded=true] .menu-toggle-lines{transform:rotate(45deg)}.menu-toggle[aria-expanded=true] .menu-toggle-lines:before{transform:rotate(-90deg)}@media (prefers-reduced-motion:reduce){.mobile-nav,.menu-toggle-lines,.menu-toggle-lines:before{transition:none}}.site-footer{border-top:1px solid var(--line);max-width:1176px;margin:auto;padding:48px 0 130px}.footer-top{grid-template-columns:2fr 1fr 1fr 1fr;gap:42px;display:grid}.footer-brand .brand{gap:0;font-size:23px;display:inline-flex}.footer-brand p{white-space:pre-line;margin:16px 0;font-size:13px}.labs-credit{color:var(--muted);letter-spacing:.4px;font-size:12px}.labs-credit strong{color:var(--ink);font-weight:600}.footer-top h2{letter-spacing:0;margin:4px 0 18px;font-size:12px}.footer-top>div:not(:first-child)>a{color:var(--muted);margin:14px 0;font-size:12px;display:block}.footer-bottom{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;gap:20px;margin-top:40px;padding-top:20px;font-size:11px;display:flex}.google-availability{background:var(--surface);border:1px solid var(--line);border-radius:12px;margin-top:28px;padding:24px}.google-availability h2{margin-top:0;font-size:18px}.readiness-label{color:var(--muted);letter-spacing:1px;font-size:11px}.account-panel{padding:28px 0}summary:focus-visible{outline:3px solid var(--accent);outline-offset:3px}@media (width<=1100px){.clean-header{gap:18px}.clean-header .primary-nav{gap:14px}.clean-header .brand{font-size:18px}}@media (width<=960px){.footer-top{grid-template-columns:2fr 1fr 1fr;gap:28px}.footer-brand{grid-column:1/-1}.site-footer{margin:0 24px}}@media (width<=480px){.clean-header{gap:8px;padding:12px 16px}.clean-header .brand{gap:6px;font-size:16px}.clean-header .brand-icon{width:26px;height:28px;font-size:19px}.header-tools{gap:0}.header-tools button{min-width:32px;padding:6px}.header-tools .button{padding:8px;font-size:11px}.footer-top{grid-template-columns:1fr 1fr;gap:24px}.site-footer{margin:0 18px;padding-top:32px}.footer-bottom{flex-direction:column;gap:10px}}.app{--bg:#fbfcfe;--line:#e5e8ef}.app.dark{--bg:#111a2c;--line:#35425e}.clean-header{background:var(--surface);border:1px solid var(--line);border-radius:14px;gap:32px;width:calc(100% - 48px);max-width:1080px;min-height:58px;margin:18px auto 0;padding:7px 18px;box-shadow:0 2px 12px #111c3504}.clean-header .brand{letter-spacing:-.6px;gap:8px;font-size:18px;font-weight:650}.clean-header .brand-icon{color:var(--accent);background:0 0;border-radius:0;width:26px;height:30px}.dark .clean-header .brand-icon{color:var(--accent)}.clean-header .primary-nav{justify-content:center;gap:22px;font-size:13px;font-weight:500}.primary-nav>a{gap:7px}.nav-symbol{color:var(--muted);font-size:16px;line-height:1}.header-tools{gap:2px}.header-tools .button{background:var(--bg);color:var(--ink);border:1px solid var(--line);border-radius:6px;min-height:32px;padding:5px 12px;font-size:12px;font-weight:500}.header-tools button{min-width:36px;min-height:36px;font-weight:500}.more-nav summary{font-size:13px}.environment{max-width:1080px;color:var(--muted);background:0 0;border:0;margin:auto;padding:0 20px 112px;font-size:11px}main{max-width:1144px;padding-top:66px;padding-bottom:42px}.hero{align-items:center;gap:20px 60px;padding:20px 0 64px}.hero h1{letter-spacing:-2px;font-size:49px;font-weight:650;line-height:1.14}.hero .eyebrow{letter-spacing:1.2px;color:var(--muted);margin-bottom:0;font-size:10px}.hero-copy{max-width:420px;font-size:15px;line-height:1.7}.hero-graph .graph-preview{box-shadow:none;background-color:#0000;background-image:none;border:0}.hero-graph .graph-node{box-shadow:none;border-radius:8px}.path-picker{margin-top:4px}.path-picker label{font-size:12px;font-weight:500}.path-picker select{max-width:350px;padding:10px 12px;font-size:13px}.path-picker p{max-width:370px;font-size:12px}.path-picker .button{border-radius:7px;gap:12px;min-height:42px;padding:10px 16px;font-size:13px}.track-section{border-top:0;padding:34px 0}.section-heading{margin-bottom:24px}.section-heading .eyebrow{margin-bottom:10px}.section-heading h2,.journey h2{font-size:24px;font-weight:600}.track-list>a{padding:22px 0}.track-list h3{font-size:16px;font-weight:600}.track-list p{font-size:13px}.journey{border-top:0;padding:28px 0}.site-footer{width:calc(100% - 48px);max-width:1080px;margin:24px auto 0;padding:28px 0 24px}.footer-top{justify-content:space-between;align-items:center;gap:24px;display:flex}.footer-brand{align-items:center;gap:12px;display:flex}.footer-brand .brand{letter-spacing:-.5px;font-size:17px;font-weight:650}.labs-credit{letter-spacing:0;font-size:11px}.footer-links{border:0;gap:22px;max-width:none;margin:0;padding:0;font-size:12px;font-weight:400}.footer-links a{min-height:36px}.footer-bottom{border:0;margin-top:18px;padding-top:0;font-size:10px}.more-nav a{display:flex}@media (width<=1100px){.clean-header{gap:18px}.clean-header .primary-nav{gap:14px}.hero h1{font-size:44px}}@media (width<=960px){main{padding-top:44px}.clean-header{gap:16px}.hero{gap:18px}.hero h1{font-size:44px}.hero-graph{margin-top:0}.footer-top{flex-direction:column;align-items:flex-start;gap:16px}.footer-brand{grid-column:auto}}@media (width<=480px){.clean-header{border-radius:10px;gap:6px;width:calc(100% - 24px);min-height:54px;margin-top:12px;padding:6px 10px}.clean-header .brand{gap:4px;font-size:15px}.clean-header .brand-icon{width:21px}.header-tools button{min-width:30px}.header-tools .button{padding:5px 8px;font-size:11px}main{padding-top:38px}.hero h1{letter-spacing:-1.3px;font-size:36px}.hero-copy{font-size:14px}.hero{padding-bottom:36px}.hero-graph .graph-preview{height:390px}.site-footer{width:calc(100% - 36px);margin:14px auto 0;padding-top:24px}.footer-links{flex-wrap:wrap;gap:6px 18px}.footer-bottom{gap:8px}.environment{text-align:left;padding-bottom:112px}.track-list>a{padding:20px 0}}.track-switcher{max-width:470px}.track-switcher fieldset{border:0;min-width:0;margin:0;padding:0}.track-switcher legend{color:var(--muted);margin-bottom:14px;padding:0;font-size:12px;font-weight:500}.track-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.track-option{cursor:pointer;margin:0;display:block;position:relative}.track-option input{opacity:0;width:1px;height:1px;margin:0;position:absolute}.track-tile{border:1px solid var(--line);background:var(--surface);border-radius:10px;align-items:center;gap:10px;min-height:65px;padding:15px 12px;font-size:12px;font-weight:500;transition:background .18s,border-color .18s,transform .18s,box-shadow .18s;display:flex;position:relative}.track-tile svg{width:23px;height:23px;color:var(--muted);flex-shrink:0}.track-option:hover .track-tile{border-color:var(--accent);transform:translateY(-2px);box-shadow:0 5px 14px #111c3508}.track-option input:checked+.track-tile{border-color:var(--accent);background:var(--tint);color:var(--accent);box-shadow:0 0 0 1px color-mix(in srgb, var(--accent) 7.84%, transparent)}.track-option input:checked+.track-tile svg{color:var(--accent)}.track-option input:focus-visible+.track-tile{outline:3px solid var(--accent);outline-offset:3px}.track-check{font-size:9px;display:none;position:absolute;top:4px;right:6px}.track-option input:checked+.track-tile .track-check{display:block}.track-detail{border-top:1px solid var(--line);margin-top:18px;padding:14px 0 0;animation:.22s ease-out track-reveal}.track-detail-head{justify-content:space-between;align-items:center;gap:12px;font-size:12px;font-weight:600;display:flex}.track-readiness{color:var(--muted);white-space:nowrap;font-size:10px;font-weight:400}.track-detail p{min-height:40px;max-width:none!important;margin:7px 0 0!important;font-size:12px!important}.track-switcher .actions{align-items:center;gap:22px;margin-top:14px}.track-switcher .practice-text-link{color:var(--muted);font-size:12px;text-decoration:none}.track-switcher .practice-text-link:hover{color:var(--ink)}.dark .track-option input:checked+.track-tile{border-color:var(--accent);color:#b4c1ff;background:linear-gradient(130deg,#22335b,#1a2640)}.dark .track-option input:checked+.track-tile svg{color:#b4c1ff}@keyframes track-reveal{0%{opacity:1;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@media (width<=480px){.track-tile{gap:7px;min-height:62px;padding:14px 8px;font-size:10px}.track-tile svg{width:20px;height:20px}.track-detail-head{font-size:11px}.track-readiness{font-size:9px}.track-options{gap:7px}.track-switcher .actions{gap:18px}}@media (prefers-reduced-motion:reduce){.track-detail{animation:none}.track-tile{transition:none}.track-option:hover .track-tile{transform:none}}:is(.app:has(.dsa-roadmap)>main,.app:has(.reference-workspace)>main){max-width:none;padding:24px 20px 30px}.app:has(.reference-workspace) .site-footer{display:none}.dsa-roadmap,.dark .dsa-roadmap{--dsa-accent:var(--accent)}.dsa-canvas-title{z-index:2;color:var(--ink);opacity:.88;text-shadow:0 0 2px #163cff47,0 0 7px #163cff29;letter-spacing:-.2px;pointer-events:none;background:0 0;border:0;margin:0;padding:0;font-family:inherit;font-size:14px;font-weight:600;line-height:1.3;position:absolute;top:16px;left:16px}.dsa-about{border:1px solid var(--line);color:var(--muted);border-radius:12px;padding:14px 16px;font-size:12px}.dsa-about summary{cursor:pointer;color:var(--ink)}.dsa-about p{line-height:1.6}.dsa-about a{color:var(--dsa-accent);margin-top:12px;display:block}.dsa-about button{margin-top:12px}.dsa-roadmap>p[role=status]:empty{display:none}.dsa-layout{grid-template-columns:minmax(0,1fr) 300px;gap:16px;margin-top:0;display:grid}.dsa-canvas{border:1px solid var(--line);background:radial-gradient(var(--line) 1px, transparent 1px) 0 0/24px 24px;cursor:grab;touch-action:none;border-radius:14px;height:calc(100dvh - 180px);min-height:650px;position:relative;overflow:hidden}.dsa-canvas:active{cursor:grabbing}.dsa-graph{transform-origin:0 0;width:1060px;height:1100px;position:relative}.dsa-connectors{fill:none;width:1060px;height:1100px;stroke:var(--muted);stroke-opacity:.5;stroke-width:2px;position:absolute}.dsa-topic{border:1px solid var(--line);background:var(--tint);width:160px;min-height:58px;color:var(--accent);border-radius:8px;flex-direction:column;gap:9px;padding:8px 10px;font-size:13px;font-weight:500;line-height:1.4;display:flex;position:absolute;box-shadow:0 3px 7px #111c3508}.dsa-topic:hover{background:color-mix(in srgb, var(--accent) 12%, var(--surface));border-color:var(--accent)}.dsa-topic strong{font-weight:500}.dsa-topic-line{background:color-mix(in srgb, var(--accent) 30%, var(--surface));border-radius:3px;width:100%;height:3px}.dark .dsa-topic:hover{background:#2e416c}.dsa-side{flex-direction:column;gap:14px;display:flex}.dsa-summary,.dsa-calendar{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:22px}.dsa-totals{justify-content:space-between;align-items:center;gap:12px;display:flex}.dsa-totals>div:first-child{flex:1}.dsa-totals p{justify-content:space-between;gap:14px;margin:10px 0;font-size:11px;display:flex}.dsa-totals strong{font-family:ui-monospace,monospace;font-size:11px;font-weight:500}.dsa-ring{border:5px solid var(--line);border-top-color:var(--accent);border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:104px;height:104px;display:flex}.dsa-ring strong{font-size:26px}.dsa-ring span,.dsa-ring small{color:var(--muted);font-size:10px}.dsa-summary select{width:100%;margin:22px 0 0;font-size:13px}.dsa-summary>p,.dsa-calendar>p{margin-bottom:0;font-size:10px}.calendar-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.calendar-head button{background:0 0;border:0;padding:8px;font-size:20px}.calendar-head h2{letter-spacing:0;margin:0;font-size:14px;font-weight:500}.calendar-grid{text-align:center;color:var(--muted);grid-template-columns:repeat(7,1fr);gap:10px 0;margin-top:14px;font-size:11px;display:grid}.calendar-grid span{place-items:center;min-height:30px;display:grid}.calendar-grid .today{outline:2px solid var(--accent);outline-offset:-3px;color:var(--ink);border-radius:50%;font-weight:600}.streaks{border-top:1px solid var(--line);color:var(--muted);gap:18px;margin-top:20px;padding-top:16px;font-size:10px;display:flex}.streaks strong{color:var(--ink);margin-top:8px;font-size:20px;display:block}.dsa-dialog{border:0;border-left:1px solid var(--line);background:var(--surface);width:min(820px,64vw);max-width:100vw;height:100dvh;max-height:100dvh;color:var(--ink);opacity:0;transition:transform .26s cubic-bezier(.22, 1, .36, 1), opacity .18s ease-out, display .26s allow-discrete, overlay .26s allow-discrete;margin:0;padding:64px 30px 30px;position:fixed;inset:0 0 0 auto;overflow:auto;transform:translate(36px);box-shadow:-10px 0 40px #111c3520}.dsa-dialog[open]{opacity:1;transform:translate(0)}@starting-style{.dsa-dialog[open]{opacity:0;transform:translate(36px)}}.dsa-dialog::backdrop{transition:background .18s ease-out, display .26s allow-discrete, overlay .26s allow-discrete;background:#111c3500}.dsa-dialog[open]::backdrop{background:#111c354d}@starting-style{.dsa-dialog[open]::backdrop{background:#111c3500}}.dialog-close{background:0 0;border:0;font-size:26px;position:absolute;top:12px;left:16px}.dsa-dialog h2{text-align:center;font-size:26px;font-weight:500}.topic-count{text-align:center;margin-bottom:36px;font-size:12px}.dsa-dialog h3{text-align:center;color:var(--muted);margin-bottom:18px;font-size:15px;font-weight:500}.prerequisite-cards{flex-wrap:wrap;justify-content:center;gap:12px;margin-bottom:32px;display:flex}.prerequisite-cards>a,.prerequisite-cards>button{border:1px solid var(--line);background:var(--bg);text-align:left;width:calc(50% - 12px);color:var(--ink);border-radius:12px;padding:20px;font-size:14px;display:block}.prerequisite-cards small{color:var(--muted);margin-top:10px;font-size:11px;font-weight:400;display:block}.dsa-table-wrap{border:1px solid var(--line);border-radius:12px;overflow:auto}.dsa-table-wrap table{margin:0;font-size:12px}.dsa-table-wrap th{text-transform:uppercase;background:var(--bg);color:var(--muted);font-size:10px;font-weight:500}.dsa-table-wrap th button{background:0 0;border:0;min-height:32px;padding:0;font-size:10px}.dsa-table-wrap td{padding:18px 12px}.dsa-table-wrap th{padding:12px}.reference-catalog{margin-top:30px}.reference-catalog h2{font-size:20px}.reference-catalog>p{font-size:12px}.reference-catalog details{border:1px solid var(--line);background:var(--surface);border-radius:8px;margin:8px 0;padding:14px}.reference-catalog summary{cursor:pointer;font-size:13px;font-weight:500}.reference-catalog summary small{color:var(--muted);float:right}.reference-catalog table{font-size:12px}.reference-workspace{height:calc(100dvh - 118px);min-height:620px}.workspace-topbar{align-items:center;gap:18px;padding:0 4px 14px;font-size:13px;display:flex}.workspace-topbar strong{margin-right:auto;font-weight:500}.workspace-topbar>a{align-items:center;min-height:36px;display:flex}.reference-split{grid-template-columns:45% minmax(0,1fr);gap:12px;height:calc(100% - 50px);display:grid}.reference-question,.reference-editor{border:1px solid var(--line);background:var(--surface);border-radius:14px;min-width:0;overflow:hidden}.workspace-tabs{background:var(--bg);border-bottom:1px solid var(--line);align-items:center;gap:4px;padding:0 10px;display:flex;overflow:auto}.workspace-tabs button{white-space:nowrap;background:0 0;border:0;border-radius:0;min-height:48px;padding:10px 12px;font-size:12px;font-weight:500}.workspace-tabs button[aria-selected=true]{border-bottom:2px solid var(--accent)}.reference-body{max-height:calc(100% - 50px);padding:28px;overflow:auto}.reference-body h1{letter-spacing:-.6px;font-size:27px;font-weight:600}.reference-body p{font-size:14px}.reference-editor{flex-direction:column;display:flex}.editor-toolbar{border-bottom:1px solid var(--line);background:var(--bg);min-height:48px;color:var(--muted);align-items:center;gap:16px;padding:8px 14px;font-size:11px;display:flex}.editor-toolbar select{background:0 0;border:0;padding:6px}.editor-toolbar button{background:0 0;border:0;min-height:32px;margin-left:auto;padding:6px}.solution-tabs{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:8px 14px;font-size:11px;display:flex}.solution-tabs>span{background:var(--bg);border-radius:5px;padding:8px 12px}.solution-tabs button{min-height:32px;margin-left:auto;padding:6px 12px;font-size:11px}.reference-code{flex:1;min-height:0;padding:12px 0}.workspace-console{border-top:1px solid var(--line);background:var(--bg);min-height:56px;padding:8px 14px;position:relative}.workspace-console>button{background:0 0;border:0;min-height:36px;padding:8px 0;font-size:12px}.workspace-console p{margin:0 0 48px;padding:12px 0;font-size:12px}.execution-actions{gap:8px;display:flex;position:absolute;bottom:10px;right:12px}.execution-actions button{min-height:34px;padding:7px 16px;font-size:12px}.reference-workspace.expanded{z-index:40;background:var(--bg);height:auto;padding:12px;position:fixed;inset:12px}.dark .workspace-tabs button[aria-selected=true]{border-color:var(--accent)}@media (width<=1100px){.dsa-layout{grid-template-columns:minmax(0,1fr) 260px}.dsa-summary,.dsa-calendar{padding:16px}.dsa-graph{margin-left:-120px}.dsa-ring{width:84px;height:84px}}@media (width<=768px){.dsa-layout{grid-template-columns:1fr}.dsa-side{grid-template-columns:1fr 1fr;display:grid}.dsa-canvas{height:650px;min-height:650px}.dsa-dialog{width:100vw;padding:64px 18px 24px}.reference-split{grid-template-columns:1fr;height:auto}.reference-workspace{height:auto}.reference-question{min-height:360px}.reference-body{max-height:none}.reference-editor{height:620px}.workspace-topbar{flex-wrap:wrap}.reference-code{min-height:420px}}@media (width<=480px){:is(.app:has(.dsa-roadmap)>main,.app:has(.reference-workspace)>main){padding:20px 12px}.dsa-side{grid-template-columns:1fr}.dsa-dialog .prerequisite-cards>a,.dsa-dialog .prerequisite-cards>button{width:100%}.dsa-table-wrap th,.dsa-table-wrap td{padding:10px 8px;font-size:10px}.dsa-dialog h2{font-size:22px}.reference-body{padding:20px}.workspace-tabs button{padding:10px 8px;font-size:11px}.dsa-graph{margin-left:-180px}}.app:has(.coding-workspace)>main{max-width:none;padding:18px 16px 24px}.app:has(.coding-workspace) .site-footer{display:none}.coding-workspace{background:0 0;border:0;border-radius:0;align-items:stretch;gap:12px;min-height:calc(100dvh - 174px)}.coding-workspace .problem{border:1px solid var(--line);background:var(--surface);border-radius:14px;max-height:calc(100dvh - 174px);padding:0;overflow:hidden}.authored-problem-body{height:calc(100% - 50px);padding:26px;overflow:auto}.coding-workspace .problem h1{letter-spacing:-.5px;font-size:26px;font-weight:600}.coding-workspace .problem pre{background:var(--bg);border:1px solid var(--line);margin:24px 0;padding:22px}.coding-workspace .editor-pane{border:1px solid var(--line);background:var(--surface);border-radius:14px;flex-direction:column;padding:0;display:flex;overflow:hidden}.coding-workspace .editor-header{background:var(--bg);border-bottom:1px solid var(--line);gap:12px;min-height:50px;padding:8px 14px;font-size:12px}.coding-workspace .editor-header button{min-height:34px;padding:6px 10px;font-size:11px}.split-control{color:var(--muted);align-items:center;gap:8px;margin:0;font-size:10px;display:flex}.split-control input{width:80px;margin:0;padding:0}.coding-workspace .editor-pane>label{margin:12px 18px;font-size:11px}.coding-workspace .code-input{resize:none;border:0;border-radius:0;flex:1;min-height:360px;padding:18px 24px;line-height:1.7}.authored-console{margin-top:auto}.authored-console .actions{gap:6px;margin:0;display:flex}.authored-console .actions button{min-height:34px;padding:7px 10px;font-size:11px}.authored-console>button{min-height:30px;padding:7px 10px;font-size:11px}.coding-workspace .draft-status{margin:10px 0;padding:0 16px;font-size:11px}.coding-workspace .editor-pane>p.muted{padding:0 16px;font-size:10px}.app:has(.coding-workspace) .language-select{gap:14px;margin:0 0 12px;font-size:11px}.app:has(.coding-workspace) .language-select select{padding:6px 10px;font-size:12px}@media (width<=768px){.coding-workspace{grid-template-columns:1fr!important}.coding-workspace .problem{max-height:none}.authored-problem-body{height:auto}.coding-workspace .editor-pane{min-height:680px}.split-control{display:none}.coding-workspace .editor-header{flex-wrap:wrap}}@media (prefers-reduced-motion:reduce){.dsa-topic,.dsa-dialog,.dsa-dialog::backdrop{transition:none}}.dsa-graph{margin-left:0;left:calc(50% - 318px)}@media (width<=480px){.dsa-graph{margin-left:0;left:calc(50% - 318px)}}.app:has(.reference-workspace) .site-header{display:none}.app:has(.reference-workspace)>main{padding:10px 14px}.app:has(.reference-workspace) .environment{padding:6px 12px;font-size:10px}.reference-workspace{height:calc(100dvh - 50px)}.reference-body pre{border:1px solid var(--line);background:var(--bg);padding:24px;line-height:1.8}.reference-body h2{margin-top:32px;font-size:16px}.reference-body .notice{font-size:11px}.reference-body h1{margin-top:8px}.workspace-topbar{min-height:42px;padding-bottom:8px}@media (width<=768px){.reference-workspace{height:auto}}.bookmark-control button{color:#806016;background:0 0;border:0;min-width:32px;min-height:32px;padding:4px;font-size:22px}.dark .bookmark-control button{color:#ffcf70}.bookmark-control button:disabled{opacity:.6}.bookmark-control small{color:var(--muted);font-size:10px;display:block}.dsa-canvas{overscroll-behavior:contain;-webkit-user-select:none;user-select:none}.dsa-canvas.is-panning,.dsa-canvas.is-panning .dsa-topic{cursor:grabbing}.dsa-canvas:focus-visible{outline:2px solid var(--accent,var(--accent));outline-offset:3px}.paths-editorial{padding:64px 0 48px}.paths-intro{margin-bottom:42px}.paths-intro .eyebrow{letter-spacing:.18em;margin:0 0 16px;font-size:10px}.paths-intro h2{letter-spacing:-.045em;margin:0;font-size:clamp(32px,4.5vw,54px);font-weight:600;line-height:1.12}.paths-composition{border-top:1px solid var(--line);grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(32px,7vw,100px);display:grid}.paths-featured{flex-direction:column;align-items:flex-start;min-width:0;padding:32px 0 24px;display:flex}.paths-status{color:var(--muted);align-items:center;gap:8px;font-size:11px;display:flex}.paths-status:before{content:"";background:var(--accent);border-radius:50%;width:5px;height:5px}.paths-featured h3{letter-spacing:-.045em;margin:28px 0 18px;font-size:clamp(30px,3.4vw,44px);font-weight:600;line-height:1.18}.paths-featured h3>span{color:var(--muted);font-weight:400}.paths-featured p{max-width:310px;color:var(--muted);margin:0;font-size:13px;line-height:1.7}.paths-action{color:var(--accent);justify-content:space-between;align-items:center;gap:32px;margin-top:auto;padding-top:36px;font-size:13px;font-weight:600;display:flex}.paths-action>span{font-size:23px;font-weight:400}.paths-upcoming{min-width:0;padding-top:32px}.paths-group-label{color:var(--muted);margin:0 0 20px;font-size:11px}.paths-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;min-height:62px;padding:16px 0;display:flex}.paths-row:last-child{border-bottom:0}.paths-row h3{letter-spacing:-.025em;margin:0;font-size:17px;font-weight:500;line-height:1.4}.paths-row>span{color:var(--muted);font-size:19px}.paths-editorial a:hover{text-decoration:none}.paths-featured:hover .paths-action,.paths-row:hover h3{text-underline-offset:5px;text-decoration:underline}.paths-row:hover>span,body[data-theme=dark] .paths-action,body[data-theme=dark] .paths-row:hover>span{color:var(--accent)}@media (width<=640px){.paths-editorial{padding:40px 0 28px}.paths-intro{margin-bottom:28px}.paths-composition{grid-template-columns:1fr;gap:16px}.paths-featured{padding-top:24px}.paths-upcoming{border-top:1px solid var(--line);padding-top:24px}}.app{padding-top:94px}.clean-header{z-index:30;width:calc(100% - 64px);max-width:1360px;box-shadow:0 8px 28px color-mix(in srgb, var(--accent) 9.0%, transparent), 0 2px 8px color-mix(in srgb, var(--accent) 4.0%, transparent);margin:0;transition:top .24s cubic-bezier(.22,1,.36,1),padding .24s cubic-bezier(.22,1,.36,1),min-height .24s cubic-bezier(.22,1,.36,1),box-shadow .24s,background-color .24s;position:fixed;top:18px;left:50%;transform:translate(-50%)}.clean-header.is-compact{background:var(--surface);background:color-mix(in srgb, var(--surface) 90%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);min-height:50px;box-shadow:0 8px 28px color-mix(in srgb, var(--accent) 12.0%, transparent);padding-top:3px;padding-bottom:3px;top:10px}.app:has(.hero)>main{max-width:1440px;padding:36px 32px 42px}.hero{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);column-gap:48px}.hero-copy{max-width:510px}.app:has(.reference-workspace){padding-top:0}@media (width<=960px){.clean-header{width:calc(100% - 36px)}.app:has(.hero)>main{padding:24px 24px 36px}.hero{column-gap:24px}}@media (width<=700px){.clean-header{width:calc(100% - 28px)}.app:has(.hero)>main{padding:18px 18px 36px}.hero{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.clean-header{transition:none}}.site-footer{width:calc(100% - 64px);max-width:1360px;padding:28px 18px 24px}.footer-brand .brand{letter-spacing:-.6px;align-items:center;gap:8px;font-size:18px}.footer-brand .brand-icon{background:0 0;width:26px;height:30px}.has-assistant .site-footer{margin-bottom:calc(112px + env(safe-area-inset-bottom,0px))}@media (width<=960px){.site-footer{width:calc(100% - 36px)}}@media (width<=700px){.site-footer{width:calc(100% - 28px)}}@media (width<=480px){.site-footer{width:calc(100% - 28px);padding:24px 10px}.footer-brand .brand{gap:4px;font-size:15px}.footer-brand .brand-icon{width:21px}}.reference-code{flex:1;height:auto;min-height:220px;overflow:hidden}.reference-code>.code-input{border:0;border-radius:0;width:100%;height:100%;min-height:220px;padding:16px}.reference-editor .workspace-console{flex-wrap:wrap}.workspace-testcases{flex:0 0 100%;order:3;max-height:240px;padding:12px 0;overflow:auto}.workspace-testcases label{align-items:center;gap:12px;font-size:12px;display:flex}.workspace-testcases pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px}.workspace-testcases textarea{width:100%;min-height:65px;margin-top:12px}.workspace-draft-alert{border-top:1px solid var(--line);padding:12px 16px;font-size:12px}.workspace-pane-control{color:var(--muted);align-items:center;gap:12px;padding:6px 16px;font-size:11px;display:flex}.workspace-pane-control input{max-width:130px}.reference-editor .solution-tabs{flex-wrap:wrap;gap:6px}.reference-editor .workspace-console>p[role=status]{overflow-wrap:anywhere;flex-basis:100%;order:4}.reference-editor button{transition:background-color .12s,color .12s}@media (prefers-reduced-motion:reduce){.reference-editor button{transition:none}}@media (width<=760px){.reference-split{grid-template-columns:minmax(0,1fr)!important}.workspace-pane-control{display:none}.reference-code{min-height:300px}}.reference-editor .workspace-pane-control{border-bottom:1px solid var(--line);flex-shrink:0;min-height:34px;margin:0}.reference-editor .solution-tabs{flex-shrink:0}.reference-editor .solution-tabs button{margin-left:0}.reference-editor .solution-tabs>span{margin-right:auto}.reference-editor .reference-code{min-height:120px;padding:0}.reference-editor .workspace-console{flex-shrink:0;grid-template-columns:minmax(0,1fr) auto;max-height:min(320px,42dvh);display:grid;overflow:auto}.reference-editor .workspace-console>button{justify-self:start}.reference-editor .execution-actions{grid-area:1/2;align-items:center;position:static}.reference-editor .workspace-testcases{grid-column:1/-1;max-height:160px;padding:8px 0}.reference-editor .workspace-testcases label{margin:0}.reference-editor .workspace-testcases pre{background:var(--surface);border-radius:6px;margin:12px 0 0;padding:12px}.reference-editor .workspace-console>p[role=status]{grid-column:1/-1;margin:4px 0;padding:8px 0}.workspace-cloud-draft{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:8px;padding:8px 14px;font-size:11px;display:flex}.workspace-cloud-draft button{min-height:32px;padding:6px 10px;font-size:11px}@media (width<=760px){.reference-editor .reference-code{min-height:300px}}.reference-split{position:relative}.workspace-divider{cursor:col-resize;touch-action:none;z-index:2;width:12px;position:absolute;top:0;bottom:0}.workspace-divider:after{content:"";background:var(--line);border-radius:2px;width:2px;height:36px;position:absolute;top:calc(50% - 18px);left:5px}.workspace-divider:hover:after,.workspace-divider:focus-visible:after{background:var(--accent)}@media (width<=760px){.workspace-divider{display:none}}.clean-header{box-shadow:0 8px 28px color-mix(in srgb, var(--accent) 9.02%, transparent), 0 2px 8px color-mix(in srgb, var(--accent) 3.92%, transparent);transition-property:top,padding,min-height,box-shadow,background-color}.clean-header.is-compact{background-color:var(--surface);background-color:color-mix(in srgb, var(--surface) 90%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 8px 28px color-mix(in srgb, var(--accent) 12.16%, transparent)}.hero-graph{min-width:0;max-width:100%}.home-dsa-preview{width:100%;padding:12px}.home-dsa-graph{width:100%;height:auto;display:block;overflow:visible}.home-dsa-edges path{fill:none;stroke:var(--muted);stroke-width:2px;opacity:.5}.home-dsa-node rect{fill:var(--surface);stroke:var(--line);stroke-width:1.5px;filter:drop-shadow(0 5px 8px color-mix(in srgb, var(--accent) 16.08%, transparent))}.home-dsa-label{text-align:center;height:100%;color:var(--ink);overflow-wrap:anywhere;justify-content:center;align-items:center;font-size:19px;font-weight:600;line-height:1.15;display:flex}.track-tile{box-shadow:0 5px 18px color-mix(in srgb, var(--accent) 5.1%, transparent)}@media (prefers-reduced-motion:reduce){.clean-header{transition:none}}.workspace-mobile-views{display:none}@media (width<=760px){.workspace-mobile-views{z-index:5;background:var(--bg);gap:8px;margin:0 0 12px;padding:8px 0;display:flex;position:sticky;top:0}.workspace-mobile-views button{flex:1;font-size:12px}.workspace-mobile-views button[aria-pressed=true]{background:var(--ink);color:var(--surface);border-color:var(--ink)}.reference-workspace[data-mobile-view=question] .reference-editor,.reference-workspace[data-mobile-view=code] .reference-question{display:none}.reference-workspace .reference-editor{min-height:72dvh}}.workspace-runner-state{color:var(--muted);font-size:10px}@media (width<=760px){.workspace-runner-state{grid-column:1/-1}.reference-editor .execution-actions{flex-wrap:wrap;justify-content:flex-end;max-width:210px}}.account-menu{position:relative}.account-trigger{color:var(--ink);background:0 0;border:0;align-items:center;gap:8px;padding:4px;font-size:13px;display:flex}.account-name{text-overflow:ellipsis;white-space:nowrap;max-width:120px;overflow:hidden}.user-avatar{background:var(--surface,#eef1ff);width:32px;height:32px;color:var(--accent,var(--accent));border-radius:50%;flex-shrink:0;place-items:center;display:grid;overflow:hidden}.user-avatar img{object-fit:cover;width:100%;height:100%}.user-avatar.large{width:64px;height:64px;font-size:24px}.account-popover{border:1px solid var(--line);background:var(--surface);width:244px;max-width:calc(100vw - 32px);color:var(--ink);z-index:40;border-radius:10px;padding:6px;position:absolute;top:calc(100% + 12px);right:0;box-shadow:0 8px 24px #111c3510}.account-popover a,.account-popover>button{text-align:left;width:100%;color:inherit;background:0 0;border:0;border-radius:6px;padding:10px;font-size:13px;display:block}.account-popover a:hover,.account-popover>button:hover{background:var(--surface)}.account-menu-identity{border-bottom:1px solid var(--line);overflow-wrap:anywhere;padding:10px;font-size:13px}.account-menu-identity small{color:var(--muted);margin-top:4px;display:block}.account-popover .account-signout{border-top:1px solid var(--line);border-radius:0;margin-top:5px}.account-page-tabs{border-bottom:1px solid var(--line);gap:20px;margin:20px 0 28px;font-size:13px;display:flex;overflow-x:auto}.account-page-tabs a{white-space:nowrap;color:var(--muted);padding-bottom:12px}.account-page-tabs a[aria-current=page]{color:var(--accent,var(--accent));border-bottom:2px solid}.account-setting-row,.account-data-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:18px 0;font-size:14px;display:flex}.account-setting-row button,.account-setting-row select{padding:7px 12px;font-size:13px}.google-profile{align-items:center;gap:16px;margin:28px 0;display:flex}.google-profile h2{margin:0;font-size:18px}.google-profile p{color:var(--muted);overflow-wrap:anywhere;margin:6px 0;font-size:13px}.account-filter{flex-direction:column;gap:8px;margin:20px 0;font-size:13px;display:flex}.one-tap-notice{color:var(--muted);padding:8px 20px;font-size:12px}@media (width<=600px){.account-name{max-width:70px}.account-page-tabs{gap:16px}.google-profile{align-items:flex-start}.account-data-row{overflow-wrap:anywhere;align-items:flex-start}}.dark .account-page-tabs a[aria-current=page],.dark .user-avatar{color:#a9b9ff}.one-tap-notice{background:var(--surface);border:1px solid var(--line);z-index:50;border-radius:8px;max-width:calc(100vw - 32px);position:fixed;top:90px;left:50%;transform:translate(-50%)}.practice-clean{grid-template-columns:190px minmax(0,1fr);gap:40px}.practice-clean .practice-sidebar{background:0 0;border:0;gap:4px;padding:8px 0;position:sticky;top:98px}.practice-clean .discipline-label{color:var(--muted);letter-spacing:1px;text-transform:uppercase;margin:0 12px 12px;font-size:10px}.practice-clean .practice-sidebar button{border-radius:8px;min-height:44px;transition:color .16s,background-color .16s}.practice-clean .practice-sidebar button.active{box-shadow:inset 2px 0 var(--accent)}.practice-clean .catalog-header{background:0 0;border:0;justify-content:space-between;align-items:flex-start;gap:20px;padding:0;display:flex}.practice-clean .catalog-header h1{letter-spacing:-1.2px;margin:12px 0;font-size:clamp(27px,3vw,36px);line-height:1.18}.practice-clean .catalog-header .eyebrow{margin:0}.practice-clean .catalog-header p:not(.eyebrow){color:var(--muted);font-size:14px;line-height:1.6}.practice-clean .practice-readiness,.practice-clean .catalog-count{background:color-mix(in srgb, var(--muted) 7%, transparent);color:var(--muted);white-space:nowrap;border-radius:20px;padding:6px 10px;font-size:11px}.practice-clean .practice-readiness{margin-top:3px}.practice-clean .practice-filters{gap:12px;margin:26px 0 24px}.practice-clean .practice-filters label{color:var(--muted);margin:0;font-size:12px}.practice-clean .practice-filters input,.practice-clean .practice-filters select{box-shadow:0 4px 16px color-mix(in srgb, var(--accent) 3.14%, transparent);border-radius:10px}.practice-clean .problem-group{box-shadow:0 6px 22px color-mix(in srgb, var(--accent) 3.92%, transparent);border-radius:14px;padding:20px 22px}.practice-clean .problem-group h2{font-size:17px}.practice-clean .problem-group table{margin:14px 0 0}.practice-clean table{table-layout:fixed;width:100%}.practice-clean th,.practice-clean td{overflow-wrap:anywhere;padding:14px 12px}.practice-clean .reference-catalog{margin-top:34px}.practice-clean .reference-heading{justify-content:space-between;align-items:center;gap:16px;display:flex}.practice-clean .reference-heading h2{letter-spacing:-.4px;margin:0;font-size:18px}.practice-clean .reference-catalog>p{color:var(--muted);margin:12px 0 18px;line-height:1.7}.practice-clean .topic-collection{border:1px solid var(--line);background:var(--surface);box-shadow:0 6px 22px color-mix(in srgb, var(--accent) 3.92%, transparent);border-radius:14px;overflow:hidden}.practice-clean .reference-catalog details{border:0;border-bottom:1px solid var(--line);border-radius:0;margin:0;padding:0}.practice-clean .reference-catalog details:last-child{border-bottom:0}.practice-clean .reference-catalog summary{align-items:center;gap:12px;min-height:54px;padding:16px 20px;list-style:none;transition:background-color .16s;display:flex}.practice-clean summary::-webkit-details-marker{display:none}.practice-clean summary:hover{background:color-mix(in srgb, var(--accent) 2.35%, transparent)}.practice-clean .reference-catalog summary small{float:none;font-variant-numeric:tabular-nums;margin-left:auto;font-size:11px}.practice-clean .topic-chevron{color:var(--muted);font-size:20px;line-height:1;transition:transform .16s}.practice-clean details[open] .topic-chevron{transform:rotate(90deg)}.practice-clean details[open] summary{background:color-mix(in srgb, var(--accent) 2.75%, transparent)}.practice-clean .reference-catalog table{margin:0}.practice-clean .reference-catalog th:first-child,.practice-clean .reference-catalog td:first-child{width:60%;padding-left:20px}.practice-clean th{letter-spacing:.7px;text-transform:uppercase;color:var(--muted);font-size:10px}.practice-clean tbody tr{transition:background-color .14s}.practice-clean tbody tr:hover{background:color-mix(in srgb, var(--accent) 1.57%, transparent)}.practice-clean table a{color:var(--ink);font-weight:500}.practice-clean table a:hover{color:var(--accent)}.practice-clean .difficulty{background:color-mix(in srgb, var(--muted) 6%, transparent);color:var(--muted);white-space:normal;border-radius:6px;font-size:11px}@media (width<=900px){.practice-clean{grid-template-columns:1fr;gap:26px}.practice-clean .practice-sidebar{flex-direction:row;padding:0 0 6px;position:static;overflow-x:auto}.practice-clean .discipline-label{display:none}.practice-clean .practice-sidebar button{white-space:nowrap;flex:none}}@media (width<=480px){.practice-clean .catalog-header{flex-direction:column;gap:12px}.practice-clean .practice-filters{flex-wrap:wrap}.practice-clean .practice-filters label:first-child{flex-basis:100%}.practice-clean .practice-filters label:last-child{width:100%}.practice-clean .problem-group{padding:16px 12px}.practice-clean th,.practice-clean td{padding:12px 6px;font-size:11px}.practice-clean .reference-catalog th:first-child,.practice-clean .reference-catalog td:first-child{width:52%;padding-left:12px}.practice-clean .reference-heading{align-items:flex-start}.practice-clean .reference-heading h2{font-size:17px}.practice-clean .reference-catalog summary{padding:14px}}@media (prefers-reduced-motion:reduce){.practice-clean .topic-chevron,.practice-clean .practice-sidebar button,.practice-clean .reference-catalog summary,.practice-clean tbody tr{transition:none}}@media (width<=480px){.practice-clean th{letter-spacing:0;white-space:nowrap;overflow-wrap:normal;font-size:9px}}.account-chevron{transform-origin:50%;flex-shrink:0;transition:transform .18s cubic-bezier(.22,1,.36,1);display:block}.account-trigger[aria-expanded=true] .account-chevron{transform:rotate(180deg)}.account-popover{border-radius:8px;animation:.18s cubic-bezier(.22,1,.36,1) community-menu-enter;box-shadow:0 8px 24px #111c3515}@media (prefers-reduced-motion:reduce){.account-chevron{transition:none}.account-popover{animation:none}}.app:not(:has(.reference-workspace,.coding-workspace))>main{max-width:1144px;padding:36px 32px 42px}@media (width<=960px){.app:not(:has(.reference-workspace,.coding-workspace))>main{padding:24px 24px 36px}}@media (width<=700px){.app:not(:has(.reference-workspace,.coding-workspace))>main{padding:18px 18px 36px}}.workspace-topbar .account-menu{margin-left:auto}.clean-header,.site-footer{max-width:1080px}@media (width>=961px){.site-footer{width:calc(100% - 48px)}}@media (width>=1101px){.clean-header{width:calc(100% - 48px)}}@media (width<=1100px){.site-header.clean-header,.site-header.clean-header.is-compact{width:100%;max-width:none;min-height:72px;padding:calc(14px + env(safe-area-inset-top,0px)) 20px 14px;border:0;border-bottom:1px solid var(--line);background:var(--surface);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;border-radius:0;flex-wrap:nowrap;gap:16px;margin:0;transition:none;top:0;left:0;transform:none}.clean-header .primary-nav,.clean-header .desktop-setting{display:none}.site-header.clean-header[data-menu-open=true]{z-index:70}.clean-header .header-tools{gap:10px}.clean-header .menu-toggle{min-width:44px;min-height:44px;color:var(--ink);text-transform:uppercase;justify-content:flex-end;align-items:center;gap:12px;padding:0 6px;font-size:12px;display:inline-flex}.clean-header .mobile-nav{display:block}.clean-header .account-trigger{min-width:44px;min-height:44px;padding:6px}.clean-header .account-chevron{display:none}.clean-header .account-name{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}}@media (width<=480px){.site-header.clean-header,.site-header.clean-header.is-compact{gap:12px;padding-inline:16px}.clean-header .mobile-nav{padding-inline:16px}}.reference-workspace .workspace-icon{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:16px;height:16px}.reference-workspace button{border-radius:9px;gap:7px;transition:background-color .16s,border-color .16s,box-shadow .16s,transform .16s cubic-bezier(.2,.8,.2,1)}.reference-workspace button:hover:not(:disabled){background-color:#f0f3ff;border-color:#b4c1ed;transform:translateY(-1px);box-shadow:0 2px 5px #111c3508}.reference-workspace button:active:not(:disabled){box-shadow:none;transform:translateY(1px)}.reference-workspace button:disabled{cursor:default;opacity:.48;box-shadow:none}.reference-workspace button:focus-visible,.reference-workspace a:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.reference-workspace .workspace-topbar>a{border-radius:8px;gap:6px;padding:6px}.reference-workspace .workspace-topbar>a:hover{background:color-mix(in srgb, var(--accent) 4.31%, transparent);text-decoration:none}.reference-workspace .workspace-tabs button{box-shadow:none;border-radius:0;position:relative;transform:none}.reference-workspace .workspace-tabs button[aria-selected=true]:after{content:"";background:var(--accent);border-radius:3px;height:2px;animation:.18s ease-out workspace-tab-enter;position:absolute;bottom:0;left:12px;right:12px}.reference-workspace .solution-tabs button{min-height:36px;font-size:12px}.reference-workspace .execution-actions .primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);box-shadow:0 3px 8px color-mix(in srgb, var(--accent) 14.12%, transparent)}.reference-workspace .execution-actions .primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover);box-shadow:0 4px 10px color-mix(in srgb, var(--accent) 18.82%, transparent)}.reference-workspace .bookmark-control button{min-width:36px;min-height:36px;color:var(--ink)}.reference-workspace .bookmark-control button[aria-pressed=true]{background:color-mix(in srgb, var(--accent) 5.1%, transparent);color:var(--accent)}.reference-workspace .bookmark-control button[aria-pressed=true] svg{fill:color-mix(in srgb, var(--accent) 13.33%, transparent);animation:.22s ease-out workspace-star-enter}.reference-workspace .workspace-console>button .icon-chevron{transition:transform .16s}.reference-workspace .workspace-console>button[aria-expanded=true] .icon-chevron{transform:rotate(180deg)}.dark .reference-workspace button:hover:not(:disabled){background-color:#263655;border-color:#6377a1}.dark .reference-workspace .bookmark-control button[aria-pressed=true]{color:#b4c1ff;background:#263655}.dark .reference-workspace button:focus-visible,.dark .reference-workspace a:focus-visible{outline-color:var(--accent)}@keyframes workspace-tab-enter{0%{opacity:0;transform:scaleX(.7)}to{opacity:1;transform:scaleX(1)}}@keyframes workspace-star-enter{0%{transform:scale(.88)}60%{transform:scale(1.14)}to{transform:scale(1)}}@media (prefers-reduced-motion:reduce){.reference-workspace button,.reference-workspace svg,.reference-workspace button:after{transition:none!important;animation:none!important}.reference-workspace button:hover:not(:disabled),.reference-workspace button:active:not(:disabled){transform:none}}.reference-workspace .workspace-tabs button[aria-selected=true]{border-bottom-color:#0000}.dark .reference-workspace .execution-actions .primary:hover:not(:disabled){background-color:var(--accent-hover);border-color:var(--accent-hover)}.reference-workspace .workspace-topbar>a,.reference-workspace .editor-toolbar>button{min-width:36px;min-height:36px}.reference-workspace .workspace-tabs button:hover:not(:disabled),.reference-workspace .workspace-tabs button:active:not(:disabled){box-shadow:none;transform:none}@media (width<=600px){.reference-workspace .workspace-topbar{grid-template-columns:auto minmax(0,1fr) repeat(3,36px);gap:8px;display:grid}.reference-workspace .workspace-topbar strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.reference-workspace .workspace-topbar>button,.reference-workspace .workspace-topbar>.account-menu{grid-column:2/-1;justify-self:end}.reference-workspace .workspace-topbar>p{grid-column:1/-1}}.reference-workspace .editor-toolbar{flex-wrap:wrap;gap:8px;padding:8px 12px}.reference-workspace .workspace-save-state{flex:1;min-width:0}.reference-workspace .workspace-editor-actions{flex:none;align-items:center;gap:3px;margin-left:auto;display:flex}.reference-workspace .workspace-editor-actions button{flex:none;width:34px;min-width:34px;height:34px;min-height:34px;margin:0;padding:8px;position:relative}.reference-workspace .workspace-icon-control:after{content:attr(data-tooltip);z-index:20;white-space:nowrap;pointer-events:none;background:var(--ink);color:var(--surface);opacity:0;visibility:hidden;border-radius:6px;padding:7px 9px;font-size:11px;font-weight:500;transition:opacity .12s;position:absolute;top:calc(100% + 7px);right:0}.reference-workspace .workspace-icon-control:hover:after,.reference-workspace .workspace-icon-control:focus-visible:after{opacity:1;visibility:visible}.reference-workspace .workspace-mobile-views button[aria-pressed=true]:hover:not(:disabled){background-color:var(--accent);color:var(--accent-ink)}.dark .reference-workspace .workspace-mobile-views button[aria-pressed=true]:hover:not(:disabled){color:#111c35;background-color:#eef2ff}@media (width<=600px){.reference-workspace .editor-toolbar .workspace-save-state{font-size:10px}.reference-workspace .workspace-editor-actions{margin-left:auto}}.reference-workspace .workspace-save-state{min-width:140px}.reference-workspace .editor-toolbar{position:relative}.reference-workspace .workspace-cloud-draft.compact{border:0;flex:none;align-items:center;gap:3px;min-height:0;margin:0;padding:0;display:flex;position:static}.reference-workspace .workspace-sync-feedback{z-index:12;background:var(--surface);border:1px solid var(--line);color:var(--ink);overflow-wrap:anywhere;border-radius:8px;padding:10px 12px;font-size:12px;position:absolute;top:calc(100% + 4px);left:12px;right:12px;box-shadow:0 4px 16px #111c3512}.reference-workspace .workspace-tabs{padding-right:92px;position:relative}.reference-workspace .workspace-difficulty{white-space:nowrap;border-radius:6px;padding:4px 8px;font-size:11px;font-weight:600;position:absolute;top:50%;right:14px;transform:translateY(-50%)}.reference-workspace .difficulty[data-difficulty=Easy]{color:#17633d;background:#ecf8f1;border-color:#c4e7d3}.reference-workspace .difficulty[data-difficulty=Medium]{color:#805200;background:#fff5df;border-color:#eed8a8}.reference-workspace .difficulty[data-difficulty=Hard]{color:#ac283d;background:#fff0f1;border-color:#f1cbd1}.dark .reference-workspace .difficulty[data-difficulty=Easy]{color:#9fe1bc;background:#193d30;border-color:#30624b}.dark .reference-workspace .difficulty[data-difficulty=Medium]{color:#f4d087;background:#43361c;border-color:#6d5730}.dark .reference-workspace .difficulty[data-difficulty=Hard]{color:#f5aabd;background:#492832;border-color:#744150}@media (width<=600px){.reference-workspace .workspace-tabs{gap:4px;padding-right:78px}.reference-workspace .workspace-tabs button{padding-left:8px;padding-right:8px}.reference-workspace .workspace-difficulty{right:10px}}.dsa-summary #dsa-set{border:1px solid var(--line);background:var(--surface);width:100%;min-width:0;min-height:46px;color:var(--ink);border-radius:12px;margin:20px 0 0;padding:11px 14px;font-size:14px;line-height:1.4;transition:border-color .16s,box-shadow .16s;display:block;box-shadow:0 2px 5px #111c3504}.dsa-summary #dsa-set:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-color:var(--accent)}.dsa-summary .dsa-enroll-button{border:1px solid var(--accent);background:var(--accent);width:100%;min-height:44px;color:var(--accent-ink);box-shadow:0 4px 12px color-mix(in srgb, var(--accent) 12.55%, transparent);border-radius:12px;gap:8px;margin-top:12px;padding:11px 16px;font-size:14px;font-weight:600;transition:background-color .16s,transform .16s,box-shadow .16s;display:flex}.dsa-summary .dsa-enroll-button:hover{background:var(--accent-hover);box-shadow:0 6px 16px color-mix(in srgb, var(--accent) 16.08%, transparent)}.dsa-summary .dsa-enroll-button:active{transform:translateY(1px)}.dsa-summary .dsa-enroll-button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}@media (prefers-reduced-motion:reduce){.dsa-summary #dsa-set,.dsa-summary .dsa-enroll-button{transition:none}.dsa-summary .dsa-enroll-button:active{transform:none}}.satsunic-toast{--toast-accent:var(--accent);--toast-border:#c7d2fe;--toast-soft:#f0f3ff;z-index:11000;box-sizing:border-box;border:1px solid var(--toast-border);color:#1c2628;background:#fff;border-radius:14px;align-items:flex-start;gap:12px;width:360px;max-width:calc(100vw - 32px);padding:16px 14px 14px 16px;font:13px/1.5 Inter,ui-sans-serif,system-ui,sans-serif;animation:.2s cubic-bezier(.2,.8,.2,1) both satsunic-toast-enter;display:flex;position:fixed;top:20px;right:20px;overflow:hidden;box-shadow:0 4px 8px #111c3505,0 14px 36px #111c3514}.satsunic-toast[data-kind=info]{--toast-accent:var(--accent);--toast-border:#c7d2fe}.satsunic-toast[data-kind=success]{--toast-accent:#21835b;--toast-border:#b9ddcc;--toast-soft:#effaf3}.satsunic-toast[data-kind=error]{--toast-accent:#c8444d;--toast-border:#ecc0c4;--toast-soft:#fff1f2}.satsunic-toast[data-kind=warning]{--toast-accent:#a87520;--toast-border:#e8d3ae;--toast-soft:#fff8e8}.satsunic-toast-icon{border:1px solid var(--toast-border);background:var(--toast-soft);width:34px;height:34px;color:var(--toast-accent);border-radius:10px;flex-shrink:0;place-items:center;display:grid}.satsunic-toast-content{flex:1;min-width:0;padding-top:1px}.satsunic-toast-content p{overflow-wrap:anywhere;margin:0;font-size:13px;font-weight:500;line-height:1.55}.satsunic-toast-controls{flex-shrink:0;align-items:center;gap:3px;display:flex}.satsunic-toast-time{text-align:center;color:#5f6b74;font-variant-numeric:tabular-nums;width:18px;font-size:9px;line-height:1}.satsunic-toast .satsunic-toast-close{color:#73808b;cursor:pointer;background:0 0;border:0;border-radius:7px;flex-shrink:0;place-items:center;width:28px;height:28px;margin:-3px -3px 0 0;padding:0;transition:background .12s,color .12s;display:grid}.satsunic-toast .satsunic-toast-close:hover{color:#1c2628;background:#f1f3f7}.satsunic-toast .satsunic-toast-close:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.satsunic-toast-track{background:#edf0f7;height:2px;position:absolute;bottom:0;left:0;right:0}.satsunic-toast-track>span{background:var(--toast-accent);transform-origin:0;width:100%;height:100%;transition:transform .1s linear;display:block}.satsunic-toast[data-paused=true] .satsunic-toast-track>span{transition:none}@keyframes satsunic-toast-enter{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@media (width<=640px){.satsunic-toast{top:12px;right:16px}}@media (prefers-reduced-motion:reduce){.satsunic-toast{animation:none}.satsunic-toast-track>span,.satsunic-toast .satsunic-toast-close{transition:none}}.satsunic-toast-actions{flex-wrap:wrap;gap:12px;margin-top:8px;display:flex}.satsunic-toast .satsunic-toast-actions button{color:var(--toast-accent);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:600}.satsunic-toast .satsunic-toast-actions button:hover{text-decoration:underline}.satsunic-toast .satsunic-toast-actions button:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}body[data-theme=dark] .satsunic-toast{color:#e8edf8;background:#1c2941}body[data-theme=dark] .satsunic-toast .satsunic-toast-close{color:#b6c2da}body[data-theme=dark] .satsunic-toast .satsunic-toast-close:hover{color:#fff;background:#2b3a55}body[data-theme=dark] .satsunic-toast-time{color:#b6c2da}.page-transition{min-width:0;animation:.15s ease-out both page-enter}@keyframes page-enter{0%{opacity:.65}to{opacity:1}}@media (prefers-reduced-motion:reduce){.page-transition{animation:none}}.page-transition[data-workspace]{animation-name:page-fade}@keyframes page-fade{0%{opacity:.65}to{opacity:1}}:root{--fc-ink:#0c1517;--fc-muted:#52685f;--fc-line:#d4e0da;--fc-surface:#fff;--fc-bg:#f2f7f5;--fc-accent:#08765d;--fc-accent-hover:#065e4b;--fc-accent-ink:#fff;--fc-tint:#e3f3ec;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}body[data-theme=dark],.app.dark{--fc-ink:#f2f7f5;--fc-muted:#a8bdb5;--fc-line:#2b403b;--fc-surface:#111e20;--fc-bg:#0c1517;--fc-accent:#65e7c2;--fc-accent-hover:#87edcf;--fc-accent-ink:#0c1517;--fc-tint:#142e28;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root:has(body[data-theme=dark]){--fc-ink:#f2f7f5;--fc-muted:#a8bdb5;--fc-line:#2b403b;--fc-surface:#111e20;--fc-bg:#0c1517;--fc-accent:#65e7c2;--fc-accent-hover:#87edcf;--fc-accent-ink:#0c1517;--fc-tint:#142e28;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root,body,.app.app{--ink:var(--fc-ink);--muted:var(--fc-muted);--line:var(--fc-line);--surface:var(--fc-surface);--bg:var(--fc-bg);--accent:var(--fc-accent);--accent-hover:var(--fc-accent-hover);--accent-ink:var(--fc-accent-ink);--blue:var(--fc-accent);--tint:var(--fc-tint);color:var(--ink);background-color:var(--bg)}.feedcode-logo{flex:none;width:140px;height:30px;display:block}.feedcode-logo-dark,.dark .feedcode-logo-light{display:none}.dark .feedcode-logo-dark{display:block}.feedcode-sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.brand,.studio-brand{flex:none;align-items:center}.hero h1{letter-spacing:-.045em;font-weight:400}.dark .practice-sidebar button.active,.dark .track-option input:checked+.track-tile,.dark .track-option input:checked+.track-tile svg,.dark .account-page-tabs a[aria-current=page],.dark .user-avatar,.dark .reference-workspace .bookmark-control button[aria-pressed=true]{color:var(--accent)}.dark .practice-sidebar button.active,.dark .track-option input:checked+.track-tile,.dark .reference-workspace .bookmark-control button[aria-pressed=true]{background:var(--tint)}.dark .dsa-topic{color:var(--accent);background:var(--tint);border-color:var(--line)}.dark .dsa-topic:hover,.dark .reference-workspace button:hover:not(:disabled){background-color:var(--tint);border-color:var(--accent)}.dark .reference-workspace .workspace-mobile-views button[aria-pressed=true]:hover:not(:disabled){background-color:var(--accent);color:var(--accent-ink)}.satsunic-toast{background:var(--surface);color:var(--ink)}.satsunic-toast[data-kind=info]{--toast-accent:#08765d;--toast-border:#b9ddcc;--toast-soft:#effaf3}body[data-theme=dark] .satsunic-toast{background:var(--surface);color:var(--ink)}body[data-theme=dark] .satsunic-toast[data-kind=info]{--toast-accent:var(--accent);--toast-border:var(--line);--toast-soft:var(--tint)}body[data-theme=dark] .satsunic-toast .satsunic-toast-close,body[data-theme=dark] .satsunic-toast-time{color:var(--muted)}body[data-theme=dark] .satsunic-toast .satsunic-toast-close:hover{background:var(--tint);color:var(--ink)}button.google-signin{box-sizing:border-box;color:#1f1f1f;text-align:center;max-width:100%;min-height:46px;box-shadow:none;background:#fff;border:1px solid #747775;border-radius:8px;justify-content:center;align-items:center;gap:12px;padding:10px 16px;font-family:Roboto,Arial,sans-serif;font-size:14px;font-weight:500;line-height:1.4;transition:background-color .15s ease-out,border-color .15s ease-out;display:inline-flex;transform:none}button.google-signin img{object-fit:contain;flex:0 0 20px;width:20px;height:20px}button.google-signin:hover{color:#1f1f1f;background:#f2f2f2;border-color:#5f6368;transform:none}button.google-signin:active{background:#e8e8e8;transform:none}button.google-signin:focus-visible{outline:3px solid var(--accent);outline-offset:3px}@media (prefers-reduced-motion:reduce){button.google-signin{transition:none}}.analytics-preferences{--consent-bg:#111e20;--consent-ink:#f2f7f5;--consent-muted:#a8bdb5;--consent-line:#2b403b;--consent-mint:#65e7c2;font-size:.8125rem}.analytics-choice,.analytics-preferences>[role=status]{z-index:100;bottom:max(1rem, env(safe-area-inset-bottom));left:max(1rem, env(safe-area-inset-left));border:1px solid var(--consent-line);background:var(--consent-bg);width:min(25rem,100vw - 2rem);max-height:calc(100dvh - 2rem);color:var(--consent-ink);border-radius:.625rem;padding:1rem;position:fixed;overflow:auto;box-shadow:0 12px 36px #0003}.analytics-choice h2{letter-spacing:-.01em;margin:0 0 .625rem;font-size:.9375rem;font-weight:600;line-height:1.4}.analytics-choice h2:before{content:"";background:var(--consent-mint);vertical-align:middle;border-radius:50%;width:.375rem;height:.375rem;margin-right:.5rem;display:inline-block}.analytics-choice p{color:var(--consent-muted);margin:.5rem 0;line-height:1.55}.analytics-actions{flex-wrap:wrap;gap:.5rem;margin-top:.875rem;display:flex}.analytics-actions button{border:1px solid var(--consent-line);background:var(--consent-bg);min-height:44px;color:var(--consent-ink);font-size:inherit;border-radius:.375rem;flex:9rem;gap:.5rem;padding:.625rem .75rem;font-weight:500;line-height:1.4}.analytics-actions button:hover{border-color:var(--consent-mint);color:var(--consent-mint);background:#142e28}.analytics-actions button:focus-visible{outline:2px solid var(--consent-mint);outline-offset:3px}.analytics-preferences>[role=status]{color:var(--consent-muted);margin:0;line-height:1.55}
