.modal-btn.activity-modal-size-control{display:inline-flex;align-items:center;justify-content:center;min-width:0;min-height:36px;padding:7px 12px;font:inherit;font-size:.82rem;line-height:1.3;white-space:normal;text-align:center}.activity-modal-size-control[aria-pressed=true]{color:var(--pine-900);background:var(--pine-100);border-color:var(--pine-border)}.modal.activity-modal-expanded{box-sizing:border-box;width:100%;max-width:none;height:calc(100vh - 32px);height:calc(100dvh - 32px);max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);min-height:0;overflow:hidden;background-color:var(--bg);background-image:linear-gradient(var(--surface),var(--surface))}.modal.activity-modal-expanded>.modal-header{flex:0 0 auto}.modal.activity-modal-expanded>.modal-body{flex:1 1 auto;min-width:0;min-height:0;overscroll-behavior:contain}.workshop-stage-dialog.activity-modal-expanded{width:calc(100vw - 2rem)}@media(max-width:600px){.modal-btn.activity-modal-size-control{min-height:44px}.modal.activity-modal-expanded>.modal-header{padding:12px 14px}.modal.activity-modal-expanded>.modal-body{padding:14px}.workshop-stage-dialog.activity-modal-expanded{width:100%}}.documentation{max-width:68rem;margin:auto;padding:1.5rem clamp(1rem,4vw,2.5rem) 3rem;color:var(--gray-900);font-size:1rem;line-height:1.75}.documentation-topbar{display:flex;flex-wrap:wrap;gap:.75rem 1.5rem;padding-bottom:1.4rem;border-bottom:1px solid var(--line);margin-bottom:2rem;font-size:.86rem}.documentation-topbar a,.documentation-action{color:var(--pine-900);text-decoration:underline;text-underline-offset:4px;font-weight:600}.documentation-heading{margin-bottom:1.75rem}.documentation h1,.documentation h2,.documentation h3{font-family:var(--font-display);line-height:1.3;text-wrap:balance}.documentation h1{font-size:clamp(1.9rem,4vw,2.7rem);letter-spacing:-.035em;margin:.5rem 0 .75rem}.documentation h2{font-size:clamp(1.4rem,3vw,1.85rem);letter-spacing:-.025em;margin:0 0 1.1rem}.documentation h3{font-size:1.2rem}.documentation-eyebrow{color:var(--pine-900);font-size:.75rem;font-weight:700;letter-spacing:.08em;margin:0}.documentation-subtitle{color:var(--gray-600);font-size:1.05rem;margin:0;max-width:75ch}.documentation-contents{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.45rem 1rem;align-items:center;padding:1.2rem 1.4rem;background:var(--surface);border:1px solid var(--line);border-radius:12px;margin-bottom:2rem}.documentation-contents label{grid-column:1 / -1;font-size:.8rem;color:var(--gray-700);font-weight:650}.documentation-contents select{width:100%;min-width:0;margin:0;font:inherit;font-size:.92rem}.documentation-contents p{margin:0;color:var(--gray-600);font-size:.78rem}.documentation-section{min-width:0}.documentation-section>p,.documentation-section>ul{max-width:78ch}.documentation-section>p{margin:0 0 1.1rem}.documentation-section>ul{padding-inline-start:1.5rem;margin-block:1rem 1.5rem}.documentation-section li{padding-inline-start:.2rem;margin-block:.5rem}.documentation-section h2{scroll-margin-block-start:7rem}.documentation-pagination{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;padding-top:1.5rem;margin-top:2rem;border-top:1px solid var(--line)}.documentation-pagination .btn-secondary{width:auto;min-width:160px;margin:0}.documentation-pagination>p{margin:0;margin-inline-start:auto;color:var(--gray-600);font-size:.8rem}.documentation .btn-secondary:disabled{color:var(--gray-500);cursor:default;background:var(--surface-alt)}.documentation-empty{max-width:48rem}.documentation-empty .btn-secondary{width:auto;min-width:140px}.documentation-library{padding:0;list-style:none;display:grid;gap:1rem}.documentation-library li{border:1px solid var(--line);border-radius:10px;background:var(--surface);padding:1rem 1.2rem}.documentation-library a{color:var(--pine-900);font-weight:600}.documentation-library p{color:var(--gray-600);font-size:.88rem;margin:.4rem 0 0}.documentation-table{overflow:auto;margin:1.3rem 0;border:1px solid var(--line-strong);border-radius:8px}.documentation table{border-collapse:collapse;width:100%;min-width:32rem;font-size:.9rem;line-height:1.65}.documentation th,.documentation td{border:1px solid var(--line);padding:.75rem;vertical-align:top;text-align:start}.documentation th{background:var(--surface-alt);font-weight:650}.documentation a:focus-visible,.documentation button:focus-visible,.documentation select:focus-visible,.documentation-table:focus-visible,.documentation h2:focus{outline:3px solid var(--pine-600);outline-offset:4px}.documentation-skip{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.documentation-skip:focus{position:static;display:inline-block;width:auto;height:auto;padding:.4rem .7rem;margin-bottom:1rem;overflow:visible;clip-path:none;white-space:normal;color:var(--pine-900);background:var(--surface)}@media(max-width:600px){.documentation{padding-top:1.1rem;font-size:.95rem}.documentation-topbar{margin-bottom:1.5rem;padding-bottom:1rem}.documentation-contents{grid-template-columns:minmax(0,1fr);padding:1rem}.documentation-contents p{margin-top:.15rem}.documentation-pagination .btn-secondary{min-width:0;flex:1}.documentation-pagination>p{flex-basis:100%;margin:0;text-align:center}.documentation table{font-size:.85rem}}@media print{.documentation nav,.documentation-skip{display:none}.documentation{font-size:11pt;max-width:none;padding:0}.documentation-table{overflow:visible}.documentation table{min-width:0}.documentation tr{break-inside:avoid}}.activity-focus-dialog{box-sizing:border-box;position:fixed;top:0;right:0;bottom:0;left:0;width:min(1080px,calc(100vw - 3rem));height:min(900px,calc(100vh - 3rem));height:min(900px,calc(100dvh - 3rem));max-width:100vw;max-height:100vh;max-height:100dvh;margin:auto;padding:0;overflow:hidden;border:1px solid var(--line-strong);border-radius:14px;background-color:var(--bg);background-image:linear-gradient(var(--surface),var(--surface));color:var(--gray-900);font:inherit;text-align:start;box-shadow:var(--shadow-modal)}.activity-focus-dialog *,.activity-focus-dialog *:before,.activity-focus-dialog *:after{box-sizing:border-box}.activity-focus-dialog:not([open]){display:none}.activity-focus-dialog[open]{display:flex;flex-direction:column}.activity-focus-dialog::backdrop{background:var(--overlay)}.activity-focus-dialog.activity-modal-expanded{width:calc(100vw - 1rem);height:calc(100vh - 1rem);height:calc(100dvh - 1rem)}.activity-focus-header{flex:0 0 auto;display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:18px 24px;border-bottom:1px solid var(--line)}.activity-focus-title{flex:1 1 0;min-width:0}.activity-focus-title>p{margin:0 0 6px;color:var(--pine-900);font-size:.82rem}.activity-focus-dialog .activity-focus-title h2{margin:0;font-size:clamp(1.15rem,2vw,1.5rem);line-height:1.35;overflow-wrap:anywhere}.activity-focus-controls{display:flex;flex:0 0 auto;flex-wrap:wrap;justify-content:flex-end;gap:8px}.activity-focus-dialog .activity-focus-controls button{width:auto;min-height:44px;margin:0;padding:8px 12px;white-space:nowrap}.activity-focus-body{flex:1 1 auto;min-height:0;min-width:0;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding:22px 24px;-webkit-overflow-scrolling:touch}.activity-focus-dialog .btn-primary,.activity-focus-dialog .btn-secondary{width:auto;max-width:100%;margin:8px 0;padding:10px 16px;white-space:normal}.activity-focus-body p,.activity-focus-body li{overflow-wrap:anywhere}.activity-focus-body .text-input{box-sizing:border-box;max-width:100%;min-width:0}.activity-focus-notices{flex:0 0 auto;max-height:24vh;overflow:auto;padding:0 24px}.activity-focus-notices p{margin:10px 0}.activity-focus-footer{flex:0 0 auto;max-height:30vh;overflow:auto;border-top:1px solid var(--line);padding:12px 24px}.activity-workspace-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}.activity-workspace-tabs button[aria-pressed=true]{background:var(--pine-100);color:var(--pine-900);border-color:var(--pine-border)}.activity-workspace-card{padding:16px 18px;margin:14px 0;border:1px solid var(--line);border-radius:10px;background:var(--surface)}.activity-workspace-card h3,.activity-workspace-card h4{margin:0 0 8px}.activity-workspace-card>p{margin:8px 0}.activity-draft-notice{color:var(--pine-900);font-size:.85rem}@media(max-width:600px){.activity-focus-dialog,.activity-focus-dialog.activity-modal-expanded{width:100%;height:100vh;height:100dvh;margin:0;border:0;border-radius:0}.activity-focus-header{flex-wrap:wrap;gap:10px;padding:max(12px,env(safe-area-inset-top)) 14px 12px}.activity-focus-title{flex-basis:100%}.activity-focus-controls{width:100%}.activity-focus-dialog .activity-focus-controls button{padding:6px 10px}.activity-focus-body{padding:14px 12px max(16px,env(safe-area-inset-bottom))}.activity-focus-dialog .text-input{font-size:16px}.activity-focus-notices{padding:0 14px}.activity-focus-footer{padding:10px 14px max(12px,env(safe-area-inset-bottom))}}@media(max-height:500px){.activity-focus-dialog,.activity-focus-dialog.activity-modal-expanded{height:100vh;height:100dvh}.activity-focus-header{padding:8px 14px;gap:8px}.activity-focus-dialog .activity-focus-title h2{font-size:1rem}.activity-focus-title>p{margin-bottom:2px;font-size:.7rem}.activity-focus-controls{gap:5px}.activity-focus-body{padding:12px 14px}}.focus-page{min-height:100vh}.focus-topbar{max-width:1160px;margin:auto;padding:1rem 1.5rem;display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.focus-topbar>a{font-size:1.3rem;font-weight:750}.focus-topbar nav{margin-inline-start:auto;display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.focus-main{max-width:1040px;margin:auto;padding:1rem 1.5rem 3rem}.focus-intro{max-width:820px;padding:2.5rem 0 2rem}.focus-eyebrow{font-weight:700;letter-spacing:.04em}.focus-intro h1{font-size:clamp(2rem,4.4vw,3.4rem);line-height:1.12;margin:1rem 0;text-wrap:balance}.focus-intro h1 span{display:block;opacity:.7}.focus-intro p{line-height:1.65}.focus-days{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin-bottom:1.5rem}.focus-days button,.focus-starters button{color:inherit;background:transparent;border:1px solid currentColor;border-radius:.8rem;padding:1rem;text-align:start;cursor:pointer;font:inherit}.focus-days button[aria-pressed=true]{outline:2px solid currentColor;outline-offset:2px}.focus-days strong,.focus-days span{display:block}.focus-days span{margin-top:.5rem;font-size:.9rem;line-height:1.5}.focus-stages{display:flex;flex-wrap:wrap;gap:.5rem;margin:1.5rem 0}.focus-stages button{display:flex;align-items:center;gap:.5rem;color:inherit;background:transparent;border:1px solid currentColor;border-radius:2rem;padding:.6rem .8rem;cursor:pointer;font:inherit;font-size:.85rem}.focus-stages button[aria-current=step]{font-weight:750;outline:2px solid currentColor;outline-offset:2px}.focus-stages button:disabled{opacity:.4;cursor:default}.focus-workspace{padding:clamp(1rem,3vw,2rem)}.focus-workspace h2{margin-top:0}.focus-workspace label:not(.focus-check),.focus-workspace legend{font-weight:650}.focus-workspace textarea{display:block;width:100%;box-sizing:border-box;margin:.6rem 0 1rem;resize:vertical;font:inherit}.focus-muted{opacity:.75;font-size:.9rem;line-height:1.6}.focus-modes{border:0;padding:0;margin:1.5rem 0;display:grid;gap:.75rem}.focus-modes label{display:flex;align-items:start;gap:.7rem;padding:.9rem;border:1px solid currentColor;border-radius:.7rem;cursor:pointer}.focus-modes small{display:block;margin-top:.3rem;font-weight:400;line-height:1.5}.focus-starters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin-bottom:1rem}.focus-example,.focus-disclosure{border-inline-start:3px solid currentColor;padding:1rem;margin:1.5rem 0;background:color-mix(in srgb,currentColor 4%,transparent);line-height:1.6}.focus-check{display:flex;align-items:start;gap:.7rem;margin:1rem 0;line-height:1.6}.focus-check input,.focus-modes input{margin-top:.3rem;flex-shrink:0}.focus-actions{display:flex;gap:.75rem;margin-top:2rem;padding-top:1rem;border-top:1px solid currentColor}.focus-entry-card{display:block;padding:1.25rem;margin:1.5rem 0;border:1px solid currentColor;border-radius:1rem;color:inherit;text-decoration:none}.focus-entry-card strong,.focus-entry-card span{display:block}.focus-entry-card span{margin-top:.5rem;line-height:1.5}@media(max-width:640px){.focus-main,.focus-topbar{padding-inline:1rem}.focus-days,.focus-starters{grid-template-columns:1fr}.focus-topbar nav{margin-inline-start:0;gap:.75rem}.focus-intro{padding-top:1rem}}.focus-objectives{margin:1.5rem 0}.focus-objectives summary{cursor:pointer;font-weight:650;line-height:1.6}.focus-objective{padding:.8rem 0;border-bottom:1px solid var(--line)}.focus-objective dl{display:grid;gap:.75rem;margin:1rem 0}.focus-objective dl>div{display:grid;grid-template-columns:minmax(100px,1fr) 3fr;gap:1rem}.focus-objective dt{font-weight:650}.focus-objective dd{margin:0;line-height:1.65;overflow-wrap:anywhere}@media(max-width:640px){.focus-objective dl>div{grid-template-columns:1fr;gap:.25rem}}.interview-report{margin:20px 0;padding:18px;border:1px solid var(--border, #dce5e4);border-radius:12px}.interview-report>summary{font-weight:700;cursor:pointer}.interview-report h3{margin-top:22px;color:var(--accent, #17695d)}.interview-report h4{margin-top:18px}.interview-report section{margin:14px 0;padding:12px;border:1px solid var(--border, #dce5e4);border-radius:8px}.interview-report label{display:block;margin:12px 0 5px;font-weight:600}.interview-report select{width:100%;max-width:100%}.interview-report details{margin:10px 0}.interview-report li{margin-bottom:10px;overflow-wrap:anywhere}.interview-report table{width:100%;min-width:460px;border-collapse:collapse}.interview-report th,.interview-report td{padding:10px;text-align:start;vertical-align:top;border:1px solid var(--border, #dce5e4)}.interview-report th{font-weight:700}@media(max-width:480px){.interview-report{padding:12px}.interview-report section{padding:9px}}.interview-option-card{border:1px solid var(--border, #dce5e4);border-radius:10px;overflow:hidden}.interview-option-card.selected{border-color:var(--accent, #17695d)}.interview-option-card>.tutor-option{width:100%;border:0;border-radius:0}.interview-reasons{border:0;margin:0;padding:10px 16px 16px;min-width:0}.interview-reasons legend{font-size:.85rem;color:var(--accent, #17695d);padding:4px 0}.interview-reasons label{display:flex;gap:10px;align-items:flex-start;margin-top:10px;font-weight:400;cursor:pointer}.interview-reasons input[type=checkbox]{flex:0 0 17px;width:17px;height:17px;margin-top:3px}.interview-reasons span{overflow-wrap:anywhere}.interview-answer-reasons{display:block;margin-top:8px;font-size:.9em}.interview-answer-reasons>span{display:block;margin-top:5px}.interview-problem-tabs{display:flex;gap:8px;overflow-x:auto;max-width:100%;padding:8px 0 12px;margin-bottom:14px;border-bottom:1px solid var(--border, #dce5e4)}.interview-problem-tabs [role=tab]{flex:0 0 auto;padding:9px 13px;border:1px solid var(--border, #dce5e4);border-radius:8px;background:transparent;color:inherit;white-space:nowrap;cursor:pointer}.interview-problem-tabs [aria-selected=true]{border-color:var(--accent, #17695d);background:var(--accent, #17695d);color:#fff;font-weight:700}.interview-problem-tabs [role=tab]:focus-visible{outline:2px solid var(--accent, #17695d);outline-offset:2px}.interview-reviewed-options{border:0;padding:0;min-width:0;display:grid;gap:10px}.interview-reviewed-options legend{margin-bottom:12px;font-weight:600}.interview-reviewed-action{display:flex;gap:10px;align-items:flex-start;padding:12px 16px}.interview-reviewed-action input[type=checkbox]{flex:0 0 17px;width:17px;height:17px;margin-top:3px}.bootcamp-table{width:100%;border-collapse:collapse;margin:16px 0}.bootcamp-table th,.bootcamp-table td{padding:10px;border-bottom:1px solid var(--border,#557368);text-align:start;vertical-align:top;overflow-wrap:anywhere}.bootcamp-notes{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit}.focus-modes textarea,.focus-modes input.text-input{display:block;width:100%;box-sizing:border-box}.bootcamp-overview li{margin-block:8px}.focus-modes label:has(>input.text-input){display:block}.focus-modes label:has(>input.text-input) .link-btn{display:block;margin-top:8px;text-align:start}.focus-days[role=tablist]{display:flex;gap:8px}.focus-days[role=tablist] button{flex:1;min-width:0;text-align:center}.focus-days[role=tablist] button span{display:inline}.daily-agenda{margin-block:24px}.daily-goal{padding:20px;border-inline-start:4px solid var(--pine-600);background:var(--pine-100);border-radius:12px}.daily-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-block:18px 30px;align-items:start}.daily-card{min-width:0;padding:20px;border:1px solid var(--line-strong);border-top:3px solid var(--pine-border);border-radius:14px;overflow-wrap:anywhere}.daily-card h4{margin-block:8px 12px;font-size:1.15rem}.daily-card button{width:100%;margin-block:8px;white-space:normal}.daily-card details{margin-block:14px}.daily-card ol,.daily-card ul{padding-inline-start:20px}.daily-learning-start{margin-block:20px 28px;padding:18px;border:1px solid var(--pine-border);border-inline-start:4px solid var(--pine-600);border-radius:12px;background:var(--pine-100)}.daily-learning-start>p{margin:12px 0 0;line-height:1.6}.daily-learning-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.daily-learning-actions .btn-primary,.daily-learning-actions .btn-secondary{width:auto;min-width:0;min-height:44px;margin:0;white-space:normal}.daily-learning-goal{overflow-wrap:anywhere}.daily-learning-goal .daily-learning-actions{margin-block-start:16px}@media(max-width:600px){.daily-learning-actions>button{flex:1 1 100%}}.daily-competencies{font-size:.85rem}.daily-wait{display:flex;align-items:center;gap:16px}.daily-engineering{padding:20px;border:1px solid var(--border,#557368);border-radius:14px}.daily-prepare{margin-block:24px}@media(max-width:800px){.daily-cards{grid-template-columns:1fr}}.simulation-notice{border-inline-start:5px solid var(--amber-900);padding:18px}.simulation-notice select{display:block;width:100%;margin-block:8px 16px}.simulation-plan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}@media(max-width:800px){.simulation-plan-grid{grid-template-columns:1fr}}.focus-page--class .focus-main{max-width:1160px;padding-top:0}.focus-page--class .focus-topbar{padding-block:1.2rem;border-bottom:1px solid var(--line)}.focus-page--class .focus-topbar>a{color:var(--pine-900);font-family:var(--font-display);font-weight:750;letter-spacing:-.05em;font-size:1.6rem;text-decoration:none}.focus-page--class .focus-topbar nav>a{color:var(--gray-700);text-decoration:none;font-size:.86rem;font-weight:600}.focus-page--class .focus-topbar nav>a:hover{color:var(--pine-900);text-decoration:underline;text-underline-offset:4px}.focus-page--class .focus-eyebrow{font-size:.73rem;letter-spacing:.09em;color:var(--pine-900);margin-block:0 .6rem}.class-welcome{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,.85fr);gap:clamp(1.5rem,4vw,3.5rem);align-items:center;padding-block:2.75rem}.class-identity{display:flex;align-items:center;flex-wrap:wrap;gap:.55rem;font-size:.77rem;color:var(--gray-600);margin:0 0 1rem}.class-identity strong{color:var(--pine-900);font-weight:650}.class-identity-dot{width:7px;height:7px;border-radius:50%;background:var(--pine-600)}.class-welcome h1{font-family:var(--font-display);color:var(--gray-900);font-size:clamp(2.2rem,4.2vw,3.35rem);letter-spacing:-.045em;line-height:1.12;text-wrap:balance;max-width:18ch;margin:0 0 1.1rem}.class-welcome-lead{max-width:58ch;font-size:1rem;line-height:1.75;color:var(--gray-700);margin:0}.class-welcome-caption{color:var(--gray-600);font-size:.84rem;line-height:1.65;margin:.8rem 0 0}.class-welcome-aside{position:relative;padding:1.7rem 1.75rem;border-inline-start:3px solid var(--pine-border);background:var(--pine-100);border-radius:0 14px 14px 0;overflow:hidden}.class-welcome-aside h2{color:var(--pine-900);font-family:var(--font-display);font-size:1.45rem;line-height:1.35;letter-spacing:-.03em;margin:.65rem 0;position:relative;z-index:1}.class-welcome-aside>p:not(.focus-eyebrow){color:var(--gray-700);font-size:.87rem;line-height:1.7;margin:0;position:relative;z-index:1}.class-welcome-mark{display:block;text-align:end;color:var(--pine-900);opacity:.18;font-family:var(--font-display);font-size:2.6rem;line-height:1;font-weight:750;letter-spacing:-.08em;margin-top:1.1rem}.class-welcome-mark>span{font-weight:400}.focus-page--class .focus-main>.panel{margin-block:1.2rem}.focus-page--class .focus-main>.bootcamp-overview{margin-top:0}.bootcamp-overview{padding:clamp(1.2rem,3vw,2rem);border-color:var(--line-strong);border-radius:16px}.bootcamp-section-heading{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem}.bootcamp-section-heading h2,.bootcamp-signin h2{margin:0;font-size:clamp(1.45rem,2.7vw,1.85rem);font-family:var(--font-display);line-height:1.3;letter-spacing:-.035em;color:var(--gray-900)}.bootcamp-overview-intro,.bootcamp-signin>p:not(.focus-eyebrow){color:var(--gray-600);line-height:1.65;font-size:.94rem;margin:.65rem 0 1.4rem}.class-flexible-label,.class-saved-label{color:var(--gray-600);font-size:.74rem;line-height:1.5;border:1px solid var(--line);background:var(--surface-alt);border-radius:999px;padding:.4rem .75rem}.class-day-selector{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;margin-block:1.4rem 1.2rem}.class-day-choice{min-width:0;text-align:start;color:var(--gray-900);border:1px solid var(--line-strong);border-radius:12px;background:var(--surface);padding:1.1rem 1.15rem;cursor:pointer;font:inherit;transition:border-color .15s,background-color .15s}.class-day-choice:hover:not(:disabled){border-color:var(--pine-600);background:var(--surface-alt)}.class-day-choice[aria-pressed=true]{border-color:var(--pine-900);background:var(--pine-100);box-shadow:inset 0 0 0 1px var(--pine-900)}.class-day-choice:disabled{cursor:default;opacity:.6}.class-day-number{display:flex;align-items:center;justify-content:space-between;color:var(--gray-600);font-size:.74rem;font-weight:650;margin-bottom:.85rem}.class-day-choice[aria-pressed=true] .class-day-number{color:var(--pine-900)}.class-day-check{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;border:1px solid var(--line-strong);font-size:.85rem}.class-day-choice[aria-pressed=true] .class-day-check{border-color:var(--accent-solid);background:var(--accent-solid);color:var(--on-accent)}.class-day-choice>strong{display:block;font-family:var(--font-display);font-weight:650;font-size:1.06rem;line-height:1.4;letter-spacing:-.02em}.class-day-description{display:block;color:var(--gray-600);font-size:.84rem;line-height:1.65;margin-top:.45rem}.class-day-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.85rem 1.4rem}.class-day-actions .class-continue{width:auto;min-width:200px;min-height:48px;padding:.8rem 1.25rem;font-size:.96rem;font-weight:650}.class-continue>span{margin-inline-start:1rem}.class-setup-link,.class-notice-actions button{padding:.4rem 0;border:0;color:var(--pine-900);background:transparent;font:inherit;font-size:.86rem;font-weight:600;cursor:pointer;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}.class-day-actions>p{color:var(--gray-600);font-size:.84rem;line-height:1.6;max-width:48ch;margin:0}.class-day-action-note{color:var(--gray-600);font-size:.79rem;line-height:1.65;max-width:95ch;margin:.8rem 0 0}.class-readiness{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:1rem 0;margin:1.35rem 0 0;gap:1rem;border-top:1px solid var(--line)}.class-readiness>div{min-width:0}.class-readiness dt{font-size:.73rem;line-height:1.5;color:var(--gray-600)}.class-readiness dd{font-size:.86rem;line-height:1.5;color:var(--gray-700);font-weight:600;margin:.25rem 0 0}.class-personalization-notice{display:flex;align-items:start;gap:.9rem;background:var(--amber-100);border:1px solid var(--amber-border);border-radius:10px;padding:1rem 1.1rem;margin-top:.3rem}.class-notice-icon{flex:0 0 22px;width:22px;height:22px;display:grid;place-items:center;border:1px solid var(--amber-900);border-radius:50%;color:var(--amber-900);font-weight:700;font-size:.83rem}.class-personalization-notice h3{color:var(--amber-900);font-size:.92rem;line-height:1.5;margin:0}.class-personalization-notice p{color:var(--gray-700);font-size:.8rem;line-height:1.65;margin:.45rem 0 0}.class-notice-actions{display:flex;gap:1.2rem;flex-wrap:wrap;margin-top:.4rem}.class-notice-actions button{color:var(--amber-900);font-size:.78rem}.class-pathway-error{background:var(--error-100);color:var(--error-900);padding:1rem;border-radius:10px;margin-top:1rem}.class-pathway-error>p{margin-top:0}.bootcamp-practice{scroll-margin-block-start:1.5rem}.bootcamp-practice h2:focus,.bootcamp-setup [tabindex="-1"]:focus{outline:none}#bootcamp-practice-title,#bootcamp-profile,#bootcamp-assessments{scroll-margin-block-start:1.5rem}.bootcamp-practice .focus-days[role=tablist]{margin-top:1.5rem;gap:.5rem;border-bottom:1px solid var(--line);padding-bottom:.75rem}.bootcamp-practice .focus-days[role=tablist] button{border:1px solid var(--line);border-radius:8px;color:var(--gray-600);padding:.7rem;font-size:.88rem}.bootcamp-practice .focus-days[role=tablist] button[aria-selected=true]{border-color:var(--pine-border);background:var(--pine-100);color:var(--pine-900);font-weight:700}.bootcamp-practice .daily-prepare{padding:1.25rem;border:1px solid var(--pine-border);background:var(--pine-100);border-radius:12px}.bootcamp-practice .daily-prepare>summary{font-weight:700;color:var(--pine-900);cursor:pointer}.bootcamp-practice .daily-prepare>p{font-size:.9rem;line-height:1.65}.bootcamp-practice .daily-prepare>.btn-primary{width:auto;min-width:210px;padding-inline:1.2rem}.bootcamp-takehome{border-top:1px solid var(--line);padding-top:1.25rem;margin-top:1.25rem}.focus-page--class details>summary{cursor:pointer;line-height:1.6}.focus-page--class .focus-main>details>summary{font-weight:650;color:var(--gray-700)}.bootcamp-setup>summary .bootcamp-summary-note{display:inline;color:var(--gray-600);font-size:.8rem;font-weight:400;margin-inline-start:1rem}.bootcamp-setup>.panel,.bootcamp-setup>div>.panel{margin-block:1rem}.class-level-zero{color:var(--gray-600);font-size:.82rem;font-weight:600}.activity-check-in{background:var(--pine-100);border:1px solid var(--pine-border);border-radius:10px;padding:1rem;margin-top:1rem}.activity-check-in h4{color:var(--pine-900);margin-top:0}.activity-check-in p{line-height:1.65;font-size:.85rem}.activity-check-actions{display:grid;gap:.5rem}.activity-check-actions .btn-secondary{margin:0;white-space:normal;text-align:start}.focus-page--class button:focus-visible,.focus-page--class a:focus-visible,.focus-page--class summary:focus-visible{outline:2px solid var(--pine-900);outline-offset:4px}@media(max-width:820px){.class-welcome{grid-template-columns:1fr;gap:1.5rem;padding-block:2rem}.class-welcome h1{max-width:21ch}.class-welcome-aside{display:none}.class-welcome-lead{max-width:66ch}.class-day-choice{padding:1rem}.class-day-choice>strong{font-size:.95rem}.bootcamp-section-heading{align-items:flex-start}}@media(max-width:580px){.focus-page--class .focus-topbar{gap:.75rem;padding-block:1rem}.focus-page--class .focus-topbar nav{gap:.75rem 1rem;width:100%}.class-welcome{padding-block:1.75rem}.class-welcome h1{font-size:2.3rem}.class-welcome-lead{font-size:.93rem}.class-welcome-caption{font-size:.78rem}.class-day-selector{gap:.5rem}.class-day-choice{padding:.8rem .65rem}.class-day-number{font-size:.67rem;margin-bottom:.65rem;flex-wrap:wrap;gap:.25rem}.class-day-check{width:17px;height:17px;font-size:.65rem}.class-day-choice>strong{font-size:.82rem;line-height:1.5;overflow-wrap:anywhere}.class-day-description{display:none}.class-day-actions{gap:.5rem}.class-day-actions .class-continue{width:100%;min-width:0}.class-setup-link{width:100%;text-align:center;padding:.65rem}.class-flexible-label{display:none}.class-readiness{gap:.65rem}.class-readiness dt{font-size:.68rem}.class-readiness dd{font-size:.74rem}.class-personalization-notice{padding:.9rem;gap:.6rem}.class-notice-icon{flex-basis:19px;width:19px;height:19px}.class-personalization-notice h3{font-size:.86rem}.class-personalization-notice p{font-size:.76rem}.class-notice-actions{gap:.35rem 1rem}.bootcamp-setup>summary .bootcamp-summary-note{display:block;margin-inline-start:1.15rem;margin-top:.15rem}.bootcamp-practice .daily-prepare{padding:1rem}.bootcamp-practice .daily-prepare>.btn-primary{width:100%;min-width:0}.daily-wait{align-items:start;flex-direction:column}}@media(prefers-reduced-motion:reduce){.focus-page--class *{scroll-behavior:auto;transition:none}}.focus-activity-entry{display:flex;align-items:center;flex-wrap:wrap;gap:1rem 1.5rem}.focus-activity-entry>div{flex:1 1 320px;min-width:0}.focus-activity-entry .focus-eyebrow{color:var(--pine-900);font-size:.8rem;margin:0 0 .6rem}.focus-activity-entry h2{margin:0 0 .7rem}.focus-activity-entry p{margin:.4rem 0;line-height:1.6;overflow-wrap:anywhere}.focus-activity-entry .btn-primary{width:auto;min-height:48px;margin:0;padding:.8rem 1.1rem;white-space:normal}.focus-activity-entry .btn-primary>span{margin-inline-start:.7rem}.focus-activity-entry-note{flex-basis:100%}.focus-modal-stages{margin-top:0}.focus-activity-workspace{min-width:0;padding:0}.focus-activity-workspace p{overflow-wrap:anywhere}.focus-modal-controls{flex-wrap:wrap;margin:0;padding:0;border:0}.focus-modal-controls .btn-primary,.focus-modal-controls .btn-secondary{flex:1 1 130px;width:auto;min-width:0;min-height:44px;margin:0;padding:.65rem 1rem}.focus-modal-footer-note{margin:.55rem 0 0;color:var(--gray-600);font-size:.78rem;line-height:1.5;overflow-wrap:anywhere}@media(max-width:600px){.focus-activity-entry .btn-primary{width:100%}.focus-activity-workspace .text-input{font-size:16px}.focus-modal-stages{gap:.4rem}.focus-modal-stages button{padding:.5rem .65rem;font-size:.8rem}}.workshop-stage-dialog{box-sizing:border-box;position:fixed;top:0;right:0;bottom:0;left:0;width:min(1080px,calc(100vw - 2rem));height:calc(100vh - 2rem);height:calc(100dvh - 2rem);max-width:100vw;max-height:100vh;max-height:100dvh;margin:auto;padding:0;overflow:hidden;border:1px solid var(--line-strong);border-radius:.85rem;color:var(--gray-900);background-color:var(--bg);background-image:linear-gradient(var(--surface),var(--surface));font:inherit;text-align:start;box-shadow:var(--shadow-modal)}.workshop-stage-dialog:not([open]){display:none}.workshop-stage-dialog[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto}.workshop-stage-dialog::backdrop{background:var(--overlay)}.workshop-stage-dialog .btn-primary,.workshop-stage-dialog .btn-secondary{width:auto;min-width:0;max-width:100%;margin:0;white-space:normal;overflow-wrap:anywhere}.workshop-dialog-header{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;min-width:0;gap:1rem;padding:1rem 1.35rem;border-bottom:1px solid var(--line)}.workshop-dialog-header>.workshop-dialog-title{flex:1 1 16rem;min-width:0}.workshop-dialog-window-controls{display:flex;flex:0 1 auto;flex-wrap:wrap;justify-content:flex-end;gap:.5rem;min-width:0;margin-inline-start:auto}.workshop-dialog-header .workshop-kicker{margin:0 0 .2rem}.workshop-stage-dialog .workshop-dialog-header h2{margin:0;font-size:clamp(1.2rem,2vw,1.7rem);line-height:1.3;overflow-wrap:anywhere}.workshop-stage-dialog .workshop-dialog-close{flex:0 0 auto;min-height:44px;padding:.55rem .8rem;white-space:nowrap}.workshop-dialog-close span{font-size:1.3em;line-height:1}.workshop-dialog-body{min-height:0;min-width:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;padding:1rem 1.35rem 1.5rem;scrollbar-gutter:stable;-webkit-overflow-scrolling:touch}.workshop-dialog-body .workshop-current{min-width:0;overflow-wrap:anywhere}.workshop-dialog-body .workshop-section-head{flex-wrap:wrap}.workshop-dialog-body .workshop-purpose{flex:1 1 18rem;margin-top:.4rem}.workshop-dialog-body .workshop-section-head>button{flex:0 0 auto}.workshop-dialog-body .workshop-comic{max-width:650px}.workshop-dialog-body .workshop-comic img{max-height:280px}.workshop-dialog-body .text-input{max-width:100%;margin-bottom:0;box-sizing:border-box}.workshop-dialog-body .table-scroll{max-width:100%;overflow-x:auto}.workshop-dialog-footer{min-width:0;max-height:40vh;max-height:40dvh;overflow:auto;padding:.65rem 1.35rem max(.8rem,env(safe-area-inset-bottom));border-top:1px solid var(--line)}.workshop-dialog-footer .workshop-save{margin:0 0 .5rem;line-height:1.4;overflow-wrap:anywhere}.workshop-dialog-controls{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.35fr);gap:.75rem}.workshop-dialog-controls>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;min-width:0}.workshop-stage-dialog .workshop-dialog-controls button{width:100%;min-width:0;min-height:44px;margin:0;padding:.55rem .7rem;font-size:.88rem;line-height:1.35;white-space:normal}.workshop-dialog-hint{margin:.8rem 0 0;color:var(--gray-600);font-size:.9rem}.workshop-stage-nav button[aria-haspopup=dialog]{min-height:44px}@media(max-width:600px){.workshop-stage-dialog{width:100%;height:100vh;height:100dvh;margin:0;border:0;border-radius:0}.workshop-dialog-header{padding:.75rem;gap:.5rem;padding-top:max(.75rem,env(safe-area-inset-top))}.workshop-stage-dialog .workshop-dialog-header h2{font-size:1.15rem}.workshop-dialog-header .workshop-kicker{font-size:.7rem}.workshop-dialog-body{padding:.75rem .85rem 1rem}.workshop-dialog-body .workshop-comic{margin:.8rem 0}.workshop-dialog-body .workshop-comic img{max-height:210px}.workshop-dialog-body textarea,.workshop-dialog-body select{font-size:16px}.workshop-dialog-footer{padding:.6rem .75rem max(.65rem,env(safe-area-inset-bottom))}.workshop-dialog-footer .workshop-save{font-size:.78rem}.workshop-dialog-controls{grid-template-columns:minmax(0,1fr);gap:.45rem}.workshop-dialog-controls>div{gap:.45rem}.workshop-stage-dialog .workshop-dialog-controls button{padding:.45rem .5rem;font-size:.85rem}}@media(max-height:500px)and (min-width:601px){.workshop-stage-dialog{height:100vh;height:100dvh;width:calc(100vw - 1rem)}.workshop-dialog-header{padding:.5rem .85rem}.workshop-stage-dialog .workshop-dialog-header h2{font-size:1.1rem}.workshop-dialog-footer{padding:.4rem .85rem}.workshop-dialog-footer .workshop-save{font-size:.75rem;margin-bottom:.25rem}}@media(max-height:400px)and (max-width:600px){.workshop-dialog-header{padding:.4rem .65rem}.workshop-stage-dialog .workshop-dialog-header h2{font-size:1rem}.workshop-dialog-footer{max-height:none;padding:.3rem .5rem}.workshop-dialog-footer .workshop-save{min-height:0;font-size:.7rem;line-height:1.2;margin-bottom:.25rem}.workshop-dialog-controls{gap:.25rem}.workshop-stage-dialog .workshop-dialog-controls button{min-height:40px;padding:.25rem;font-size:.75rem}}@media print{.workshop-stage-dialog[open]{display:block;position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:auto;max-height:none;overflow:visible;border:0;box-shadow:none}.workshop-stage-dialog::backdrop{display:none}.workshop-dialog-body{overflow:visible;padding:0}.workshop-dialog-close,.workshop-dialog-footer{display:none!important}}.workshop-page .container{max-width:1240px}.workshop-page .panel{margin:1rem 0}.workshop-page h2{font-size:clamp(1.25rem,2vw,1.7rem);line-height:1.3}.workshop-page h3{line-height:1.4}.workshop-page p{line-height:1.65}.workshop-kicker{font-size:.77rem;font-weight:750;letter-spacing:.07em;text-transform:uppercase;color:var(--pine-700)}.workshop-links{display:flex;gap:1rem;flex-wrap:wrap;padding:.6rem 0}.workshop-links a,.workshop-return a{color:var(--pine-700);font-weight:650;text-underline-offset:.2em}.workshop-return{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;background:var(--surface-alt);border-bottom:1px solid var(--line);padding:.75rem 1.5rem}.workshop-stage-nav{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.45rem;margin-top:1.1rem}.workshop-stage-nav button{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:flex;flex-direction:column;gap:.55rem;align-items:flex-start;text-align:left;border:1px solid var(--line-strong);border-radius:.6rem;background:var(--surface);color:var(--gray-900);padding:.75rem .65rem;font:inherit;font-size:.84rem;line-height:1.35;cursor:pointer}.workshop-stage-nav button.active{border:2px solid var(--pine-700);background:var(--pine-100);padding:calc(.75rem - 1px) calc(.65rem - 1px)}.workshop-stage-nav small{display:block;color:var(--gray-600);margin-top:.4rem;font-size:.75rem}.workshop-step-number{width:1.7rem;height:1.7rem;border-radius:50%;display:grid;place-items:center;background:var(--pine-100);color:var(--pine-900);font-weight:800}.workshop-actions{display:flex;align-items:end;flex-wrap:wrap;gap:.8rem;margin:1rem 0}.workshop-actions>label{flex:0 1 250px;display:grid;gap:.3rem;font-size:.9rem}.workshop-actions a{text-decoration:none}.workshop-class-picker summary,.workshop-tip summary{cursor:pointer;font-weight:650;line-height:1.6}.workshop-context{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;flex-wrap:wrap}.workshop-context>div:first-child{flex:1 1 450px}.workshop-clock{min-width:165px;padding:.85rem 1rem;text-align:center;border:1px solid var(--line);border-radius:.65rem;background:var(--surface-alt)}.workshop-clock strong{display:block;font-variant-numeric:tabular-nums;font-size:2.3rem;color:var(--pine-900);line-height:1.3}.workshop-clock small{display:block;font-size:.78rem;color:var(--gray-600)}.workshop-section-head{display:flex;justify-content:space-between;align-items:start;gap:1rem}.workshop-purpose{font-size:1.13rem;max-width:80ch}.workshop-comic{max-width:780px;margin:1.2rem auto 1.5rem;border:1px solid var(--line-strong);border-radius:.55rem;overflow:hidden;background:var(--surface-alt)}.workshop-comic img{width:100%;height:auto;max-height:400px;object-fit:contain;display:block}.workshop-comic figcaption{font-size:1rem;font-style:italic;text-align:center;padding:.8rem 1rem;line-height:1.6;color:var(--gray-700)}.workshop-steps{padding-left:1.5rem;line-height:1.75;font-size:1.02rem}.workshop-steps li{padding:.3rem 0}.workshop-output{background:var(--pine-100);color:var(--pine-900);border-left:4px solid var(--pine-700);border-radius:.2rem;padding:.85rem 1rem;line-height:1.6;margin:1rem 0}.workshop-tip{background:var(--surface-alt);padding:1rem;margin:1rem 0;border:1px solid var(--line);border-radius:.5rem}.workshop-fields{border:0;padding:0;margin:1rem 0;display:grid;gap:1rem;min-width:0}.workshop-fields>label:not(.workshop-check){display:grid;gap:.5rem;font-size:.96rem;line-height:1.4}.workshop-fields textarea{resize:vertical;min-height:88px;width:100%;font:inherit;line-height:1.6;box-sizing:border-box}.workshop-fields select{width:100%;max-width:100%}.workshop-check{display:flex;align-items:start;gap:.75rem;line-height:1.6}.workshop-check input{margin-top:.35rem;width:1.1rem;height:1.1rem;flex-shrink:0}.workshop-save{min-height:1.5rem;color:var(--gray-600);font-size:.9rem}.workshop-message{color:var(--pine-900);font-size:1.16rem;font-weight:700;border-top:1px solid var(--line);padding-top:1.2rem}.workshop-warning{background:var(--amber-100);color:var(--amber-900);padding:.8rem;border-radius:.4rem}.workshop-code{font-family:var(--font-mono,monospace);letter-spacing:.12em;font-size:1.3rem}.workshop-two{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.analysis-tally{display:flex;justify-content:space-between;gap:1rem;padding:.65rem 0;border-bottom:1px solid var(--line)}.analysis-reflection{border-bottom:1px solid var(--line);padding:.6rem 0}.analysis-reflection p,.workshop-roster td{white-space:pre-wrap;overflow-wrap:anywhere}.workshop-presentation{min-height:100vh;padding:2.5vw 5vw;color:var(--gray-900);background:var(--bg);box-sizing:border-box}.workshop-presentation h1{font-size:clamp(2.2rem,4vw,4rem);margin:.8rem 0}.workshop-presentation .workshop-purpose{font-size:1.55rem}.workshop-presentation-top{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem}.workshop-presentation .workshop-comic{float:right;width:45%;margin:1rem 0 1rem 2rem}.workshop-presentation .workshop-steps{font-size:1.45rem}.workshop-presentation .workshop-output{font-size:1.35rem}.workshop-join{clear:both;font-size:1.6rem}.workshop-page button:focus-visible,.workshop-page a:focus-visible,.workshop-page input:focus-visible,.workshop-page textarea:focus-visible,.workshop-page select:focus-visible{outline:3px solid var(--pine-700);outline-offset:3px}@media(max-width:850px){.workshop-stage-nav{grid-template-columns:repeat(4,minmax(0,1fr))}.workshop-two{grid-template-columns:1fr}.workshop-presentation .workshop-comic{float:none;width:100%;margin:1rem 0}}@media(max-width:520px){.workshop-stage-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.workshop-stage-nav button{flex-direction:row;font-size:.82rem}.workshop-actions>a,.workshop-actions>button{flex:1 1 100%;text-align:center}.workshop-clock{width:100%}.workshop-presentation{padding:1rem}}@media print{.workshop-page .topbar,.workshop-stage-nav,.workshop-actions,.workshop-links,.workshop-class-picker,.workshop-roster{display:none!important}.workshop-page .panel{break-inside:avoid;box-shadow:none}.workshop-comic{max-width:400px}.workshop-fields textarea{min-height:110px;border:1px solid #777}}.workshop-track-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.workshop-page .workshop-track-card{display:flex;flex-direction:column;min-width:0;padding:1.2rem}.workshop-track-card>img{width:100%;aspect-ratio:1.6;object-fit:cover;border-radius:.5rem}.workshop-track-card h2{margin:.25rem 0}.workshop-track-card .workshop-output{flex:1}.workshop-track-card>.btn-primary{display:block;box-sizing:border-box;width:100%;text-align:center;text-decoration:none;overflow-wrap:anywhere}.workshop-page .workshop-stage-nav{grid-template-columns:repeat(auto-fit,minmax(125px,1fr))}.workshop-page .workshop-actions>.btn-primary,.workshop-page .workshop-actions>.btn-secondary{width:auto;max-width:100%;margin-top:0}.workshop-track-card p{overflow-wrap:anywhere}@media(max-width:900px){.workshop-track-grid{grid-template-columns:1fr}.workshop-track-card>img{max-height:220px;object-fit:contain;background:var(--surface-alt)}}@media(max-width:520px){.workshop-page .workshop-stage-nav{grid-template-columns:repeat(2,minmax(0,1fr))}}.class-return-bar{position:sticky;top:0;z-index:100;color:var(--gray-900);background:var(--surface);border-bottom:1px solid var(--pine-border);box-shadow:0 4px 18px color-mix(in srgb,var(--gray-900) 4%,transparent)}.class-return-inner{max-width:1160px;margin:0 auto;padding:.8rem 1.5rem;display:flex;align-items:center;gap:.9rem}.class-return-icon{display:grid;place-items:center;width:2.4rem;height:2.4rem;flex:0 0 auto;border-radius:.75rem;background:var(--pine-100);color:var(--pine-900);font-size:1.35rem}.class-return-copy{display:grid;gap:.15rem;line-height:1.4}.class-return-copy strong{font-size:.9rem}.class-return-copy>span{color:var(--gray-600);font-size:.8rem}.class-return-link{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;margin-inline-start:auto;min-height:2.7rem;flex:0 0 auto;padding:.65rem 1rem;border:1px solid var(--pine-border);border-radius:.7rem;font-size:.85rem;font-weight:700;line-height:1.2;text-decoration:none;color:var(--pine-900);background:var(--pine-100)}.class-return-link:hover{border-color:var(--pine-900)}.class-return-link:focus-visible{outline:3px solid var(--pine-600);outline-offset:3px}@media(max-width:600px){.class-return-inner{padding:.7rem 1rem;gap:.6rem;flex-wrap:wrap}.class-return-copy{flex:1;min-width:0}.class-return-copy>span{display:none}.class-return-link{font-size:.8rem;padding-inline:.75rem}}@media(max-width:360px){.class-return-icon{display:none}.class-return-copy{flex-basis:100%}.class-return-link{margin-inline-start:0}}@media print{.class-return-bar{display:none}}.activity-library{color:var(--gray-900);line-height:1.55;min-width:0}.activity-library *,.activity-library *:before,.activity-library *:after{box-sizing:border-box}.activity-library h2,.activity-library h3,.activity-library h4{font-family:var(--font-display);line-height:1.35}.activity-library h2{margin:0;font-size:1.5rem}.activity-library h3{font-size:1.12rem}.activity-library h4{font-size:1rem}.activity-library button,.activity-library input,.activity-library select,.activity-library textarea{font:inherit}.activity-library button:disabled{cursor:default}.activity-library .text-input{margin:6px 0 0;min-width:0;max-width:100%;font-size:.925rem}.activity-library textarea.text-input{min-height:98px;resize:vertical}.activity-library fieldset{min-width:0;margin:0;border:0;padding:0}.activity-library fieldset>legend:not(.sr-only){padding:0;margin-bottom:10px;font-weight:600}.activity-library button:focus-visible,.activity-library summary:focus-visible,.activity-library input:focus-visible,.activity-library select:focus-visible,.activity-library textarea:focus-visible{outline:var(--focus-width) solid var(--pine-600);outline-offset:3px}.activity-library .btn-primary,.activity-library .btn-secondary{width:auto;max-width:100%;margin:0;padding:10px 16px}.activity-library details>summary{cursor:pointer;font-weight:600}.activity-library details>summary::marker{color:var(--pine-900)}.activity-library p{overflow-wrap:anywhere}.al-header{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:16px}.al-subtitle{color:var(--gray-600);margin:6px 0 0;max-width:75ch;font-size:.95rem}.al-badges{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.al-badge,.al-count,.al-status{display:inline-flex;align-items:center;gap:4px;border:1px solid var(--line);border-radius:6px;padding:3px 8px;font-size:.77rem;font-weight:600;color:var(--gray-700);background:var(--surface-alt)}.al-badge{overflow-wrap:anywhere}.al-toolbar{display:flex;flex-wrap:wrap;gap:6px;margin:20px 0;padding-bottom:14px;border-bottom:1px solid var(--line)}.al-mode-button{border:1px solid transparent;background:transparent;color:var(--gray-600);border-radius:8px;padding:9px 14px;cursor:pointer;font-weight:600!important}.al-mode-button:hover:not(:disabled){background:var(--surface-alt);color:var(--gray-900)}.al-mode-button.is-active,.al-mode-button[aria-pressed=true]{background:var(--pine-100);color:var(--pine-900);border-color:var(--pine-border)}.al-notice{border:1px solid var(--line);border-inline-start:3px solid var(--pine-600);border-radius:8px;background:var(--surface-alt);padding:12px 16px;font-size:.9rem;margin:16px 0}.al-error{border:1px solid var(--error-900);border-radius:8px;background:var(--error-100);color:var(--error-900);padding:12px 16px;margin:16px 0}.al-muted,.al-meta{color:var(--gray-600);font-size:.875rem}.al-meta{overflow-wrap:anywhere;margin:8px 0}.al-field-label{display:block;font-size:.82rem;font-weight:600;color:var(--gray-700)}.al-track-bar{display:flex;align-items:center;flex-wrap:wrap;gap:16px 28px;margin-bottom:22px;padding:16px 20px;background:var(--surface-alt);border:1px solid var(--line);border-radius:10px}.al-track-picker{flex:0 1 340px;min-width:0}.al-track-picker .text-input{font-weight:600}.al-track-summary{flex:1 1 240px;margin:0;color:var(--gray-600);font-size:.9rem;max-width:50ch}.al-browser-grid{display:grid;grid-template-columns:minmax(220px,28%) minmax(0,1fr);align-items:start;gap:26px}.al-competency-nav{min-width:0}.al-nav-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;padding:0 4px}.al-nav-heading h3{margin:0;font-size:.95rem}.al-competency-list{list-style:none;padding:0;margin:0;display:grid;gap:4px}.al-competency-button{display:flex;width:100%;align-items:flex-start;gap:10px;text-align:start;border:1px solid transparent;border-radius:8px;padding:11px 10px;background:transparent;color:var(--gray-700);cursor:pointer}.al-competency-button:hover:not(:disabled){background:var(--surface-alt);border-color:var(--line)}.al-competency-button.is-active{background:var(--pine-100);border-color:var(--pine-border);color:var(--pine-900)}.al-competency-number{flex-shrink:0;font-family:var(--font-mono);font-size:.75rem;padding-top:2px;opacity:.85}.al-competency-name{display:grid;gap:4px;min-width:0;line-height:1.5;font-size:.86rem;font-weight:600;overflow-wrap:anywhere}.al-competency-name small{font-size:.75rem;font-weight:400;color:var(--gray-600)}.al-mobile-competency{display:none}.al-competency-content{min-width:0;border-inline-start:1px solid var(--line);padding-inline-start:26px}.al-competency-header{margin-bottom:20px}.al-eyebrow{color:var(--pine-900);font-size:.78rem;font-weight:600;margin:0 0 6px}.al-competency-header h3{font-size:1.3rem;margin:0 0 8px;overflow-wrap:anywhere}.al-competency-header>.al-muted{margin:0 0 12px}.al-context-preview{border-inline-start:3px solid var(--pine-600);padding:10px 14px;margin:14px 0;background:var(--surface-alt);border-radius:0 6px 6px 0}.al-context-preview p{margin:5px 0 0;color:var(--gray-700);font-size:.88rem}.al-competency-goals{border:1px solid var(--line);border-radius:8px;padding:10px 14px;font-size:.88rem}.al-competency-goals>summary{color:var(--gray-700)}.al-targets{display:grid;grid-template-columns:minmax(75px,auto) minmax(0,1fr);gap:12px 18px;margin:16px 0 4px;font-size:.9rem}.al-targets dt{font-weight:600;color:var(--pine-900)}.al-targets dd{margin:0;min-width:0;overflow-wrap:anywhere}.al-browse-filters{display:grid;grid-template-columns:minmax(0,1fr) minmax(175px,.65fr);gap:12px;align-items:end}.al-search,.al-function-filter{min-width:0}.al-browse-filters .text-input{padding:10px 12px;font-size:.85rem}.al-results-bar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;margin:10px 0 14px;min-height:28px}.al-results-bar>p{margin:0;font-size:.8rem;color:var(--gray-600)}.al-text-button{color:var(--pine-900);background:transparent;border:none;text-decoration:underline;text-underline-offset:3px;cursor:pointer;padding:4px;font-size:.83rem!important}.al-dimension-groups{display:grid;gap:12px}.al-dimension-group{min-width:0;border:1px solid var(--line);border-radius:10px;overflow:clip}.al-dimension-group>summary{padding:14px 16px;background:var(--surface-alt);font-size:.96rem}.al-dimension-group>summary .al-dimension-name{margin-inline-start:5px}.al-dimension-group>summary .al-count{margin-inline-start:10px;background:var(--surface);font-size:.72rem}.al-dimension-group[open]>summary{border-bottom:1px solid var(--line)}.al-dimension-focus{margin:0;padding:12px 16px 0;font-size:.8rem;color:var(--gray-600)}.al-dimension-focus strong{color:var(--gray-700)}.al-activity-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:14px}.al-activity-card{min-width:0;display:flex;flex-direction:column;align-items:stretch;border:1px solid var(--line);border-radius:8px;padding:14px;background:var(--surface)}.al-card-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px;justify-content:space-between;color:var(--gray-600);font-size:.75rem;margin-bottom:10px}.al-card-method{font-size:.7rem;font-weight:600;border:1px solid var(--pine-border);border-radius:5px;padding:3px 6px;color:var(--pine-900);background:var(--pine-100)}.al-ksa-tags{display:flex;gap:4px}.al-ksa-tags abbr{display:inline-flex;justify-content:center;min-width:23px;padding:1px 5px;border-radius:4px;background:var(--surface-alt);border:1px solid var(--line);color:var(--gray-700);text-decoration:none;font-size:.7rem;font-weight:600;cursor:help}.al-activity-card h4{margin:0 0 7px;font-size:.95rem;overflow-wrap:anywhere}.al-activity-card>p{margin:0 0 12px;font-size:.82rem;color:var(--gray-600);line-height:1.55}.al-card-brief{display:grid;gap:4px;margin:0 0 16px;font-size:.8rem}.al-card-brief dt{margin-top:8px;color:var(--gray-700);font-weight:600}.al-card-brief dd{margin:0;color:var(--gray-600);overflow-wrap:anywhere}.al-card-footer{display:flex;align-items:center;gap:10px;margin-top:auto}.al-card-footer .al-ksa-tags{flex-shrink:0}.al-card-footer .al-open-activity{flex:1;min-width:0}.al-open-activity{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;background:var(--surface);border:1px solid var(--pine-border);border-radius:6px;color:var(--pine-900);font-size:.82rem!important;font-weight:600!important;padding:8px 10px;cursor:pointer;text-align:start}.al-open-activity:hover:not(:disabled){background:var(--pine-100)}.al-forward{font-size:1.1rem;line-height:1}[dir=rtl] .activity-library .al-forward{transform:scaleX(-1)}.al-shared-note{color:var(--gray-600);font-size:.78rem;margin:16px 0 0}.al-empty{padding:28px 22px;border:1px dashed var(--line-strong);border-radius:10px;background:var(--surface-alt);text-align:center}.al-empty h4{margin:0 0 8px}.al-empty p{color:var(--gray-600);font-size:.9rem;margin:0 0 16px}.al-breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:6px 10px;color:var(--gray-600);font-size:.82rem;margin:0 0 16px;overflow-wrap:anywhere}.al-breadcrumb>*{min-width:0}.al-back{display:inline-flex;align-items:center;gap:6px;padding:6px 0;background:transparent;border:none;color:var(--pine-900);cursor:pointer;font-weight:600!important;font-size:.86rem!important}.al-workspace{min-width:0}.al-workspace-header{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:12px;margin-bottom:16px}.al-workspace-header h3,.al-workspace-header h2{margin:0 0 8px}.al-workspace-header>div{min-width:0}.al-workspace-tabs{display:flex;flex-wrap:wrap;gap:6px;padding:0 0 14px;margin:16px 0 20px;border-bottom:1px solid var(--line)}.al-section{min-width:0;padding:18px 20px;border:1px solid var(--line);border-radius:10px;margin:0 0 16px;background:var(--surface)}.al-section>h3,.al-section>h4{margin:0 0 10px}.al-section>p:first-child{margin-top:0}.al-section>p:last-child{margin-bottom:0}.al-section li{margin:6px 0}.al-section ul,.al-section ol{padding-inline-start:24px}.al-section details+details{margin-top:14px}.al-section>details.al-section{margin-top:16px}.al-section>.al-section:last-child{margin-bottom:0}.al-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}.al-detail-grid>*{min-width:0}.al-detail-grid .al-section{margin-bottom:0}.al-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:16px}.al-test-form{min-width:0;border:none;padding:0;margin:0}.al-test-form>legend{font-weight:600;margin-bottom:12px}.al-test-form:is(details){border:1px solid var(--line);border-radius:10px;padding:16px 20px;margin:0 0 18px;background:var(--surface-alt)}.al-test-form>fieldset{margin-top:16px}.al-test-form h4{margin:18px 0 8px}.al-test-form fieldset>h4:first-of-type{margin-top:0}.al-test-form label{display:block;font-size:.9rem;font-weight:500}.al-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}.al-form-grid>*{min-width:0}.al-form-grid .al-wide{grid-column:1 / -1}.al-goal-field>.al-muted{margin:6px 0 0;font-size:.78rem}.al-goal-field>.al-text-button{margin-top:4px;padding-inline-start:0}.al-shared-specification{margin-top:18px}.al-presets{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:12px 0 18px}.al-presets button{font-size:.82rem;padding:7px 11px}.al-recent-list{display:grid;gap:12px;padding:0;margin:16px 0 0;list-style:none}.al-recent-card{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;padding:16px 18px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}.al-recent-card>div{flex:1 1 280px;min-width:0}.al-recent-card h3,.al-recent-card h4,.al-recent-card p{margin:0 0 5px}.al-recent-card .al-meta{font-size:.8rem}.al-status{overflow-wrap:anywhere}.al-status.is-failed{border-color:var(--error-900);color:var(--error-900);background:var(--error-100)}.al-status.is-completed{border-color:var(--pine-border);color:var(--pine-900);background:var(--pine-100)}.activity-library .al-choice{display:block;width:100%;text-align:start;padding:12px 16px;margin:8px 0;border:1px solid var(--line-strong);border-radius:8px;background:var(--surface);color:var(--gray-900);cursor:pointer}.al-choice[aria-pressed=true]{border-color:var(--pine-600);background:var(--pine-100);color:var(--pine-900)}.al-choice:hover:not(:disabled){border-color:var(--pine-600)}.al-review{border:1px solid var(--line);border-radius:10px;padding:18px 20px;margin-top:20px;min-width:0}.al-review legend{padding:0 6px;font-weight:600}.al-review label{display:block;margin:10px 0;font-size:.9rem}.al-review input[type=checkbox]{width:17px;height:17px;accent-color:var(--accent-solid);margin-inline-end:9px;vertical-align:middle}.al-review .al-check{display:flex;align-items:flex-start;gap:10px;margin:0;padding:10px 0;border-bottom:1px solid var(--line);cursor:pointer}.al-review .al-check input{flex:0 0 17px;margin:3px 0 0}.al-review .al-check span{min-width:0}.al-library-notes{margin-top:24px;margin-bottom:0;font-size:.85rem;color:var(--gray-600);background:var(--surface-alt)}.al-library-notes>summary{color:var(--gray-700)}.al-code{display:block;max-width:100%;max-height:460px;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;background:var(--code-bg);border:1px solid var(--line);border-radius:8px;padding:14px;font-family:var(--font-mono);font-size:.78rem;line-height:1.6}.al-trial-dialog{position:fixed;top:0;right:0;bottom:0;left:0;width:min(1280px,calc(100vw - 2rem));height:calc(100vh - 2rem);height:calc(100dvh - 2rem);max-width:100vw;max-height:100vh;max-height:100dvh;margin:auto;padding:0;overflow:hidden;border:1px solid var(--line-strong);border-radius:14px;color:var(--gray-900);background-color:var(--bg);background-image:linear-gradient(var(--surface),var(--surface));font:inherit;text-align:start;box-shadow:var(--shadow-modal)}.al-trial-dialog:not([open]){display:none}.al-trial-dialog[open]{display:grid;grid-template-rows:auto minmax(0,1fr)}.al-trial-dialog::backdrop{background:var(--overlay)}.al-trial-dialog-header{min-width:0;padding:18px 24px;border-bottom:1px solid var(--line)}.al-trial-dialog-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;min-width:0}.al-trial-dialog-heading>div{flex:1 1 0;min-width:0}.activity-library .al-trial-dialog-heading h2{margin:0;font-size:clamp(1.15rem,2vw,1.5rem);overflow-wrap:anywhere}.al-trial-dialog-heading .al-meta{margin:6px 0 0}.al-trial-dialog-header>.al-status,.al-trial-dialog-header>.al-error{display:block;margin:12px 0 0;max-height:20vh;overflow:auto}.activity-library .al-trial-dialog-close{flex:0 0 auto;width:auto;min-height:44px;padding:8px 14px;white-space:nowrap}.al-trial-dialog-close>span{font-size:1.3em;line-height:1}.al-trial-dialog-body{min-width:0;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-gutter:stable;padding:22px 24px;-webkit-overflow-scrolling:touch}.al-trial-dialog-body>:last-child{margin-bottom:0}.al-trial-dialog-body .model-switcher{max-width:100%;min-width:0}@media(max-width:600px){.al-trial-dialog{width:100%;height:100vh;height:100dvh;margin:0;border:0;border-radius:0}.al-trial-dialog-header{padding:max(12px,env(safe-area-inset-top)) 14px 12px}.al-trial-dialog-heading{gap:10px}.al-trial-dialog-heading .al-eyebrow,.al-trial-dialog-heading .al-meta{font-size:.75rem}.activity-library .al-trial-dialog-close{padding:8px 10px}.al-trial-dialog-body{padding:14px 12px max(16px,env(safe-area-inset-bottom))}.al-trial-dialog-body .al-test-form{padding:14px}.al-trial-dialog-body .text-input{font-size:16px}}@media(max-height:500px){.al-trial-dialog{height:100vh;height:100dvh}.al-trial-dialog-header{padding:8px 14px}.activity-library .al-trial-dialog-heading h2{font-size:1rem}.al-trial-dialog-heading .al-eyebrow,.al-trial-dialog-heading .al-meta{margin:2px 0;font-size:.7rem}.al-trial-dialog-body{padding:12px 14px}}@media(max-width:1050px){.al-browser-grid{grid-template-columns:minmax(210px,30%) minmax(0,1fr);gap:18px}.al-competency-content{padding-inline-start:18px}.al-browse-filters{grid-template-columns:minmax(0,1fr)}.al-activity-grid{padding:10px;gap:10px}.al-activity-card{padding:12px}}@media(max-width:760px){.al-browser-grid{display:block}.al-competency-list,.al-nav-heading{display:none}.al-mobile-competency{display:block;margin-bottom:20px}.al-competency-content{border-inline-start:0;padding-inline-start:0}.al-track-bar{gap:10px;padding:14px}.al-track-picker{flex:1 1 100%}.al-track-summary{flex:1 1 100%;font-size:.83rem}.al-browse-filters{grid-template-columns:minmax(0,1fr) minmax(155px,.7fr)}.al-detail-grid,.al-form-grid{grid-template-columns:minmax(0,1fr)}.al-workspace-header{display:block}.al-section{padding:16px}.al-recent-card{padding:14px}}@media(max-width:520px){.activity-library.panel{padding:18px 14px}.activity-library h2{font-size:1.25rem}.al-competency-header h3{font-size:1.12rem}.al-browse-filters,.al-activity-grid{grid-template-columns:minmax(0,1fr)}.al-targets{grid-template-columns:minmax(0,1fr);gap:5px}.al-targets dd{margin-bottom:10px}.al-mode-button{padding:8px 10px;font-size:.85rem!important}.al-dimension-group>summary{padding:12px}.al-dimension-group>summary .al-count{margin-top:4px}.al-actions{align-items:stretch}.al-actions>button{flex:1 1 100%}.al-review{padding:14px}.al-recent-card .btn-secondary{width:100%}}@media(prefers-reduced-motion:reduce){.activity-library *,.activity-library *:before,.activity-library *:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}:root,.theme-swatch-pine{--pine-900: #0b5942;--pine-600: #178a66;--pine-100: #eaf4ef;--pine-border: #bfd9ce;--amber-900: #7a4e0c;--amber-100: #fbf0dc;--amber-dot: #d9940f;--gray-900: #1b1f1d;--gray-700: #31423a;--gray-600: #565d58;--gray-500: #8b919b;--gray-400: #aeb6b0;--gray-emerging-100: #ecedef;--gray-emerging-900: #4a4f57;--gray-emerging-dot: #8b919b;--avail-100: #e4f2ec;--line: #e2e6e3;--line-strong: #c9cfca;--bg: #f7f8f7;--surface: #ffffff;--surface-alt: #f4f6f4;--input-bg: #fdfdfc;--error-100: #fbecec;--error-900: #8a2323;--pine-200: #d7e0dc;--pine-150: #ddeee6;--pine-700: #0e6d51;--pine-050: rgba(45, 90, 75, .06);--accent-solid: var(--pine-900);--accent-solid-hover: var(--pine-700);--accent-solid-alt: var(--pine-600);--on-accent: #ffffff;--warn-solid: var(--amber-900);--danger-solid: var(--error-900);--emerging-solid: var(--gray-emerging-900);--amber-border: rgba(217, 148, 15, .35);--page-bg: var(--bg);--page-bg-attachment: scroll;--surface-blur: none;--surface-shadow: none;--overlay: rgba(20, 24, 22, .5);--shadow-pop: 0 8px 28px rgba(0, 0, 0, .14);--shadow-lift: 0 10px 28px rgba(20, 24, 22, .12);--shadow-modal: 0 24px 64px rgba(20, 24, 22, .28);--shadow-pill: 0 2px 6px rgba(20, 24, 22, .14);--shadow-pill-hover: 0 4px 12px rgba(20, 24, 22, .22);--shadow-float: 0 2px 10px rgba(11, 89, 66, .18);--code-bg: rgba(0, 0, 0, .05);--focus-width: 2px;--cjk-font: "Noto Sans SC";--i18n-scripts: var(--cjk-font), "Noto Sans Arabic", "Noto Sans Hebrew", "Noto Sans Thai", "Noto Sans Devanagari";--font-display: "Space Grotesk", var(--i18n-scripts), "Avenir Next", "Segoe UI", sans-serif;--font-body: "Inter", var(--i18n-scripts), "Helvetica Neue", Arial, sans-serif;--font-mono: "IBM Plex Mono", "SF Mono", Consolas, monospace}html:lang(ja){--cjk-font: "Noto Sans JP"}html:lang(ko){--cjk-font: "Noto Sans KR"}*{box-sizing:border-box}body{margin:0;background:var(--page-bg);background-attachment:var(--page-bg-attachment);color:var(--gray-900);font-family:var(--font-body);-webkit-font-smoothing:antialiased}:focus-visible{outline:var(--focus-width) solid var(--pine-600);outline-offset:2px;border-radius:4px}.panel,.hero,.xp-card,.tier-card,.primer-strip,.more-panel,.library-item,.option-btn,.stat,.modal,.suggest-modal,.suggest-toggle,.story-scene,.story-col,.story-misfire,.cur-frame,.cur-col,.cur-skill,.lesson-score{-webkit-backdrop-filter:var(--surface-blur);backdrop-filter:var(--surface-blur)}.panel,.hero,.xp-card,.tier-card,.primer-strip,.more-panel,.library-item,.stat{box-shadow:var(--surface-shadow)}button{font-family:inherit}.page{min-height:100vh;padding:0 16px 64px}.container{max-width:720px;margin:0 auto;padding-top:48px}.kicker{font-family:var(--font-mono);font-size:12px;letter-spacing:.12em;color:var(--pine-600);margin:0;text-transform:uppercase}.topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.topbar-brand{display:flex;align-items:center;gap:8px;min-width:0}.org-mark{display:inline-flex;align-items:center;gap:8px;color:var(--gray-700);text-decoration:none;font-size:13px;flex:none}a.org-mark:hover .org-name{text-decoration:underline}.org-logo{display:block;width:auto;object-fit:contain}.org-mark-bar .org-logo{height:28px;max-width:120px}.org-name{font-weight:500}.title-row{display:flex;align-items:center;gap:16px;margin:8px 0 6px}.title-row>div{min-width:0}.title-row .title{margin:0}.org-mark-hero .org-logo{height:64px;max-width:200px}@media(max-width:480px){.org-mark-hero .org-logo{height:48px}}.brand-tagline{margin:6px 0 0;font-size:14px;color:var(--pine-600)}.experiment-notice{display:flex;align-items:baseline;gap:10px;margin:0 0 14px;padding:8px 12px;border:1px solid var(--warn-solid);border-radius:8px;background:var(--surface);color:var(--gray-700);font-size:13px;line-height:1.5}.experiment-notice a{color:inherit}.experiment-tag{flex:none;font-family:var(--font-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--on-accent);background:var(--warn-solid);border-radius:4px;padding:1px 6px}.brand-footer p{margin:8px 0 0}.brand-footer-line{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 16px}.topbar-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.auth-control{display:flex;align-items:center;gap:8px}.auth-providers{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.auth-btn{font-family:var(--font-mono);font-size:12px;letter-spacing:.04em;color:var(--pine-900);background:var(--surface);border:1px solid var(--line-strong);border-radius:6px;padding:6px 12px;cursor:pointer;text-decoration:none;line-height:1.4}.auth-btn:hover{border-color:var(--pine-600);background:var(--pine-100)}.auth-btn-ghost{color:var(--gray-600)}.auth-control{position:relative}.auth-modal{width:min(420px,100%)}.auth-body{display:flex;flex-direction:column;gap:14px}.auth-reason{margin:0;font-size:13px;line-height:1.6;color:var(--gray-700)}.auth-providers-list{display:flex;flex-direction:column;gap:8px}.auth-provider-btn{display:flex;align-items:center;justify-content:center;gap:10px;min-height:42px;padding:10px 14px;font-size:14px;font-weight:600;color:var(--gray-900);background:var(--surface);border:1px solid var(--line-strong);border-radius:8px;text-decoration:none;cursor:pointer;transition:border-color .12s ease,background .12s ease}.auth-provider-btn:hover,.auth-provider-btn:focus-visible{border-color:var(--pine-600);background:var(--pine-100)}.auth-provider-mark{width:18px;height:18px;flex:none}.auth-divider{display:flex;align-items:center;gap:12px;margin:0;font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--gray-500)}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:var(--line)}.auth-fineprint{margin:0;padding-top:12px;border-top:1px solid var(--line);font-size:11.5px;line-height:1.55;color:var(--gray-500)}.email-auth{display:flex;flex-direction:column;gap:10px}.email-auth-title{margin:0;font-family:var(--font-mono);font-size:13px;font-weight:600;color:var(--pine-900)}.email-auth-field{display:flex;flex-direction:column;gap:5px;font-size:12px;font-weight:600;color:var(--gray-700)}.email-auth-field input{font:inherit;font-size:14px;font-weight:400;min-height:40px;padding:9px 11px;border:1px solid var(--line-strong);border-radius:8px;background:var(--surface);color:var(--gray-900)}.email-auth-field input:focus{outline:none;border-color:var(--pine-600);box-shadow:0 0 0 3px var(--pine-100)}.auth-submit{flex:1;min-height:42px;padding:10px 16px;font-family:inherit;font-size:14px;font-weight:600;color:var(--on-accent);background:var(--accent-solid);border:none;border-radius:8px;cursor:pointer;transition:background .12s ease}.auth-submit:hover:not(:disabled){background:var(--accent-solid-alt)}.auth-submit:disabled{background:var(--gray-400);cursor:default}.email-auth-hint{color:var(--gray-600);font-size:11px}.email-auth-actions{display:flex;align-items:stretch;gap:8px;margin-top:4px}.email-auth-links{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 12px;margin-top:2px}.email-auth-notice{font-size:12px;color:var(--pine-900);background:var(--pine-100);border-radius:6px;padding:8px 10px;margin:0}.email-auth-error{font-size:12px;color:var(--error-900);margin:0}.linkish{background:none;border:none;padding:0;font-size:12px;color:var(--pine-600);cursor:pointer;text-decoration:underline}.linkish:disabled{color:var(--gray-600);cursor:default}.auth-user{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--gray-700);max-width:220px}.auth-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.auth-avatar{width:24px;height:24px;border-radius:50%;object-fit:cover}.auth-notice{margin:12px 0 0;color:var(--gray-700);font-size:14px}.hero{margin:8px 0 16px;padding:26px 28px;background:var(--surface);border:1px solid var(--line);border-radius:12px}.hero-kicker{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.09em;text-transform:uppercase;color:var(--gray-500);margin:0 0 12px}.hero-outcomes{list-style:none;margin:0 0 24px;padding:0;display:grid;gap:14px}.hero-outcomes li{display:grid;gap:3px;padding-left:14px;border-left:2px solid var(--pine-border)}.hero-outcome-label{font-family:var(--font-display);font-size:15px;font-weight:500;color:var(--gray-900);line-height:1.35}.hero-outcome-detail{font-size:13px;line-height:1.55;color:var(--gray-600)}.hero-primary{display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding-top:20px;border-top:1px solid var(--line)}.hero-primary .hero-cta{flex:0 0 auto;width:auto;padding-inline:30px}.hero-primary .hero-note{flex:1 1 240px;margin:0;font-size:13px;line-height:1.5}.hero-secondary{display:flex;gap:18px;flex-wrap:wrap;margin-top:18px;padding-top:14px;border-top:1px solid var(--line);font-size:13px}.hero-join{margin:0 0 26px;padding:18px 22px;background:var(--surface-alt);border:1px dashed var(--line-strong);border-radius:12px;display:flex;align-items:center;gap:20px;flex-wrap:wrap}.hero-join-text{flex:1 1 320px;min-width:0}.hero-join-text .hero-kicker{margin-bottom:5px}.hero-join-note{margin:0;font-size:13px;line-height:1.55;color:var(--gray-600)}.hero-join-form{display:flex;align-items:center;gap:8px;flex:none}.hero-join-ok,.hero-join-error{flex-basis:100%;margin:4px 0 0;font-size:13px}.hero-join-ok{color:var(--pine-900)}.hero-join-error{color:var(--danger-solid)}@media(max-width:560px){.hero{padding:20px 18px}.hero-primary .hero-cta,.hero-join-form{width:100%}.hero-join-form .join-input{flex:1}}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.hero-cta{font-size:16px;padding:12px 22px}.hero-note{margin:16px 0 0;font-size:14px;color:var(--gray-600)}.library{margin:8px 0 24px}.library-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.library-title{font-family:var(--font-display);font-size:22px;margin:0 0 12px}.library-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.library-item{width:100%;display:flex;align-items:center;gap:12px;text-align:start;padding:12px 14px;background:var(--surface);border:1px solid var(--line);border-radius:8px;cursor:pointer}.library-item:hover{border-color:var(--pine-600)}.library-item-title{flex:1;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.library-item-date{font-family:var(--font-mono);font-size:12px;color:var(--gray-500)}.library-detail{margin-top:16px}.library-cards{margin:8px 0 0;padding-inline-start:18px;line-height:1.7}.doc-text{white-space:pre-wrap;word-break:break-word;font-family:var(--font-mono);font-size:13px;line-height:1.6;color:var(--gray-900);margin:8px 0 0}.error-text{color:var(--error-900);font-size:14px}.title{font-family:var(--font-display);font-size:34px;font-weight:600;margin:8px 0 6px;line-height:1.15}.title-accent{border-bottom:3px solid var(--pine-600)}.lede{font-size:15px;color:var(--gray-600);margin:0 0 32px;line-height:1.6}.journey{margin:4px 0 24px}.journey-track{display:flex;align-items:flex-start;list-style:none;margin:0;padding:0}.journey-step{flex:1;position:relative;min-width:0}.journey-step+.journey-step:before{content:"";position:absolute;top:13px;inset-inline-start:-50%;width:100%;height:2px;background:var(--line-strong)}.journey-step-done+.journey-step:before,.journey-step-done+.journey-step-current:before{background:var(--pine-600)}.journey-btn{position:relative;display:flex;flex-direction:column;align-items:center;gap:6px;width:100%;padding:0 4px;background:none;border:none;cursor:pointer}.journey-dot{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-family:var(--font-mono);font-size:12px;border:2px solid var(--line-strong);background:var(--surface);color:var(--gray-600)}.journey-step-current .journey-dot{border-color:var(--accent-solid);background:var(--accent-solid);color:var(--on-accent)}.journey-step-done .journey-dot{border-color:var(--pine-600);color:var(--pine-600)}.journey-btn:hover .journey-dot{border-color:var(--pine-600)}.journey-label{font-size:12px;line-height:1.3;text-align:center;color:var(--gray-600)}.journey-step-current .journey-label{color:var(--pine-900);font-weight:600}.journey-note{font-family:var(--font-mono);font-size:10px;color:var(--pine-600)}.journey-detail{margin-top:12px;padding:14px 16px;border:1px solid var(--line);border-radius:10px;background:var(--surface-alt);font-size:14px;line-height:1.55;color:var(--gray-700)}.journey-detail p{margin:0 0 10px}.journey-detail-title{display:flex;flex-direction:column;gap:2px;font-weight:600;color:var(--gray-900)}.journey-detail-kicker{font-family:var(--font-mono);font-size:11px;font-weight:400;letter-spacing:.08em;text-transform:uppercase;color:var(--pine-600)}.journey-detail-get{color:var(--pine-900)}.journey-kicker{margin-top:20px;margin-bottom:10px}@media(max-width:480px){.journey-label{font-size:11px}.journey-dot{width:24px;height:24px}.journey-step+.journey-step:before{top:11px}}.meter{margin-bottom:28px}.meter-labels{display:flex;justify-content:space-between;margin-bottom:6px;font-family:var(--font-mono);font-size:11px}.meter-labels .label{color:var(--gray-600)}.meter-labels .value{color:var(--pine-600)}.meter-track{height:4px;background:var(--line);border-radius:2px;overflow:hidden}.meter-fill{height:100%;background:var(--pine-600);border-radius:2px;transition:width .6s ease}.trail{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:28px;padding:0;list-style:none}.trail li{display:flex;align-items:center;gap:8px}.trail-sep{color:var(--gray-400);font-size:12px}.trail-crumb{border:1px solid var(--pine-border);background:var(--pine-100);color:var(--pine-900);border-radius:6px;padding:5px 12px;font-size:13px;font-weight:500;cursor:pointer}.trail-crumb:hover{background:var(--pine-150)}.trail-restart{border:1px solid var(--line-strong);background:var(--surface);border-radius:6px;padding:5px 10px;font-size:12px;font-family:var(--font-mono);cursor:pointer;color:var(--gray-600)}.trail-restart:hover{color:var(--gray-900)}.panel{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:28px 32px}@media(max-width:480px){.panel{padding:20px 18px}}.step-label{font-family:var(--font-mono);font-size:11px;color:var(--gray-500);margin:0 0 4px}.step-question{font-family:var(--font-display);font-size:20px;font-weight:600;margin:0 0 18px}.error-banner{background:var(--error-100);color:var(--error-900);border-radius:8px;padding:10px 14px;font-size:13px;margin-bottom:16px}.error-banner button{margin-inline-start:8px;border:1px solid var(--error-900);background:transparent;color:var(--error-900);border-radius:5px;padding:2px 10px;font-size:12px;cursor:pointer}.select,.text-input{width:100%;padding:12px 14px;font-size:15px;border-radius:8px;border:1px solid var(--line-strong);background:var(--input-bg);color:var(--gray-900);font-family:var(--font-body)}.select{margin-bottom:12px;cursor:pointer}.divider{display:flex;align-items:center;gap:10px;margin-bottom:12px;font-size:12px;color:var(--gray-500)}.divider:before,.divider:after{content:"";flex:1;height:1px;background:var(--line)}.text-input{margin-bottom:20px}.btn-primary{width:100%;padding:13px;font-size:15px;font-weight:500;font-family:var(--font-display);border-radius:8px;border:none;cursor:pointer;background:var(--accent-solid);color:var(--on-accent);transition:background .2s}.btn-primary:hover:not(:disabled){background:var(--accent-solid-hover)}.btn-primary:disabled{background:var(--line);color:var(--gray-500);cursor:default}.btn-secondary{width:100%;padding:13px;font-size:14px;font-weight:500;font-family:var(--font-display);border-radius:8px;border:1px solid var(--line-strong);background:var(--surface);color:var(--gray-900);cursor:pointer;margin-top:6px}.btn-secondary:hover{background:var(--surface-alt)}.loading-panel{text-align:center;padding:40px 32px}.spinner{display:inline-block;width:28px;height:28px;border:3px solid var(--line);border-top-color:var(--pine-600);border-radius:50%;animation:spin .8s linear infinite}.waiting-movie{display:block;width:min(320px,100%);max-height:200px;margin:0 auto;object-fit:cover;border-radius:12px;border:1px solid var(--line);background:var(--pine-100)}@keyframes spin{to{transform:rotate(360deg)}}.loading-text{font-size:14px;color:var(--gray-600);margin-top:16px}.intro-banner{font-size:15px;color:var(--gray-700);background:var(--pine-100);border:1px solid var(--pine-border);border-radius:10px;padding:14px 18px;line-height:1.6;margin-bottom:20px}.tier-lead{font-size:14px;color:var(--gray-700);margin:0 0 16px;line-height:1.55}.tier-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;margin-bottom:20px}.offer-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;margin-bottom:14px}.offer-cards .primer-strip,.offer-cards .literacy-card{background:var(--pine-100)}.tier-card{display:flex;flex-direction:column;gap:8px;text-align:start;background:var(--surface);border:1px solid var(--line-strong);border-top:4px solid var(--line-strong);border-radius:12px;padding:18px 18px 16px;cursor:pointer;transition:transform .08s ease,box-shadow .12s ease,border-color .12s ease}.tier-card:hover:not(:disabled),.tier-card:focus-visible{transform:translateY(-2px);box-shadow:var(--shadow-lift)}.tier-card:disabled{opacity:.5;cursor:default}.tier-card-simple{border-top-color:var(--pine-600)}.tier-card-complex{border-top-color:var(--amber-dot)}.tier-card-challenging{border-top-color:var(--pine-900)}.tier-card-advanced{border-top-color:var(--emerging-solid)}.tasks-row{margin-bottom:20px}.tasks-lead{margin:4px 0 10px}.tasks-lead-title{font-family:var(--font-display);font-size:17px;font-weight:600;color:var(--gray-900);margin:0 0 2px}.tasks-lead-blurb{font-size:13px;color:var(--gray-600);margin:0}.task-cards{margin-bottom:8px}.task-card-title{font-size:14px;font-weight:600;line-height:1.4;color:var(--gray-900);padding-top:8px;border-top:1px dashed var(--line)}.task-card-time{font-family:var(--font-mono);font-size:11px;color:var(--gray-600);margin-top:-4px}.task-card:disabled .task-card-title{font-weight:400;font-style:italic}.tasks-error{font-size:13px;color:var(--danger-solid);margin:4px 0 8px}.task-modal{width:min(720px,100%);border-top:4px solid var(--line-strong)}.task-modal-simple{border-top-color:var(--pine-600)}.task-modal-complex{border-top-color:var(--amber-dot)}.task-modal-challenging{border-top-color:var(--pine-900)}.task-body{overflow-y:auto;display:flex;flex-direction:column;gap:12px}.task-deliverable{font-size:16px;font-weight:600;color:var(--gray-900);margin:0}.task-why{color:var(--gray-700);margin:0}.task-split{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.task-split-col{border:1px solid var(--line);border-radius:10px;padding:12px 14px;font-size:14px}.task-split-col p{margin:0}.task-split-me{background:var(--pine-100)}.task-split-label,.task-section-label{font-family:var(--font-mono);font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--pine-900);margin:0 0 6px!important}.task-section-label{margin-bottom:-6px!important}.task-steps{margin:0;padding-inline-start:22px;display:flex;flex-direction:column;gap:6px}.task-checks{border-inline-start:3px solid var(--amber-dot);padding-inline-start:12px;display:flex;flex-direction:column;gap:6px;font-size:14px}.task-checks p{margin:0}.task-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:4px}.task-done{margin:0;color:var(--pine-900);font-weight:600}.task-base{display:flex;flex-direction:column;gap:12px}.task-base[hidden]{display:none}.task-base-toggle{align-self:flex-start;font-size:13px}.harder-door{border:1px dashed var(--pine-600);border-radius:12px;padding:14px 16px;background:var(--pine-100)}.harder-door-btn{display:flex;flex-direction:column;gap:4px;width:100%;text-align:start;background:none;border:0;padding:0;cursor:pointer;color:inherit}.harder-door-title{font-family:var(--font-display);font-size:16px;font-weight:600;color:var(--pine-900)}.harder-door-blurb{font-size:13px;color:var(--gray-700)}.harder-panel{display:flex;flex-direction:column;gap:12px}.harder-lead{margin:0;font-size:14px}.harder-lead-note{color:var(--gray-600)}.harder-field{border:0;padding:0;margin:0}.harder-options{display:flex;flex-wrap:wrap;gap:6px}.harder-options .chip{font:inherit;font-size:13px;padding:6px 12px;border:1px solid var(--pine-border);border-radius:999px;background:var(--surface);color:var(--pine-900);cursor:pointer;text-align:start}.harder-options .chip:hover{background:var(--pine-100)}.harder-options .chip.selected{background:var(--accent-solid);border-color:var(--accent-solid);color:var(--on-accent)}.harder-level{margin:0;font-family:var(--font-mono);font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--pine-900)}.harder-top{font-size:13px;color:var(--gray-600)}.advanced-row{display:grid;grid-template-columns:1fr;margin-bottom:20px}.advanced-card{flex-direction:row;flex-wrap:wrap;align-items:center;column-gap:18px;row-gap:8px;border-top-width:1px;border-inline-start:4px solid var(--emerging-solid);background:var(--surface)}.advanced-card .tier-card-top{flex:0 0 auto}.advanced-card .tier-card-label{font-size:18px}.advanced-card .tier-card-blurb{flex:1 1 260px}.advanced-card .tier-card-literacy{margin-top:0;flex:0 0 auto}.advanced-card .tier-card-cta{flex:0 0 auto;padding-top:0}.advanced-card-top{gap:12px}.advanced-icon{flex:0 0 auto;color:var(--emerging-solid)}.advanced-card:hover:not(:disabled) .advanced-icon,.advanced-card:focus-visible .advanced-icon{color:var(--pine-900)}.frontier-modal{max-width:720px}.frontier-context{margin:0 0 16px;padding:10px 14px;border-inline-start:3px solid var(--emerging-solid);background:var(--pine-100);border-radius:8px;font-size:13.5px;line-height:1.6;color:var(--gray-900)}.frontier-context-tag{font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--emerging-solid);margin-inline-end:6px}.frontier-toc{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 22px}.frontier-toc .frontier-kind{text-decoration:none;cursor:pointer}.frontier-kind-technology{border-color:var(--accent-solid);color:var(--accent-solid)}.frontier-kind-research{border-color:var(--pine-900);color:var(--pine-900)}.frontier-kind-application{border-color:var(--warn-solid);color:var(--warn-solid)}.frontier-kind-tomorrow{border-color:var(--emerging-solid);color:var(--emerging-solid)}.frontier-section{scroll-margin-top:12px}.frontier-list{counter-reset:frontier}.frontier-item{counter-increment:frontier;position:relative;padding-inline-start:30px}.frontier-item:before{content:counter(frontier);position:absolute;inset-inline-start:0;top:2px;width:20px;height:20px;border-radius:999px;border:1px solid var(--line-strong);font-family:var(--font-mono);font-size:10.5px;line-height:20px;text-align:center;color:var(--gray-600)}.frontier-item+.frontier-item:before{top:16px}.frontier-for-me{margin:5px 0 0;font-size:13.5px;line-height:1.6;color:var(--gray-700)}.frontier-sources{margin:4px 0 0;font-size:12.5px;line-height:1.6;color:var(--gray-700);overflow-wrap:anywhere}.frontier-sources-label{font-weight:600}.frontier-sources a{color:var(--pine-600)}.frontier-grounding-stamp{white-space:nowrap;font-variant-numeric:tabular-nums}.frontier-drill-btn{margin-top:6px;padding:2px 0;background:none;border:none;font-family:var(--font-mono);font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--pine-900);cursor:pointer}.frontier-drill-btn:hover,.frontier-drill-btn:focus-visible{text-decoration:underline}.frontier-drill{margin-top:8px;padding:10px 12px;border-inline-start:2px solid var(--line-strong);background:var(--surface-2, var(--surface));border-radius:0 8px 8px 0}.frontier-drill-wait{display:flex;align-items:center;gap:9px;margin:0;font-size:13px;color:var(--gray-600)}.frontier-drill-text{margin:0;font-size:13px}.frontier-own-ai{margin-top:22px;border:1px dashed var(--line-strong);border-radius:10px;overflow:hidden}.frontier-own-ai-toggle{display:flex;flex-direction:column;gap:4px;width:100%;text-align:start;padding:12px 14px;background:var(--pine-100);border:none;cursor:pointer}.frontier-own-ai-toggle:hover,.frontier-own-ai-toggle:focus-visible{background:var(--surface)}.frontier-own-ai-title{font-family:var(--font-display);font-weight:600;font-size:14px;color:var(--gray-900)}.frontier-own-ai-blurb{font-size:12.5px;line-height:1.5;color:var(--gray-600)}.frontier-own-ai-body{padding:12px 14px 14px}.frontier-own-ai-note{margin:0 0 10px;font-size:12.5px;line-height:1.5;color:var(--gray-600)}.frontier-own-ai-actions{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.frontier-own-ai-prompt{margin:0;max-height:260px;overflow:auto;font-size:12px}.tier-card-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.tier-card-label{font-family:var(--font-display);font-size:18px;font-weight:600;color:var(--gray-900)}.tier-card-count{font-family:var(--font-mono);font-size:13px;min-width:26px;height:26px;padding:0 8px;border-radius:99px;display:inline-flex;align-items:center;justify-content:center;background:var(--pine-100);color:var(--pine-900)}.tier-card-blurb{font-size:13px;color:var(--gray-600);line-height:1.5}.tier-card-apps{display:flex;flex-wrap:wrap;gap:6px;margin-top:2px}.tier-card-app{font-size:11.5px;color:var(--gray-700);background:var(--pine-100);border-radius:6px;padding:3px 8px;white-space:nowrap}.tier-card-literacy{margin-top:auto;display:inline-flex;align-items:center;justify-content:center;text-align:center;gap:6px;padding:10px 14px;border-radius:10px;font-family:var(--font-display);font-size:14px;font-weight:600;line-height:1.3;color:var(--on-accent);box-shadow:var(--shadow-pill)}.tier-card-literacy-simple{background:var(--accent-solid-alt)}.tier-card-literacy-complex{background:var(--warn-solid)}.tier-card-literacy-challenging{background:var(--danger-solid)}.tier-card-literacy-advanced{background:var(--emerging-solid)}.tier-card:hover:not(:disabled) .tier-card-literacy,.tier-card:focus-visible .tier-card-literacy{box-shadow:var(--shadow-pill-hover)}.tier-card:disabled .tier-card-literacy{background:var(--gray-400)}.tier-card-cta{padding-top:2px;font-family:var(--font-mono);font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--pine-900)}.tier-modal{width:min(780px,100%)}.tier-modal-body{overflow-y:auto}.tier-invite{margin:0 0 16px;padding:16px 18px;border:1px dashed var(--line);border-radius:12px;background:var(--pine-050);font-size:14px;line-height:1.6;color:var(--gray-700)}.tier-ladder{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}@media(max-width:620px){.tier-ladder{grid-template-columns:1fr}}.tier-step{display:flex;align-items:flex-start;gap:10px;text-align:start;padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:var(--surface);cursor:pointer;transition:border-color .15s ease,transform .15s ease}.tier-step:hover,.tier-step:focus-visible{border-color:var(--pine-600);transform:translateY(-1px)}.tier-step-up{grid-column:2}@media(max-width:620px){.tier-step-up{grid-column:1}}.tier-step-dir{font-family:var(--font-mono);font-size:15px;line-height:1.4;color:var(--pine-600)}.tier-step-body{display:flex;flex-direction:column;gap:3px}.tier-step-label{font-family:var(--font-display);font-size:14px;font-weight:600;color:var(--pine-900)}.tier-step-blurb{font-size:12.5px;line-height:1.45;color:var(--gray-600)}.tier-step-end{align-self:center;padding:14px 16px;font-size:12.5px;line-height:1.45;color:var(--gray-500)}.xp-card{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:22px 24px;margin-bottom:14px}.xp-head{display:flex;gap:14px;align-items:flex-start;margin-bottom:12px}.xp-monogram{width:44px;height:44px;border-radius:11px;background:var(--accent-solid);color:var(--on-accent);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:600;font-size:16px;flex-shrink:0}.xp-headline{flex:1;min-width:0}.xp-title-row{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}.xp-name{font-family:var(--font-display);font-size:17px;font-weight:600;margin:0}.xp-badges{display:flex;flex-direction:column;align-items:flex-end;gap:5px}.badge{font-size:12px;padding:4px 12px;border-radius:99px;white-space:nowrap;display:inline-flex;align-items:center;gap:6px}.badge .dot{width:7px;height:7px;border-radius:50%;display:inline-block}.badge-available{background:var(--avail-100);color:var(--pine-900)}.badge-available .dot{background:var(--pine-600)}.badge-buildable{background:var(--amber-100);color:var(--amber-900)}.badge-buildable .dot{background:var(--amber-dot)}.badge-emerging{background:var(--gray-emerging-100);color:var(--gray-emerging-900)}.badge-emerging .dot{background:var(--gray-emerging-dot)}.mode-badge{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.06em;padding:3px 10px;border-radius:99px;border:1px solid var(--line-strong);color:var(--gray-700);white-space:nowrap;text-transform:uppercase}.cx-badge{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.06em;padding:3px 10px;border-radius:99px;white-space:nowrap;text-transform:uppercase;border:1px solid transparent}.cx-badge-simple{background:var(--avail-100);color:var(--pine-900)}.cx-badge-complex{background:var(--amber-100);color:var(--amber-900)}.cx-badge-challenging{background:var(--accent-solid-alt);color:var(--on-accent)}.cx-badge-ready{background:var(--pine-100);color:var(--pine-900);border-color:var(--line)}.cx-badge-frontier{background:var(--emerging-solid);color:var(--on-accent)}.xp-tagline{font-size:13px;color:var(--gray-500);margin:2px 0 0;font-style:italic}.xp-does{font-size:14px;color:var(--gray-700);line-height:1.65;margin:0 0 14px}.xp-day{background:var(--surface-alt);border-radius:8px;padding:12px 16px;margin-bottom:12px}.xp-day-label{font-family:var(--font-mono);font-size:11px;color:var(--gray-500);margin:0 0 8px;letter-spacing:.08em}.xp-day ul{margin:0;padding:0;list-style:none}.xp-day li{font-size:13.5px;color:var(--gray-700);margin:0 0 6px;line-height:1.5}.xp-day li:before{content:"▸";color:var(--pine-600);margin-inline-end:8px}.xp-caveat{font-size:12.5px;color:var(--gray-500);margin:0 0 12px;line-height:1.5}.xp-actions{display:flex;gap:8px;flex-wrap:wrap}.xp-action-btn{flex:1 1 140px;padding:9px 10px;font-size:12.5px;font-weight:500;font-family:var(--font-display);border-radius:7px;cursor:pointer;border:1px solid var(--line-strong);background:var(--surface);color:var(--gray-700)}.xp-action-btn:hover{border-color:var(--pine-900);background:var(--pine-100);color:var(--pine-900)}.xp-card-available{border-inline-start:4px solid var(--pine-600)}.xp-card-buildable{border-inline-start:4px solid var(--amber-dot)}.xp-card-emerging{border-inline-start:4px solid var(--gray-emerging-dot)}.xp-card-buildable .xp-monogram{background:var(--warn-solid)}.xp-card-emerging .xp-monogram{background:var(--emerging-solid)}.xp-ask-btn{flex-basis:100%;border-style:dashed}.xp-aaa-btn{flex-basis:100%;font-weight:600;color:var(--on-accent);background:var(--accent-solid-alt);border-color:var(--pine-900)}.xp-aaa-btn:hover{background:var(--accent-solid);border-color:var(--pine-900);color:var(--on-accent)}.more-panel{margin:18px 0;padding:18px 20px;background:var(--surface-alt);border:1px solid var(--line);border-radius:12px}.more-title{font-family:var(--font-display);font-weight:600;font-size:14px;margin:0 0 12px;color:var(--gray-900)}.more-axis{display:flex;align-items:baseline;gap:12px;margin-bottom:10px;flex-wrap:wrap}.more-axis-label{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--gray-500);min-width:52px}.more-chips{display:flex;gap:8px;flex-wrap:wrap}.more-chip{font-size:12.5px;padding:6px 12px;border-radius:99px;border:1px solid var(--line-strong);background:var(--surface);color:var(--gray-700);cursor:pointer;font-family:var(--font-display)}.more-chip:hover{border-color:var(--pine-600)}.more-chip.selected{font-weight:700;border-color:currentColor;box-shadow:inset 0 0 0 1px currentColor}.more-chip.badge-available{background:var(--avail-100);color:var(--pine-900)}.more-chip.badge-buildable{background:var(--amber-100);color:var(--amber-900)}.more-chip.badge-emerging{background:var(--gray-emerging-100);color:var(--gray-emerging-900)}.more-dream{display:flex;flex-direction:column;gap:6px;margin-bottom:10px}.more-dream-label{min-width:0}.more-dream-input{width:100%;box-sizing:border-box;resize:vertical;min-height:56px;padding:8px 10px;font:inherit;font-size:13px;line-height:1.5;color:var(--gray-900);background:var(--surface);border:1px solid var(--line-strong);border-radius:8px}.more-dream-input:focus{outline:2px solid var(--pine-600);outline-offset:1px}.more-go{margin-top:8px}.ask-panel{display:flex;flex-direction:column;min-height:320px}.ask-log{flex:1;overflow-y:auto;max-height:46vh;display:flex;flex-direction:column;gap:14px;padding:4px 2px 12px}.ask-empty{color:var(--gray-600)}.ask-intro{font-size:13.5px;margin:4px 0 12px}.ask-suggest-label{font-size:12px;font-weight:600;color:var(--gray-700);margin:4px 0 8px}.ask-suggestions{display:flex;flex-direction:column;gap:8px;align-items:flex-start}.ask-suggestion{text-align:start;font-size:13px;padding:8px 12px;border-radius:8px;border:1px solid var(--line-strong);background:var(--surface);color:var(--pine-900);cursor:pointer;font-family:var(--font-display)}.ask-suggestion:hover{border-color:var(--pine-600);background:var(--pine-100)}.ask-msg{display:flex;flex-direction:column;gap:3px;max-width:92%}.ask-msg-user{align-self:flex-end;align-items:flex-end}.ask-msg-assistant{align-self:flex-start}.ask-role{font-family:var(--font-mono);font-size:10px;letter-spacing:.05em;text-transform:uppercase;color:var(--gray-500)}.ask-bubble{margin:0;padding:10px 13px;border-radius:12px;font-size:13.5px;line-height:1.5;white-space:pre-wrap}.ask-msg-user .ask-bubble{background:var(--accent-solid);color:var(--on-accent)}.ask-msg-assistant .ask-bubble{background:var(--surface-alt);color:var(--gray-900);border:1px solid var(--line)}.ask-bubble-rich{white-space:normal}.ask-bubble-rich>:first-child{margin-top:0}.ask-bubble-rich>:last-child{margin-bottom:0}.ask-bubble-rich .doc-p{margin:0 0 8px}.ask-bubble-rich .doc-list{margin:0 0 8px;padding-inline-start:20px}.ask-bubble-rich .doc-list li{margin:0 0 3px}.ask-bubble-rich .doc-h{margin:12px 0 6px;font-size:12px}.ask-thinking{display:inline-flex;align-items:center;gap:8px;color:var(--gray-600)}.ask-input-row{display:flex;gap:8px;align-items:flex-end;margin-top:8px}.ask-input{flex:1 1 auto;min-width:0;resize:vertical;min-height:96px;padding:12px 14px;border-radius:8px;border:1px solid var(--line-strong);background:var(--input-bg);font:inherit;font-size:15px;line-height:1.5}.ask-input:focus{outline:none;border-color:var(--pine-600)}.ask-send{flex:0 0 auto;width:auto;padding:12px 26px;white-space:nowrap}.ask-disclaimer{font-size:11px;color:var(--gray-400);margin:8px 0 0}.footer{font-size:12px;color:var(--gray-400);text-align:center;margin-top:36px;line-height:1.6}.footer a{color:var(--gray-500)}.footer-credit{margin:20px 0 0;padding-top:14px;border-top:1px solid var(--line);color:var(--gray-500)}.footer>.footer-credit:first-child{margin-top:0}.help-dot{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;padding:0;vertical-align:-2px;font-family:var(--font-mono);font-size:11px;line-height:1;color:var(--gray-500);background:transparent;border:1px solid var(--line-strong);border-radius:50%;cursor:pointer}.help-dot:hover{color:var(--pine-900);border-color:var(--pine-600);background:var(--pine-100)}.privacy-modal{width:min(560px,100%)}.privacy-body{text-align:start;font-size:13.5px;line-height:1.65;color:var(--gray-700)}.privacy-body section+section{margin-top:18px}.privacy-body p{margin:0 0 8px}.privacy-body p:last-child{margin-bottom:0}.privacy-h{font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--pine-900);margin:0 0 6px}.privacy-aside{color:var(--gray-600);font-style:italic}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay);display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px}.modal{background:var(--surface);border-radius:14px;width:min(680px,100%);max-height:82vh;display:flex;flex-direction:column;box-shadow:var(--shadow-modal)}.modal-header{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:10px 12px;padding:16px 20px;border-bottom:1px solid var(--line)}.modal-heading{flex:1 1 220px;min-width:0}.modal-kicker{font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;color:var(--pine-900);margin:0;text-transform:uppercase}.modal-title{font-family:var(--font-display);font-size:16px;font-weight:600;color:var(--gray-900);margin:3px 0 0;overflow-wrap:break-word}.modal-controls{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px;margin-inline-start:auto}.teaser-backdrop{background:#0c1411b8;padding:12px}.teaser-modal{width:min(1040px,100%);max-height:min(88vh,760px);height:88vh;overflow:hidden}.teaser-frame{flex:1;min-height:0;background:#0c1411;border-radius:0 0 14px 14px;overflow:hidden}.teaser-frame iframe{display:block;width:100%;height:100%;border:0}.modal-btn{border:1px solid var(--line-strong);background:var(--surface);border-radius:6px;padding:5px 12px;font-size:11px;font-family:var(--font-mono);cursor:pointer;color:var(--gray-600);text-decoration:none;white-space:nowrap}.modal-btn:hover{color:var(--gray-900)}.modal-btn.copied{color:var(--pine-900);border-color:var(--pine-border)}.frame-size{display:inline-flex;gap:4px}.modal-btn.selected{color:var(--pine-900);border-color:var(--pine-border);background:var(--pine-100)}.modal-body{padding:18px 20px;overflow-y:auto}.doc-view{font-size:13.5px;line-height:1.65;color:var(--gray-700);font-family:var(--font-body)}.doc-view>:first-child{margin-top:0}.doc-h{font-family:var(--font-display);font-size:13px;font-weight:700;letter-spacing:.02em;text-transform:uppercase;color:var(--gray-700);margin:20px 0 8px}.doc-p{margin:0 0 12px}.doc-list{margin:0 0 12px;padding-inline-start:22px}.doc-list li{margin:0 0 4px}.doc-code{font-family:var(--font-mono);font-size:.9em;background:var(--code-bg);border-radius:3px;padding:1px 4px}.doc-pre{font-family:var(--font-mono);font-size:12px;line-height:1.5;background:var(--code-bg);border-radius:6px;padding:12px 14px;margin:0 0 12px;overflow-x:auto;white-space:pre}.doc-view a{color:var(--pine-900);text-decoration:underline}.doc-hr{border:0;border-top:1px solid var(--line);margin:16px 0}.story{font-family:var(--font-body);font-size:13.5px;line-height:1.65;color:var(--gray-700)}.story>section+section{margin-top:22px}.story-label{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.09em;text-transform:uppercase;color:var(--gray-500);margin:0 0 8px}.story-prose{margin:0}.story-scene{background:var(--pine-100);border:1px solid var(--pine-border);border-radius:10px;padding:16px 18px}.story-scene .story-label{color:var(--pine-900);opacity:.6}.story-scene-line{margin:0;font-family:var(--font-display);font-size:17px;font-weight:400;line-height:1.4;color:var(--pine-900)}.story-before{border-inline-start:2px solid var(--line-strong);padding-inline-start:14px;color:var(--gray-600)}.story-beats{list-style:none;margin:0;padding:0}.story-beat{position:relative;padding-inline-start:22px;padding-bottom:16px;border-inline-start:1px solid var(--line);margin-inline-start:4px}.story-beat:last-child{padding-bottom:0;border-inline-start-color:transparent}.story-dot{position:absolute;inset-inline-start:-6.5px;top:6px;width:9px;height:9px;border-radius:50%;background:var(--surface);border:2px solid var(--pine-600)}.story-time{display:inline-block;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.04em;color:var(--gray-500);background:var(--surface-alt);border:1px solid var(--line);border-radius:4px;padding:1px 6px;margin-bottom:5px}.story-action{margin:0;color:var(--gray-900)}.story-response{margin:5px 0 0;padding:7px 11px;background:var(--surface-alt);border-radius:8px;border-inline-start:2px solid var(--pine-border);color:var(--gray-600)}.story-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}.story-col{border-radius:10px;padding:14px 16px;border:1px solid var(--line);background:var(--surface-alt)}.story-col-you{background:var(--pine-100);border-color:var(--pine-border)}.story-col-you .story-label{color:var(--pine-900);opacity:.6}.story-col ul{margin:0;padding:0;list-style:none}.story-col li{position:relative;padding-inline-start:14px;margin-bottom:5px}.story-col li:last-child{margin-bottom:0}.story-col li:before{content:"";position:absolute;inset-inline-start:0;top:9px;width:5px;height:5px;border-radius:50%;background:var(--gray-400)}.story-col-you li:before{background:var(--pine-600)}.story-misfire{background:var(--amber-100);border:1px solid var(--amber-border);border-radius:10px;padding:14px 16px;color:var(--amber-900)}.story-misfire .story-label{color:var(--amber-900);opacity:.65}.story-after{border-top:1px solid var(--line);padding-top:16px}.story-after-line{margin:0;font-family:var(--font-display);font-size:15px;font-weight:400;line-height:1.5;color:var(--gray-900)}.story-cadence{margin:10px 0 0;font-size:12.5px;color:var(--gray-600)}@media(max-width:560px){.story-split{grid-template-columns:1fr}.story-scene-line{font-size:15.5px}}.modal-error{font-size:13.5px;color:var(--error-900);margin:0}.wizard-progress{font-family:var(--font-mono);font-size:11px;color:var(--gray-500);margin:0 0 6px}.wizard-question{font-family:var(--font-display);font-size:16px;font-weight:600;margin:0 0 4px}.wizard-hint{font-size:13px;color:var(--gray-600);margin:0 0 14px;line-height:1.5}.build-choices{display:grid;gap:8px}.build-choice{display:flex;flex-direction:column;gap:4px;text-align:start;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:var(--surface);cursor:pointer;transition:border-color .15s ease,background .15s ease}.build-choice:hover,.build-choice:focus-visible{border-color:var(--pine-600)}.build-choice.selected{border-color:var(--pine-600);background:var(--pine-050)}.build-choice-head{display:flex;align-items:baseline;gap:8px}.build-choice-rung{flex:none;width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;border-radius:99px;background:var(--pine-100);color:var(--pine-900);font-family:var(--font-mono);font-size:11px}.build-choice-label{font-family:var(--font-display);font-size:14px;font-weight:600;color:var(--pine-900)}.build-choice-effort{margin-inline-start:auto;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.04em;color:var(--gray-500);white-space:nowrap}.build-choice-blurb{font-size:12.5px;line-height:1.45;color:var(--gray-600)}.build-choices-ladder .build-choice:last-child .build-choice-rung{background:var(--emerging-solid);color:var(--on-accent)}.build-summary{margin-top:18px;padding-top:14px;border-top:1px solid var(--line)}.build-summary-title{margin:0 0 8px;font-family:var(--font-mono);font-size:10px;letter-spacing:.07em;text-transform:uppercase;color:var(--gray-500)}.build-summary-list{list-style:none;margin:0;padding:0;display:grid;gap:2px}.build-summary-row{width:100%;display:flex;align-items:baseline;gap:10px;padding:6px 8px;border:1px solid transparent;border-radius:8px;background:none;text-align:start;cursor:pointer;font-size:12.5px;line-height:1.4}.build-summary-row:hover,.build-summary-row:focus-visible{background:var(--pine-050)}.build-summary-row.current{border-color:var(--line);background:var(--pine-050)}.build-summary-key{flex:none;min-width:96px;color:var(--gray-500)}.build-summary-val{color:var(--pine-900);font-weight:500}.build-summary-val.unset{color:var(--gray-500);font-weight:400;font-style:italic}.build-difficulty{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;margin:12px 0 0;padding:10px 12px;border-radius:8px;border-inline-start:3px solid var(--line);background:var(--pine-050);font-size:12.5px;line-height:1.45}.build-difficulty-key{flex:none;min-width:96px;font-family:var(--font-mono);font-size:10px;letter-spacing:.07em;text-transform:uppercase;color:var(--gray-500)}.build-difficulty-label{font-family:var(--font-display);font-weight:600;color:var(--pine-900)}.build-difficulty-blurb{flex:1 1 100%;margin-inline-start:106px;color:var(--gray-600)}@media(max-width:520px){.build-difficulty-blurb{margin-inline-start:0}}.diff-comfortable{border-inline-start-color:var(--accent-solid-alt)}.diff-stretch{border-inline-start-color:var(--accent-solid)}.diff-hard{border-inline-start-color:var(--warn-solid)}.diff-daunting{border-inline-start-color:var(--danger-solid)}.diff-out-of-reach{border-inline-start-color:var(--emerging-solid)}.wizard-nav{display:flex;gap:8px;margin-top:16px}.wizard-nav .btn-primary,.wizard-nav .btn-secondary{width:auto;flex:1;margin-top:0;padding:10px;font-size:13.5px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.bug-fallback{margin:32px auto;max-width:560px;text-align:center}[dir=rtl] .trail-sep{transform:scaleX(-1)}[dir=rtl] .xp-day li:before{content:"◂"}.model-switcher{display:flex;align-items:center;gap:4px}.model-chip{font-size:14px;line-height:1}.model-trigger{display:inline-flex;align-items:center;gap:6px;max-width:200px;font-family:inherit;font-size:13px;color:var(--pine-600);background:transparent;border:1px solid var(--pine-200);border-radius:8px;padding:4px 8px;cursor:pointer}.model-trigger:hover{border-color:var(--pine-600)}.model-trigger-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.model-caret{font-size:10px;line-height:1;flex:none}.model-modal{width:min(420px,100%);max-height:90vh}.model-modal .modal-header{padding:12px 16px}.model-modal-body{display:flex;flex-direction:column;gap:10px;padding:12px 16px}.model-note{margin:0;font-size:11px;line-height:1.45;color:var(--gray-600)}.model-group{border:none;margin:0;padding:0;min-width:0}.model-group-legend{font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--pine-900);padding:0 0 3px}.model-option{display:flex;align-items:center;gap:8px;padding:4px 8px;border:1px solid transparent;border-radius:6px;cursor:pointer}.model-option:hover{background:var(--pine-100)}.model-option.is-current{border-color:var(--pine-border);background:var(--pine-100)}.model-option.is-unavailable{cursor:not-allowed;opacity:.55}.model-option input{margin:0;flex:none;accent-color:var(--pine-600)}.model-option-name{flex:1 1 auto;min-width:0;font-size:13px;line-height:1.35;color:var(--gray-900);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.model-local-offer{margin:4px 0 0;font-size:12px}.local-wizard{width:min(560px,100%);max-height:90vh}.local-wizard-body{display:flex;flex-direction:column;gap:12px;padding:14px 18px 18px;font-size:13px;line-height:1.5}.local-wizard-steps{display:flex;gap:6px;margin:0;padding:0;list-style:none;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--gray-600)}.local-wizard-steps li{padding:3px 8px;border-radius:999px;border:1px solid var(--pine-border)}.local-wizard-steps li.is-current{background:var(--accent-solid);border-color:var(--accent-solid);color:var(--on-accent)}.local-wizard-steps li.is-done{color:var(--pine-900);background:var(--pine-100)}.local-wizard-lead{margin:0;color:var(--gray-900)}.local-wizard-lead code,.local-wizard-howto code{font-family:var(--font-mono);font-size:12px;padding:1px 5px;border-radius:4px;background:var(--pine-100);color:var(--pine-900);-webkit-user-select:all;user-select:all;overflow-wrap:anywhere}.local-wizard-kinds{border:none;margin:0;padding:0;min-width:0}.local-wizard-howto{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:8px}.local-wizard-cmds{margin:4px 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:4px}.local-wizard-cmds li{display:flex;flex-direction:column;gap:2px}.local-wizard-tool{font-size:11px;color:var(--gray-600)}.local-wizard-hint{margin:0;font-size:12px;color:var(--gray-600)}.local-wizard-field{display:flex;flex-direction:column;gap:4px}.local-wizard-field span{font-size:12px;color:var(--gray-600)}.local-wizard-field input{font:inherit;padding:8px 10px;border:1px solid var(--pine-border);border-radius:8px;background:var(--surface);color:var(--gray-900)}.local-wizard-error{margin:0;padding:8px 10px;border-radius:8px;background:var(--danger-tint, var(--pine-100));color:var(--danger-solid);font-size:12.5px}.local-wizard-sample{border:1px solid var(--pine-border);border-radius:10px;padding:10px 12px;background:var(--pine-100)}.local-wizard-sample-meta{margin:0 0 4px;font-family:var(--font-mono);font-size:10.5px;color:var(--gray-600)}.local-wizard-sample-text{margin:0;white-space:pre-wrap;color:var(--gray-900)}.model-option-price{flex:none;font-family:var(--font-mono);font-size:10.5px;color:var(--gray-600);white-space:nowrap}.model-group:disabled .model-option{cursor:progress}@media(max-height:620px){.model-modal{max-height:96vh}.model-modal .modal-header{padding:8px 14px}.model-modal-body{gap:8px;padding:8px 14px}.model-option{padding:3px 8px}}.link-btn{font-family:inherit;font-size:13px;color:var(--pine-600);background:transparent;border:none;padding:4px 6px;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.link-btn:hover{color:var(--pine-700)}.usage{margin:8px 0 24px}.usage-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.usage-title{font-family:var(--font-display);font-size:22px;margin:0 0 12px}.usage-card{margin-bottom:16px}.usage-subtitle{font-size:15px;margin:0 0 12px}.usage-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:12px;margin:0}.usage-stats div{display:flex;flex-direction:column;gap:2px}.usage-stats dt{font-size:12px;color:var(--gray-500)}.usage-stats dd{margin:0;font-family:var(--font-mono);font-size:18px;font-weight:600}.usage-note{font-size:12px;color:var(--gray-500);margin:12px 0 0}.usage-table-wrap{margin-top:16px;overflow-x:auto}.usage-table{width:100%;border-collapse:collapse;font-size:13px}.usage-table th,.usage-table td{text-align:start;padding:8px 10px;border-bottom:1px solid var(--line);white-space:nowrap}.usage-table th{font-size:12px;color:var(--gray-500);font-weight:600}.usage-table td:not(:first-child),.usage-table th:not(:first-child){font-family:var(--font-mono);text-align:end}.usage-link-cost{font-family:var(--font-mono);opacity:.85}.pay-prompt{margin:12px 0}.pay-prompt-compact{margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}.pay-message{margin:0 0 10px;font-size:14px}.pay-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.pay-admin-hint{margin:8px 0 0;font-size:12.5px;color:var(--gray-600)}.pay-admin-hint code{font-family:var(--font-mono);font-size:12px;padding:2px 6px;border-radius:6px;background:var(--pine-100);color:var(--pine-900)}.pay-recipient{font-size:13px;color:var(--gray-500)}.pay-recipient code{font-family:var(--font-mono);color:var(--pine-600)}.budget-bar{height:8px;border-radius:999px;background:var(--line);overflow:hidden;margin:4px 0 8px}.budget-bar-fill{height:100%;background:var(--pine-600);transition:width .3s ease}.usage-card-over{border-color:var(--danger-solid)}.usage-card-over .budget-bar-fill{background:var(--danger-solid)}.loading-panel-inline{margin-top:8px;padding:12px 16px}.option-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px;margin:8px 0 4px}.option-btn{font-family:inherit;font-size:15px;text-align:start;padding:12px 14px;background:var(--surface);border:1px solid var(--line);border-radius:10px;cursor:pointer;color:inherit;transition:border-color .15s,transform .06s,background .15s;animation:option-in .22s ease both}.option-btn:hover{border-color:var(--pine-600);background:var(--pine-050)}.option-btn:active{transform:translateY(1px)}@keyframes option-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.option-loading{display:flex;align-items:center;gap:8px;padding:12px 14px;color:var(--gray-500);font-size:14px}.freetext-row{display:flex;gap:10px;align-items:stretch}.freetext-row .text-input{flex:1 1 auto;width:auto;min-width:0;padding:18px 20px;font-size:18px;min-height:64px;margin-bottom:0;border-radius:12px}.freetext-row .btn-primary{flex:0 0 auto;width:auto;padding:0 26px;font-size:16px;white-space:nowrap}@media(max-width:520px){.freetext-row{flex-direction:column}}@media(prefers-reduced-motion:reduce){.option-btn{animation:none}}.dashboard{padding-bottom:3rem}.dashboard-head{margin:.5rem 0 1.5rem}.dashboard-title{font-family:var(--font-display);font-size:1.9rem;color:var(--pine-900);margin:0 0 .25rem}.dashboard-subtitle{color:var(--gray-600);margin:0}.dashboard-muted{color:var(--gray-600);font-size:.9rem}.dashboard .panel{margin-bottom:1.25rem}.dashboard-section-title{font-family:var(--font-display);font-size:1.1rem;color:var(--gray-900);margin:0 0 .75rem}.dashboard .panel-inset{background:var(--tint);padding:18px 20px;margin:.75rem 0 1.25rem}.dashboard-details{margin-top:1.25rem;border-top:1px solid var(--line);padding-top:.75rem}.dashboard-details>summary{cursor:pointer;font-weight:600;color:var(--gray-900)}.dashboard-account{display:flex;align-items:center;justify-content:space-between;gap:1rem}.dashboard-account-id{display:flex;align-items:center;gap:.75rem}.dashboard-avatar{width:44px;height:44px;border-radius:50%;object-fit:cover}.dashboard-account-name{font-weight:600;margin:0;color:var(--gray-900)}.dashboard-cta .btn-primary,.dashboard-cta .auth-control{margin-top:.75rem}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.75rem;margin-bottom:1rem}.stat{display:flex;flex-direction:column;padding:.75rem .9rem;background:var(--surface-alt);border:1px solid var(--line);border-radius:10px}.stat-value{font-family:var(--font-display);font-size:1.3rem;color:var(--pine-900)}.stat-label{font-size:.8rem;color:var(--gray-600);margin-top:.15rem}.dashboard-tabs{display:flex;flex-wrap:wrap;gap:.25rem;border-bottom:1px solid var(--line);margin-bottom:1.25rem}.dashboard-tab{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;border-bottom:2px solid transparent;padding:.6rem .9rem;font:inherit;color:var(--gray-600);cursor:pointer}.dashboard-tab.is-active{color:var(--pine-900);border-bottom-color:var(--pine-600);font-weight:600}.table-scroll{overflow-x:auto;margin:.5rem 0}.data-table{width:100%;border-collapse:collapse;font-size:.9rem}.data-table th,.data-table td{text-align:start;padding:.5rem .65rem;border-bottom:1px solid var(--line);vertical-align:top}.data-table th{color:var(--gray-600);font-weight:600;white-space:nowrap}.data-table td.num,.data-table th.num{text-align:end;font-variant-numeric:tabular-nums;white-space:nowrap}.btn-small{padding:.3rem .7rem;font-size:.85rem}.editor-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:.75rem}.editor-lang select,.editor-filter{font:inherit;padding:.35rem .5rem;border:1px solid var(--line-strong);border-radius:8px;background:var(--input-bg)}.editor-filter{flex:1 1 220px;min-width:180px}.editor-error{color:var(--error-900);background:var(--error-100);padding:.6rem .8rem;border-radius:8px}.editor-table .editor-source{max-width:30rem;color:var(--gray-900)}.editor-input{width:100%;min-width:12rem;font:inherit;padding:.4rem .5rem;border:1px solid var(--line-strong);border-radius:8px;background:var(--input-bg);resize:vertical}.editor-actions{white-space:nowrap}.row-dirty .editor-input{border-color:var(--amber-dot)}.editor-ok{color:var(--pine-600);margin-inline-start:.4rem;font-weight:700}.editor-bad{color:var(--error-900);margin-inline-start:.4rem;font-weight:700}.suggest-toggle{position:fixed;inset-block-end:1rem;inset-inline-end:1rem;z-index:60;font:inherit;font-size:.9rem;padding:.55rem .9rem;border:1px solid var(--pine-border);border-radius:999px;background:var(--surface);color:var(--pine-900);box-shadow:var(--shadow-float);cursor:pointer}.suggest-toggle:hover{background:var(--pine-100)}.suggest-toggle.is-on{background:var(--accent-solid);color:var(--on-accent);border-color:var(--pine-900)}body.i18n-suggest-editing [data-i18n]{outline:1px dashed var(--pine-600);outline-offset:2px;cursor:pointer;border-radius:3px}body.i18n-suggest-editing [data-i18n]:hover{background:var(--pine-100)}.suggest-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;display:flex;align-items:center;justify-content:center;padding:1rem;background:var(--overlay)}.suggest-modal{width:min(560px,100%);max-height:90vh;overflow-y:auto;background:var(--surface);border-radius:14px;padding:1.25rem;box-shadow:var(--shadow-modal)}.suggest-modal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.suggest-modal-head h2{margin:0;font-size:1.1rem;color:var(--pine-900)}.suggest-close{border:none;background:none;font-size:1.4rem;line-height:1;cursor:pointer;color:var(--gray-600)}.suggest-field{display:block;margin-bottom:.75rem}.suggest-field>span{display:block;font-size:.8rem;font-weight:600;color:var(--gray-600);margin-bottom:.25rem}.suggest-readonly{padding:.5rem .6rem;border-radius:8px;background:var(--surface-alt);color:var(--gray-900);white-space:pre-wrap}.suggest-input{width:100%;font:inherit;padding:.5rem .6rem;border:1px solid var(--line-strong);border-radius:8px;background:var(--input-bg);resize:vertical}.suggest-ai{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:1rem}.suggest-chips{display:flex;flex-wrap:wrap;gap:.4rem;width:100%}.suggest-chip{font:inherit;font-size:.85rem;padding:.35rem .6rem;border:1px solid var(--pine-border);border-radius:999px;background:var(--pine-100);color:var(--pine-900);cursor:pointer;text-align:start}.suggest-chip:hover{background:var(--surface)}.suggest-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.5rem}.suggestion-list{list-style:none;margin:0;padding:0;display:grid;gap:.75rem}.suggestion-card{border:1px solid var(--line);border-inline-start:3px solid var(--line-strong);border-radius:10px;padding:.75rem .9rem;background:var(--surface)}.suggestion-card.status-pending{border-inline-start-color:var(--pine-600)}.suggestion-card.status-rejected{border-inline-start-color:var(--error-900);opacity:.75}.suggestion-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.5rem;font-size:.85rem}.suggestion-lang{font-weight:700;text-transform:uppercase;color:var(--pine-900)}.suggestion-badge{font-size:.72rem;text-transform:uppercase;letter-spacing:.03em;padding:.1rem .45rem;border-radius:999px;background:var(--surface-alt);color:var(--gray-600)}.badge-approved{background:var(--pine-100);color:var(--pine-900)}.badge-rejected{background:var(--error-100);color:var(--error-900)}.suggestion-grid{display:grid;grid-template-columns:max-content 1fr;gap:.2rem .75rem;margin:0 0 .5rem}.suggestion-grid dt{font-size:.78rem;font-weight:600;color:var(--gray-600)}.suggestion-grid dd{margin:0;white-space:pre-wrap}.suggestion-suggested{font-weight:600;color:var(--pine-900)}.suggestion-current{color:var(--gray-600)}.suggestion-buttons{display:flex;gap:.5rem}.suggestion-reviewed{margin:0;font-size:.82rem}.back-arrow{display:inline-block}[dir=rtl] .back-arrow{transform:scaleX(-1)}.literacy-card{width:100%;margin-bottom:20px;border-top-color:var(--accent-solid)}.offer-cards .literacy-card{width:auto;margin-bottom:0}.literacy-card .tier-card-label{font-size:17px}.literacy-card-cta{background:var(--accent-solid);align-self:start}.literacy-card:disabled .literacy-card-cta{background:var(--gray-400)}.literacy-modal{width:min(820px,100%)}.literacy-modal-framed{width:min(1120px,100%);height:82vh}.literacy-modal-large{width:100%;height:100%;max-height:100%}.modal-backdrop-full{padding:0}.literacy-modal-full{width:100%;height:100%;max-height:100%;border-radius:0}.literacy-modal-framed .modal-body{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.mockup-modal{width:min(1120px,100%)}.mockup-modal-regular{height:82vh}.mockup-modal-large{width:100%;height:100%;max-height:100%}.mockup-modal-full{width:100%;height:100%;max-height:100%;border-radius:0}.mockup-modal-regular .mockup-body,.mockup-modal-large .mockup-body,.mockup-modal-full .mockup-body{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.mockup-frame{flex:1;min-height:0;width:100%;border:1px solid var(--line);border-radius:8px;background:#fff}.mockup-note{flex:none;margin:10px 0 0;font-size:12px;line-height:1.5;color:var(--gray-600)}.mockup-model{font-family:var(--font-mono);font-size:11px;color:var(--gray-500);white-space:nowrap}.mockup-cta{margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}.mockup-cta-note{margin:8px 0 0;font-size:12.5px;line-height:1.5;color:var(--gray-600)}.concepts-cta{margin-top:18px}.mockup-cta>.concepts-cta:first-child{margin-top:0}.concepts-modal{width:min(860px,100%)}.concept-map-modal{width:min(1120px,100%)}.concept-map-modal-regular{height:82vh}.concept-map-modal-large,.concept-map-modal-full{width:100%;height:100%;max-height:100%}.concept-map-modal-full{border-radius:0}.concept-map-modal-regular .concept-map-body,.concept-map-modal-large .concept-map-body,.concept-map-modal-full .concept-map-body{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.concept-map-body .lesson-frame-note{flex:none;margin-top:10px}.concepts-intro{margin:0 0 22px;font-size:13.5px;line-height:1.6;color:var(--gray-700)}.concept-group+.concept-group{margin-top:26px}.concept-group-label{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--gray-500);margin:0 0 10px}.concept-list{list-style:none;margin:0;padding:0}.concept+.concept{margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}.concept-head{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.concept-term{font-family:var(--font-display);font-size:15px;font-weight:500;color:var(--accent-solid);background:none;border:none;border-bottom:1px dashed currentcolor;padding:0;cursor:pointer;text-align:start}.concept-term:hover,.concept-term:focus-visible{border-bottom-style:solid}.concept-term-flat{color:var(--gray-900);border-bottom:none;cursor:default}.concept-kind{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.08em;text-transform:uppercase;padding:2px 7px;border-radius:999px;border:1px solid var(--line);color:var(--gray-600);white-space:nowrap}.concept-kind-tool{border-color:var(--accent-solid);color:var(--accent-solid)}.concept-what{margin:6px 0 0;font-size:13.5px;line-height:1.6;color:var(--gray-700)}.concept-why{margin:4px 0 0;font-size:12.5px;line-height:1.55;color:var(--gray-600);font-style:italic}.concepts-note{margin:26px 0 0;padding-top:14px;border-top:1px solid var(--line);font-size:12px;line-height:1.5;color:var(--gray-500)}.concepts-note-live{display:flex;align-items:center;gap:9px}.spinner-inline{width:12px;height:12px;border-width:2px;flex:none}.concept-pending{display:flex;flex-direction:column;gap:7px;padding-block:4px}.concept-skeleton{display:block;height:9px;width:42%;border-radius:4px;background:var(--line);animation:concept-pulse 1.4s ease-in-out infinite}.concept-skeleton-wide{width:78%;animation-delay:.2s}@keyframes concept-pulse{0%,to{opacity:.45}50%{opacity:.9}}@media(prefers-reduced-motion:reduce){.concept-skeleton{animation:none}}.primer-strip{display:flex;flex-wrap:wrap;align-items:baseline;column-gap:12px;row-gap:4px;width:100%;text-align:start;background:var(--surface);border:1px solid var(--line-strong);border-inline-start:4px solid var(--accent-solid);border-radius:10px;padding:12px 16px;margin-bottom:14px;cursor:pointer;transition:transform .08s ease,box-shadow .12s ease}.primer-strip:hover,.primer-strip:focus-visible{transform:translateY(-1px);box-shadow:var(--shadow-lift)}.primer-strip-title{font-family:var(--font-display);font-size:14.5px;font-weight:600;color:var(--gray-900)}.primer-strip-blurb{flex:1 1 260px;font-size:12.5px;line-height:1.5;color:var(--gray-600)}.primer-strip-cta{margin-inline-start:auto;font-size:12.5px;font-weight:600;color:var(--accent-solid);white-space:nowrap}.offer-cards .primer-strip{flex-direction:column;flex-wrap:nowrap;align-items:stretch;gap:8px;border-inline-start:1px solid var(--line-strong);border-top:4px solid var(--accent-solid);border-radius:12px;padding:18px 18px 16px;margin-bottom:0}.offer-cards .primer-strip:hover,.offer-cards .primer-strip:focus-visible{transform:translateY(-2px)}.offer-cards .primer-strip-blurb{flex:1 1 auto}.offer-cards .primer-strip-cta{margin-inline-start:0;padding-top:2px}.primer-modal{max-width:660px}.primer-intro{margin:0 0 22px;font-size:13.5px;line-height:1.6;color:var(--gray-700)}.primer-section+.primer-section{margin-top:28px}.primer-section-label{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin:0 0 10px;font-family:var(--font-display);font-size:15px;font-weight:600;color:var(--gray-900)}.primer-kind{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.08em;text-transform:uppercase;padding:2px 7px;border-radius:999px;border:1px solid var(--line);color:var(--gray-600);white-space:nowrap}.primer-kind-uses{border-color:var(--accent-solid);color:var(--accent-solid)}.primer-kind-misconceptions{border-color:var(--warn-solid);color:var(--warn-solid)}.primer-kind-useAbuse{border-color:var(--emerging-solid);color:var(--emerging-solid)}.primer-list{list-style:none;margin:0;padding:0}.primer-item+.primer-item{margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}.primer-item-title{margin:0;font-family:var(--font-display);font-size:14px;font-weight:500;color:var(--gray-900)}.primer-item-body,.primer-item-flip{margin:5px 0 0;font-size:13.5px;line-height:1.6;color:var(--gray-700)}.primer-tag{font-weight:600;color:var(--gray-900)}.primer-tag-well{color:var(--accent-solid)}.primer-tag-flip{color:var(--danger-solid)}.primer-item-pending{display:flex;flex-direction:column;gap:7px;padding-block:4px}.primer-note{margin:26px 0 0;padding-top:14px;border-top:1px solid var(--line);font-size:12px;line-height:1.5;color:var(--gray-500)}.primer-note-live{display:flex;align-items:center;gap:9px}.capabilities-strip{border-inline-start-color:var(--accent-solid-alt)}.capabilities-strip .primer-strip-cta{color:var(--accent-solid-alt)}.offer-cards .capabilities-strip{border-top-color:var(--accent-solid-alt)}.capabilities-modal{max-width:660px}.capabilities-intro{margin:0 0 18px;font-size:13.5px;line-height:1.6;color:var(--gray-700)}.capability-list{margin:0;padding-inline-start:26px}.capability-item{display:flex;align-items:flex-start;gap:14px;flex-wrap:wrap}.capability-item+.capability-item{margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}.capability-text{flex:1 1 320px;min-width:0}.capability-title{margin:0;font-family:var(--font-display);font-size:14px;font-weight:500;color:var(--gray-900)}.capability-body{margin:5px 0 0;font-size:13.5px;line-height:1.6;color:var(--gray-700)}.capability-teach-btn{align-self:center;border:1px solid var(--accent-solid-alt);background:transparent;color:var(--accent-solid-alt);font-size:12.5px;font-weight:600;padding:6px 12px;border-radius:999px;cursor:pointer;white-space:nowrap;transition:transform .08s ease,box-shadow .12s ease}.capability-teach-btn:hover,.capability-teach-btn:focus-visible{transform:translateY(-1px);box-shadow:var(--shadow-lift)}.capabilities-note{margin:26px 0 0;padding-top:14px;border-top:1px solid var(--line);font-size:12px;line-height:1.5;color:var(--gray-500)}.teach-modal{max-width:720px}.capability-actions{display:flex;flex-direction:column;align-items:center;align-self:center;gap:6px}.capability-sheet-btn{border:none;background:none;padding:0;font-size:12px;color:var(--gray-600);text-decoration:underline;text-underline-offset:2px;cursor:pointer;white-space:nowrap}.capability-sheet-btn:hover,.capability-sheet-btn:focus-visible{color:var(--gray-900)}.tutor-modal{max-width:680px}.tutor-rail{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding-bottom:12px;margin-bottom:14px;border-bottom:1px solid var(--line)}.tutor-rail-phase{font-family:var(--font-mono);font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--on-accent);background:var(--accent-solid);border-radius:99px;padding:3px 10px;white-space:nowrap}.tutor-concepts{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}.tutor-concept{display:inline-flex;align-items:center;gap:5px;font-size:12px;color:var(--gray-700);background:var(--pine-100);border-radius:99px;padding:3px 10px}.tutor-concept-dot{font-size:11px}.tutor-concept-mastered .tutor-concept-dot{color:var(--pine-600)}.tutor-concept-in_progress .tutor-concept-dot{color:var(--amber-dot)}.tutor-concept-needs_review .tutor-concept-dot{color:var(--danger-solid)}.tutor-concept-not_started{opacity:.65}.tutor-resumed{margin:0 0 12px;font-size:12.5px;color:var(--gray-600)}.tutor-thread{display:flex;flex-direction:column;gap:12px}.tutor-round{display:flex;flex-direction:column;gap:8px}.tutor-say{margin:0;font-size:13.5px;line-height:1.6;color:var(--gray-700)}.tutor-question{margin:0;font-family:var(--font-display);font-size:14.5px;font-weight:600;line-height:1.5;color:var(--gray-900)}.tutor-options{display:flex;flex-direction:column;gap:8px;margin-top:2px}.tutor-option{display:flex;flex-direction:column;gap:2px;text-align:start;background:var(--surface);border:1px solid var(--line-strong);border-radius:10px;padding:10px 14px;cursor:pointer;transition:transform .08s ease,box-shadow .12s ease,border-color .12s ease}.tutor-option:hover,.tutor-option:focus-visible{transform:translateY(-1px);box-shadow:var(--shadow-lift);border-color:var(--accent-solid-alt)}.tutor-option.selected{border-color:var(--accent-solid);box-shadow:0 0 0 1px var(--accent-solid) inset}.tutor-option-label{font-size:13.5px;font-weight:500;color:var(--gray-900)}.tutor-option-desc{font-size:12px;line-height:1.5;color:var(--gray-600)}.tutor-answer{margin:0;align-self:flex-end;max-width:85%;font-size:13px;line-height:1.5;color:var(--pine-900);background:var(--pine-100);border-radius:12px 12px 4px;padding:8px 12px}.tutor-thinking{margin:0;font-size:12.5px;font-style:italic;color:var(--gray-500)}.tutor-compose{display:flex;flex-direction:column;gap:8px;margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}.tutor-send{align-self:start}.tutor-freetext-row{display:flex;align-items:center;gap:8px}.tutor-freetext-row .btn-secondary{width:auto;flex:none;margin-top:0;padding:8px 16px;font-size:13px}.tutor-freetext{flex:1;min-width:0;background:var(--input-bg);border:1px solid var(--line-strong);border-radius:8px;padding:8px 12px;font:inherit;font-size:13px;color:var(--gray-900)}.tutor-failed{display:flex;flex-direction:column;align-items:flex-start;gap:12px}.tutor-done{margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}.tutor-notes{margin:0 0 14px;font-size:13.5px;line-height:1.65;color:var(--gray-700);background:var(--pine-100);border-inline-start:3px solid var(--accent-solid);border-radius:8px;padding:12px 14px}.tutor-done-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px}.entry-tabs{display:flex;gap:4px;margin-bottom:14px;border-bottom:1px solid var(--line)}.entry-tab{background:none;border:none;border-bottom:3px solid transparent;margin-bottom:-1px;padding:8px 12px 9px;font-family:var(--font-display);font-size:13.5px;font-weight:500;color:var(--gray-600);cursor:pointer}.entry-tab:hover{color:var(--gray-900)}.entry-tab-active{color:var(--gray-900);border-bottom-color:var(--accent-solid)}.match-panel{margin-top:0}.match-lead{margin:0 0 10px;font-size:13.5px;line-height:1.55;color:var(--gray-700)}.match-input{width:100%;resize:vertical;min-height:72px;font:inherit;line-height:1.5}.match-actions{display:flex;align-items:center;gap:14px;margin-top:10px;flex-wrap:wrap}.match-candidates{display:flex;flex-direction:column;gap:10px;margin-top:16px}.match-candidates-lead{margin:0;font-size:13px;line-height:1.55;color:var(--gray-700)}.match-candidate{display:flex;flex-direction:column;gap:7px;text-align:start;background:var(--surface);border:1px solid var(--line-strong);border-inline-start:4px solid var(--accent-solid);border-radius:10px;padding:12px 14px;cursor:pointer;transition:transform .08s ease,box-shadow .12s ease}.match-candidate:hover,.match-candidate:focus-visible{transform:translateY(-1px);box-shadow:var(--shadow-lift)}.match-candidate-path{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.match-step{font-size:12.5px;font-weight:500;color:var(--pine-900);background:var(--pine-100);border:1px solid var(--pine-border);border-radius:999px;padding:2px 9px}.match-step-sep{color:var(--gray-500);font-size:12px}.match-starters{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 2px}.match-starters-lead{flex-basis:100%;margin:0;font-size:12px;color:var(--gray-500)}.match-starter{font-size:12.5px;line-height:1.45;text-align:start;color:var(--gray-700);background:var(--pine-100);border:1px dashed var(--pine-border);border-radius:10px;padding:7px 11px;cursor:pointer}.match-starter:hover,.match-starter:focus-visible{border-style:solid;color:var(--pine-900)}.match-candidate-why{font-size:13px;line-height:1.5;color:var(--gray-700)}.match-candidate-depth{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--gray-500)}.curriculum{font-family:var(--font-body);font-size:13.5px;line-height:1.65;color:var(--gray-700)}.curriculum>section+section{margin-top:24px}.cur-label{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.09em;text-transform:uppercase;color:var(--gray-500);margin:0 0 8px}.cur-sublabel{font-family:var(--font-mono);font-size:10px;letter-spacing:.07em;text-transform:uppercase;color:var(--gray-500);margin:0 0 5px}.cur-prose{margin:0 0 14px}.cur-prose:last-child{margin-bottom:0}.cur-frame{background:var(--surface-alt);border:1px solid var(--line);border-radius:10px;padding:16px 18px}.cur-frame .cur-label+p{margin-block:0 14px}.cur-learner{font-family:var(--font-display);font-size:15px;font-weight:400;line-height:1.45;color:var(--gray-900)}.cur-goal{color:var(--gray-900)}.cur-modules{list-style:none;margin:0;padding:0}.cur-module{display:grid;grid-template-columns:30px 1fr;gap:14px;padding-bottom:22px;border-inline-start:1px solid var(--line);padding-inline-start:16px;margin-inline-start:8px}.cur-module:last-child{border-inline-start-color:transparent;padding-bottom:0}.cur-num{grid-row:1;width:26px;height:26px;margin-inline-start:-30px;border-radius:99px;background:var(--pine-100);color:var(--pine-900);font-family:var(--font-mono);font-size:12px;display:inline-flex;align-items:center;justify-content:center}.cur-module-body{grid-column:2;min-width:0}.cur-module-title{margin:2px 0;font-family:var(--font-display);font-size:15px;font-weight:500;color:var(--gray-900)}.cur-module-focus{margin:0 0 10px;font-size:12.5px;color:var(--gray-600)}.cur-block{margin-bottom:12px}.cur-outcomes,.cur-tasks{margin:0;padding-inline-start:18px}.cur-outcomes{list-style:none;padding-inline-start:0}.cur-outcomes li{position:relative;padding-inline-start:18px;margin-bottom:4px;color:var(--gray-900)}.cur-outcomes li:before{content:"✓";position:absolute;inset-inline-start:0;color:var(--pine-600);font-size:11px}.cur-tasks li{margin-bottom:5px}.cur-anchor{margin:0 0 10px;background:var(--pine-100);border-radius:8px;padding:10px 12px;color:var(--pine-900)}.cur-anchor-label,.cur-meta-label{display:block;font-family:var(--font-mono);font-size:10px;letter-spacing:.07em;text-transform:uppercase;opacity:.7;margin-bottom:3px}.cur-meta{display:flex;flex-wrap:wrap;gap:6px 18px;margin:0;font-size:12.5px;color:var(--gray-600)}.cur-check{flex:1 1 260px}.cur-effort{font-family:var(--font-mono);font-size:11.5px;align-self:end;white-space:nowrap}.cur-split{display:grid;grid-template-columns:1fr 1fr;gap:14px}.cur-col{background:var(--surface-alt);border:1px solid var(--line);border-radius:10px;padding:14px 16px}.cur-col-guardrails{background:var(--amber-100);border-color:var(--amber-border);color:var(--amber-900)}.cur-col-guardrails .cur-label{color:var(--amber-900);opacity:.65}.cur-col ul{margin:0;padding-inline-start:18px}.cur-col li{margin-bottom:6px}.cur-col li:last-child{margin-bottom:0}.cur-not-covered{border-top:1px solid var(--line);padding-top:16px;font-size:12.5px;color:var(--gray-600)}.cur-progress{margin:12px 0 0;font-family:var(--font-mono);font-size:11.5px;color:var(--pine-900)}.cur-note{margin:0 0 12px;font-size:12.5px;color:var(--gray-600)}.cur-week-skills{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 10px}.cur-skill-chip{font-family:inherit;font-size:11.5px;color:var(--pine-900);background:var(--pine-100);border:1px solid transparent;border-radius:6px;padding:3px 8px;cursor:pointer}.cur-skill-chip:hover:not(:disabled),.cur-skill-chip:focus-visible{border-color:var(--pine-600)}.cur-skill-chip:disabled{cursor:default;opacity:.7}.cur-skill-list{list-style:none;margin:0;padding:0;display:grid;gap:12px}.cur-skill{background:var(--surface);border:1px solid var(--line);border-inline-start:3px solid var(--line-strong);border-radius:10px;padding:14px 16px}.strand-recognize{border-inline-start-color:var(--accent-solid-alt)}.strand-direct{border-inline-start-color:var(--amber-dot)}.strand-evaluate{border-inline-start-color:var(--emerging-solid)}.strand-anchor{border-inline-start-color:var(--accent-solid)}.strand-extend{border-inline-start-color:var(--danger-solid)}.cur-skill-head{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:6px}.cur-skill-strand,.cur-skill-level{font-family:var(--font-mono);font-size:10px;letter-spacing:.07em;text-transform:uppercase;color:var(--gray-500)}.cur-skill-level:before{content:"· "}.cur-skill-done,.cur-skill-wip{margin-inline-start:auto;font-family:var(--font-mono);font-size:10.5px;padding:2px 7px;border-radius:99px}.cur-skill-done{background:var(--pine-100);color:var(--pine-900)}.cur-skill-wip{background:var(--amber-100);color:var(--amber-900)}.cur-skill-level-earned{color:var(--pine-900);font-weight:600}.cur-skill-attempts{font-family:var(--font-mono);font-size:10.5px;padding:2px 7px;border-radius:99px;background:var(--pine-100);color:var(--gray-600)}.cur-skill-ask{margin:0 0 6px;font-size:12.5px;font-style:italic;color:var(--gray-600)}.cur-level-up{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:10px;padding-top:10px;border-top:1px dashed var(--line)}.cur-level-up-btn{white-space:nowrap}.cur-level-up-ask{flex:1 1 200px;font-size:12.5px;line-height:1.45;color:var(--gray-600)}.cur-skill-name{margin:0 0 2px;font-family:var(--font-display);font-size:15px;font-weight:500;color:var(--gray-900)}.cur-skill-statement{margin:0 0 10px;font-size:13px;color:var(--gray-900)}.cur-skill-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-top:10px}.cur-practice-on{font-size:11.5px;color:var(--gray-600)}.cur-learn-actions{display:inline-flex;align-items:center;gap:10px;flex-wrap:wrap}.cur-learn-btn{font-size:13px;padding:8px 14px}.cur-learn-alt{font-size:12px}.lesson-wait{display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;padding:44px 24px}.lesson-wait-title{margin:6px 0 0;font-family:var(--font-display);font-size:17px;font-weight:600;color:var(--gray-900)}.lesson-wait-name{margin:0;font-size:14px;color:var(--gray-700);max-width:46ch}.lesson-wait-stage{margin:0;font-size:13.5px;color:var(--gray-600);min-height:1.4em;max-width:48ch}.lesson-wait-track{width:min(260px,70%);height:3px;margin-top:6px;border-radius:999px;background:var(--line);overflow:hidden}.lesson-wait-glide{display:block;width:40%;height:100%;border-radius:999px;background:var(--accent-solid);animation:lesson-wait-glide 1.6s ease-in-out infinite}@keyframes lesson-wait-glide{0%{transform:translate(-100%)}to{transform:translate(250%)}}.lesson-wait-note{margin:8px 0 0;font-size:12px;line-height:1.6;color:var(--gray-600);max-width:44ch}.lesson-wait-actions{display:flex;align-items:center;gap:10px;margin-top:10px}.lesson-wait-elapsed{font-size:12px;color:var(--gray-600);font-variant-numeric:tabular-nums}@media(prefers-reduced-motion:reduce){.lesson-wait-glide{animation:none;width:100%;opacity:.55}}.lesson-frame-view{display:flex;flex-direction:column;gap:10px;flex:1;min-height:0}.lesson-frame-bar{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.lesson-frame-title{margin:0;flex:1 1 auto;min-width:0;font-family:var(--font-display);font-size:15px;font-weight:500;color:var(--gray-900)}.lesson-frame{flex:1;min-height:320px;border:1px solid var(--line-strong);border-radius:10px;overflow:hidden;background:var(--surface)}.lesson-frame iframe{display:block;width:100%;height:100%;border:0}.lesson-frame-note{margin:0;font-size:12px;color:var(--gray-600)}.lesson-size{display:inline-flex;gap:4px}@media(max-width:620px){.lesson-frame-title{flex-basis:100%}}.lesson{font-family:var(--font-body);font-size:13.5px;line-height:1.65;color:var(--gray-700)}.lesson-head{border-bottom:1px solid var(--line);padding-bottom:12px;margin-bottom:14px}.lesson-title{margin:8px 0 2px;font-family:var(--font-display);font-size:17px;font-weight:500;color:var(--gray-900)}.lesson-statement{margin:0;font-size:13px;color:var(--gray-600)}.lesson-level{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;margin:6px 0 0;font-size:12.5px;font-style:italic;color:var(--gray-600)}.lesson-level-badge{font-family:var(--font-mono);font-style:normal;font-size:10px;letter-spacing:.07em;text-transform:uppercase;padding:2px 8px;border-radius:99px;background:var(--pine-100);color:var(--pine-900)}.lesson-phases{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px;padding:0;counter-reset:phase}.lesson-phases li{counter-increment:phase;flex:1 1 180px;background:var(--surface-alt);border:1px solid var(--line);border-radius:8px;padding:8px 10px}.lesson-phase-name{display:block;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--pine-900)}.lesson-phase-name:before{content:counter(phase) ". "}.lesson-phase-obj{display:block;font-size:11.5px;color:var(--gray-600)}.lesson-thread{display:flex;flex-direction:column;gap:10px;max-height:46vh;overflow-y:auto;padding:4px 2px}.lesson-hint{margin:0;font-size:12.5px;color:var(--gray-600)}.lesson-msg{margin:0;border-radius:10px;padding:10px 13px;max-width:88%;white-space:pre-wrap}.lesson-msg-user{align-self:flex-end;background:var(--pine-100);color:var(--pine-900)}.lesson-msg-assistant{align-self:flex-start;background:var(--surface-alt);border:1px solid var(--line)}.lesson-msg-pending{display:flex;align-items:center;min-height:38px}.lesson-compose{margin-top:14px;border-top:1px solid var(--line);padding-top:12px}.lesson-input{width:100%;font-family:inherit;font-size:13.5px;line-height:1.5;color:var(--gray-900);background:var(--input-bg);border:1px solid var(--line-strong);border-radius:8px;padding:10px 12px;resize:vertical}.lesson-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.lesson-result{border-top:1px solid var(--line);padding-top:16px}.lesson-scores{display:flex;flex-wrap:wrap;gap:10px;margin:4px 0 12px}.lesson-score{flex:1 1 120px;background:var(--surface-alt);border:1px solid var(--line);border-radius:10px;padding:10px 12px}.lesson-score-value{display:block;font-family:var(--font-display);font-size:22px;font-weight:500;line-height:1.1;color:var(--pine-900)}.lesson-score-label{display:block;font-size:11.5px;color:var(--gray-600)}.lesson-diagnostic{margin:0 0 8px;font-family:var(--font-display);font-size:15px;color:var(--gray-900)}.lesson-caveat{margin:10px 0 14px;font-size:12px;color:var(--gray-600)}@media(max-width:560px){.cur-split{grid-template-columns:1fr}.lesson-msg{max-width:100%}}.cx-help-chip{position:fixed;inset-block-end:18px;inset-inline-end:18px;z-index:1500;width:44px;height:44px;display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:19px;line-height:1;color:var(--on-accent);background:var(--accent-solid);border:none;border-radius:50%;box-shadow:var(--shadow-lift);cursor:pointer;transition:transform .1s ease,background .12s ease}.cx-help-chip:hover,.cx-help-chip:focus-visible{transform:translateY(-2px);background:var(--accent-solid-alt)}.cx-help-card{position:fixed;inset-block-end:74px;inset-inline-end:18px;z-index:1500;display:flex;flex-direction:column;width:min(370px,calc(100vw - 32px));max-height:min(560px,calc(100vh - 110px));background:var(--surface);border:1px solid var(--line-strong);border-radius:14px;box-shadow:var(--shadow-lift);-webkit-backdrop-filter:var(--surface-blur);backdrop-filter:var(--surface-blur);overflow:hidden}.cx-help-header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:12px 14px 8px;border-bottom:1px solid var(--line)}.cx-help-kicker{margin:0;font-family:var(--font-mono);font-size:10px;letter-spacing:.09em;text-transform:uppercase;color:var(--pine-600)}.cx-help-title{margin:2px 0 0;font-size:14px;font-weight:600;color:var(--gray-900)}.cx-help-x{background:transparent;border:none;font-size:14px;line-height:1;padding:4px;color:var(--gray-500);cursor:pointer}.cx-help-x:hover{color:var(--gray-900)}.cx-help-context{display:flex;align-items:center;gap:6px;margin:0;padding:7px 14px;font-size:11px;color:var(--gray-600);background:var(--pine-100);border-bottom:1px solid var(--line);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cx-help-context-dot{width:6px;height:6px;flex:none;border-radius:50%;background:var(--accent-solid)}.cx-help-body{flex:1;min-height:0;overflow-y:auto;padding:12px 14px;font-size:13px;line-height:1.6;color:var(--gray-700)}.cx-help-hint{margin:0;font-size:12.5px;color:var(--gray-600)}.cx-help-you{margin:0 0 8px;padding:7px 10px;border-radius:10px;background:var(--pine-100);color:var(--pine-900);font-size:12.5px}.cx-help-answer{margin-bottom:10px}.cx-help-answer :first-child{margin-block-start:0}.cx-help-answer :last-child{margin-block-end:0}.cx-help-pending{display:flex;align-items:center;gap:8px;margin:0;font-size:12.5px;color:var(--gray-600)}.cx-help-error{margin:0;font-size:12.5px;color:var(--danger-solid)}.cx-help-quick{display:flex;flex-wrap:wrap;gap:6px;padding:0 14px 10px}.cx-help-quick-btn{font-size:11.5px;padding:5px 9px;border-radius:999px;border:1px solid var(--line-strong);background:var(--surface);color:var(--pine-900);cursor:pointer}.cx-help-quick-btn:hover:not(:disabled){background:var(--pine-100);border-color:var(--pine-600)}.cx-help-quick-btn:disabled{opacity:.55;cursor:default}.cx-help-ask{display:flex;gap:6px;padding:0 14px 10px}.cx-help-ask input{flex:1;min-width:0;font:inherit;font-size:13px;padding:7px 10px;border:1px solid var(--line-strong);border-radius:8px;background:var(--surface);color:var(--gray-900)}.cx-help-send{font-size:12.5px;padding:7px 12px;border:none;border-radius:8px;background:var(--accent-solid);color:var(--on-accent);cursor:pointer}.cx-help-send:disabled{background:var(--gray-400);cursor:default}.cx-help-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 14px 10px;border-top:1px solid var(--line);font-size:11px;color:var(--gray-500)}.cx-help-toggle{display:flex;align-items:center;gap:5px;cursor:pointer;white-space:nowrap}.cx-help-stance{text-align:end}@media(max-width:520px){.cx-help-card{inset-inline:12px;inset-block-end:70px;width:auto;max-height:calc(100vh - 100px)}}.wb-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-block-end:12px}.wb-windows{display:flex;gap:6px;flex-wrap:wrap}.wb-windows .btn-secondary.selected{background:var(--accent-solid);color:var(--on-accent);border-color:var(--accent-solid)}.wb-id{font-size:.78rem;color:var(--pine-600);word-break:break-all}.wb-events{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.wb-event{border:1px solid var(--line);border-radius:10px;padding:10px 12px}.wb-event-head{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}.wb-event-kind{font-weight:600;color:var(--pine-900)}.wb-event-meta{font-size:.82rem;color:var(--pine-600)}.wb-text{margin-block-start:6px}.wb-text summary{cursor:pointer;font-size:.88rem}.wb-text-label{font-weight:600;color:var(--pine-900)}.wb-text-preview{color:var(--pine-600);overflow-wrap:anywhere}.wb-text-full{white-space:pre-wrap;overflow-wrap:anywhere;font-size:.84rem;background:var(--surface-alt);border:1px solid var(--line);border-radius:8px;padding:10px;margin:6px 0 0;max-height:420px;overflow:auto}:root,:root[data-theme=pine]{color-scheme:light}:root[data-theme=glass],.theme-swatch-glass{color-scheme:light;--bg: #e9eef2;--page-bg: radial-gradient(1100px 720px at 10% -12%, rgba(23, 138, 102, .32), transparent 60%), radial-gradient(920px 640px at 94% 6%, rgba(86, 132, 245, .28), transparent 62%), radial-gradient(820px 700px at 58% 106%, rgba(217, 148, 15, .22), transparent 60%), linear-gradient(160deg, #eff4f7 0%, #e4ebf1 55%, #e9f1ed 100%);--page-bg-attachment: fixed;--surface: rgba(255, 255, 255, .55);--surface-alt: rgba(255, 255, 255, .34);--input-bg: rgba(255, 255, 255, .66);--line: rgba(15, 40, 32, .1);--line-strong: rgba(15, 40, 32, .2);--pine-100: rgba(23, 138, 102, .14);--pine-150: rgba(23, 138, 102, .2);--pine-200: rgba(23, 138, 102, .28);--pine-050: rgba(23, 138, 102, .08);--pine-border: rgba(23, 138, 102, .3);--avail-100: rgba(23, 138, 102, .16);--amber-100: rgba(217, 148, 15, .18);--error-100: rgba(160, 40, 40, .14);--gray-emerging-100: rgba(20, 30, 40, .1);--code-bg: rgba(15, 40, 32, .07);--overlay: rgba(18, 32, 28, .38);--surface-blur: blur(20px) saturate(180%);--surface-shadow: 0 8px 30px rgba(16, 42, 34, .1), inset 0 1px 0 rgba(255, 255, 255, .65);--shadow-pop: 0 12px 34px rgba(16, 42, 34, .18), inset 0 1px 0 rgba(255, 255, 255, .6);--shadow-lift: 0 14px 38px rgba(16, 42, 34, .18), inset 0 1px 0 rgba(255, 255, 255, .7);--shadow-modal: 0 26px 70px rgba(16, 42, 34, .28), inset 0 1px 0 rgba(255, 255, 255, .7);--shadow-float: 0 6px 22px rgba(16, 42, 34, .2), inset 0 1px 0 rgba(255, 255, 255, .6)}:root[data-theme=midnight],.theme-swatch-midnight{color-scheme:dark;--bg: #0b1210;--page-bg: radial-gradient(1000px 700px at 6% -14%, rgba(23, 138, 102, .34), transparent 60%), radial-gradient(900px 640px at 97% 2%, rgba(56, 88, 196, .3), transparent 62%), radial-gradient(780px 640px at 54% 110%, rgba(217, 148, 15, .16), transparent 60%), linear-gradient(165deg, #0d1714 0%, #0a1210 55%, #0b1512 100%);--page-bg-attachment: fixed;--surface: rgba(24, 35, 31, .62);--surface-alt: rgba(36, 49, 44, .55);--input-bg: rgba(12, 20, 17, .6);--line: rgba(255, 255, 255, .1);--line-strong: rgba(255, 255, 255, .2);--gray-900: #eaf2ee;--gray-700: #cfdcd6;--gray-600: #a6b5ae;--gray-500: #8a9a93;--gray-400: #71817b;--pine-900: #7fe3bb;--pine-700: #5cd6a8;--pine-600: #35c396;--pine-100: rgba(53, 195, 150, .15);--pine-150: rgba(53, 195, 150, .22);--pine-200: rgba(53, 195, 150, .3);--pine-050: rgba(53, 195, 150, .1);--pine-border: rgba(53, 195, 150, .34);--avail-100: rgba(53, 195, 150, .16);--accent-solid: #12775a;--accent-solid-hover: #17916d;--accent-solid-alt: #1a9a72;--on-accent: #f3fbf8;--amber-100: rgba(217, 148, 15, .16);--amber-900: #f0c069;--amber-dot: #e0a52a;--amber-border: rgba(217, 148, 15, .4);--warn-solid: #8a5c12;--error-100: rgba(200, 70, 70, .16);--error-900: #f0a0a0;--danger-solid: #8f2b2b;--gray-emerging-100: rgba(255, 255, 255, .09);--gray-emerging-900: #ccd5dd;--gray-emerging-dot: #94a2ad;--emerging-solid: #3c4a54;--code-bg: rgba(255, 255, 255, .08);--overlay: rgba(3, 9, 7, .66);--surface-blur: blur(20px) saturate(150%);--surface-shadow: 0 10px 34px rgba(0, 0, 0, .38), inset 0 1px 0 rgba(255, 255, 255, .06);--shadow-pop: 0 12px 34px rgba(0, 0, 0, .5), inset 0 1px 0 rgba(255, 255, 255, .06);--shadow-lift: 0 14px 34px rgba(0, 0, 0, .45), inset 0 1px 0 rgba(255, 255, 255, .08);--shadow-modal: 0 28px 72px rgba(0, 0, 0, .6), inset 0 1px 0 rgba(255, 255, 255, .07);--shadow-pill: 0 2px 8px rgba(0, 0, 0, .4);--shadow-pill-hover: 0 6px 16px rgba(0, 0, 0, .5);--shadow-float: 0 4px 16px rgba(0, 0, 0, .45)}:root[data-theme=paper],.theme-swatch-paper{color-scheme:light;--bg: #f3eee2;--page-bg: linear-gradient(180deg, #f7f2e8 0%, #f1ebdd 100%);--surface: #fffdf7;--surface-alt: #f7f1e4;--input-bg: #fffdf7;--line: #e4dbc8;--line-strong: #cec2a9;--gray-900: #211d16;--gray-700: #3c3529;--gray-600: #5f5646;--gray-500: #857a66;--gray-400: #a89c86;--pine-900: #1f4d3b;--pine-700: #276b50;--pine-600: #2f7d5e;--pine-100: #e7efe7;--pine-150: #dbe8de;--pine-200: #cbdccf;--pine-050: rgba(47, 125, 94, .07);--pine-border: #c1d4c6;--avail-100: #e4eee4;--accent-solid: #1f4d3b;--accent-solid-hover: #276b50;--accent-solid-alt: #2f7d5e;--amber-100: #f6e9cd;--amber-900: #6d4508;--amber-dot: #c08a12;--amber-border: rgba(192, 138, 18, .35);--warn-solid: #6d4508;--error-100: #f6e3dd;--error-900: #7c2a1c;--danger-solid: #7c2a1c;--gray-emerging-100: #ece7db;--gray-emerging-900: #4b4437;--gray-emerging-dot: #8d8271;--emerging-solid: #4b4437;--code-bg: rgba(60, 53, 41, .07);--overlay: rgba(35, 30, 20, .45);--surface-shadow: 0 1px 0 rgba(60, 53, 41, .06);--shadow-pop: 0 6px 20px rgba(60, 53, 41, .16);--shadow-lift: 0 8px 22px rgba(60, 53, 41, .16);--shadow-modal: 0 20px 56px rgba(35, 30, 20, .3)}:root[data-theme=contrast],.theme-swatch-contrast{color-scheme:light;--bg: #ffffff;--page-bg: #ffffff;--surface: #ffffff;--surface-alt: #f1f1f1;--input-bg: #ffffff;--line: #000000;--line-strong: #000000;--gray-900: #000000;--gray-700: #000000;--gray-600: #171717;--gray-500: #232323;--gray-400: #303030;--pine-900: #00402c;--pine-700: #00402c;--pine-600: #00543a;--pine-100: #e1f1ea;--pine-150: #d2eade;--pine-200: #00402c;--pine-050: #e1f1ea;--pine-border: #00402c;--avail-100: #e1f1ea;--accent-solid: #00291c;--accent-solid-hover: #00402c;--accent-solid-alt: #00402c;--on-accent: #ffffff;--amber-100: #ffefcc;--amber-900: #543500;--amber-dot: #7a4f00;--amber-border: #543500;--warn-solid: #543500;--error-100: #ffe1e1;--error-900: #7a0012;--danger-solid: #7a0012;--gray-emerging-100: #ebebeb;--gray-emerging-900: #1c1c1c;--gray-emerging-dot: #303030;--emerging-solid: #1c1c1c;--code-bg: #ebebeb;--overlay: rgba(0, 0, 0, .72);--focus-width: 3px;--surface-shadow: none;--shadow-pop: 0 4px 0 rgba(0, 0, 0, .9);--shadow-lift: 0 4px 0 rgba(0, 0, 0, .9);--shadow-modal: 0 6px 0 rgba(0, 0, 0, .9);--shadow-pill: none;--shadow-pill-hover: none;--shadow-float: 0 3px 0 rgba(0, 0, 0, .9)}.theme-switcher{display:flex;align-items:center;gap:4px}.theme-chip{font-size:14px;line-height:1}.theme-trigger{display:inline-flex;align-items:center;gap:6px;max-width:180px;font-family:inherit;font-size:13px;color:var(--pine-600);background:transparent;border:1px solid var(--pine-200);border-radius:8px;padding:4px 8px;cursor:pointer}.theme-trigger:hover{border-color:var(--pine-600)}.theme-trigger-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.theme-caret{font-size:10px;line-height:1;flex:none}.theme-modal{width:min(420px,100%);max-height:90vh}.theme-modal .modal-header{padding:12px 16px}.theme-modal-body{display:flex;flex-direction:column;gap:6px;padding:12px 16px}.theme-note{margin:0 0 2px;font-size:11px;line-height:1.45;color:var(--gray-600)}.theme-option{display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid transparent;border-radius:8px;cursor:pointer}.theme-option:hover{background:var(--pine-100)}.theme-option.is-current{border-color:var(--pine-border);background:var(--pine-100)}.theme-option input{margin:0;flex:none;accent-color:var(--pine-600)}.theme-option-text{display:flex;flex-direction:column;gap:1px;min-width:0}.theme-option-name{font-size:13px;line-height:1.35;color:var(--gray-900)}.theme-option-blurb{font-size:11.5px;line-height:1.35;color:var(--gray-600)}.theme-swatch{display:inline-flex;align-items:center;gap:3px;flex:none;padding:3px;border-radius:7px;border:1px solid var(--line-strong);background:var(--page-bg);background-size:cover}.theme-swatch i{display:block;width:11px;height:18px;border-radius:3px}.tsw-page{background:var(--bg)}.tsw-surface{background:var(--surface);border:1px solid var(--line)}.tsw-accent{background:var(--accent-solid-alt)}.class-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;flex-wrap:wrap}.class-title{font-family:var(--font-display);font-size:17px;font-weight:600;color:var(--gray-900);margin:4px 0 0}.class-prefix{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--gray-500);margin:0 0 4px}.class-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:14px}.class-code code{font-family:var(--font-mono);font-size:13px;letter-spacing:.12em;background:var(--code-bg);padding:3px 8px;border-radius:6px}.class-banner{border-inline-start:3px solid var(--accent-solid);margin-bottom:18px;padding-block:8px}.profile-banner{border-inline-start:3px dashed var(--accent-solid-alt);margin-bottom:18px;padding-block:8px}.profile-banner-line{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 10px}.profile-banner-line .panel-label,.profile-banner-line .class-title{margin:0}.profile-banner-line .link-btn{margin-inline-start:auto}.profile-banner-help{margin:6px 0 0;font-size:13px}.profile-banner-help p{margin:0 0 4px}.trail-crumb-pinned{display:inline-block;border:1px dashed var(--line-strong);background:var(--surface-sunken, var(--surface));color:var(--gray-600);border-radius:6px;padding:5px 12px;font-size:13px;font-weight:500;cursor:default}.make-class-offer{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin-top:14px;font-size:13px}.make-class-panel{margin-top:14px}.make-class-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}.join-code-display{font-family:var(--font-mono);font-size:15px;letter-spacing:.12em;margin:10px 0}.roster{list-style:none;margin:0;padding:0}.roster li{display:flex;justify-content:space-between;gap:12px;padding:7px 0;border-bottom:1px solid var(--line);font-size:13.5px}.roster-name{color:var(--gray-900)}.roster-email{color:var(--gray-500);font-size:12px}.assignment-row{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;padding:12px 0;border-bottom:1px solid var(--line);flex-wrap:wrap}.assignment-title{font-family:var(--font-display);font-size:15px;font-weight:500;color:var(--gray-900);margin:0}.assignment-state{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-mono);font-size:10.5px;text-transform:uppercase;letter-spacing:.07em;color:var(--gray-500)}.assignment-new{margin-top:18px;padding-top:16px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:6px}.field-label{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--gray-500);margin-top:8px}.text-input{font-family:var(--font-body);font-size:14px;color:var(--gray-900);background:var(--surface);border:1px solid var(--line-strong);border-radius:8px;padding:8px 10px;width:100%}.text-input:focus-visible{outline:2px solid var(--accent-solid);outline-offset:1px}.join-row{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap;margin-top:16px}.join-input{width:160px;font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase}.join-note{margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}.deliverables{background:var(--surface-alt);border:1px solid var(--line);border-radius:10px;padding:12px 16px;margin:14px 0}.deliverables ul{margin:6px 0 0;padding-left:18px;font-size:13.5px;color:var(--gray-700)}.artifact-picker{list-style:none;margin:6px 0 0;padding:0}.artifact-picker li{padding:6px 0;border-bottom:1px solid var(--line)}.artifact-picker label{display:flex;align-items:center;gap:10px;font-size:13.5px;cursor:pointer}.artifact-title{flex:1;color:var(--gray-900)}.artifact-kind{font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:var(--gray-500)}.submission-card{border:1px solid var(--line);border-radius:10px;padding:14px 16px;margin-top:14px}.submission-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.submission-who{font-family:var(--font-display);font-size:15px;font-weight:500;margin:0;color:var(--gray-900)}.submission-status{font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.08em;padding:2px 8px;border-radius:999px;border:1px solid var(--line);color:var(--gray-600);white-space:nowrap}.submission-status-graded{border-color:var(--pine-border);color:var(--pine-900)}.submission-path{font-family:var(--font-mono);font-size:11px;color:var(--gray-600);margin:8px 0 0}.submission-reflection{margin:10px 0 0;padding-left:12px;border-left:2px solid var(--accent-solid);font-size:13.5px;line-height:1.6;color:var(--gray-700);white-space:pre-wrap}.grade-row{display:flex;flex-direction:column;gap:6px;margin-top:12px}.score-input{width:90px}.grade-actions,.dashboard-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}.submission-view{margin-top:12px}.submission-done{margin-top:14px;padding-top:12px;border-top:1px solid var(--line);font-size:14px}.impersonation-bar{position:sticky;top:0;z-index:2000;display:flex;align-items:center;gap:12px;padding:9px 18px;background:var(--warn-solid);color:var(--on-accent);font-size:13px;line-height:1.4;box-shadow:var(--shadow-modal)}.impersonation-eye{font-size:15px;flex:none}.impersonation-text{flex:1;min-width:0}.impersonation-stop{flex:none;font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;padding:5px 12px;border-radius:6px;border:1px solid var(--on-accent);background:transparent;color:var(--on-accent);cursor:pointer}.impersonation-stop:hover:not(:disabled){background:var(--on-accent);color:var(--warn-solid)}@media(max-width:560px){.impersonation-bar{font-size:12px;padding:8px 12px}}.role-cell{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap}.role-badge{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.08em;text-transform:uppercase;padding:2px 7px;border-radius:999px;border:1px solid var(--line);color:var(--gray-600);white-space:nowrap}.role-badge-instructor{border-color:var(--pine-border);color:var(--pine-900)}.role-badge-admin{border-color:var(--warn-solid);color:var(--warn-solid)}.role-select{margin-bottom:0;font-size:12px;padding:3px 6px}.role-note{font-size:11px;color:var(--gray-500);font-style:italic}.role-error{font-size:11px;color:var(--danger-solid);flex-basis:100%}.roster li{align-items:center}.roster-email{flex:1;text-align:end;padding-inline-end:10px}.analytics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem}.bar-list{list-style:none;margin:.5rem 0 0;padding:0}.bar-row{display:grid;grid-template-columns:minmax(90px,1.2fr) 2fr auto;align-items:center;gap:.6rem;padding:.2rem 0;font-size:.9rem}.bar-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bar-track{display:block;height:10px;border-radius:4px;background:var(--pine-100, rgba(0, 0, 0, .08));overflow:hidden}.bar-fill{display:block;height:100%;border-radius:4px;background:var(--accent-solid)}.bar-value{font-variant-numeric:tabular-nums;color:var(--gray-600)}.bar-block+.bar-block{margin-top:.75rem}.check-label{display:inline-flex;align-items:center;gap:.3rem;font-size:.9rem}.bug-list{list-style:none;margin:.75rem 0 0;padding:0}.bug-row{padding:.75rem 0;border-top:1px solid var(--line)}.bug-head{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;font-size:.85rem}.bug-count{margin-inline-start:auto;font-variant-numeric:tabular-nums}.bug-message{margin:.3rem 0;font-weight:600;overflow-wrap:anywhere}.bug-when{font-size:.85rem}.bug-note{max-width:18rem}.bug-stack{margin-top:.5rem;max-height:18rem;overflow:auto;font-size:.78rem;white-space:pre-wrap;overflow-wrap:anywhere}.bug-badge-fixed,.bug-badge-dismissed{opacity:.7}.bug-fixed .bug-message,.bug-dismissed .bug-message{font-weight:400}.help-questions{margin:0;padding-inline-start:1rem;font-size:.85rem}.help-loc{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85rem}.fund-input{width:6rem}.fund-ref{width:10rem}.account-facts{display:grid;grid-template-columns:max-content 1fr;gap:.35rem 1rem;margin:0}.account-facts dt{color:var(--gray-600)}.account-facts dd{margin:0}.learning-list{list-style:none;margin:0;padding:0}.learning-row{display:flex;align-items:center;gap:1rem;padding:.75rem 0;border-top:1px solid var(--line)}.learning-row:first-child{border-top:0}.learning-main{flex:1;min-width:0}.learning-main .budget-bar{margin-top:.4rem}.profile-grid{list-style:none;margin:.9rem 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:.8rem}.profile-quota{font-family:var(--font-body, inherit);font-size:.8rem;font-weight:500;margin-inline-start:.6rem}.profile-card{display:flex;flex-direction:column;gap:.55rem;border:1px solid var(--line);border-radius:12px;padding:.85rem .95rem;background:var(--surface-alt);min-width:0}.profile-card-active{border-color:var(--accent-solid-alt);border-style:dashed}.profile-card-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.3rem .6rem}.profile-card-title{font-family:var(--font-display);font-size:1.05rem;font-weight:600;color:var(--pine-900);margin:0;overflow-wrap:anywhere}.profile-badge{font-size:.72rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase;color:var(--pine-600)}.profile-rename{display:flex;flex-wrap:wrap;gap:.4rem;width:100%}.profile-rename .text-input{flex:1 1 140px;min-width:0}.profile-steps{margin:0;padding-inline-start:1.4rem;font-size:.86rem;line-height:1.35;color:var(--gray-600);flex:1}.profile-steps li+li{margin-top:.15rem}.profile-steps li:last-child{color:var(--pine-900);font-weight:600}.profile-card-foot{display:flex;flex-wrap:wrap;align-items:center;gap:.3rem .7rem;font-size:.82rem;padding-top:.4rem;border-top:1px solid var(--line)}.profile-card-meta{margin-inline-start:auto}.learning-card{border:1px solid var(--line);border-radius:14px;padding:1rem 1.15rem;background:var(--surface-alt)}.learning-card+.learning-card{margin-top:.9rem}.learning-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.learning-card-heading{min-width:0}.learning-card-title{font-family:var(--font-display);font-size:1.2rem;font-weight:600;color:var(--pine-900);margin:.15rem 0 .35rem}.learning-trail{display:flex;flex-wrap:wrap;gap:.3rem 0;margin:0;font-size:.85rem;color:var(--gray-600)}.learning-trail-step+.learning-trail-step:before{content:"›";margin:0 .4rem;opacity:.6}.learning-goal{margin:.85rem 0 .75rem;padding-inline-start:.85rem;border-inline-start:3px solid var(--pine-200);color:var(--gray-900);line-height:1.5}.learning-stats{display:flex;flex-wrap:wrap;gap:.5rem 1.4rem;font-size:.9rem;color:var(--gray-600)}.learning-stats strong{color:var(--gray-900);font-variant-numeric:tabular-nums}.learning-progress{display:flex;align-items:center;gap:.75rem;margin-top:.6rem}.learning-progress .budget-bar{flex:1;margin:0}.learning-progress-label{font-size:.85rem;color:var(--gray-600);white-space:nowrap}@media(max-width:560px){.learning-card-head{flex-direction:column}}.leave-class{margin-top:.75rem;font-size:.9rem}.assignment-edit{flex-direction:column;align-items:stretch}.assignment-edit-fields{display:grid;gap:.35rem}@media(max-width:600px){.learning-row{flex-direction:column;align-items:stretch}}.container.dashboard{max-width:min(1400px,96vw)}.users-toolbar{margin-top:.75rem;flex-wrap:wrap;gap:.5rem}.domain-picker{position:relative;min-width:16rem;flex:1}.domain-picker .domain-list{position:absolute;inset-inline:0;top:100%;z-index:20;margin:.25rem 0 0;padding:.25rem 0;list-style:none;background:var(--surface);border:1px solid var(--line);border-radius:.5rem;box-shadow:0 8px 24px #0000001f;max-height:18rem;overflow-y:auto}.domain-option{display:flex;justify-content:space-between;gap:1rem;width:100%;padding:.45rem .75rem;background:none;border:none;font:inherit;color:inherit;text-align:start;cursor:pointer}.domain-option:hover,.domain-option:focus-visible{background:var(--pine-050)}.domain-chip{display:inline-flex;align-items:center;gap:.4rem;padding:.25rem .6rem;border-radius:999px;background:var(--pine-050);color:var(--pine-900);font-size:.9rem}.domain-chip button{background:none;border:none;font:inherit;color:inherit;cursor:pointer;padding:0 .1rem}.trend-table td.num,.trend-table th.num{font-variant-numeric:tabular-nums}.users-search{min-width:16rem;flex:1}.th-sort{font:inherit;color:inherit}.user-link{font:inherit;text-align:start}.path-list{list-style:none;margin:0;padding:0;font-size:.9rem}.path-list li+li{margin-top:.3rem}.crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:.25rem;margin-bottom:.75rem;font-size:.9rem}.crumb-wrap{display:inline-flex;align-items:center;gap:.25rem}.crumb{font:inherit;color:var(--pine-600);background:none;border:0;padding:.15rem .3rem;border-radius:4px;cursor:pointer}.crumb:hover{background:var(--pine-100)}.crumb.is-current{color:var(--pine-900);font-weight:600}.crumb-sep{color:var(--gray-600)}.tree-label{font:inherit;text-align:start}.tree-bar-col{width:28%;min-width:120px}.profile-activity{display:flex;flex-direction:column;gap:.6rem;padding-top:.6rem;border-top:1px dashed var(--line);min-width:0}.profile-activity-note{font-size:.8rem;margin:0}.profile-activity .library-item{padding:8px 10px;font-size:.86rem}.profile-activity .library-item-open{border-color:var(--accent-solid-alt)}.profile-activity .library-detail{margin-top:.4rem;min-width:0;overflow-x:auto}.library-detail-head{display:flex;align-items:center;justify-content:space-between;gap:.6rem;flex-wrap:wrap}.library-detail-head h3{margin:0;display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;overflow-wrap:anywhere}.library-detail-meta{display:flex;flex-direction:column;gap:.2rem;font-size:.8rem;margin:.35rem 0 .5rem}.library-detail-path{overflow-wrap:anywhere}.library-detail-facts{display:flex;flex-wrap:wrap;gap:.25rem .9rem}.library-detail-model{font-family:var(--font-mono)}.library-mockup-frame{width:100%;min-height:480px;border:1px solid var(--line);border-radius:8px;background:var(--surface);margin-top:.5rem}.profile-last{margin:4px 0 0;font-size:13px}
