*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media(min-width:640px){.container{max-width:640px}}@media(min-width:768px){.container{max-width:768px}}@media(min-width:1024px){.container{max-width:1024px}}@media(min-width:1280px){.container{max-width:1280px}}@media(min-width:1536px){.container{max-width:1536px}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.\!visible{visibility:visible!important}.visible{visibility:visible}.collapse{visibility:collapse}.static{position:static}.absolute{position:absolute}.relative{position:relative}.block{display:block}.table{display:table}.grid{display:grid}.contents{display:contents}.hidden{display:none}.rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-90{--tw-rotate: 90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rounded{border-radius:.25rem}.border{border-width:1px}.outline{outline-style:solid}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#102a43;background:#f5f0e6;font-synthesis:none;text-rendering:optimizeLegibility;--ink: #102a43;--ink-soft: #29455f;--ivory: #f7f3ea;--paper: #fffdf8;--sage: #dce8d7;--sage-soft: #edf4ea;--sage-dark: #3f684f;--saffron: #efa91e;--saffron-ink: #7a5200;--coral: #c85a4e;--blue-wash: #e8eff5;--line: #d8d2c7;--muted: #596870;--serif: Georgia, "Times New Roman", serif;--sans: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--display: "Avenir Next", Avenir, "Segoe UI Variable Display", "Segoe UI", ui-sans-serif, system-ui, sans-serif;--shadow: 0 18px 50px rgba(16, 42, 67, .08);--ease-out-ui: cubic-bezier(.23, 1, .32, 1);--ease-drawer: cubic-bezier(.32, .72, 0, 1);--safe-area-top: env(safe-area-inset-top, 0px);--safe-area-right: env(safe-area-inset-right, 0px);--safe-area-bottom: env(safe-area-inset-bottom, 0px);--safe-area-left: env(safe-area-inset-left, 0px)}.segmented-control.two-options{grid-template-columns:repeat(2,minmax(0,1fr))}.input-order-preference .segmented-control{width:min(100%,360px)}.puzzle-number-pad .number-key.number-locked{border-color:var(--ink);background:var(--saffron);box-shadow:inset 0 0 0 2px var(--ink);opacity:1}.puzzle-number-pad[data-mode=notes] .number-key.number-locked{border-color:var(--ink);background:color-mix(in srgb,var(--blue-wash) 55%,var(--saffron) 45%)}.daily-picker-actions{display:grid;gap:10px;justify-items:start}.quick-practice-link{width:min(100%,460px);min-height:58px;padding:10px 13px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;border:1px solid var(--line);border-radius:5px;background:var(--paper);color:var(--ink);transition:border-color .15s ease,background-color .15s ease,transform .15s ease}.quick-practice-link>svg:first-child{color:var(--sage-dark)}.quick-practice-link span{display:grid;gap:2px}.quick-practice-link strong{font-size:.73rem}.quick-practice-link small{color:var(--muted);font-size:.61rem;line-height:1.35}.quick-practice-link:hover{border-color:var(--sage-dark);background:var(--sage-soft);transform:translateY(-1px)}.quick-practice-link:focus-visible{outline:3px solid var(--saffron);outline-offset:2px}.monthly-learning-snapshot,.practice-calendar{margin-bottom:16px;border:1px solid var(--line);border-radius:8px;background:var(--paper)}.monthly-learning-snapshot{padding:24px 28px}.monthly-learning-heading{margin-bottom:19px}.monthly-learning-heading h2,.practice-calendar h2{margin:5px 0 4px;font-size:1.45rem}.monthly-learning-heading p,.practice-calendar header p{margin:0;color:var(--muted);font-size:.7rem}.monthly-learning-snapshot dl{margin:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) minmax(150px,1.4fr);border-top:1px solid var(--line)}.monthly-learning-snapshot dl>div{min-width:0;padding:18px 16px 2px;border-left:1px solid var(--line)}.monthly-learning-snapshot dl>div:first-child{border-left:0;padding-left:0}.monthly-learning-snapshot dt{min-height:32px;color:var(--muted);font-size:.61rem;line-height:1.35}.monthly-learning-snapshot dd{margin:5px 0 0;font-family:var(--serif);font-size:1.4rem}.monthly-learning-snapshot .monthly-technique-focus dd{color:var(--sage-dark);font-size:.92rem;line-height:1.25}.monthly-technique-unlock{display:inline-flex;align-items:center;gap:5px;color:var(--sage-dark);font-family:var(--sans);font-size:.72rem;font-weight:800;line-height:1.35;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}.monthly-technique-unlock:hover{color:var(--ink)}.practice-calendar{padding:24px 28px 28px}.practice-calendar>header{margin-bottom:17px;display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.practice-calendar-legend{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:12px;color:var(--muted);font-size:.61rem}.practice-calendar-legend span{display:inline-flex;align-items:center;gap:5px}.practice-calendar-legend span:before,.practice-calendar-marks i{width:7px;height:7px;display:block;border-radius:999px;content:""}.practice-calendar .puzzle:before,.practice-calendar-marks .puzzle{background:var(--sage-dark)}.practice-calendar .lesson:before,.practice-calendar-marks .lesson{background:var(--saffron)}.practice-calendar .notebook:before,.practice-calendar-marks .notebook{background:var(--coral)}.practice-calendar table{width:100%;table-layout:fixed;border-collapse:separate;border-spacing:5px}.practice-calendar th{padding-bottom:5px;color:var(--muted);font-size:.58rem;font-weight:800;text-transform:uppercase}.practice-calendar td{height:50px;padding:0;border:1px solid transparent;border-radius:5px;background:color-mix(in srgb,var(--paper) 74%,var(--sage-soft) 26%)}.practice-calendar td.outside-month{background:transparent}.practice-calendar td>a,.practice-calendar td>span{width:100%;height:100%;padding:7px;display:flex;flex-direction:column;justify-content:space-between;color:var(--ink)}.practice-calendar td.has-practice{border-color:color-mix(in srgb,var(--sage-dark) 30%,var(--line));background:var(--sage-soft)}.practice-calendar td.has-practice:hover{border-color:var(--sage-dark)}.practice-calendar td.is-today{box-shadow:inset 0 0 0 1px var(--ink)}.practice-calendar td a:focus-visible{border-radius:4px;outline:3px solid var(--saffron);outline-offset:2px}.practice-calendar-day-number{font-family:var(--serif);font-size:.74rem}.practice-calendar-marks{display:flex;gap:3px}@media(max-width:760px){.monthly-learning-snapshot,.practice-calendar{padding:18px 16px}.monthly-learning-snapshot dl{grid-template-columns:repeat(2,minmax(0,1fr))}.monthly-learning-snapshot dl>div,.monthly-learning-snapshot dl>div:first-child{padding:14px 10px;border-left:0;border-bottom:1px solid var(--line)}.monthly-learning-snapshot dl>div:nth-child(2n){border-left:1px solid var(--line)}.monthly-learning-snapshot dl>div.monthly-technique-focus{grid-column:1 / -1;border-bottom:0}.practice-calendar>header{align-items:flex-start;flex-direction:column;gap:12px}.practice-calendar-legend{justify-content:flex-start}.practice-calendar table{border-spacing:3px}.practice-calendar td{height:43px}.practice-calendar td>a,.practice-calendar td>span{padding:5px}}*{box-sizing:border-box}html{background:var(--ivory)}body{margin:0;min-width:320px;min-height:100vh;background:var(--ivory)}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--serif);font-weight:500;letter-spacing:-.025em}h1{font-size:clamp(2.35rem,4vw,4.4rem);line-height:.98}h2{font-size:clamp(1.4rem,2vw,2rem)}p{line-height:1.65;color:var(--ink-soft)}button:focus-visible,a:focus-visible{outline:3px solid rgba(239,169,30,.65);outline-offset:3px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:max(10px,var(--safe-area-top));left:max(10px,var(--safe-area-left));z-index:50;padding:10px 14px;border-radius:4px;background:var(--ink);color:#fff;font-weight:700;transform:translateY(calc(-100% - 20px));transition:transform .15s var(--ease-out-ui)}.skip-link:focus{transform:translateY(0)}.mobile-only{display:none!important}.brand{display:inline-flex;align-items:center;gap:10px;font-family:var(--display);font-size:1.05rem;font-weight:700;line-height:1;color:var(--ink);white-space:nowrap}.brand-mark{display:block;width:38px;height:38px;border:0;border-radius:22.4%;background:var(--ivory);-o-object-fit:cover;object-fit:cover;box-shadow:0 1px 2px color-mix(in srgb,var(--ink) 12%,transparent),0 6px 16px color-mix(in srgb,var(--ink) 10%,transparent)}.mascot{-o-object-fit:contain;object-fit:contain}.asset-fallback{display:grid;place-items:center;min-width:80px;min-height:80px;border:1px solid var(--line);border-radius:50%;background:var(--sage);color:var(--ink);font-family:var(--serif);font-size:1.25rem}.fatal-error{width:min(620px,calc(100% - 40px));min-height:100vh;margin:0 auto;padding-top:var(--safe-area-top);padding-bottom:var(--safe-area-bottom);display:flex;align-items:flex-start;justify-content:center;flex-direction:column}.fatal-error-mark{width:90px;height:90px;margin-bottom:28px}.fatal-error h1{max-width:540px;margin:8px 0 15px;font-size:clamp(2.4rem,7vw,4.5rem)}.fatal-error p{max-width:520px;margin:0 0 28px;line-height:1.7}.fatal-error>div:last-child{display:flex;flex-wrap:wrap;gap:10px}.public-legal-links{padding:24px max(24px,var(--safe-area-right)) calc(24px + var(--safe-area-bottom)) max(24px,var(--safe-area-left));display:flex;justify-content:center;gap:24px;color:var(--muted);font-size:.72rem}.public-legal-links a:hover,.legal-footer a:hover{color:var(--ink)}.public-legal-links .domain-signature{color:var(--ink-soft);font-family:var(--sans);font-weight:700;letter-spacing:-.01em}.legal-page{min-height:100vh;background:var(--paper)}.legal-content{width:min(760px,calc(100% - 40px));margin:0 auto;padding:70px 0 90px}.legal-content h1{max-width:700px;margin:10px 0 24px;font-size:clamp(2.7rem,7vw,5rem)}.legal-content h2{margin:42px 0 10px;font-size:1.45rem}.legal-content p{margin:0 0 16px;color:var(--ink-soft);font-size:.96rem;line-height:1.8}.legal-content .legal-lead{max-width:680px;color:var(--ink);font-family:var(--serif);font-size:1.25rem;line-height:1.65}.legal-footer{padding:28px 40px;display:flex;justify-content:center;gap:24px;border-top:1px solid var(--line);color:var(--muted);font-size:.75rem}.public-header{height:calc(82px + var(--safe-area-top));max-width:1320px;margin:0 auto;padding:var(--safe-area-top) max(44px,var(--safe-area-right)) 0 max(44px,var(--safe-area-left));display:flex;align-items:center;justify-content:space-between}.text-link,.text-button{display:inline-flex;align-items:center;gap:7px;border:0;padding:0;color:var(--ink);background:transparent;font-weight:650;font-size:.87rem;cursor:pointer}.text-link:hover,.text-button:hover{color:var(--sage-dark)}.eyebrow{display:block;margin-bottom:9px;text-transform:uppercase;letter-spacing:.13em;font-size:.68rem;font-weight:800;color:var(--sage-dark)}.button{min-height:47px;padding:0 21px;border:1px solid transparent;border-radius:4px;display:inline-flex;align-items:center;justify-content:center;gap:9px;font-weight:720;font-size:.9rem;cursor:pointer;transition:transform .15s var(--ease-out-ui),background-color .18s ease,color .18s ease}.button:active:not(:disabled){transform:scale(.97)}.button-primary{background:var(--ink);color:#fff;box-shadow:0 8px 20px #102a4329}.button-outline{border-color:var(--ink);color:var(--ink);background:transparent}.button-ghost{color:var(--ink);background:transparent}.button-saffron{background:var(--saffron);border-color:#d89511;color:#382606;box-shadow:0 8px 20px #efa91e38}.wide{width:100%}.icon-button{width:40px;height:40px;display:grid;place-items:center;border:0;border-radius:50%;background:transparent;cursor:pointer;transition:transform .15s var(--ease-out-ui),background-color .15s ease}.icon-button:active:not(:disabled){transform:scale(.95)}@media(hover:hover)and (pointer:fine){.button:hover{transform:translateY(-2px)}.button:hover:active:not(:disabled){transform:scale(.97)}.button-primary:hover{background:#1a3b58;box-shadow:0 11px 24px #102a4333}.button-outline:hover{background:var(--ink);color:#fff}.icon-button:hover{background:#102a4312}}.welcome-page{min-height:100vh;position:relative;overflow:hidden;background:radial-gradient(circle at 68% 45%,rgba(220,232,215,.62),transparent 27%),var(--ivory)}.welcome-hero{min-height:calc(100vh - 190px);max-width:1260px;margin:0 auto;padding:35px 64px 60px;display:grid;grid-template-columns:.95fr 1.05fr;align-items:center;gap:70px}.welcome-copy{position:relative;z-index:2;animation:rise .65s ease both}.welcome-copy h1{margin:0 0 26px;max-width:680px;color:var(--ink)}.welcome-copy>p{max-width:540px;margin-bottom:32px;font-size:1.08rem}.hero-actions{display:flex;align-items:stretch;gap:16px}.welcome-return{min-width:178px;padding:5px 16px 4px;border-left:1px solid var(--line);display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:2px;color:inherit;text-decoration:none;transition:background-color .16s ease,border-color .16s ease}.welcome-return>span:first-child{color:var(--muted);font-size:.68rem}.welcome-return-action{display:inline-flex;align-items:center;gap:6px;color:var(--ink);font-size:.82rem;font-weight:750}.welcome-return svg{transition:transform .16s var(--ease-out-ui)}.welcome-proof{margin-top:25px;display:flex;gap:24px;font-size:.77rem;color:var(--muted)}.welcome-proof span{display:flex;align-items:center;gap:6px}.welcome-proof svg{width:15px;color:var(--sage-dark)}.welcome-visual{align-self:stretch;min-height:600px;position:relative;display:grid;place-items:center;animation:reveal .8s .1s ease both}.welcome-visual .sun-disc{position:absolute;width:420px;height:420px;border-radius:50%;background:#e4ead7;box-shadow:inset 0 0 0 1px #47725a14}.welcome-visual .mascot{width:min(510px,92%);max-height:590px;position:relative;z-index:1;filter:drop-shadow(0 24px 28px rgba(16,42,67,.14))}.coach-quote{position:absolute;right:3%;bottom:15%;z-index:2;display:flex;align-items:center;gap:10px;padding:14px 16px;background:var(--paper);border:1px solid var(--line);border-radius:6px;box-shadow:var(--shadow);font-family:var(--serif);animation:float 4s ease-in-out infinite}.coach-quote svg{color:var(--saffron)}.welcome-features{max-width:1260px;margin:0 auto;padding:24px 64px 30px;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(3,1fr)}.welcome-features>div{display:flex;align-items:center;gap:15px;padding:0 25px;border-right:1px solid var(--line)}.welcome-features>div:first-child{padding-left:0}.welcome-features>div:last-child{border-right:0}.welcome-features p,.sidebar-note p{margin:0;display:flex;flex-direction:column}.welcome-features strong{font-family:var(--serif);font-size:.98rem}.welcome-features p span{color:var(--muted);font-size:.72rem;margin-top:3px}.welcome-learning{width:min(1132px,calc(100% - 128px));margin:58px auto 36px;padding:12px;border:1px solid color-mix(in srgb,var(--sage-dark) 24%,var(--line));border-radius:22px;background:linear-gradient(135deg,#e4ead7d1,#fffdf7f5 48%),var(--paper);box-shadow:0 24px 65px #102a431a;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:12px}.welcome-learning-intro{min-height:474px;padding:48px 44px;border-radius:14px;position:relative;overflow:hidden;display:flex;align-items:flex-end}.welcome-learning-intro>div:last-child{position:relative;z-index:1}.welcome-learning-intro h2{max-width:480px;margin:12px 0 18px;font-size:clamp(2rem,3.3vw,3.4rem);line-height:.98}.welcome-learning-intro p{max-width:540px;margin-bottom:26px}.welcome-learning-mark{position:absolute;top:-42px;right:-28px;width:230px;height:230px;border:1px solid rgba(71,114,90,.18);border-radius:50%;display:grid;grid-template-columns:repeat(3,1fr);place-items:center;transform:rotate(-9deg);color:#47725a3d;font-family:var(--serif);font-size:1.4rem}.welcome-learning-mark:before,.welcome-learning-mark:after{content:"";position:absolute;background:#47725a24}.welcome-learning-mark:before{width:1px;height:100%}.welcome-learning-mark:after{width:100%;height:1px}.welcome-learning-grid{display:grid;gap:8px;padding:8px;border-radius:14px;background:#fffdf7b8}.welcome-learning-grid article{min-width:0}.welcome-learning-step{height:100%;min-height:142px;padding:23px 20px;border:1px solid transparent;border-radius:11px;display:grid;grid-template-columns:32px 42px minmax(0,1fr) 24px;align-items:center;gap:13px;color:inherit;text-decoration:none;transition:transform .18s var(--ease-out-ui),border-color .18s ease,background-color .18s ease,box-shadow .18s ease}.welcome-step-number{align-self:start;padding-top:5px;color:var(--sage-dark);font-size:.65rem;font-weight:800;letter-spacing:.13em}.welcome-step-icon{width:42px;height:42px;border:1px solid rgba(71,114,90,.22);border-radius:50%;display:grid;place-items:center;color:var(--sage-dark);background:#e4ead7a6}.welcome-step-icon svg{width:19px}.welcome-learning-grid h3{margin:0 0 7px;font-size:1.12rem}.welcome-learning-grid p{max-width:620px;margin:0;font-size:.88rem}.welcome-step-arrow{width:18px;color:var(--muted);transition:transform .18s var(--ease-out-ui)}@media(hover:hover)and (pointer:fine){.welcome-return:hover{border-color:color-mix(in srgb,var(--sage-dark) 35%,var(--line));background:#e4ead75c}.welcome-return:hover svg{transform:translate(3px)}.welcome-learning-step:hover{transform:translateY(-2px);border-color:#47725a38;background:var(--paper);box-shadow:0 12px 25px #102a4314}.welcome-learning-step:hover .welcome-step-arrow{transform:translate(4px)}}.feature-icon{width:40px;color:var(--ink)}.onboarding-page{min-height:100vh;display:flex;flex-direction:column}.onboarding-main{width:min(780px,calc(100% - 40px));margin:auto;padding:55px 0 25px}.onboarding-intro{text-align:center;max-width:600px;margin:0 auto 34px}.onboarding-intro h1{font-size:clamp(2.5rem,5vw,4rem);margin-bottom:15px}.onboarding-intro p{max-width:480px;margin:0 auto}.level-options{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.level-options button{min-height:196px;position:relative;padding:24px;border:1px solid var(--line);border-radius:8px;background:#ffffff73;text-align:left;cursor:pointer;transition:transform .18s var(--ease-out-ui),border-color .18s ease,background-color .18s ease}.level-options button:active{transform:scale(.985)}@media(hover:hover)and (pointer:fine){.level-options button:hover{border-color:#91a28e;transform:translateY(-3px)}.level-options button:hover:active{transform:scale(.985)}}.level-options button.selected{border-color:var(--sage-dark);background:#f0f5ed;box-shadow:0 10px 30px #47725a1f}.level-options button>span:nth-child(2){display:flex;flex-direction:column;gap:9px}.level-options strong{margin-top:26px;font-family:var(--serif);font-size:1.18rem}.level-options small{line-height:1.5;color:var(--muted)}.level-options button i{position:absolute;top:20px;right:20px;color:var(--sage-dark)}.level-number{color:var(--saffron-ink);font-family:var(--serif);font-size:.84rem}.onboarding-action{display:flex;flex-direction:column;align-items:center;gap:12px;margin-top:28px}.onboarding-action>span{color:var(--muted);font-size:.75rem}.onboarding-coach{width:min(620px,calc(100% - 40px));margin:20px auto 35px;display:flex;align-items:center;justify-content:center;gap:16px}.onboarding-coach .mascot{width:74px;height:74px}.onboarding-coach>div{display:flex;flex-direction:column;gap:4px}.onboarding-coach strong{font-family:var(--serif)}.onboarding-coach span{color:var(--muted);font-size:.8rem}.app-shell{min-height:100vh;display:grid;grid-template-columns:clamp(228px,16vw,244px) minmax(0,1fr);background:var(--paper);transition:grid-template-columns .18s var(--ease-out-ui)}.app-shell-sidebar-collapsed{grid-template-columns:72px minmax(0,1fr)}.sidebar{position:sticky;top:0;height:100dvh;padding:calc(28px + var(--safe-area-top)) max(20px,var(--safe-area-right)) calc(20px + var(--safe-area-bottom)) max(20px,var(--safe-area-left));border-right:1px solid var(--line);background:var(--ivory);display:flex;flex-direction:column;overflow-y:auto;z-index:30;transition:padding .18s var(--ease-out-ui),width .18s var(--ease-out-ui)}.sidebar-head{position:relative;padding:0 8px 35px;display:flex;align-items:center;justify-content:space-between}.sidebar-collapse-button{position:fixed;z-index:31;top:calc(34px + var(--safe-area-top));left:clamp(214px,calc(16vw - 14px),230px);width:28px;height:32px;padding:0;display:grid;border:1px solid var(--line);border-radius:6px;background:var(--ivory);color:var(--muted);cursor:pointer;place-items:center;transition:color .15s ease,background-color .15s ease}.sidebar-collapse-button:hover{background:var(--paper);color:var(--ink)}.sidebar-collapse-button:focus-visible{outline:3px solid rgba(71,114,90,.22);outline-offset:2px}.sidebar-collapse-button svg{width:16px;height:16px}.sidebar nav{display:flex;flex-direction:column;gap:4px}.nav-link{height:44px;padding:0 12px;display:flex;align-items:center;gap:12px;border-radius:4px;color:#5c6b76;font-size:.84rem;font-weight:600}.nav-link:hover{background:#102a430d}.nav-link.active{background:var(--ink);color:#fff;box-shadow:0 5px 12px #102a4324}.sidebar-account{margin-top:2px;border-top:1px solid var(--line);padding-top:6px}.sidebar-account-link{height:auto;min-height:54px}.sidebar-account-link>span{min-width:0;display:grid;gap:2px}.sidebar-account-link strong,.sidebar-account-link small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-account-link strong{font-size:.75rem}.sidebar-account-link small{color:var(--muted);font-size:.61rem;font-weight:600}.sidebar-account-link.active small{color:#ffffffb8}.sidebar-sign-out{width:100%;min-height:36px;padding:0 12px;border:0;border-radius:4px;display:flex;align-items:center;gap:12px;background:transparent;color:var(--muted);cursor:pointer;font:650 .72rem var(--sans);text-align:left}.sidebar-sign-out:hover:not(:disabled){background:#102a430d;color:var(--ink)}.sidebar-sign-out:disabled{cursor:wait;opacity:.6}.sidebar-auth-status{margin:8px 12px 0;color:#9a3f31;font-size:.65rem;line-height:1.4}.sidebar-note{margin-top:auto;padding:18px 7px;display:flex;align-items:center;gap:9px;border-top:1px solid var(--line)}.sidebar-note .mascot{width:50px;height:58px}.sidebar-note strong{font-family:var(--serif);font-size:.8rem}.sidebar-note span{color:var(--muted);font-size:.62rem;line-height:1.4}.sidebar-upgrade{min-height:40px;margin-block:12px;display:flex;align-items:center;justify-content:center;gap:7px;border:1px solid #d1b66a;border-radius:4px;color:#75560c;font-size:.75rem;font-weight:700}.sidebar-collapsed{padding-right:12px;padding-left:12px;overflow:visible}.sidebar-collapsed .sidebar-collapse-button{left:58px}.sidebar-collapsed .sidebar-head{padding-inline:0;justify-content:center}.sidebar-collapsed .sidebar-head .brand span,.sidebar-collapsed .nav-link>span,.sidebar-collapsed .sidebar-sign-out>span,.sidebar-collapsed .sidebar-upgrade>span,.sidebar-collapsed .sidebar-note,.sidebar-collapsed .sidebar-auth-status,.sidebar-collapsed>.language-picker .language-picker-label{display:none}.sidebar-collapsed .brand-mark{width:40px;height:40px}.sidebar-collapsed nav{align-items:center}.sidebar-collapsed .nav-link,.sidebar-collapsed .sidebar-sign-out,.sidebar-collapsed .sidebar-upgrade{position:relative;width:44px;min-width:44px;padding-inline:0;justify-content:center}.sidebar-collapsed .nav-link{height:44px}.sidebar-collapsed .sidebar-account{width:100%;display:grid;justify-items:center}.sidebar-collapsed .sidebar-account-link{min-height:44px}.sidebar-collapsed .sidebar-sign-out{min-height:40px}.sidebar-collapsed .sidebar-upgrade{min-height:44px;margin-block:auto 12px}.sidebar-collapsed>.language-picker{min-height:0;padding:0;justify-content:center}.sidebar-collapsed>.language-picker .language-toggle{width:44px;grid-template-columns:1fr}.sidebar-collapsed>.language-picker .language-toggle button{min-height:30px}.sidebar-language-rail{position:relative;display:grid;place-items:center}.language-picker-rail{min-height:0;margin-top:6px;padding:0}.language-rail-button{width:44px;height:44px;padding:0;display:grid;grid-template-columns:16px auto;align-items:center;justify-content:center;gap:4px;border:1px solid rgba(16,42,67,.16);border-radius:10px;background:#fffdf8c7;color:var(--ink);cursor:pointer;font:800 .57rem/1 var(--sans);box-shadow:0 2px 8px #102a430f;transition:border-color .15s ease,background-color .15s ease,transform .15s var(--ease-out-ui)}.language-rail-button:hover{border-color:color-mix(in srgb,var(--sage-dark) 45%,var(--line));background:#fff;transform:translateY(-1px)}.language-rail-button:focus-visible{outline:3px solid rgba(71,114,90,.22);outline-offset:2px}.sidebar-item-tooltip{position:absolute;z-index:20;top:50%;left:calc(100% + 12px);display:block;max-width:230px;padding:9px 12px;transform:translate(4px,-50%);border:1px solid rgba(255,255,255,.1);border-radius:7px;background:var(--ink);color:#fff;box-shadow:0 12px 30px #102a4333;font:700 .68rem/1.25 var(--sans);letter-spacing:.01em;white-space:nowrap;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .12s ease,visibility .12s ease,transform .12s var(--ease-out-ui)}.sidebar-collapsed .nav-link>.sidebar-item-tooltip,.sidebar-collapsed .sidebar-sign-out>.sidebar-item-tooltip,.sidebar-collapsed .sidebar-upgrade>.sidebar-item-tooltip{display:block}.sidebar-item-tooltip:before{position:absolute;top:50%;left:-5px;width:10px;height:10px;transform:translateY(-50%) rotate(45deg);background:var(--ink);content:""}.sidebar-collapsed .nav-link:hover>.sidebar-item-tooltip,.sidebar-collapsed .nav-link:focus-visible>.sidebar-item-tooltip,.sidebar-collapsed .sidebar-sign-out:hover>.sidebar-item-tooltip,.sidebar-collapsed .sidebar-sign-out:focus-visible>.sidebar-item-tooltip,.sidebar-collapsed .sidebar-upgrade:hover>.sidebar-item-tooltip,.sidebar-collapsed .sidebar-upgrade:focus-visible>.sidebar-item-tooltip,.sidebar-collapsed .sidebar-collapse-button:hover>.sidebar-item-tooltip,.sidebar-collapsed .sidebar-collapse-button:focus-visible>.sidebar-item-tooltip,.sidebar-language-rail:hover>.sidebar-item-tooltip,.sidebar-language-rail:focus-within>.sidebar-item-tooltip{transform:translateY(-50%);opacity:1;visibility:visible}.app-main{min-width:0}.app-update-banner{width:min(760px,calc(100% - 64px));min-height:68px;margin:18px auto -10px;padding:12px 12px 12px 15px;display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:12px;border:1px solid color-mix(in srgb,var(--sage-dark) 24%,var(--line));border-radius:8px;background:color-mix(in srgb,var(--sage) 52%,var(--paper));box-shadow:0 10px 28px #102a4314;animation:app-update-arrive .18s var(--ease-out-ui) both}.app-update-banner.app-update-required{border-color:color-mix(in srgb,var(--saffron) 55%,var(--line));background:color-mix(in srgb,var(--saffron) 13%,var(--paper))}.app-update-icon{width:38px;height:38px;display:grid;border-radius:50%;background:#ffffffad;color:var(--sage-dark);place-items:center}.app-update-banner p{min-width:0;margin:0;display:grid;gap:3px}.app-update-banner p strong{font:700 .86rem/1.2 var(--serif)}.app-update-banner p span{color:var(--ink-soft);font-size:.7rem;line-height:1.4}.app-update-actions{display:flex;align-items:center;gap:3px}.app-update-action{min-height:38px;padding-inline:15px;font-size:.74rem;white-space:nowrap}.app-update-action:disabled{cursor:wait;opacity:.7}.app-update-dismiss{width:38px;height:38px;color:var(--muted)}@keyframes app-update-arrive{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.mobile-header,.scrim{display:none}.page{width:min(1180px,calc(100% - 64px));margin:0 auto;padding:55px 0 80px}.page.app-page{--app-page-max-width: 1180px;--app-page-inline-gutter: 42px;--app-page-padding-top: 32px;--app-page-padding-bottom: 80px;width:min(var(--app-page-max-width),calc(100% - var(--app-page-inline-gutter) - var(--app-page-inline-gutter)));margin-inline:auto;padding:var(--app-page-padding-top) 0 var(--app-page-padding-bottom)}.page.app-page>.app-page-header{min-height:0;margin-bottom:36px;display:flex;align-items:flex-end;justify-content:space-between;gap:30px}.page.app-page>.app-page-header .app-page-header-copy{min-width:0;max-width:none}.page.app-page>.app-page-header .eyebrow{margin-bottom:9px;font-size:.68rem}.page.app-page>.app-page-header h1{max-width:none;margin:0 0 12px;font-size:clamp(2.5rem,4vw,3.7rem);line-height:.98}.page.app-page>.app-page-header p{max-width:none;margin:0;color:var(--ink-soft);font-size:1rem;line-height:1.65}.app-page-header-aside{flex:0 0 auto}.page.app-page>.app-page-state{margin-top:0}.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:36px}.page-heading h1{margin-bottom:12px;font-size:clamp(2.5rem,4vw,3.7rem)}.page-heading p{margin:0}.section-title{display:flex;justify-content:space-between;align-items:flex-start;gap:25px}.section-title h2{margin:0}.difficulty{padding:6px 9px;border-radius:3px;background:var(--sage);color:var(--sage-dark);text-transform:uppercase;letter-spacing:.08em;font-size:.61rem;font-weight:800;white-space:nowrap}.streak{display:flex;align-items:center;gap:5px;padding-bottom:8px;font-size:.75rem;color:var(--muted)}.streak svg{color:var(--saffron)}.streak strong{color:var(--ink)}.practice-week-strip{margin-bottom:20px;padding:4px 4px 16px;display:grid;grid-template-columns:minmax(180px,.65fr) minmax(360px,1fr);align-items:end;gap:24px;border-bottom:1px solid var(--line);color:var(--ink)}.practice-week-heading{min-width:0;display:flex;align-items:flex-end;justify-content:space-between;gap:12px}.practice-week-heading>span{display:grid;gap:4px}.practice-week-heading strong{font-family:var(--serif);font-size:1rem;font-weight:500}.practice-week-heading>small{color:var(--sage-dark);font-size:.65rem;font-weight:800;white-space:nowrap}.practice-week-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.practice-week-days>span{min-height:49px;display:grid;place-items:center;align-content:center;gap:4px;border:1px solid transparent;border-radius:6px;background:color-mix(in srgb,var(--paper) 74%,var(--sage-soft) 26%)}.practice-week-days small{color:var(--muted);font-size:.56rem;font-weight:800;text-transform:uppercase}.practice-week-days i{font-family:var(--serif);font-size:.72rem;font-style:normal}.practice-week-days .has-practice{border-color:color-mix(in srgb,var(--sage-dark) 30%,var(--line));background:var(--sage-soft)}.practice-week-days .has-practice i{color:var(--sage-dark);font-weight:700}.practice-week-days .is-today{box-shadow:inset 0 0 0 1px var(--ink)}.practice-week-strip:focus-visible{border-radius:4px;outline:3px solid var(--saffron);outline-offset:3px}@media(hover:hover)and (pointer:fine){.practice-week-strip:hover .practice-week-heading>small{color:var(--ink)}.practice-week-strip:hover .has-practice{border-color:var(--sage-dark)}}.home-primary{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}.today-panel,.resume-panel,.progress-panel,.learning-path{border:1px solid var(--line);border-radius:8px;background:var(--paper)}.today-panel{padding:26px}.resume-panel{padding:28px;border-top:3px solid var(--sage-dark);box-shadow:0 14px 32px #102a430f}.today-body{display:grid;grid-template-columns:210px 1fr;gap:26px;margin-top:24px;align-items:center}.resume-body{display:grid;grid-template-columns:230px minmax(0,1fr);gap:30px;margin-top:24px;align-items:center}.resume-puzzle-name{margin:0 0 13px;font-family:var(--serif);font-size:1.1rem}.resume-status{margin:0 0 18px;color:var(--muted);font-size:.72rem;line-height:1.5;font-variant-numeric:tabular-nums}.resume-progress{margin-bottom:17px}.resume-progress>span{display:block;margin-bottom:7px;color:var(--muted);font-size:.68rem}.resume-progress>i{height:6px;display:block;overflow:hidden;border-radius:999px;background:#e1e5de}.resume-progress>i>b{height:100%;display:block;border-radius:inherit;background:var(--sage-dark)}.resume-copy dl{margin:0 0 18px}.resume-copy dl div{display:flex;justify-content:space-between;gap:15px;padding:7px 0;border-bottom:1px solid #ebe6dc;font-size:.72rem}.resume-copy dt{color:var(--muted)}.resume-copy dd{margin:0;font-weight:700}.resume-copy>small{display:block;margin-top:10px;color:var(--muted);font-size:.64rem}.today-copy>p{margin-bottom:16px;font-size:.85rem}.today-copy dl{margin:0 0 18px}.today-copy dl div{display:flex;justify-content:space-between;gap:15px;padding:7px 0;border-bottom:1px solid #ebe6dc;font-size:.72rem}.today-copy dt{color:var(--muted)}.today-copy dd{margin:0;font-weight:700}.mini-board{aspect-ratio:1;display:grid;grid-template-columns:repeat(9,1fr);border:1.5px solid var(--ink);background:#fff}.mini-board span{display:grid;place-items:center;min-width:0;border-right:1px solid #d8dde0;border-bottom:1px solid #d8dde0;font-family:var(--serif);font-size:clamp(.45rem,1vw,.72rem)}.mini-board .box-r{border-right:1.5px solid var(--ink)}.mini-board .box-b{border-bottom:1.5px solid var(--ink)}.progress-panel{padding:26px;display:flex;flex-direction:column;align-items:center}.progress-panel>.eyebrow{align-self:flex-start}.progress-ring{--progress: 0deg;width:160px;height:160px;border-radius:50%;margin:13px 0 20px;display:grid;place-items:center;background:conic-gradient(var(--saffron) var(--progress),#e8e6df 0);position:relative}.progress-ring:after{content:"";position:absolute;top:12px;right:12px;bottom:12px;left:12px;border-radius:50%;background:var(--paper)}.progress-ring>div{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center}.progress-ring strong{font-family:var(--serif);font-size:2rem;font-weight:500}.progress-ring span{color:var(--muted);font-size:.6rem}.progress-ring.small{width:105px;height:105px;margin:0}.progress-ring.small:after{top:8px;right:8px;bottom:8px;left:8px}.progress-ring.small strong{font-size:1.35rem}.progress-stats{width:100%;display:flex;flex-direction:column;gap:9px}.progress-stats span{display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:.67rem}.progress-stats strong{color:var(--ink);font-size:.78rem}.progress-stats .recent-mastery{margin-top:3px;padding-top:9px;align-items:flex-start;flex-direction:column;gap:2px;border-top:1px solid var(--line)}.recent-mastery strong{text-transform:capitalize}.recent-mastery i{color:var(--muted);font-style:normal;font-size:.61rem}.learning-path{margin-top:16px;padding:26px}.path-line{margin-top:32px;display:grid;grid-template-columns:repeat(3,1fr);position:relative}.path-line:before{content:"";height:1px;position:absolute;left:9%;right:9%;top:16px;background:var(--line)}.path-step{position:relative;display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center}.path-step i{width:33px;height:33px;z-index:1;display:grid;place-items:center;border-radius:50%;border:1px solid var(--line);background:var(--paper);font-style:normal;font-size:.75rem}.path-step i svg{width:15px}.path-step strong{margin-top:6px;font-family:var(--serif);font-size:.86rem}.path-step span{color:var(--muted);font-size:.61rem}.path-step.done i{background:var(--sage-dark);color:#fff;border-color:var(--sage-dark)}.path-step.active i{background:var(--saffron);color:var(--ink);border-color:#d79612;box-shadow:0 0 0 5px #efa91e21}.continue-lesson{margin-top:16px;padding:18px 20px;display:grid;grid-template-columns:104px minmax(0,1fr) auto;gap:20px;align-items:center;border:1px solid var(--line);border-radius:12px;background:color-mix(in srgb,var(--paper) 88%,var(--sage-soft));color:var(--ink);box-shadow:0 1px 2px #102a430a;transition:border-color .15s ease,box-shadow .15s ease,transform .15s var(--ease-out-ui)}.continue-lesson-secondary{background:var(--paper)}.continue-lesson-secondary .lesson-art{height:auto;aspect-ratio:1}.lesson-art{width:104px;height:104px;display:grid;place-items:center;overflow:hidden}.lesson-art img{width:100%;height:100%;border-radius:28px;-o-object-fit:contain;object-fit:contain}.continue-lesson-copy{min-width:0}.continue-lesson h2{margin:0 0 6px;font-size:1.35rem;line-height:1.12}.continue-lesson p{max-width:52ch;margin:0;color:var(--muted);font-size:.78rem;line-height:1.5;text-wrap:pretty}.continue-lesson-chevron{color:var(--sage-dark);transition:transform .15s var(--ease-out-ui)}@media(hover:hover)and (pointer:fine){.continue-lesson:hover{border-color:color-mix(in srgb,var(--sage-dark) 38%,var(--line));box-shadow:0 8px 22px #102a4314;transform:translateY(-1px)}.continue-lesson:hover .continue-lesson-chevron{transform:translate(3px)}}.puzzle-page{min-height:100vh;background:var(--paper)}.puzzle-header{height:calc(70px + var(--safe-area-top));padding:var(--safe-area-top) max(28px,var(--safe-area-right)) 0 max(28px,var(--safe-area-left));border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr auto 1fr;align-items:center}.puzzle-header>:last-child{justify-self:end}.puzzle-header-actions{position:relative;display:flex;align-items:center;justify-content:flex-end;gap:4px}.puzzle-options{position:relative}.puzzle-options-trigger{min-height:40px;padding:0 13px;display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:999px;background:transparent;color:var(--ink);font-size:.68rem;font-weight:750;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,transform .15s var(--ease-out-ui)}.puzzle-options-trigger svg{width:18px}.puzzle-options-trigger:active{transform:scale(.97)}@media(hover:hover)and (pointer:fine){.puzzle-options-trigger:hover{border-color:color-mix(in srgb,var(--ink) 28%,var(--line));background:#102a430d}}.puzzle-options-backdrop{display:none}.puzzle-options-panel{position:absolute;z-index:90;top:calc(100% + 8px);right:0;width:min(370px,calc(100vw - 28px));max-height:min(720px,calc(100dvh - 90px));overflow-y:auto;border:1px solid var(--line);border-radius:12px;background:var(--paper);box-shadow:0 18px 50px #0d2d442e}.puzzle-options-panel:focus{outline:none}.puzzle-options-heading{padding:18px 18px 14px;display:flex;align-items:flex-start;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line)}.puzzle-options-heading .eyebrow{margin-bottom:3px}.puzzle-options-heading h2{margin:0;font-size:1.15rem}.puzzle-options-close{width:34px;height:34px;margin:-6px -6px 0 0}.puzzle-options-close svg{width:18px}.puzzle-options-section{padding:14px 18px 4px}.puzzle-options-section.compact{padding-top:12px;border-top:1px solid #ebe6dd}.puzzle-options-section h3{margin:0 0 4px;color:var(--muted);font-family:var(--sans);font-size:.58rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.puzzle-option-row,.puzzle-option-choice{min-height:52px;display:flex;align-items:center;justify-content:space-between;gap:18px;border-top:1px solid #ebe6dd}.puzzle-option-label{min-width:0;display:flex;align-items:center;gap:8px;color:var(--ink);font-size:.72rem;font-weight:680}.puzzle-option-label svg{width:16px;color:var(--sage-dark)}.puzzle-option-choice{min-height:70px;align-items:flex-start;padding:11px 0;flex-direction:column;gap:8px}.puzzle-option-choice>span{font-size:.72rem;font-weight:680}.puzzle-option-choice .segmented-control{width:100%;margin:0}.puzzle-option-choice .segmented-control button{min-height:34px}.puzzle-options-panel .toggle{flex:0 0 auto}.puzzle-options-settings-link{margin:10px 12px 12px;padding:11px 8px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;border-radius:7px;color:var(--ink);transition:background-color .15s ease}.puzzle-options-settings-link:hover,.puzzle-options-settings-link:focus-visible{background:#f3eee5}.puzzle-options-settings-link>svg{width:18px;color:var(--sage-dark)}.puzzle-options-settings-link>svg:last-child{width:16px}.puzzle-options-settings-link span{display:grid;gap:2px}.puzzle-options-settings-link strong{font-size:.72rem}.puzzle-options-settings-link small{color:var(--muted);font-size:.61rem;line-height:1.35}.puzzle-options-danger{padding:8px 12px 12px;border-top:1px solid var(--line)}.puzzle-options-danger button{width:100%;padding:11px 12px;display:grid;grid-template-columns:auto 1fr;align-items:start;gap:10px;border:0;border-radius:6px;background:transparent;color:var(--ink);text-align:left;cursor:pointer}.puzzle-options-danger button:hover:not(:disabled),.puzzle-options-danger button:focus-visible{background:#f3eee5}.puzzle-options-danger button:disabled{opacity:.5;cursor:default}.puzzle-options-danger svg{width:18px;color:#9b4439}.puzzle-options-danger span{display:grid;gap:2px}.puzzle-options-danger strong{font-size:.72rem}.puzzle-options-danger small{color:var(--muted);font-size:.62rem;line-height:1.35}.puzzle-meta{display:flex;align-items:center;gap:16px}.timer{min-height:44px;padding:0 6px;display:flex;align-items:center;gap:6px;border:0;background:transparent;cursor:pointer;font-variant-numeric:tabular-nums}.mistake-count{color:var(--muted);font-size:.72rem}.puzzle-layout{width:min(1260px,calc(100% - 48px));margin:0 auto;padding:32px 0 calc(32px + var(--safe-area-bottom));display:grid;grid-template-columns:minmax(520px,740px) minmax(280px,355px);justify-content:center;gap:36px}.board-workspace{min-width:0;--puzzle-board-size: min(100%, max(440px, calc(100dvh - 244px) ))}.puzzle-goal,.exploration-banner{width:var(--puzzle-board-size);margin:0 auto 12px;padding:11px 14px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:11px;border:1px solid var(--line);border-radius:6px;background:#fffdf8bf}.puzzle-goal div,.exploration-banner div{display:flex;flex-direction:column;gap:2px}.puzzle-goal span,.exploration-banner span{color:var(--muted);font-size:.65rem}.puzzle-goal strong,.exploration-banner strong{font-family:var(--serif);font-size:.78rem}.puzzle-goal small{color:var(--muted);font-variant-numeric:tabular-nums}.puzzle-goal>svg{color:var(--sage-dark)}.puzzle-goal.complete{border-color:#9eb89f;background:#edf5e9}.puzzle-goal.just-completed{animation:goal-success-arrive .7s var(--ease-out-ui) both}.puzzle-goal.just-completed>svg{animation:goal-success-check .56s var(--ease-out-ui) both}.exploration-banner{border-color:#aabed0;background:var(--blue-wash)}.exploration-banner>svg{color:#2d6793}.board-wrap{position:relative;width:var(--puzzle-board-size);margin:0 auto}.sudoku-board{aspect-ratio:1;display:grid;grid-template-columns:repeat(9,minmax(0,1fr));grid-template-rows:repeat(9,minmax(0,1fr));border:2px solid var(--ink);background:#fff;box-shadow:0 15px 34px #102a4317}.sudoku-row{display:contents}.sudoku-cell{min-width:0;min-height:0;position:relative;display:grid;place-items:center;padding:0;border:0;border-right:1px solid #cfd6da;border-bottom:1px solid #cfd6da;background:#fff;cursor:pointer}.sudoku-cell.box-right{border-right:2px solid var(--ink)}.sudoku-cell.box-bottom{border-bottom:2px solid var(--ink)}.sudoku-cell.edge-right{border-right:0}.sudoku-cell.edge-bottom{border-bottom:0}.sudoku-cell.related{background:#f2f4ef}.sudoku-cell.same-value{background:#e4ede0}.sudoku-cell.selected{z-index:2;border:3px solid #2d6793;background:#dce9f4}.sudoku-cell.hinted:after{content:"";position:absolute;top:6px;right:6px;bottom:6px;left:6px;border:2px solid var(--saffron);border-radius:50%;pointer-events:none;animation:pulse 1.6s ease infinite}.sudoku-cell.guide-related{background:#fff8e5}.sudoku-cell.guide-target{z-index:3;background:#ffe8a8;box-shadow:inset 0 0 0 3px var(--saffron),0 0 0 3px #e5a72d33}.sudoku-cell.conflict{background:#f8e6e2;box-shadow:inset 0 0 0 2px var(--coral)}.sudoku-cell.conflict:before{content:"!";position:absolute;right:4px;top:2px;color:var(--coral);font:800 10px sans-serif}.sudoku-cell.needs-review{z-index:3;background:#fff7df;box-shadow:inset 0 0 0 3px var(--saffron)}.sudoku-cell.needs-review:after{content:"";position:absolute;top:5px;right:5px;bottom:5px;left:5px;border:1px dashed color-mix(in srgb,var(--ink) 38%,transparent);border-radius:4px;pointer-events:none}.sudoku-cell.placement-success:before{content:"";position:absolute;z-index:4;top:3px;right:3px;bottom:3px;left:3px;border:2px solid var(--sage-dark);border-radius:4px;box-shadow:0 0 0 5px color-mix(in srgb,var(--sage-dark) 16%,transparent);pointer-events:none;animation:placement-success-ring .62s var(--ease-out-ui) both}.cell-success-mark{position:absolute;z-index:5;top:4px;right:4px;padding:2px 5px;border-radius:999px;background:var(--paper);color:var(--sage-dark);box-shadow:0 1px 4px color-mix(in srgb,var(--ink) 16%,transparent);font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-size:clamp(.42rem,.7vw,.58rem);font-weight:700;line-height:1.2;pointer-events:none;animation:placement-success-label .7s var(--ease-out-ui) both}.sudoku-cell.placement-success .cell-value{color:var(--sage-dark)}.cell-value{font-family:var(--serif);font-size:clamp(1.25rem,3.3vw,2.15rem);color:#1f669a}.sudoku-cell.given .cell-value{color:var(--ink);font-weight:600}.candidate-grid{min-width:0;min-height:0;width:100%;height:100%;padding:4px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(3,minmax(0,1fr))}.candidate-grid i{display:grid;place-items:center;font-style:normal;color:#587184;font-size:clamp(.44rem,.9vw,.7rem)}@keyframes placement-success-ring{0%{opacity:0;transform:scale(.82)}48%{opacity:1;transform:scale(1.035)}to{opacity:.82;transform:scale(1)}}@keyframes placement-success-label{0%{opacity:0;transform:translateY(4px) scale(.92)}}@keyframes goal-success-arrive{0%{box-shadow:0 0 color-mix(in srgb,var(--sage-dark) 24%,transparent)}55%{box-shadow:0 0 0 6px color-mix(in srgb,var(--sage-dark) 12%,transparent)}to{box-shadow:0 0 0 0 transparent}}@keyframes goal-success-check{0%{opacity:0;transform:scale(.72) rotate(-12deg)}}.rule-grid-example{margin-top:18px}.rule-example-grid{width:min(100%,370px);aspect-ratio:1;display:grid;grid-template-columns:repeat(9,1fr);border:2px solid var(--ink);background:#fff}.rule-example-grid>span{display:grid;place-items:center;border-right:1px solid #cfd6da;border-bottom:1px solid #cfd6da;color:var(--ink);font-family:var(--serif);font-size:clamp(.68rem,1.4vw,.9rem)}.rule-example-grid>span.box-right{border-right:2px solid var(--ink)}.rule-example-grid>span.box-bottom{border-bottom:2px solid var(--ink)}.rule-example-grid>span.example-row{background:#fff3cf}.rule-example-grid>span.example-column{background:#e4eee4}.rule-example-grid>span.example-box{box-shadow:inset 0 0 0 2px #2d679347}.rule-example-grid>span.example-target{position:relative;z-index:2;background:var(--saffron);box-shadow:inset 0 0 0 3px var(--ink);color:var(--ink)}.rule-grid-key{margin-top:12px;display:flex;flex-wrap:wrap;gap:8px 14px;color:var(--muted);font-size:.68rem}.rule-grid-key span{display:inline-flex;align-items:center;gap:6px}.rule-grid-key i{width:13px;height:13px;border:1px solid var(--line)}.rule-grid-key .row-key{background:#fff3cf}.rule-grid-key .column-key{background:#e4eee4}.rule-grid-key .box-key{box-shadow:inset 0 0 0 2px #2d679373}.rule-grid-key .target-key{background:var(--saffron);border-color:var(--ink)}.pause-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:10;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#f7f3eaf7;text-align:center}.pause-overlay .mascot{width:125px;height:130px}.pause-overlay h2{margin:5px 0}.pause-overlay p{margin-bottom:20px;font-size:.83rem}.board-tools{width:var(--puzzle-board-size);margin:18px auto 0}.edit-tools{display:flex;justify-content:center;gap:6px}.tool-button-wrap{position:relative;display:flex;border-radius:6px}.edit-tools button{min-width:67px;padding:8px;display:flex;align-items:center;justify-content:center;gap:5px;border:0;border-radius:4px;background:transparent;color:#5f6f7a;font-size:.68rem;cursor:pointer}.edit-tools button:hover,.edit-tools button.active{background:var(--blue-wash);color:var(--ink)}.edit-tools button:disabled{opacity:.35;cursor:default}.edit-tools svg{width:15px}.puzzle-dialog-backdrop{position:fixed;z-index:1000;top:0;right:0;bottom:0;left:0;padding:24px;display:grid;overflow-y:auto;background:#081c2a8c;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);place-items:center}.puzzle-recovery-dialog,.puzzle-reset-dialog{width:min(100%,520px);padding:28px;border:1px solid var(--line);border-radius:14px;background:var(--paper);box-shadow:0 28px 80px #0d2d4440}.puzzle-dialog-header{display:flex;align-items:center;justify-content:space-between}.puzzle-dialog-icon{width:42px;height:42px;display:grid;margin-bottom:14px;border-radius:50%;background:#fff3cf;color:#8a6217;place-items:center}.puzzle-dialog-icon.success{background:#edf5e9;color:var(--sage-dark)}.puzzle-dialog-icon.danger{background:#fff0ed;color:#a1463b}.puzzle-dialog-icon svg{width:21px}.puzzle-recovery-dialog h2,.puzzle-reset-dialog h2{margin:5px 0 8px;font-size:1.45rem}.puzzle-recovery-dialog>p,.puzzle-reset-dialog>p{margin:0;color:var(--muted);font-size:.76rem;line-height:1.55}.recovery-counts{margin:20px 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-block:1px solid var(--line)}.recovery-counts span{padding:16px 12px;display:grid;gap:2px;color:var(--muted);font-size:.65rem}.recovery-counts span+span{border-left:1px solid var(--line)}.recovery-counts strong{color:var(--ink);font-family:var(--serif);font-size:1.5rem;line-height:1}.recovery-guide{display:grid;gap:12px}.recovery-reason-actions{display:grid;gap:8px}.recovery-reason-actions .button,.recovery-guide .button,.puzzle-dialog-done{width:100%}.recovery-guide .button svg,.recovery-note-cleanup .button svg,.recovery-note-cleanup .text-link svg{width:17px}.recovery-step-message{margin:0;padding:13px 14px;border-left:3px solid var(--saffron);background:#fff8e5;color:var(--ink);font-size:.72rem;line-height:1.5}.recovery-upgrade-note,.recovery-note-cleanup{margin-top:2px;padding:14px;display:flex;align-items:flex-start;justify-content:space-between;gap:14px;border:1px solid var(--line);border-radius:8px;background:#fffdf8b8}.recovery-upgrade-note>svg{flex:0 0 auto;width:19px;color:#9a6b13}.recovery-upgrade-note div,.recovery-note-cleanup div{display:grid;gap:4px}.recovery-upgrade-note strong,.recovery-note-cleanup strong{font-size:.72rem}.recovery-upgrade-note p,.recovery-note-cleanup p{margin:0;color:var(--muted);font-size:.64rem;line-height:1.45}.recovery-upgrade-note .text-link,.recovery-note-cleanup .text-link{margin-top:5px;font-size:.68rem}.recovery-note-cleanup{margin-top:14px;flex-wrap:wrap}.recovery-note-cleanup .button{flex:0 0 auto}.recovery-clear-all{margin-top:16px;color:#9b4439}.recovery-clear-all svg{width:16px}.puzzle-dialog-done{margin-top:20px}.puzzle-dialog-actions{margin-top:22px;display:flex;justify-content:flex-end;gap:10px}.tool-button-wrap:focus-visible{outline:3px solid rgba(45,103,147,.22);outline-offset:2px}.tool-tooltip{position:absolute;z-index:30;left:50%;bottom:calc(100% + 9px);width:-moz-max-content;width:max-content;max-width:min(230px,72vw);padding:7px 9px;border-radius:5px;background:var(--ink);color:#fff;box-shadow:0 7px 20px #102a432e;font-size:.62rem;font-weight:600;line-height:1.35;text-align:center;opacity:0;visibility:hidden;pointer-events:none;transform:translate(-50%,4px);transform-origin:50% 100%;transition:opacity 125ms var(--ease-out-ui),transform 125ms var(--ease-out-ui)}.tool-tooltip:after{content:"";position:absolute;top:100%;left:50%;border:5px solid transparent;border-top-color:var(--ink);transform:translate(-50%)}.tool-button-wrap:focus-within .tool-tooltip,.tool-button-wrap:focus-visible .tool-tooltip{opacity:1;visibility:visible;transform:translate(-50%);transition-delay:0ms;transition-duration:0ms}@media(hover:hover)and (pointer:fine){.tool-button-wrap:hover .tool-tooltip{opacity:1;visibility:visible;transform:translate(-50%);transition-delay:.35s}.tool-button-wrap[data-instant]:hover .tool-tooltip{transition-delay:0ms;transition-duration:0ms}}.tool-button-wrap[data-tooltip-hidden] .tool-tooltip{opacity:0;visibility:hidden;transform:translate(-50%,4px)}.notes-symbol{font-family:var(--serif);font-size:1rem}.number-pad{margin-top:12px;display:grid;grid-template-columns:repeat(9,1fr);gap:5px}.number-pad button{min-width:0;min-height:48px;aspect-ratio:1.12;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:4px;background:#fff;font-family:var(--serif);font-size:1.25rem;cursor:pointer}.number-pad button:hover{border-color:var(--ink);background:var(--blue-wash)}.puzzle-number-pad button:disabled{opacity:.45;cursor:default}.puzzle-number-pad button.digit-complete{opacity:.52;background:#ffffff94}.puzzle-number-pad[data-mode=notes] .number-key{border-color:#aebfcd;background:var(--blue-wash)}.puzzle-number-pad[data-mode=notes] .number-key>span{font-size:.9em}.number-pad button.selected-answer{border-color:var(--ink);background:var(--blue-wash);box-shadow:inset 0 0 0 1px var(--ink)}.number-pad small{margin-top:1px;color:var(--muted);font-family:sans-serif;font-size:.47rem}.number-pad .mobile-input-mode{display:none}.mobile-coach-surface,.mobile-coach-sheet,.mobile-coach-sheet-body{display:contents}.mobile-coach-scrim,.mobile-coach-sheet-grabber,.mobile-coach-sheet-header{display:none}.coach-panel.coach-chat{position:sticky;top:16px;height:min(790px,calc(100dvh - 134px));min-height:min(560px,calc(100dvh - 134px));padding:0;align-self:start;display:flex;flex-direction:column;overflow:hidden;border:1px solid #cec8bc;border-radius:10px;background:var(--paper);box-shadow:0 14px 38px #102a4314}.guided-practice-complete{position:sticky;top:16px;min-height:420px;padding:38px 30px;align-self:start;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;border:1px solid #c8d5c3;border-radius:10px;background:var(--paper);box-shadow:0 14px 38px #102a4314}.guided-practice-complete>svg{width:42px;height:42px;margin-bottom:24px;color:#4f8a63}.guided-practice-complete h2{margin:8px 0 14px;font-size:1.65rem;line-height:1.08}.guided-practice-complete p{margin:0 0 28px;color:var(--muted);line-height:1.6}.guided-practice-actions{width:100%;display:flex;flex-direction:column;align-items:stretch;gap:8px}.guided-practice-actions .button{width:100%;justify-content:center;text-align:center}.coach-chat-header{flex:0 0 auto;min-height:82px;padding:13px 15px;display:flex;align-items:center;gap:11px;border-bottom:1px solid var(--line);background:#fffdf8f5}.coach-status{flex:0 0 auto}.coach-status .puzzle-goal,.coach-status .exploration-banner{width:100%;margin:0;padding:9px 14px;border:0;border-bottom:1px solid var(--line);border-radius:0}.coach-status .puzzle-goal{background:#fffdf8b8}.coach-status .puzzle-goal.complete{background:#edf5e9}.coach-chat-avatar{position:relative;width:52px;height:52px;flex:0 0 52px;overflow:hidden;border:1px solid #c8d5c3;border-radius:50%;background:var(--sage)}.coach-chat-avatar .mascot{width:62px;height:67px;max-width:none;transform:translate(-5px,2px)}.coach-chat-header .eyebrow{font-size:.51rem}.coach-chat-header h2{margin:1px 0 2px;font-size:1.08rem;line-height:1.05}.coach-chat-header small{display:flex;align-items:center;gap:5px;color:var(--muted);font-size:.59rem}.coach-chat-header small i{width:7px;height:7px;border-radius:50%;background:#4f8a63;box-shadow:0 0 0 3px #4f8a631f}.coach-panel[aria-disabled=true] .coach-chat-header small i{background:#9b988f;box-shadow:none}.coach-thread-shell{position:relative;min-height:0;flex:1}.coach-thread{height:100%;overflow-y:auto;padding:18px 13px 22px;background:linear-gradient(#f7f3eae8,#f7f3eae8),radial-gradient(circle at 1px 1px,rgba(63,104,79,.2) 1px,transparent 1.2px);background-size:auto,18px 18px;scrollbar-color:#bbb7ad transparent;scrollbar-width:thin}.coach-new-turn{position:absolute;left:50%;bottom:12px;min-height:34px;padding:7px 11px;display:flex;align-items:center;gap:6px;border:1px solid #9eb49f;border-radius:999px;background:var(--paper);box-shadow:0 5px 16px #102a4324;color:var(--sage-dark);font-size:.61rem;font-weight:750;cursor:pointer;transform:translate(-50%)}.coach-new-turn:hover{background:#f3f7ef}.coach-turn{margin:0 0 12px;display:flex;align-items:flex-end;gap:7px}.coach-turn.coach{animation:coach-turn-in .26s cubic-bezier(.22,1,.36,1) both}.coach-turn.learner{justify-content:flex-end}.coach-turn-avatar{width:30px;height:30px;flex:0 0 30px;overflow:hidden;border:1px solid #ccd5c7;border-radius:50%;background:var(--sage)}.coach-turn-avatar .mascot{width:38px;height:42px;max-width:none;transform:translate(-4px,1px)}.coach-bubble{position:relative;max-width:88%;padding:11px 13px;border:1px solid rgba(16,42,67,.1);border-radius:13px 13px 13px 4px;background:#fff;box-shadow:0 2px 7px #102a430f}.coach-turn.learner .coach-bubble{border-color:#cad8e4;border-radius:13px 13px 4px;background:#e8f0f6}.coach-bubble p{margin:0;color:var(--ink);font-size:.82rem;line-height:1.45;white-space:pre-wrap}.coach-turn.coach .coach-bubble p{font-family:var(--serif);font-size:.88rem;line-height:1.4}.coach-clue-label{display:block;margin-bottom:5px;color:var(--sage-dark);font-size:.49rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.coach-next-action{display:block;margin-top:8px;padding-top:8px;border-top:1px solid #ece8df;color:var(--ink-soft);font-size:.78rem;line-height:1.5}.coach-speech-action{min-height:30px;margin-top:8px;padding:4px 7px;display:inline-flex;align-items:center;gap:5px;border:0;border-radius:999px;background:transparent;color:var(--sage-dark);font-size:.58rem;font-weight:750;cursor:pointer}.coach-speech-action:hover,.coach-speech-action:focus-visible,.coach-speech-action[aria-pressed=true]{background:var(--sage-soft)}.coach-speech-action svg{width:15px}.coach-upgrade-action{min-height:38px;margin-top:10px;padding-inline:13px;font-size:.68rem}.coach-frequency-feedback,.coach-frequency-confirmation{margin-top:9px;padding-top:8px;border-top:1px solid #ece8df;color:var(--sage-dark);font-size:.65rem;font-weight:750}.coach-frequency-feedback{width:100%;padding-inline:0;padding-bottom:0;border-right:0;border-bottom:0;border-left:0;background:transparent;text-align:left;cursor:pointer}.coach-frequency-feedback:hover{color:var(--ink)}.coach-frequency-confirmation{display:block}.coach-turn.pending .coach-bubble{min-width:54px}.coach-typing{min-height:18px;display:flex;align-items:center;justify-content:center;gap:4px}.coach-typing i{width:6px;height:6px;border-radius:50%;background:#718078;animation:coach-typing 1.1s ease-in-out infinite}.coach-typing i:nth-child(2){animation-delay:.12s}.coach-typing i:nth-child(3){animation-delay:.24s}.coach-chat-controls{flex:0 0 auto;padding:11px 12px 10px;border-top:1px solid var(--line);background:var(--paper)}.coach-quick-action{width:100%;min-height:38px;padding:8px 10px;display:flex;align-items:center;justify-content:center;gap:7px;border:1px solid #9eb49f;border-radius:999px;background:#f3f7ef;color:#23432f;font-size:.75rem;font-weight:750;cursor:pointer;transition:background-color .15s ease,transform .15s var(--ease-out-ui)}@media(hover:hover)and (pointer:fine){.coach-quick-action:hover:not(:disabled){background:#e5efdf;transform:translateY(-1px)}}.coach-quick-action small{padding-left:7px;border-left:1px solid #b9c9b6;color:var(--sage-dark);font-size:.7rem}.coach-quick-action:disabled{border-color:#b7c1b4;background:#edf0eb;color:#23432f;cursor:not-allowed}.coach-composer{margin-top:8px;display:grid;grid-template-columns:minmax(0,1fr) 38px;align-items:end;gap:7px}.coach-composer textarea{width:100%;min-height:40px;max-height:88px;padding:10px 11px;resize:vertical;border:1px solid #cfc9bd;border-radius:17px;background:#fff;color:var(--ink);font:inherit;font-size:.68rem;line-height:1.35}.coach-composer textarea:focus{border-color:var(--sage-dark);outline:3px solid rgba(63,104,79,.12)}.coach-composer button{width:38px;height:38px;display:grid;place-items:center;border:0;border-radius:50%;background:var(--ink);color:#fff;cursor:pointer}.coach-composer button:hover:not(:disabled){background:#214660}.coach-composer button:disabled{background:#d6d3cb;color:#85847f;cursor:default}.coach-composer-note{margin:5px 45px 0 8px;color:#38474f;font-size:.75rem;text-align:right}@keyframes coach-turn-in{0%{opacity:0;transform:translateY(7px) scale(.985)}}@keyframes coach-typing{0%,60%,to{opacity:.38;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}@keyframes mobile-coach-unread-pulse{0%{opacity:.7;transform:scale(.82)}70%,to{opacity:0;transform:scale(1.34)}}.library-count{padding-bottom:8px;color:var(--muted);font-size:.75rem}.lesson-list{border-top:1px solid var(--ink)}.lesson-row{min-height:128px;padding:18px 16px;display:grid;grid-template-columns:55px 1fr 160px;align-items:center;border-bottom:1px solid var(--line);transition:background-color .16s ease}@media(hover:hover)and (pointer:fine){.lesson-row:hover{background:#f4f6f1}}.lesson-index{align-self:start;padding-top:6px;color:var(--saffron-ink);font-family:var(--serif);font-size:.78rem}.lesson-row-copy>span{color:var(--sage-dark);text-transform:uppercase;letter-spacing:.1em;font-size:.58rem;font-weight:800}.lesson-row-copy h2{margin:5px 0;font-size:1.45rem}.lesson-row-copy p{max-width:600px;margin:0;color:var(--muted);font-size:.75rem}.lesson-row-meta{display:grid;grid-template-columns:1fr 1fr auto;align-items:center;gap:12px;color:var(--muted);font-size:.65rem}.lesson-row-meta svg{width:18px;color:var(--sage-dark)}.lesson-row.locked{background:#f4f1e9}.lesson-row.completed{background:#f1f5ed}.review-queue{margin-bottom:28px;padding:22px 24px;display:flex;align-items:center;justify-content:space-between;gap:24px;border:1px solid #dfc786;background:#fff8e5}.review-queue h2{margin:4px 0;font-size:1.35rem}.review-queue p{margin:0;font-size:.7rem}.review-queue>div:last-child{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}.advanced-preview{margin-top:44px;padding:34px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:30px}.advanced-preview h2{margin-bottom:8px}.advanced-preview p{max-width:720px;margin:0;font-size:.82rem}.coaching-plan-cta{flex:0 0 auto;white-space:nowrap}.lesson-header{display:flex;justify-content:space-between;margin-bottom:8px;color:var(--muted);font-size:.72rem}.lesson-layout{display:grid;grid-template-columns:180px 1fr;gap:40px}.lesson-steps{align-self:start;position:sticky;top:35px}.lesson-steps>button{width:100%;min-height:42px;padding:0;display:flex;align-items:center;gap:10px;border:0;background:transparent;color:var(--muted);font-size:.75rem;text-align:left;cursor:pointer}.lesson-steps>button i{width:23px;height:23px;flex:0 0 23px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;font-style:normal;font-size:.62rem}.lesson-steps>button.active{color:var(--ink);font-weight:700}.lesson-steps>button.active i{background:var(--ink);border-color:var(--ink);color:#fff}.lesson-steps>button:disabled{opacity:.35;cursor:not-allowed}.lesson-outcome{margin-top:30px;padding:17px;display:flex;align-items:flex-start;gap:10px;border:1px solid var(--line);border-radius:5px}.lesson-outcome svg{flex:0 0 auto;width:16px;color:var(--saffron)}.lesson-outcome p{margin:0;display:flex;flex-direction:column;gap:5px}.lesson-outcome strong{font-family:var(--serif);font-size:.78rem}.lesson-outcome span{color:var(--muted);font-size:.62rem;line-height:1.5}.lesson-content{min-height:650px;padding:44px;border:1px solid var(--line);border-radius:8px;overflow:hidden}.lesson-content>h1{margin:0 0 34px;font-size:3.3rem}.lesson-stage{display:grid;grid-template-columns:1fr 320px;gap:40px;align-items:center}.lesson-prose .lead{color:var(--ink);font-family:var(--serif);font-size:1.1rem;line-height:1.65}.lesson-prose h2{margin:25px 0 20px;line-height:1.08}.lesson-prose p:not(.lead){font-size:.83rem}.lesson-prose>p:not(.lead){margin-bottom:0}.lesson-prose .button{margin-top:15px}.lesson-illustration{width:100%;max-height:410px;-o-object-fit:contain;object-fit:contain}.worked-example{display:grid;grid-template-columns:1.2fr .8fr;gap:40px}.worked-example .mini-board{max-width:430px}.example-label{color:var(--sage-dark);text-transform:uppercase;letter-spacing:.11em;font-size:.62rem;font-weight:800}.worked-example h2,.try-stage h2{margin:8px 0}.worked-example p,.try-stage p{font-size:.8rem}.proof-steps{align-self:center;padding:26px;background:#f3f5ef;border-radius:6px}.proof-steps p{display:flex;align-items:flex-start;gap:10px}.proof-steps p span{flex:0 0 auto;width:21px;height:21px;display:grid;place-items:center;border-radius:50%;background:var(--sage-dark);color:#fff;font-size:.63rem}.proof-steps .button{margin-top:10px}.try-stage{display:grid;grid-template-columns:1.2fr .8fr;gap:35px}.try-board{padding-top:20px}.try-row{margin-top:28px;display:grid;grid-template-columns:repeat(9,1fr);border:2px solid var(--ink)}.try-row button{aspect-ratio:1;min-width:0;padding:0;border:0;border-right:1px solid #b8c1c6;background:#fff;font-family:var(--serif);font-size:1.25rem;cursor:pointer}.try-row button:nth-child(3n){border-right:2px solid var(--ink)}.try-row button:disabled{color:var(--ink);cursor:default}.try-row button:not(:disabled){background:#edf2ea}.try-row button span{font-size:.62rem;color:var(--sage-dark)}.try-row button.correct{background:var(--sage);box-shadow:inset 0 0 0 3px var(--sage-dark)}.try-row button.wrong{background:#f7e5e1;box-shadow:inset 0 0 0 3px var(--coral)}.lesson-choice-grid{margin-top:26px;display:flex;flex-direction:column;gap:9px}.lesson-choice-grid button{min-height:56px;padding:11px 14px;display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:5px;background:#fff;text-align:left;cursor:pointer}.lesson-choice-grid button>span{flex:0 0 auto;width:27px;height:27px;display:grid;place-items:center;border-radius:50%;background:var(--blue-wash);font-size:.68rem;font-weight:800}.lesson-choice-grid button:hover{border-color:var(--ink)}.lesson-choice-grid button.correct{border-color:var(--sage-dark);background:var(--sage)}.lesson-choice-grid button.wrong{border-color:var(--coral);background:#f7e5e1}.lesson-concept-mark{max-width:430px;min-height:260px;display:grid;place-items:center;align-content:center;gap:14px;border:1px solid var(--line);background:#f3f5ef}.lesson-concept-mark>span{width:85px;height:85px;display:grid;place-items:center;border-radius:50%;background:var(--saffron);font-family:var(--serif);font-size:2.4rem}.lesson-concept-mark p{margin:0;font-family:var(--serif);color:var(--ink)}.advanced-list{margin-top:0}.try-feedback{align-self:center;min-height:270px;padding:22px;display:flex;flex-direction:column;justify-content:center;align-items:center;background:#f8f5ed;border:1px solid var(--line);border-radius:6px;text-align:center}.try-feedback .mascot{width:125px;height:130px}.try-feedback p{display:flex;flex-direction:column}.try-feedback strong{color:var(--ink);font-family:var(--serif);font-size:1rem}.try-feedback span{font-size:.7rem}.lesson-complete{max-width:600px;margin:-10px auto 0;text-align:center}.lesson-complete img{height:250px;margin:0 auto 10px}.lesson-complete>img{border-radius:32px}.lesson-complete h2{font-size:2rem}.lesson-access-gate h2{line-height:1.08}.lesson-access-gate>p{margin-top:18px}.practice-page .lesson-complete h1{margin-bottom:24px}.evidence-complete h2{margin:0 0 24px;line-height:1.08;text-wrap:balance}.evidence-complete>.eyebrow{display:block;margin-bottom:24px}.lesson-complete.evidence-complete>p{margin-bottom:40px}.lesson-completion-actions{margin-top:32px;flex-wrap:wrap}.return-promise{display:flex;max-width:560px;margin:20px auto 28px;padding:16px 18px;align-items:center;gap:13px;border:1px solid #b9cdb4;border-radius:16px;background:var(--sage-soft);color:var(--ink);text-align:left}.return-promise>svg{flex:0 0 auto;color:var(--sage-dark)}.return-promise>span{display:grid;gap:3px}.return-promise strong,.return-promise small{display:block}.return-promise small{color:var(--muted);font-size:.78rem;line-height:1.45}.lesson-complete p{max-width:480px;margin:0 auto 24px}.lesson-complete.lesson-access-gate>p{margin-top:18px}.lesson-complete>div{display:flex;justify-content:center;gap:8px}.lesson-share-button{border:1px solid #b9cdb4;background:var(--sage-soft);color:var(--ink)}.lesson-share-button:hover:not(:disabled){border-color:#93b18d;background:var(--sage)}.lesson-share-button:disabled{cursor:wait;opacity:.78}.lesson-share-control{display:grid;justify-items:center;gap:7px}.lesson-share-button[aria-busy=true] svg{animation:lesson-share-spin .85s linear infinite}.lesson-share-status{max-width:260px;color:var(--muted);font-size:.72rem;line-height:1.45}.lesson-share-status:empty{display:none}.lesson-practice-again{padding-inline:12px}@keyframes lesson-share-spin{to{transform:rotate(360deg)}}.pedagogy-content{min-width:0}.lesson-page .lesson-content{border:0;border-radius:0;box-shadow:none}.lesson-content[data-poster-stage=true]{padding:0;overflow:visible;border:0}.lesson-content-header{margin-bottom:30px;display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.lesson-content-header h1{margin:4px 0 0;font-size:clamp(2.4rem,5vw,3.3rem)}.evidence-badge{flex:0 0 auto;min-width:132px;padding:11px 13px;display:flex;flex-direction:column;border-left:3px solid var(--sage-dark);background:#f1f5ed}.evidence-badge span,.evidence-badge small{color:var(--muted);font-size:.58rem}.evidence-badge strong{margin-top:3px;text-transform:capitalize;font-family:var(--serif);font-size:.9rem}.evidence-badge.expanded{max-width:390px;margin:0 auto;padding:11px 13px;border-left:0;border-top:3px solid var(--sage-dark);text-align:left}.evidence-badge.expanded strong{margin-top:3px}.evidence-badge.expanded small{margin-top:8px}.pedagogy-overview{display:grid;grid-template-columns:minmax(0,1fr);max-width:none;gap:32px;align-items:start}.lesson-overview-detail{max-width:720px}.lesson-overview-prose{padding:5px 10px 6px 24px;border-left:2px solid color-mix(in srgb,var(--sage-dark) 52%,var(--line));background:linear-gradient(90deg,color-mix(in srgb,var(--sage-soft) 42%,transparent),transparent 76%)}.lesson-overview-prose>.eyebrow{margin-bottom:12px;font-size:.58rem}.lesson-overview-prose .lead{max-width:650px;margin:0}.lesson-overview-prose h2{margin:20px 0 10px;font-size:clamp(1.45rem,2.8vw,1.9rem)}.lesson-overview-prose>p:not(.lead){max-width:64ch;line-height:1.65}.lesson-poster{position:relative;isolation:isolate;width:100%;padding:24px 28px 22px;overflow:hidden;border:0;border-radius:20px;background:radial-gradient(circle at 82% 59%,color-mix(in srgb,var(--sage) 70%,transparent) 0 15%,transparent 36%),var(--paper);box-shadow:none;color:var(--ink);text-align:left}.lesson-poster-copy{max-width:690px}.lesson-poster-copy h1,.lesson-complete .lesson-poster-copy h1{max-width:12ch;margin:0;font-size:clamp(2.55rem,5.6vw,4.2rem);line-height:.96;text-wrap:balance}.lesson-poster-copy p,.lesson-complete .lesson-poster-copy p{max-width:640px;margin:14px 0 0;color:var(--ink-soft);font-size:.82rem;line-height:1.55}.lesson-poster-distinction{margin-top:15px;padding:6px 10px;display:inline-flex;border:1px solid color-mix(in srgb,var(--saffron-ink) 32%,transparent);border-radius:999px;background:color-mix(in srgb,var(--saffron) 14%,var(--paper));color:var(--saffron-ink);font-size:.62rem;font-weight:800}.lesson-poster-distinction:before{content:"✦";margin-right:6px}.lesson-poster-visual{min-height:300px;margin-top:10px;display:grid;grid-template-columns:minmax(250px,370px) minmax(150px,1fr);align-items:end;gap:26px}.lesson-poster .lesson-board-figure{z-index:2;width:min(100%,330px);margin:12px 0 0}.lesson-poster .lesson-board-frame{--lesson-axis-size: 15px;width:100%}.lesson-poster .lesson-board{box-shadow:0 10px 22px color-mix(in srgb,var(--ink) 9%,transparent)}.lesson-poster .lesson-board-figure figcaption{max-width:330px;margin:7px 0 0 15px;font-size:.56rem}.lesson-poster-mascot{position:relative;min-height:270px;display:grid;place-items:end center}.lesson-poster-mascot .mascot,.lesson-complete .lesson-poster-mascot .mascot{position:relative;z-index:2;width:min(100%,188px);height:258px;margin:0;-o-object-fit:contain;object-fit:contain;filter:drop-shadow(0 12px 18px color-mix(in srgb,var(--ink) 13%,transparent))}.lesson-poster-introduction .lesson-poster-mascot .mascot{transform:scaleX(-1)}.lesson-poster-glow{position:absolute;right:50%;bottom:15px;width:230px;height:230px;border-radius:50%;background:var(--sage-soft);transform:translate(50%)}.lesson-poster-spark{position:absolute;z-index:1;width:13px;height:13px;border-radius:50%}.lesson-poster-spark-one{top:25px;right:10%;background:var(--saffron)}.lesson-poster-spark-two{top:70px;left:3%;width:8px;height:8px;background:var(--sage-dark)}.lesson-poster-stats{margin:18px 0 0;padding:16px 0 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line);font-variant-numeric:tabular-nums}.lesson-poster-stats>div{min-width:0;padding:0 16px;display:grid;grid-template-rows:auto auto;text-align:center}.lesson-poster-stats>div:first-child{padding-left:0}.lesson-poster-stats>div:last-child{padding-right:0}.lesson-poster-stats>div+div{border-left:1px solid var(--line)}.lesson-poster-stats dt{grid-row:2;margin-top:3px;overflow-wrap:anywhere;color:var(--muted);font-size:.55rem;font-weight:780;letter-spacing:.07em;text-transform:uppercase}.lesson-poster-stats dd{grid-row:1;min-width:0;margin:0;overflow-wrap:anywhere;font-family:var(--serif);font-size:1.02rem;font-weight:600}.lesson-complete-poster{max-width:900px;text-align:left}.lesson-complete-poster .lesson-poster{margin:0 auto}.lesson-complete-poster .lesson-completion-note,.lesson-complete .lesson-completion-note{max-width:540px;margin:26px auto 0;text-align:center}.lesson-complete-poster .evidence-badge{margin-top:24px}.lesson-complete-poster .lesson-completion-actions{justify-content:center;text-align:center}.prerequisite-note{margin:22px 0 0;padding-top:15px;border-top:1px solid var(--line);color:var(--muted)}.prerequisite-note strong{color:var(--ink)}.prerequisite-callout{margin-top:14px;padding:12px;display:grid;grid-template-columns:20px 1fr auto;gap:9px;align-items:center;border:1px solid #e1cd96;background:#fff8e7}.prerequisite-callout>svg{width:17px;color:var(--saffron-ink)}.prerequisite-callout p{margin:0;display:flex;flex-direction:column}.prerequisite-callout p strong{font-family:var(--serif);font-size:.72rem}.prerequisite-callout p span,.prerequisite-callout .text-link{font-size:.58rem}.overview-actions{margin-top:32px;display:flex;flex-wrap:wrap;gap:7px}.overview-actions .button{margin-top:0}.model-stage,.practice-workspace{display:grid;grid-template-columns:minmax(320px,1.08fr) minmax(250px,.92fr);gap:36px;align-items:start}.model-stage h2,.practice-heading h2{margin:7px 0 14px;line-height:1.08}.proof-narration{align-self:center;padding:28px;border-left:3px solid var(--saffron);background:#fff8e7}.proof-narration>span{color:var(--saffron-ink);text-transform:uppercase;letter-spacing:.1em;font-size:.58rem;font-weight:800}.proof-narration h3{margin:8px 0;font-family:var(--serif);font-size:1.3rem;line-height:1.35}.proof-narration p{font-size:.75rem}.proof-narration .worked-step-feedback{margin:16px 0 0;padding:13px 14px;display:flex;align-items:flex-start;gap:9px;border:1px solid #d6a19a;border-left-width:4px;border-radius:4px;background:#fbece8;color:#984a3f;font-weight:700;line-height:1.5}.proof-narration .worked-step-feedback svg{width:18px;margin-top:1px;flex:0 0 auto}.proof-narration>.button{margin-top:18px}.lesson-board-figure{margin:15px 0 0}.lesson-board-frame{--lesson-axis-size: 20px;width:min(100%,520px);display:grid;grid-template-columns:var(--lesson-axis-size) minmax(0,1fr);grid-template-rows:var(--lesson-axis-size) minmax(0,1fr)}.lesson-board-column-labels,.lesson-board-row-labels{color:var(--muted);font:700 .55rem/1 sans-serif;font-variant-numeric:tabular-nums;-webkit-user-select:none;-moz-user-select:none;user-select:none}.lesson-board-column-labels{grid-column:2;display:grid;grid-template-columns:repeat(9,1fr)}.lesson-board-row-labels{grid-row:2;display:grid;grid-template-rows:repeat(9,1fr)}.lesson-board-column-labels span,.lesson-board-row-labels span{display:grid;place-items:center}.lesson-board{grid-column:2;grid-row:2;width:100%;aspect-ratio:1;display:grid;grid-template-columns:repeat(9,1fr);grid-template-rows:repeat(9,minmax(0,1fr));border:2px solid var(--ink);background:#fff;box-shadow:0 12px 30px #102a4314}.lesson-board-row{display:contents}.lesson-board-cell{min-width:0;min-height:0;position:relative;display:grid;place-items:center;padding:0;border:0;border-right:1px solid #cfd6da;border-bottom:1px solid #cfd6da;background:#fff;color:#1f669a;font-family:var(--serif);font-size:clamp(.85rem,2vw,1.35rem)}.lesson-board-cell:disabled{opacity:1}.lesson-board.selectable .lesson-board-cell{cursor:pointer}.lesson-board.selectable .lesson-board-cell:hover,.lesson-board.selectable .lesson-board-cell:focus-visible{z-index:5;background:#fff2c8;outline:3px solid var(--saffron);outline-offset:-3px}.lesson-board-cell.box-right{border-right:2px solid var(--ink)}.lesson-board-cell.box-bottom{border-bottom:2px solid var(--ink)}.lesson-board-cell.given{color:var(--ink);font-weight:700}.lesson-board-cell.related{background:#f3f5f0}.lesson-board-cell.pattern,.rules-primer .pattern{background:#fff4d3}.lesson-board-cell.conclusion{box-shadow:inset 0 0 0 2px #2d6793}.lesson-board-cell.highlighted,.rules-primer .highlighted{z-index:2;background:linear-gradient(145deg,#fff1bd,#ffe29a);box-shadow:inset 0 0 0 1.5px #7a5200b8,inset 0 1px #ffffffb8,inset 0 -3px 8px #7a52000f}.lesson-board-cell.conclusion{z-index:3;box-shadow:inset 0 0 0 3px #2d6793}.lesson-candidates i.candidate-sage,.lesson-candidates i.candidate-saffron{width:1.15em;height:1.15em;margin:auto;border-radius:50%;display:grid;place-items:center;color:var(--ink);font-weight:800}.lesson-candidates i.candidate-sage{background:#b9cfad}.lesson-candidates i.candidate-saffron{background:#f4c65e}.lesson-board-cell.selected{z-index:4;background:#dce9f4;box-shadow:inset 0 0 0 3px #2d6793}.lesson-board-cell.selected.correct{background:var(--sage);box-shadow:inset 0 0 0 3px var(--sage-dark)}.lesson-board-cell.selected.wrong{background:#f7e5e1;box-shadow:inset 0 0 0 3px var(--coral)}.lesson-candidates{width:100%;height:100%;padding:2px;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr)}.lesson-candidates i{display:grid;place-items:center;color:#4e6d82;font:normal clamp(.35rem,.8vw,.56rem) sans-serif}.lesson-board-figure figcaption{max-width:500px;margin:9px 0 0 20px;color:var(--muted);font-size:.65rem;line-height:1.5}.rules-primer>header{margin-bottom:24px;display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.rules-primer>header>div:first-child{max-width:660px}.rules-primer h2{margin-bottom:8px;font-size:clamp(1.7rem,3vw,2.55rem);line-height:1.08}.rules-primer header p{max-width:620px;margin:0;font-size:.78rem;line-height:1.65}.rules-primer-progress{padding-top:8px;display:flex;gap:5px}.rules-primer-progress i{width:20px;height:4px;background:#ddd9d0}.rules-primer-progress i.filled{background:var(--saffron)}.rules-primer-workspace{min-height:500px;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(240px,.75fr);border-top:1px solid var(--line);animation:rules-primer-enter .26s ease-out both}.rules-visual{min-height:500px;display:grid;place-content:center;background:#f7f5ee;overflow:hidden}.rules-primer-action{padding:42px 30px;display:flex;flex-direction:column;justify-content:center;border-left:1px solid var(--line);background:#fffdf8}.rules-primer-action>strong{font-family:var(--sans);font-size:.9rem;font-weight:800;line-height:1.45}.rules-primer-action>.button{align-self:flex-start;margin-top:20px}.rules-primer-note{margin:0;color:var(--muted);font-size:.72rem;line-height:1.6}.rules-binary-choice{margin-top:18px;display:grid;grid-template-columns:1fr 1fr;gap:8px}.rules-binary-choice button{min-height:52px;border:1px solid #cfd6da;border-radius:4px;background:#fff;color:var(--ink);font-weight:800;cursor:pointer}.rules-binary-choice button:hover,.rules-binary-choice button:focus-visible{border-color:var(--ink);outline:2px solid var(--saffron);outline-offset:2px}.rules-binary-choice button.correct{border-color:var(--sage-dark);background:var(--sage)}.rules-binary-choice button.wrong{border-color:var(--coral);background:#fbece8}.rules-primer-action>p.correct,.rules-primer-action>p.wrong{margin:16px 0 0;padding:13px 14px;display:flex;align-items:flex-start;gap:9px;border:1px solid;border-left-width:4px;border-radius:4px;font-size:.76rem;font-weight:700;line-height:1.5}.rules-primer-action>p.correct{border-color:#9eb89f;background:#edf5e9;color:#315d3f}.rules-primer-action>p.wrong{border-color:#d6a19a;background:#fbece8;color:#984a3f}.rules-primer-action>p svg{width:18px;margin-top:1px;flex:0 0 auto}.rules-target-square,.rules-overlap>div,.rules-full-grid>div{position:relative;display:grid;place-items:center;border-right:1px solid #cbd2d5;border-bottom:1px solid #cbd2d5;background:#fff;color:var(--ink);font-family:var(--serif);font-size:1.4rem;font-weight:700}.rules-target-square,.rules-overlap>div.target,.rules-full-grid>div.target{z-index:2}.rules-target-square:after,.rules-overlap>div.target:after,.rules-full-grid>div.target:after{content:"?";color:#92701f;font-family:var(--sans);font-size:.85rem;font-weight:800}.rules-visual-square{grid-template-columns:1fr;justify-items:center;gap:30px}.rules-target-square{width:170px;height:170px;border:1px solid var(--ink)}.rules-number-range{display:flex;gap:6px}.rules-number-range span{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:#fff;color:var(--muted);font-size:.65rem;font-weight:700}.rules-unit-stage{width:100%;grid-template-columns:100%;justify-items:center}.rules-unit-stage .lesson-unit-visual.is-row{width:100%}.rules-unit-stage .lesson-unit-visual.is-column{width:52px}.rules-unit-stage .lesson-unit-visual.is-box{width:min(80%,330px)}.rules-overlap-stage{width:100%}.rules-overlap{position:relative;width:min(390px,calc(100% - 100px));display:grid;grid-template-columns:repeat(5,1fr);background:transparent;overflow:visible}.rules-overlap>div{aspect-ratio:1;opacity:0}.rules-overlap>div.visible{opacity:1}.rules-overlap>div:nth-child(7),.rules-overlap>div:nth-child(8),.rules-overlap>div:nth-child(9),.rules-overlap>div:nth-child(12),.rules-overlap>div:nth-child(13),.rules-overlap>div:nth-child(14),.rules-overlap>div:nth-child(17),.rules-overlap>div:nth-child(18),.rules-overlap>div:nth-child(19){background:#edf3e9}.rules-overlap>div:nth-child(7),.rules-overlap>div:nth-child(8),.rules-overlap>div:nth-child(9){border-top:3px solid var(--sage-dark)}.rules-overlap>div:nth-child(17),.rules-overlap>div:nth-child(18),.rules-overlap>div:nth-child(19){border-bottom:3px solid var(--sage-dark)}.rules-overlap>div:nth-child(7),.rules-overlap>div:nth-child(12),.rules-overlap>div:nth-child(17){border-left:3px solid var(--sage-dark)}.rules-overlap>div:nth-child(9),.rules-overlap>div:nth-child(14),.rules-overlap>div:nth-child(19){border-right:3px solid var(--sage-dark)}.rules-overlap>div:nth-child(5n+1).visible{border-left:2px solid var(--ink)}.rules-overlap>div:nth-child(-n+5).visible{border-top:2px solid var(--ink)}.rules-overlap .row-label,.rules-overlap .column-label,.rules-overlap .box-label{position:absolute;color:var(--muted);font-size:.57rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.rules-overlap .row-label{right:-38px;top:47%}.rules-overlap .column-label{top:-24px;left:42%}.rules-overlap .box-label{left:21%;bottom:-24px}.rules-full-grid{width:min(88%,440px);display:grid;grid-template-columns:repeat(9,1fr);border-top:2px solid var(--ink);border-left:2px solid var(--ink)}.rules-full-grid-stage{width:100%;grid-template-columns:100%;justify-items:center}.rules-full-grid>div{aspect-ratio:1;font-size:clamp(.75rem,2vw,1.15rem)}.rules-full-grid>div:nth-child(9n){border-right:2px solid var(--ink)}.rules-full-grid>div:nth-child(n+73){border-bottom:2px solid var(--ink)}.rules-full-grid>div.box-right{border-right:2px solid var(--ink)}.rules-full-grid>div.box-bottom{border-bottom:2px solid var(--ink)}.scanning-primer{container-type:inline-size}.scanning-primer>header{margin-bottom:24px;display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.scanning-primer>header>div:first-child{max-width:660px}.scanning-primer h2{margin-bottom:8px;font-size:clamp(1.7rem,3vw,2.55rem);line-height:1.08}.scanning-primer header p{max-width:620px;margin:0;font-size:.78rem;line-height:1.65}.scanning-primer-progress{padding-top:8px;display:flex;gap:5px}.scanning-primer-progress i{width:20px;height:4px;background:#ddd9d0}.scanning-primer-progress i.filled{background:var(--saffron)}.scanning-primer-workspace{min-height:500px;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(240px,.75fr);border-top:1px solid var(--line);animation:scanning-primer-enter .26s ease-out both}.scanning-visual{width:100%;min-width:0;min-height:500px;display:grid;place-content:center;background:#f7f5ee;overflow:hidden}.scanning-primer-action{padding:42px 30px;display:flex;flex-direction:column;justify-content:center;border-left:1px solid var(--line);background:#fffdf8}.scanning-primer-action>strong{font-family:var(--sans);font-size:.9rem;font-weight:800;line-height:1.45}.scanning-primer-check-label{display:block;margin-bottom:7px;color:var(--sage-dark);font-size:.56rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.scanning-primer-action>.button{align-self:flex-start;margin-top:20px}.scanning-primer-note{margin:0;color:var(--muted);font-size:.72rem;line-height:1.6}.scanning-primer-action>p.correct,.scanning-primer-action>p.wrong{margin:16px 0 0;padding:13px 14px;display:flex;align-items:flex-start;gap:9px;border:1px solid;border-left-width:4px;border-radius:4px;font-size:.76rem;font-weight:700;line-height:1.5}.scanning-primer-action>p.correct{align-items:center;border-color:#9eb89f;background:#edf5e9;color:#315d3f}.scanning-primer-action>p.wrong{border-color:#d6a19a;background:#fbece8;color:#984a3f}.scanning-primer-action>p svg{width:18px;height:18px;margin-top:1px;flex:0 0 auto}.scanning-primer-action>p.correct svg{margin-top:0}.scanning-row-stage{position:relative;width:100%;grid-template-columns:100%;min-width:0;justify-items:center;gap:28px}.scanning-count-restart{position:absolute;top:14px;right:14px;z-index:2;width:36px;height:36px;padding:0;display:grid;place-items:center;border:1px solid #cbc8bc;border-radius:50%;background:#fffdf8eb;color:var(--muted);cursor:pointer;transition:border-color .14s ease,color .14s ease,background-color .14s ease}.scanning-count-restart:hover,.scanning-count-restart:focus-visible{border-color:var(--sage-dark);background:#fffdf8;color:var(--sage-dark)}.scanning-count-restart:focus-visible{outline:2px solid var(--saffron);outline-offset:2px}.scanning-count-restart:active svg{transform:rotate(-35deg)}.scanning-count-restart svg{transition:transform .14s cubic-bezier(.2,0,0,1)}.scanning-count-sequence{width:calc(100% - 40px);max-width:620px;min-width:0;padding:0;display:grid;grid-template-columns:repeat(9,minmax(0,1fr));border:0;background:transparent;color:var(--muted);cursor:pointer}.scanning-count-sequence.is-complete{cursor:default}.scanning-count-sequence.is-idle{visibility:hidden;cursor:default}.scanning-count-sequence>span{width:26px;height:26px;display:grid;place-items:center;justify-self:center;border-radius:50%;font-size:.66rem;font-weight:800;transition:color .32s ease,background-color .32s ease,opacity .32s ease,transform .44s cubic-bezier(.2,0,0,1)}.scanning-count-sequence>span.is-active{background:var(--saffron);color:var(--ink);transform:translateY(-2px) scale(1.12);box-shadow:0 5px 12px #92701f2e}.scanning-count-sequence>span.is-checked{color:var(--muted);opacity:.38}.scanning-count-sequence>span.is-missing{background:#fff4d3;color:#92701f}.lesson-unit-cell.is-count-match{animation:scanning-cell-check .64s cubic-bezier(.2,0,0,1) both}.lesson-unit-visual.is-counting-missing .lesson-unit-cell.is-empty{animation:scanning-empty-check .68s cubic-bezier(.2,0,0,1) both}.lesson-reveal-tokens.scanning-counted-missing>span{animation-duration:.44s}.scanning-count-outcome{min-height:54px;display:grid;place-items:center}.scanning-count-play{min-height:44px;padding:0 18px;display:inline-flex;align-items:center;justify-content:center;gap:9px;border:1px solid var(--sage-dark);border-radius:999px;background:#fffdf8;color:var(--sage-dark);font-size:.72rem;font-weight:800;cursor:pointer;transition:background-color .14s ease,color .14s ease,transform .14s cubic-bezier(.2,0,0,1)}.scanning-count-play:hover,.scanning-count-play:focus-visible{background:var(--sage-dark);color:#fff}.scanning-count-play:focus-visible{outline:2px solid var(--saffron);outline-offset:2px}.scanning-count-play:active{transform:scale(.97)}.lesson-unit-visual{width:calc(100% - 40px);max-width:620px;min-width:0;display:grid;border-top:2px solid var(--ink);border-left:2px solid var(--ink)}.lesson-unit-visual.is-row{grid-template-columns:repeat(9,minmax(0,1fr))}.lesson-unit-visual.is-column{width:min(calc(100% - 40px),70px);grid-template-columns:1fr}.lesson-unit-visual.is-box{width:min(calc(100% - 40px),240px);grid-template-columns:repeat(3,minmax(0,1fr))}.lesson-unit-cell{position:relative;aspect-ratio:1;min-height:0;display:grid;place-items:center;border-right:2px solid var(--ink);border-bottom:2px solid var(--ink);background:#fff;color:var(--ink);font-family:var(--serif);font-size:clamp(1.1rem,3vw,1.75rem);font-weight:700;line-height:1}.lesson-unit-cell.is-empty{background:#fff4d3}.lesson-unit-cell.is-empty:after,.lesson-unit-cell.is-target:after{content:attr(data-placeholder);color:#92701f;font-family:var(--sans);font-size:.85rem;font-weight:800}.scanning-cross>div.empty:after,.scanning-cross>div.target:after,.scanning-full-grid>div.target:after{content:"?";color:#92701f;font-family:var(--sans);font-size:.85rem;font-weight:800}.lesson-unit-cell.is-placed{background:#dcebd5;color:#315d3f}.lesson-unit-cell.is-target{z-index:2;background:linear-gradient(145deg,#fff1bd,#ffe29a);box-shadow:inset 0 0 0 1.5px #7a5200b8}.lesson-reveal-tokens{display:flex;gap:12px}.lesson-reveal-tokens>span{width:54px;height:54px;display:grid;place-items:center;border:2px solid var(--sage-dark);border-radius:50%;background:#dcebd5;color:#315d3f;font-family:var(--serif);font-size:1.45rem;font-weight:700;animation:lesson-token-enter .22s ease-out both;animation-delay:var(--lesson-token-delay, 0ms)}.scanning-cross-stage{width:100%;grid-template-columns:100%;justify-items:center}.scanning-cross{position:relative;width:min(88%,440px);display:grid;grid-template-columns:repeat(9,1fr);border-top:2px solid var(--ink);border-left:2px solid var(--ink);overflow:visible}.scanning-cross>div{position:relative;aspect-ratio:1;display:grid;place-items:center;border-right:1px solid #cbd2d5;border-bottom:1px solid #cbd2d5;background:#fff}.scanning-cross>div.row-cell,.scanning-cross>div.column-cell{background:#f3f5f0;color:var(--ink);font-family:var(--serif);font-size:clamp(.7rem,2vw,1.15rem);font-weight:700}.scanning-cross>div.row-cell{background:#f6f6f1}.scanning-cross>div.column-cell{background:#f3f5f0}.scanning-cross>div.target{z-index:2;background:linear-gradient(145deg,#fff1bd,#ffe29a);box-shadow:inset 0 0 0 1.5px #7a5200b8}.scanning-cross>div.empty{background:#fff4d3}.scanning-cross>div.box-right{border-right:2px solid var(--ink)}.scanning-cross>div.box-bottom{border-bottom:2px solid var(--ink)}.scanning-cross-column-label{position:absolute;color:var(--muted);font-size:.57rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;top:-24px;left:4%}.scanning-grid-stage{width:100%;grid-template-columns:100%;justify-items:center}.scanning-full-grid{width:min(88%,440px);display:grid;grid-template-columns:repeat(9,1fr);border-top:2px solid var(--ink);border-left:2px solid var(--ink)}.scanning-full-grid>div{position:relative;aspect-ratio:1;display:grid;place-items:center;border-right:1px solid #cbd2d5;border-bottom:1px solid #cbd2d5;background:#fff;color:var(--ink);font-family:var(--serif);font-size:clamp(.75rem,2vw,1.15rem);font-weight:700}.scanning-full-grid>div.focus-row,.scanning-full-grid>div.focus-column{background:#f3f5f0}.scanning-full-grid>div.target{z-index:2;background:linear-gradient(145deg,#fff1bd,#ffe29a);box-shadow:inset 0 0 0 1.5px #7a5200b8}.scanning-full-grid>div.box-right{border-right:2px solid var(--ink)}.scanning-full-grid>div.box-bottom{border-bottom:2px solid var(--ink)}@keyframes scanning-primer-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes lesson-token-enter{0%{opacity:0;transform:scale(.84)}to{opacity:1;transform:scale(1)}}@keyframes scanning-cell-check{50%{background:#dcebd5;box-shadow:inset 0 0 0 2px #315d3f73}}@keyframes scanning-empty-check{50%{background:#ffe7a5;box-shadow:inset 0 0 0 2px #92701f59}}@media(max-width:880px){.scanning-primer-workspace{grid-template-columns:1fr}.scanning-visual{min-height:390px}.scanning-primer-action{padding:24px;border-top:1px solid var(--line);border-left:0}}@container (max-width: 700px){.scanning-primer-workspace{grid-template-columns:1fr}.scanning-visual{min-height:390px}.scanning-primer-action{padding:24px;border-top:1px solid var(--line);border-left:0}}@media(max-width:520px){.scanning-primer>header{flex-direction:column}.scanning-primer-workspace,.scanning-visual{min-height:330px}.scanning-cross{width:min(88%,330px)}.scanning-cross-column-label{left:0}}@media(prefers-reduced-motion:reduce){.scanning-primer-workspace,.lesson-reveal-tokens>span,.lesson-unit-cell.is-count-match,.lesson-unit-visual.is-counting-missing .lesson-unit-cell.is-empty{animation:none}}.candidate-primer>header{margin-bottom:24px;display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.candidate-primer{container-type:inline-size}.candidate-primer>header>div:first-child{max-width:660px}.candidate-primer h2{margin-bottom:8px;font-size:clamp(1.7rem,3vw,2.55rem);line-height:1.08}.candidate-primer header p{max-width:620px;margin:0;font-size:.78rem;line-height:1.65}.candidate-primer-progress{padding-top:8px;display:flex;gap:5px}.candidate-primer-progress i{width:20px;height:4px;background:#ddd9d0}.candidate-primer-progress i.filled{background:var(--saffron)}.candidate-primer-workspace{min-height:520px;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(250px,.75fr);border-top:1px solid var(--line);animation:candidate-primer-enter .26s ease-out both}.candidate-primer-visual{width:100%;min-width:0;min-height:520px;display:grid;place-items:center;background:#f7f5ee;overflow:hidden}.candidate-primer-visual .lesson-board-figure{width:min(88%,460px);margin:0}.candidate-primer-visual .lesson-board-frame{width:100%}.candidate-primer-visual.is-complete .lesson-candidates{animation:candidate-notes-settle .22s ease-out both}.candidate-primer-action{padding:38px 30px;display:flex;flex-direction:column;justify-content:center;border-left:1px solid var(--line);background:#fffdf8}.candidate-primer-action>strong{font-family:var(--sans);font-size:.9rem;font-weight:800;line-height:1.45}.candidate-primer-action>.button{align-self:flex-start;margin-top:18px}.candidate-digit-picker{width:min(100%,198px);margin-top:18px;display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.candidate-digit-picker button,.candidate-note-picker button{display:grid;place-items:center;border:1px solid #b8c2c7;background:#fff;color:var(--ink);font-family:var(--serif);font-weight:700;cursor:pointer;transition:transform .14s ease,border-color .14s ease,background .14s ease}.candidate-digit-picker button{min-height:48px;font-size:1.15rem}.candidate-digit-picker button:hover,.candidate-digit-picker button:focus-visible,.candidate-note-picker button:hover,.candidate-note-picker button:focus-visible{border-color:var(--saffron-dark);outline:2px solid rgba(224,162,28,.28);outline-offset:1px;transform:translateY(-1px)}.candidate-digit-picker button.selected{border-color:var(--ink);background:#fff1bd;box-shadow:inset 0 -2px #7a52002e}.candidate-note-picker{margin-top:18px;display:flex;gap:10px}.candidate-note-picker button{width:58px;height:58px;border-radius:4px;color:#4e6d82;font:700 1rem var(--sans)}.candidate-note-picker button.correct{border-color:var(--sage-dark);background:var(--sage);text-decoration:line-through}.candidate-note-picker button.wrong{border-color:var(--coral);background:#fbece8}.candidate-check-button:disabled{cursor:not-allowed;opacity:.45}.candidate-selection-count{margin:10px 0 0;color:var(--muted);font-size:.7rem}.candidate-primer-action>p.correct,.candidate-primer-action>p.wrong{margin:16px 0 0;padding:13px 14px;display:flex;align-items:flex-start;gap:9px;border:1px solid;border-left-width:4px;border-radius:4px;font-size:.76rem;font-weight:700;line-height:1.5}.candidate-primer-action>p.correct{border-color:#9eb89f;background:#edf5e9;color:#315d3f}.candidate-primer-action>p.wrong{border-color:#d6a19a;background:#fbece8;color:#984a3f}.candidate-primer-action>p svg{width:18px;margin-top:1px;flex:0 0 auto}@keyframes candidate-primer-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes candidate-notes-settle{0%{opacity:.45;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@media(max-width:880px){.candidate-primer-workspace{grid-template-columns:1fr}.candidate-primer-visual{min-height:410px}.candidate-primer-action{padding:24px;border-top:1px solid var(--line);border-left:0}}@media(max-width:520px){.candidate-primer>header{flex-direction:column}.candidate-primer-workspace,.candidate-primer-visual{min-height:330px}.candidate-primer-visual .lesson-board-figure{width:min(100%,330px)}}@media(prefers-reduced-motion:reduce){.candidate-primer-workspace,.candidate-primer-visual.is-complete .lesson-candidates{animation:none}}.naked-primer>header{margin-bottom:22px;display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.naked-primer>header>div:first-child{max-width:660px}.naked-primer h2{margin-bottom:8px;font-size:clamp(1.7rem,3vw,2.55rem);line-height:1.08}.naked-primer header p{max-width:640px;margin:0;font-size:.78rem;line-height:1.65}.naked-primer-progress{padding-top:8px;display:flex;gap:5px}.naked-primer-progress i{width:20px;height:4px;background:#ddd9d0}.naked-primer-progress i.filled{background:var(--saffron)}.naked-primer-workspace{overflow:hidden;border-top:1px solid var(--line);background:#fffdf8;animation:naked-primer-enter .26s ease-out both}.naked-primer-stage{min-height:344px;padding:10px 34px;display:grid;grid-template-columns:minmax(0,1fr) 142px;align-items:center;gap:30px;background:linear-gradient(90deg,#fffdf800 68%,#fffdf8d1 68%),#f3f4ef}.naked-primer-stage .lesson-board-figure{width:min(100%,320px);margin:0 auto}.naked-primer-stage .lesson-board-frame{width:100%}.naked-primer-stage.is-place.is-complete .lesson-board-cell.conclusion>span{animation:naked-value-land .32s cubic-bezier(.2,.8,.2,1) both}.naked-proof-meter{min-height:208px;padding-left:24px;display:flex;flex-direction:column;justify-content:center;border-left:1px solid #c9c8bd}.naked-proof-meter>span{color:var(--muted);font-size:.57rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.naked-proof-meter strong{margin:10px 0 4px;color:var(--ink);font:700 clamp(3.5rem,8vw,5.4rem) / .9 var(--serif)}.naked-proof-meter small{max-width:92px;color:var(--muted);font-size:.68rem;line-height:1.4}.naked-proof-meter.resolved strong{color:var(--sage-dark);animation:naked-meter-resolve .3s ease-out both}.naked-primer-action{min-height:128px;padding:18px 28px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:24px;border-top:1px solid var(--line)}.naked-primer-action-copy{min-width:0}.naked-primer-action-copy>strong{display:block;max-width:440px;font-family:var(--sans);font-size:.9rem;font-weight:800;line-height:1.45}.naked-primer-action-copy>span{display:block;margin-top:6px;color:var(--muted);font-size:.68rem}.naked-primer-action-copy>p.correct,.naked-primer-action-copy>p.wrong{max-width:470px;margin:13px 0 0;display:flex;align-items:flex-start;gap:8px;font-size:.72rem;font-weight:700;line-height:1.5}.naked-primer-action-copy>p.correct{color:#315d3f}.naked-primer-action-copy>p.wrong{color:#984a3f}.naked-primer-action-copy>p svg{width:17px;margin-top:1px;flex:0 0 auto}.naked-primer-controls{display:flex;align-items:center;justify-content:flex-end;gap:12px}.naked-elimination-picker{display:flex;gap:6px}.naked-elimination-picker button{width:48px;height:48px;display:grid;place-items:center;border:1px solid #b8c2c7;border-radius:50%;background:#fff;color:#4e6d82;font:700 .92rem var(--sans);cursor:pointer;transition:transform .14s ease,border-color .14s ease,background .14s ease}.naked-elimination-picker button:hover,.naked-elimination-picker button:focus-visible{border-color:var(--saffron-dark);outline:2px solid rgba(224,162,28,.28);outline-offset:1px;transform:translateY(-1px)}.naked-elimination-picker button.selected{border-color:var(--ink);background:#fff1bd;text-decoration:line-through}.naked-elimination-picker button.wrong{border-color:var(--coral);background:#fbece8}.naked-check-button:disabled{cursor:not-allowed;opacity:.45}@keyframes naked-primer-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes naked-meter-resolve{0%{opacity:.5;transform:scale(.78)}to{opacity:1;transform:scale(1)}}@keyframes naked-value-land{0%{opacity:0;transform:scale(.55)}to{opacity:1;transform:scale(1)}}@media(max-width:880px){.naked-primer-stage{min-height:430px;padding:24px;grid-template-columns:1fr;gap:14px;background:#f3f4ef}.naked-proof-meter{min-height:0;padding:12px 0 0;flex-direction:row;align-items:baseline;justify-content:center;gap:9px;border-top:1px solid #c9c8bd;border-left:0}.naked-proof-meter strong{margin:0;font-size:2.2rem}.naked-proof-meter small{max-width:none}.naked-primer-action{grid-template-columns:1fr;gap:16px}.naked-primer-controls{justify-content:flex-start;flex-wrap:wrap}}@media(max-width:520px){.naked-primer>header{flex-direction:column}.naked-primer-stage{min-height:370px;padding:12px 10px 16px}.naked-primer-stage .lesson-board-figure{width:min(100%,330px)}.naked-primer-action{padding:16px 0 0;border-top:1px solid var(--line)}}@media(prefers-reduced-motion:reduce){.naked-primer-workspace,.naked-primer-stage.is-place.is-complete .lesson-board-cell.conclusion>span,.naked-proof-meter.resolved strong{animation:none}}.hidden-primer>header{margin-bottom:22px;display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.hidden-primer>header>div:first-child{max-width:680px}.hidden-primer h2{margin-bottom:8px;font-size:clamp(1.7rem,3vw,2.55rem);line-height:1.08}.hidden-primer header p{max-width:650px;margin:0;font-size:.78rem;line-height:1.65}.hidden-primer-progress{padding-top:2px;display:flex;align-items:center;gap:7px}.hidden-primer-progress i{width:24px;height:24px;display:grid;place-items:center;border:1px solid #c8c9c2;border-radius:50%;color:#8a8f8a;font:700 .58rem var(--sans);font-style:normal;transition:border-color .16s ease,background .16s ease,color .16s ease}.hidden-primer-progress i.filled{border-color:var(--sage-dark);background:var(--sage-dark);color:#fff}.hidden-primer-workspace{overflow:hidden;border-top:1px solid var(--line);background:#fffdf8;animation:hidden-primer-enter .26s ease-out both}.hidden-primer-stage{min-height:344px;padding:10px 34px 10px 0;display:grid;grid-template-columns:154px minmax(0,1fr);align-items:center;gap:34px;background:linear-gradient(90deg,rgba(223,231,221,.68) 0 154px,transparent 154px),#f4f2eb}.hidden-primer-stage .lesson-board-figure{width:min(100%,320px);margin:0 auto}.hidden-primer-stage .lesson-board-frame{width:100%}.hidden-primer-stage .lesson-candidates i.candidate-sage,.hidden-primer-stage .lesson-candidates i.candidate-saffron{animation:hidden-candidate-found .24s ease-out both}.hidden-primer-stage.is-place.is-complete .lesson-board-cell.conclusion>span{animation:hidden-value-place .32s cubic-bezier(.2,.8,.2,1) both}.hidden-digit-lens{min-height:236px;padding:10px 22px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-right:1px solid rgba(55,91,69,.28);text-align:center}.hidden-digit-lens>span{color:#52645a;font-size:.55rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.hidden-digit-lens>strong{width:82px;height:82px;margin:13px 0 14px;display:grid;place-items:center;border:1px solid rgba(55,91,69,.34);border-radius:50%;background:#fffdf8d1;color:var(--ink);font:700 3.9rem/1 var(--serif)}.hidden-digit-lens>div{display:flex;align-items:baseline;gap:7px}.hidden-digit-lens b{color:var(--sage-dark);font:700 1.75rem/1 var(--serif)}.hidden-digit-lens small{max-width:60px;color:#52645a;font-size:.58rem;line-height:1.25;text-align:left}.hidden-digit-lens em{max-width:104px;margin-top:12px;color:#6c746e;font-size:.59rem;font-style:normal;line-height:1.35}.hidden-digit-lens.resolved>strong{border-color:var(--sage-dark);box-shadow:0 0 0 7px #466b521a;color:var(--sage-dark);animation:hidden-lens-resolve .3s ease-out both}.hidden-primer-action{min-height:128px;padding:18px 28px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:24px;border-top:1px solid var(--line)}.hidden-primer-action-copy{min-width:0}.hidden-primer-action-copy>strong{display:block;max-width:470px;font-family:var(--sans);font-size:.9rem;font-weight:800;line-height:1.45}.hidden-primer-action-copy>span{display:block;margin-top:6px;color:var(--muted);font-size:.68rem}.hidden-primer-action-copy>p.correct,.hidden-primer-action-copy>p.wrong{max-width:490px;margin:13px 0 0;display:flex;align-items:flex-start;gap:8px;font-size:.72rem;font-weight:700;line-height:1.5}.hidden-primer-action-copy>p.correct{color:#315d3f}.hidden-primer-action-copy>p.wrong{color:#984a3f}.hidden-primer-action-copy>p svg{width:17px;margin-top:1px;flex:0 0 auto}.hidden-primer-controls{display:flex;align-items:center;justify-content:flex-end;gap:12px}.hidden-digit-picker{display:flex;align-items:center;gap:7px}.hidden-digit-picker button{width:52px;height:44px;border:0;border-bottom:2px solid #aeb7b0;background:transparent;color:var(--ink);font:700 1.35rem var(--serif);cursor:pointer;transition:border-color .14s ease,background .14s ease,transform .14s ease}.hidden-digit-picker button:hover,.hidden-digit-picker button:focus-visible{border-color:var(--sage-dark);outline:2px solid rgba(70,107,82,.22);outline-offset:2px;transform:translateY(-1px)}.hidden-digit-picker button.correct{border-color:var(--sage-dark);background:#edf4ec;color:var(--sage-dark)}.hidden-digit-picker button.wrong{border-color:var(--coral);background:#fbece8;color:#984a3f}.hidden-check-button:disabled{cursor:not-allowed;opacity:.45}@keyframes hidden-primer-enter{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}@keyframes hidden-lens-resolve{0%{opacity:.55;transform:scale(.82)}to{opacity:1;transform:scale(1)}}@keyframes hidden-candidate-found{0%{opacity:.25;transform:scale(.72)}to{opacity:1;transform:scale(1)}}@keyframes hidden-value-place{0%{opacity:0;transform:translateY(7px) scale(.75)}to{opacity:1;transform:translateY(0) scale(1)}}@media(max-width:880px){.hidden-primer-stage{min-height:430px;padding:18px 24px 24px;grid-template-columns:1fr;gap:14px;background:#f4f2eb}.hidden-digit-lens{min-height:0;padding:0 0 12px;flex-direction:row;gap:10px;border-right:0;border-bottom:1px solid rgba(55,91,69,.28);text-align:left}.hidden-digit-lens>strong{width:48px;height:48px;margin:0 4px;font-size:2.25rem}.hidden-digit-lens em{max-width:none;margin:0 0 0 auto}.hidden-primer-action{grid-template-columns:1fr;gap:16px}.hidden-primer-controls{justify-content:flex-start;flex-wrap:wrap}}@media(max-width:520px){.hidden-primer>header{flex-direction:column}.hidden-primer-stage{min-height:382px;padding:12px 10px 16px}.hidden-primer-stage .lesson-board-figure{width:min(100%,330px)}.hidden-digit-lens{justify-content:center}.hidden-digit-lens>span{max-width:66px}.hidden-primer-action{padding:16px 0 0}}@media(prefers-reduced-motion:reduce){.hidden-primer-workspace,.hidden-digit-lens.resolved>strong,.hidden-primer-stage .lesson-candidates i,.hidden-primer-stage.is-place.is-complete .lesson-board-cell.conclusion>span{animation:none}}.locked-primer>header{margin-bottom:22px;display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.locked-primer>header>div:first-child{max-width:680px}.locked-primer h2{margin-bottom:8px;font-size:clamp(1.7rem,3vw,2.55rem);line-height:1.08}.locked-primer header p{max-width:650px;margin:0;font-size:.78rem;line-height:1.65}.locked-primer-progress{padding-top:2px;display:flex;align-items:center;gap:7px}.locked-primer-progress i{width:24px;height:24px;display:grid;place-items:center;border:1px solid #c8c9c2;border-radius:3px;color:#8a8f8a;font:700 .58rem var(--sans);font-style:normal;transition:border-color .16s ease,background .16s ease,color .16s ease}.locked-primer-progress i.filled{border-color:var(--ink);background:var(--ink);color:#fff}.locked-primer-workspace{overflow:hidden;border-top:1px solid var(--ink);background:#fffdf8;animation:locked-primer-enter .24s ease-out both}.locked-primer-stage{min-height:372px;padding:18px 34px;display:grid;grid-template-columns:230px minmax(0,1fr);align-items:center;gap:30px;background:linear-gradient(90deg,rgba(224,229,220,.78) 0 264px,transparent 264px),#f4f2eb}.locked-primer-stage .lesson-board-figure{width:min(100%,334px);margin:0 auto}.locked-primer-stage .lesson-board-frame{width:100%}.locked-primer-stage .lesson-candidates i.candidate-sage,.locked-primer-stage .lesson-candidates i.candidate-saffron{animation:locked-candidate-trace .22s ease-out both}.locked-primer-stage.is-eliminate.is-complete .lesson-board-cell.selected .lesson-candidates,.locked-primer-stage.is-reverse.is-complete .lesson-board-cell.selected .lesson-candidates{animation:locked-target-clear .26s ease-out both}.locked-proof-map{min-width:0;display:grid;align-content:center;gap:4px}.locked-route-label{width:-moz-fit-content;width:fit-content;margin-bottom:8px;padding:5px 8px;border:1px solid rgba(16,42,67,.35);border-radius:999px;color:#415462;font-size:.55rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.locked-proof-map.is-broken .locked-route-label{border-color:#984a3f6b;color:#984a3f}.locked-map-part{display:grid;grid-template-columns:minmax(0,1fr) 24px;align-items:center;gap:7px}.locked-map-part:last-child{grid-template-columns:minmax(0,1fr)}.locked-map-part>div{min-height:67px;padding:11px 13px;display:flex;flex-direction:column;justify-content:center;border:1px solid #c8cbc2;border-radius:3px;background:#fffdf8b8;color:#747b76;transition:border-color .16s ease,background .16s ease,color .16s ease,transform .16s ease}.locked-map-part>div.active{border-color:var(--sage-dark);background:#f8fbf6;color:var(--ink);transform:translate(3px)}.locked-map-part small{margin-bottom:5px;color:inherit;font-size:.52rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.locked-map-part strong{font-family:var(--sans);font-size:.72rem;line-height:1.35}.locked-map-part>svg{width:16px;color:#64756a}.locked-map-part>svg.broken-route{color:#984a3f}.locked-primer-action{min-height:138px;padding:18px 28px;display:grid;grid-template-columns:minmax(230px,.85fr) minmax(300px,1.15fr);align-items:center;gap:28px;border-top:1px solid var(--line)}.locked-primer-action-copy{min-width:0}.locked-primer-action-copy>strong{display:block;max-width:500px;font-family:var(--sans);font-size:.9rem;font-weight:800;line-height:1.45}.locked-primer-action-copy>span{display:block;margin-top:6px;color:var(--muted);font-size:.68rem}.locked-primer-action-copy>p.correct,.locked-primer-action-copy>p.wrong{max-width:540px;margin:12px 0 0;display:flex;align-items:flex-start;gap:8px;font-size:.72rem;font-weight:700;line-height:1.5}.locked-primer-action-copy>p.correct{color:#315d3f}.locked-primer-action-copy>p.wrong{color:#984a3f}.locked-primer-action-copy>p svg{width:17px;margin-top:1px;flex:0 0 auto}.locked-primer-controls{min-width:0;display:flex;align-items:center;justify-content:flex-end;gap:12px}.locked-choice-grid{min-width:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.locked-choice-grid button{min-height:54px;padding:8px 9px;display:grid;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:6px;border:1px solid #c7c9c2;border-radius:4px;background:#fffdf8;color:var(--ink);font:700 .63rem/1.35 var(--sans);text-align:left;cursor:pointer}.locked-choice-grid button>span{width:20px;height:20px;display:grid;place-items:center;border-radius:50%;background:#eceee8;font-size:.56rem}.locked-choice-grid button:hover,.locked-choice-grid button:focus-visible{border-color:var(--sage-dark);outline:2px solid rgba(70,107,82,.2);outline-offset:1px}.locked-choice-grid button.correct{border-color:var(--sage-dark);background:#edf4ec;color:#315d3f}.locked-choice-grid button.wrong{border-color:var(--coral);background:#fbece8;color:#984a3f}.locked-check-button:disabled{cursor:not-allowed;opacity:.45}@keyframes locked-primer-enter{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}@keyframes locked-candidate-trace{0%{opacity:.25;transform:scale(.7)}to{opacity:1;transform:scale(1)}}@keyframes locked-target-clear{0%{opacity:1;transform:scale(1)}55%{opacity:.25;transform:scale(.86)}to{opacity:1;transform:scale(1)}}@media(max-width:880px){.locked-primer-stage{min-height:470px;padding:18px 24px 24px;grid-template-columns:1fr;gap:16px;background:#f4f2eb}.locked-proof-map{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.locked-route-label{grid-column:1 / -1;margin-bottom:2px}.locked-map-part{grid-template-columns:minmax(0,1fr)}.locked-map-part>svg{display:none}.locked-map-part>div{min-height:58px}.locked-map-part>div.active{transform:translateY(-2px)}.locked-primer-action{grid-template-columns:1fr;gap:16px}.locked-primer-controls{justify-content:flex-start;flex-wrap:wrap}.locked-choice-grid{width:100%}}@media(max-width:520px){.locked-primer>header{flex-direction:column}.locked-primer-stage{min-height:432px;padding:12px 10px 16px}.locked-primer-stage .lesson-board-figure{width:min(100%,330px)}.locked-map-part>div{min-height:52px;padding:8px}.locked-map-part strong{font-size:.62rem}.locked-primer-action{padding:16px 0 0}.locked-choice-grid{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.locked-primer-workspace,.locked-primer-stage .lesson-candidates i,.locked-primer-stage.is-eliminate.is-complete .lesson-board-cell.selected .lesson-candidates,.locked-primer-stage.is-reverse.is-complete .lesson-board-cell.selected .lesson-candidates{animation:none}}.pair-primer>header{margin-bottom:22px;display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.pair-primer>header>div:first-child{max-width:690px}.pair-primer h2{margin-bottom:8px;font-size:clamp(1.7rem,3vw,2.55rem);line-height:1.08}.pair-primer header p{max-width:660px;margin:0;font-size:.78rem;line-height:1.65}.pair-primer-progress{padding-top:2px;display:flex;align-items:center;gap:7px}.pair-primer-progress i{width:24px;height:24px;display:grid;place-items:center;border:1px solid #c8c9c2;border-radius:50%;color:#8a8f8a;font:700 .58rem var(--sans);font-style:normal;transition:border-color .16s ease,background .16s ease,color .16s ease,transform .16s ease}.pair-primer-progress i.filled{border-color:var(--ink);background:var(--ink);color:#fff;transform:translateY(-1px)}.pair-primer-workspace{overflow:hidden;border-block:1px solid var(--ink);background:#fffdf8;animation:pair-primer-enter .24s ease-out both}.pair-primer-stage{min-height:386px;padding:20px 34px;display:grid;grid-template-columns:270px minmax(0,1fr);align-items:center;gap:32px;background:linear-gradient(90deg,rgba(229,227,216,.82) 0 306px,transparent 306px),repeating-linear-gradient(0deg,transparent 0 39px,rgba(16,42,67,.035) 39px 40px),#f5f2e9}.pair-primer-stage .lesson-board-figure{width:min(100%,344px);margin:0 auto}.pair-primer-stage .lesson-board-frame{width:100%}.pair-primer-stage.is-match .lesson-board-cell.pattern{background:#fffdf8}.pair-primer-stage.is-match .lesson-board-cell.pattern:hover,.pair-primer-stage.is-match .lesson-board-cell.pattern:focus-visible{background:#fff0bd}.pair-primer-stage .lesson-candidates i.candidate-sage,.pair-primer-stage .lesson-candidates i.candidate-saffron{animation:pair-candidate-lock .22s ease-out both}.pair-primer-stage.is-eliminate.is-complete .lesson-candidates{animation:pair-candidates-settle .3s ease-out both}.pair-balance{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) 34px minmax(0,1fr);align-items:stretch;gap:7px}.pair-balance>span,.pair-balance>em{grid-column:1 / -1}.pair-balance>span{margin-bottom:11px;color:#5f6c68;font-size:.55rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.pair-balance>div{min-height:92px;padding:13px 11px;display:flex;flex-direction:column;justify-content:center;border-block:1px solid #aeb5ad;color:var(--ink);transition:border-color .18s ease,background .18s ease,transform .18s ease}.pair-balance>div small{margin-bottom:7px;color:#69746f;font-size:.5rem;font-weight:850;letter-spacing:.09em;text-transform:uppercase}.pair-balance>div strong{font-family:var(--serif);font-size:.82rem;font-weight:630;line-height:1.35}.pair-balance>svg{width:22px;align-self:center;justify-self:center;color:#7e8782;transition:color .18s ease,transform .18s ease}.pair-balance>em{width:-moz-fit-content;width:fit-content;margin-top:10px;padding:5px 8px;border:1px solid #b7bcb4;border-radius:999px;color:#65706b;font-size:.53rem;font-style:normal;font-weight:850;letter-spacing:.09em;text-transform:uppercase}.pair-balance.is-balanced>div{border-color:var(--sage-dark);background:#f8fcf6ad;transform:translateY(-2px)}.pair-balance.is-balanced>svg,.pair-balance.is-balanced>em{border-color:var(--sage-dark);color:#315d3f}.pair-balance.is-balanced>svg{transform:scale(1.1)}.pair-balance.is-broken>div:last-of-type{border-color:#a75a4e;background:#fbece8a8}.pair-balance.is-broken>svg,.pair-balance.is-broken>em{border-color:#a75a4e;color:#984a3f}.pair-primer-action{min-height:148px;padding:18px 28px;display:grid;grid-template-columns:minmax(220px,.72fr) minmax(380px,1.28fr);align-items:center;gap:26px}.pair-primer-action-copy{min-width:0}.pair-primer-action-copy>strong{display:block;max-width:520px;font-family:var(--sans);font-size:.9rem;font-weight:800;line-height:1.45}.pair-primer-action-copy>span,.candidate-removal-response>span{display:block;margin-top:6px;color:var(--muted);font-size:.66rem;font-weight:700}.pair-primer-action-copy>p.correct,.pair-primer-action-copy>p.wrong{max-width:560px;margin:11px 0 0;display:flex;align-items:flex-start;gap:8px;font-size:.71rem;font-weight:700;line-height:1.5}.pair-primer-action-copy>p.correct{color:#315d3f}.pair-primer-action-copy>p.wrong{color:#984a3f}.pair-primer-action-copy>p svg{width:17px;margin-top:1px;flex:0 0 auto}.pair-primer-controls{min-width:0;display:flex;align-items:center;justify-content:flex-end;gap:10px}.pair-choice-grid{min-width:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.pair-choice-grid button{min-height:60px;padding:8px 9px;display:grid;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:7px;border:1px solid #c7c9c2;border-radius:3px;background:#fffdf8;color:var(--ink);font:700 .61rem/1.35 var(--sans);text-align:left;cursor:pointer}.pair-choice-grid button>span{width:20px;height:20px;display:grid;place-items:center;border-radius:50%;background:#eceee8;font-size:.56rem}.pair-choice-grid button:hover,.pair-choice-grid button:focus-visible{border-color:var(--sage-dark);outline:2px solid rgba(70,107,82,.2);outline-offset:1px}.pair-choice-grid button.correct{border-color:var(--sage-dark);background:#edf4ec;color:#315d3f}.pair-choice-grid button.wrong{border-color:var(--coral);background:#fbece8;color:#984a3f}.candidate-removal-picker{min-width:0;display:grid;grid-template-columns:repeat(4,minmax(54px,1fr));gap:6px}.candidate-removal-picker button{min-width:0;min-height:54px;position:relative;padding:6px 5px;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;align-items:center;border:1px solid #c7c9c2;border-radius:3px;background:#fffdf8;color:var(--ink);cursor:pointer;transition:border-color .15s ease,background .15s ease,transform .15s ease}.candidate-removal-picker button:hover,.candidate-removal-picker button:focus-visible{border-color:#a97815;outline:2px solid rgba(193,138,30,.2);outline-offset:1px;transform:translateY(-1px)}.candidate-removal-picker button small{grid-column:1 / -1;color:#737b76;font-size:.48rem;font-weight:800;letter-spacing:.04em}.candidate-removal-picker button strong{width:25px;height:25px;display:grid;place-items:center;border-radius:50%;background:#f5e4b8;color:#6f4c08;font:850 .72rem var(--sans)}.candidate-removal-picker button svg{width:15px;color:#7b5a16}.candidate-removal-picker button.selected{border-color:#a97815;background:#fff2c9}.candidate-removal-picker button.selected.correct{border-color:var(--sage-dark);background:#edf4ec}.candidate-removal-picker button.selected.correct strong{background:#bdd2b7;color:#315d3f}.candidate-removal-picker button.selected.wrong{border-color:var(--coral);background:#fbece8}.candidate-removal-picker button.selected.wrong strong{background:#efc3bb;color:#984a3f}.pair-check-button:disabled,.candidate-removal-response .button:disabled{cursor:not-allowed;opacity:.45}.candidate-removal-response{display:grid;gap:9px}.candidate-removal-response>span{margin-top:0}.candidate-removal-response>.button{justify-self:start}@keyframes pair-primer-enter{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}@keyframes pair-candidate-lock{0%{opacity:.3;transform:scale(.72)}to{opacity:1;transform:scale(1)}}@keyframes pair-candidates-settle{0%{opacity:.45;transform:scale(.93)}to{opacity:1;transform:scale(1)}}@media(max-width:940px){.pair-primer-stage{min-height:490px;padding:18px 24px 24px;grid-template-columns:1fr;gap:16px;background:repeating-linear-gradient(0deg,transparent 0 39px,rgba(16,42,67,.035) 39px 40px),#f5f2e9}.pair-balance{width:min(100%,520px);margin:0 auto}.pair-balance>div{min-height:70px}.pair-primer-action{grid-template-columns:1fr;gap:16px}.pair-primer-controls{justify-content:flex-start;flex-wrap:wrap}.pair-choice-grid,.candidate-removal-picker{width:100%}}@media(max-width:560px){.pair-primer>header{margin-bottom:10px;flex-direction:column;gap:10px}.pair-primer h2{margin-block:3px 5px;font-size:1.55rem}.pair-primer header p{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.pair-primer-stage{min-height:446px;padding:12px 9px 16px}.pair-primer-stage .lesson-board-figure{width:min(100%,330px)}.pair-balance>div{min-height:60px;padding:9px 8px}.pair-balance>div strong{font-size:.72rem}.pair-primer-action{padding:16px 0 0}.pair-choice-grid{grid-template-columns:1fr}.candidate-removal-picker{grid-template-columns:repeat(4,minmax(48px,1fr))}.candidate-removal-picker button{min-height:50px}}@media(max-width:390px){.candidate-removal-picker{grid-template-columns:repeat(3,minmax(52px,1fr))}}@media(prefers-reduced-motion:reduce){.pair-primer-workspace,.pair-primer-stage .lesson-candidates i,.pair-primer-stage.is-eliminate.is-complete .lesson-candidates{animation:none}}.hidden-pair-primer>header{margin-bottom:20px;display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.hidden-pair-primer>header>div:first-child{max-width:700px}.hidden-pair-primer h2{margin-bottom:8px;font-size:clamp(1.7rem,3vw,2.55rem);line-height:1.08}.hidden-pair-primer header p{max-width:670px;margin:0;font-size:.78rem;line-height:1.65}.hidden-pair-primer-progress{padding-top:2px;display:flex;align-items:center;gap:5px}.hidden-pair-primer-progress i{width:28px;height:22px;display:grid;place-items:center;border:1px solid #b9c1be;border-radius:2px;color:#7b8581;font:800 .55rem var(--sans);font-style:normal;transition:border-color .16s ease,background .16s ease,color .16s ease,transform .16s ease}.hidden-pair-primer-progress i.filled{border-color:#405e55;background:#405e55;color:#fffdf8;transform:translateY(-1px)}.hidden-pair-primer-workspace{overflow:hidden;border-block:1px solid #405e55;background:#fffdf8;animation:hidden-pair-primer-enter .24s ease-out both}.hidden-pair-primer-stage{min-height:390px;padding:22px 34px;display:grid;grid-template-columns:286px minmax(0,1fr);align-items:center;gap:34px;background:linear-gradient(90deg,rgba(222,229,224,.86) 0 320px,transparent 320px),repeating-linear-gradient(0deg,transparent 0 35px,rgba(42,74,64,.045) 35px 36px),#f4f2e9}.hidden-pair-primer-stage .lesson-board-figure{width:min(100%,344px);margin:0 auto}.hidden-pair-primer-stage .lesson-board-frame{width:100%}.hidden-pair-primer-stage.is-first-digit .lesson-board-cell.related,.hidden-pair-primer-stage.is-second-digit .lesson-board-cell.related,.hidden-pair-primer-stage.is-contrast .lesson-board-cell.related{background:#fffdf8d6}.hidden-pair-primer-stage .lesson-candidates i.candidate-sage,.hidden-pair-primer-stage .lesson-candidates i.candidate-saffron{animation:hidden-pair-route-mark .22s ease-out both}.hidden-pair-primer-stage.is-eliminate.is-complete .lesson-candidates{animation:pair-candidates-settle .3s ease-out both}.hidden-pair-route-map{min-width:0;padding:15px 0 13px;display:grid;gap:12px;border-block:1px solid #9eaaa5}.hidden-pair-route-map>span{display:flex;align-items:center;gap:7px;color:#52655e;font-size:.55rem;font-weight:850;letter-spacing:.11em;text-transform:uppercase}.hidden-pair-route-map>span svg{width:15px}.hidden-pair-route-map>div{min-height:76px;padding:10px 11px;display:grid;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:11px;border-left:3px solid #a8b0ac;background:#fffdf894;opacity:.56;transition:border-color .19s ease,background .19s ease,opacity .19s ease,transform .19s ease}.hidden-pair-route-map>div>strong{width:36px;height:36px;display:grid;place-items:center;border:1px solid currentColor;border-radius:50%;font:700 1rem var(--serif)}.hidden-pair-route-map>div p{margin:0;display:grid;gap:4px}.hidden-pair-route-map>div small{color:#727d78;font-size:.49rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.hidden-pair-route-map>div b{overflow-wrap:anywhere;font-size:.68rem;line-height:1.35}.hidden-pair-route-map .route-first.revealed{border-left-color:#55765c;background:#deeddab3;color:#315d3f;opacity:1;transform:translate(3px)}.hidden-pair-route-map .route-second.revealed{border-left-color:#b27b13;background:#fae7b0b8;color:#754f09;opacity:1;transform:translate(3px)}.hidden-pair-route-map>em{width:-moz-fit-content;width:fit-content;padding:5px 8px;border:1px solid #aeb7b2;border-radius:999px;color:#64716b;font-size:.52rem;font-style:normal;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.hidden-pair-route-map.is-matched>em{border-color:#55765c;background:#edf4ec;color:#315d3f}.hidden-pair-route-map.is-broken>em{border-color:#a75a4e;background:#fbece8;color:#984a3f}.hidden-pair-route-map.is-broken .route-first.revealed{border-left-color:#a75a4e;background:#fbece8c2;color:#984a3f}.hidden-pair-primer-action{min-height:148px;padding:18px 28px;display:grid;grid-template-columns:minmax(220px,.72fr) minmax(380px,1.28fr);align-items:center;gap:26px}.hidden-pair-primer-action-copy{min-width:0}.hidden-pair-primer-action-copy>strong{display:block;max-width:520px;font-family:var(--sans);font-size:.9rem;font-weight:800;line-height:1.45}.hidden-pair-primer-action-copy>span{display:block;margin-top:6px;color:var(--muted);font-size:.66rem;font-weight:700}.hidden-pair-primer-action-copy>p.correct,.hidden-pair-primer-action-copy>p.wrong{max-width:560px;margin:11px 0 0;display:flex;align-items:flex-start;gap:8px;font-size:.71rem;font-weight:700;line-height:1.5}.hidden-pair-primer-action-copy>p.correct{color:#315d3f}.hidden-pair-primer-action-copy>p.wrong{color:#984a3f}.hidden-pair-primer-action-copy>p svg{width:17px;margin-top:1px;flex:0 0 auto}.hidden-pair-primer-controls{min-width:0;display:flex;align-items:center;justify-content:flex-end;gap:10px}.hidden-pair-choice-grid{min-width:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.hidden-pair-choice-grid button{min-height:60px;padding:8px 9px;display:grid;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:7px;border:1px solid #c7c9c2;border-radius:3px;background:#fffdf8;color:var(--ink);font:700 .61rem/1.35 var(--sans);text-align:left;cursor:pointer}.hidden-pair-choice-grid button>span{width:20px;height:20px;display:grid;place-items:center;border-radius:50%;background:#e6ece8;font-size:.56rem}.hidden-pair-choice-grid button:hover,.hidden-pair-choice-grid button:focus-visible{border-color:#55765c;outline:2px solid rgba(70,107,82,.2);outline-offset:1px}.hidden-pair-choice-grid button.correct{border-color:#55765c;background:#edf4ec;color:#315d3f}.hidden-pair-choice-grid button.wrong{border-color:var(--coral);background:#fbece8;color:#984a3f}.hidden-pair-check-button:disabled{cursor:not-allowed;opacity:.45}@keyframes hidden-pair-primer-enter{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}@keyframes hidden-pair-route-mark{0%{opacity:.3;transform:scale(.72)}to{opacity:1;transform:scale(1)}}@media(max-width:940px){.hidden-pair-primer-stage{min-height:530px;padding:18px 24px 24px;grid-template-columns:1fr;gap:17px;background:repeating-linear-gradient(0deg,transparent 0 35px,rgba(42,74,64,.045) 35px 36px),#f4f2e9}.hidden-pair-route-map{width:min(100%,540px);margin:0 auto;grid-template-columns:1fr 1fr}.hidden-pair-route-map>span,.hidden-pair-route-map>em{grid-column:1 / -1}.hidden-pair-primer-action{grid-template-columns:1fr;gap:16px}.hidden-pair-primer-controls{justify-content:flex-start;flex-wrap:wrap}.hidden-pair-choice-grid,.hidden-pair-primer-controls .candidate-removal-picker{width:100%}}@media(max-width:560px){.hidden-pair-primer>header{margin-bottom:10px;flex-direction:column;gap:10px}.hidden-pair-primer h2{margin-block:3px 5px;font-size:1.55rem}.hidden-pair-primer header p{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.hidden-pair-primer-stage{min-height:500px;padding:12px 9px 16px}.hidden-pair-primer-stage .lesson-board-figure{width:min(100%,330px)}.hidden-pair-route-map{gap:7px}.hidden-pair-route-map>div{min-height:66px;padding:8px;grid-template-columns:30px minmax(0,1fr);gap:8px}.hidden-pair-route-map>div>strong{width:29px;height:29px;font-size:.84rem}.hidden-pair-route-map>div b{font-size:.59rem}.hidden-pair-primer-action{padding:16px 0 0}.hidden-pair-choice-grid{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.hidden-pair-primer-workspace,.hidden-pair-primer-stage .lesson-candidates i,.hidden-pair-primer-stage.is-eliminate.is-complete .lesson-candidates{animation:none}}.xwing-primer>header{margin-bottom:20px;display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.xwing-primer>header>div:first-child{max-width:710px}.xwing-primer h2{margin-bottom:8px;font-size:clamp(1.7rem,3vw,2.55rem);line-height:1.08}.xwing-primer header p{max-width:680px;margin:0;font-size:.78rem;line-height:1.65}.xwing-primer-progress{padding-top:2px;display:flex;align-items:center;gap:4px}.xwing-primer-progress i{width:30px;height:20px;display:grid;place-items:center;border:1px solid #9faeb4;color:#6f7d82;font:800 .52rem var(--sans);font-style:normal;transition:border-color .16s ease,background .16s ease,color .16s ease,transform .16s ease}.xwing-primer-progress i.filled{border-color:#28586b;background:#28586b;color:#f8fbfa;transform:translateY(-1px)}.xwing-primer-workspace{overflow:hidden;border-block:1px solid #28586b;background:#fbfcf9;animation:xwing-primer-enter .24s ease-out both}.xwing-primer-stage{min-height:420px;padding:22px 34px;display:grid;grid-template-columns:302px minmax(0,1fr);align-items:center;gap:34px;background:linear-gradient(90deg,rgba(218,229,231,.88) 0 336px,transparent 336px),linear-gradient(rgba(31,81,99,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(31,81,99,.045) 1px,transparent 1px),#f3f5f1;background-size:auto,24px 24px,24px 24px,auto}.xwing-primer-stage .lesson-board-figure{width:min(100%,354px);margin:0 auto}.xwing-primer-stage .lesson-board-frame{width:100%}.xwing-primer-stage .lesson-board-cell:not(.pattern):not(.related):not(.selected){opacity:.4}.xwing-primer-stage .lesson-candidates i.candidate-sage,.xwing-primer-stage .lesson-candidates i.candidate-saffron{animation:xwing-signal-lock .22s ease-out both}.xwing-primer-stage.is-eliminate.is-complete .lesson-candidates{animation:pair-candidates-settle .3s ease-out both}.xwing-blueprint{min-width:0;padding:14px 0 13px;display:grid;gap:12px;border-block:1px solid #91a4aa}.xwing-blueprint>span{display:flex;align-items:center;gap:7px;color:#3f626e;font-size:.54rem;font-weight:850;letter-spacing:.11em;text-transform:uppercase}.xwing-blueprint>span svg{width:15px}.xwing-blueprint-frame{width:224px;height:172px;position:relative;margin:2px auto 0}.xwing-blueprint-frame .column-label,.xwing-blueprint-frame .row-label{position:absolute;z-index:4;color:#60737a;font-size:.47rem;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.xwing-blueprint-frame .column-label{top:0;transform:translate(-50%)}.xwing-blueprint-frame .column-a{left:66px}.xwing-blueprint-frame .column-b{left:182px}.xwing-blueprint-frame .row-label{left:0;transform:translateY(-50%)}.xwing-blueprint-frame .row-a{top:51px}.xwing-blueprint-frame .row-b{top:139px}.xwing-blueprint-frame .cover-line,.xwing-blueprint-frame .base-line,.xwing-blueprint-frame .diagonal{position:absolute;z-index:1;display:block;background:#aab8bc;transition:background .19s ease,opacity .19s ease,transform .19s ease}.xwing-blueprint-frame .cover-line{width:2px;height:123px;top:27px;opacity:.28}.xwing-blueprint-frame .cover-a{left:65px}.xwing-blueprint-frame .cover-b{left:181px}.xwing-blueprint-frame .base-line{width:148px;height:2px;left:49px}.xwing-blueprint-frame .base-a{top:50px;background:#55765c}.xwing-blueprint-frame .base-b{top:138px;opacity:.2}.xwing-blueprint-frame .diagonal{width:145px;height:1px;top:94px;left:51px;background:#b57919;opacity:0;transform-origin:center}.xwing-blueprint-frame .diagonal-a{transform:rotate(37deg)}.xwing-blueprint-frame .diagonal-b{transform:rotate(-37deg)}.xwing-blueprint-frame .corner{width:34px;height:34px;position:absolute;z-index:3;display:grid;place-items:center;border:2px solid #9eacb0;border-radius:50%;background:#f7f8f4;color:#64777d;font:800 .86rem var(--sans);transition:border-color .19s ease,background .19s ease,color .19s ease,transform .19s ease,opacity .19s ease}.xwing-blueprint-frame .top-left{top:34px;left:49px}.xwing-blueprint-frame .top-right{top:34px;left:165px}.xwing-blueprint-frame .bottom-left{top:122px;left:49px;opacity:.22}.xwing-blueprint-frame .bottom-right{top:122px;left:165px;opacity:.22}.xwing-blueprint.is-matched .base-b,.xwing-blueprint.is-proved .base-b,.xwing-blueprint.is-broken .base-b,.xwing-blueprint.is-matched .bottom-left,.xwing-blueprint.is-matched .bottom-right,.xwing-blueprint.is-proved .bottom-left,.xwing-blueprint.is-proved .bottom-right,.xwing-blueprint.is-broken .bottom-left,.xwing-blueprint.is-broken .bottom-right{opacity:1}.xwing-blueprint.is-matched .base-b,.xwing-blueprint.is-proved .base-b{background:#b57919}.xwing-blueprint.is-matched .corner,.xwing-blueprint.is-proved .corner{border-color:#28586b;background:#f4faf8;color:#214d5e;transform:scale(1.04)}.xwing-blueprint.is-proved .cover-line{background:#28586b;opacity:1}.xwing-blueprint.is-proved .diagonal{opacity:.38}.xwing-blueprint.is-broken .base-b{background:#a75a4e}.xwing-blueprint.is-broken .bottom-left,.xwing-blueprint.is-broken .bottom-right{border-color:#a75a4e;background:#fbece8;color:#984a3f}.xwing-blueprint-lines{display:grid;grid-template-columns:1fr 1fr;gap:7px}.xwing-blueprint-lines p{min-height:58px;margin:0;padding:9px;display:grid;align-content:center;gap:4px;border-left:3px solid #55765c;background:#f7faf6b3}.xwing-blueprint-lines p+p{border-left-color:#9eacb0;opacity:.52}.xwing-blueprint-lines p.revealed{border-left-color:#b57919;background:#fcefcda8;opacity:1}.xwing-blueprint-lines small{color:#6b7a7f;font-size:.46rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.xwing-blueprint-lines strong{font-size:.59rem;line-height:1.35}.xwing-blueprint>em{width:-moz-fit-content;width:fit-content;padding:5px 8px;border:1px solid #aab6b9;border-radius:999px;color:#66777d;font-size:.5rem;font-style:normal;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.xwing-blueprint>em.revealed{border-color:#28586b;background:#edf5f5;color:#214d5e}.xwing-blueprint.is-broken>em.revealed{border-color:#a75a4e;background:#fbece8;color:#984a3f}.xwing-primer-action{min-height:150px;padding:18px 28px;display:grid;grid-template-columns:minmax(220px,.72fr) minmax(400px,1.28fr);align-items:center;gap:26px}.xwing-primer-action-copy{min-width:0}.xwing-primer-action-copy>strong{display:block;max-width:520px;font-family:var(--sans);font-size:.9rem;font-weight:800;line-height:1.45}.xwing-primer-action-copy>span{display:block;margin-top:6px;color:var(--muted);font-size:.66rem;font-weight:700}.xwing-primer-action-copy>p.correct,.xwing-primer-action-copy>p.wrong{max-width:560px;margin:11px 0 0;display:flex;align-items:flex-start;gap:8px;font-size:.71rem;font-weight:700;line-height:1.5}.xwing-primer-action-copy>p.correct{color:#315d3f}.xwing-primer-action-copy>p.wrong{color:#984a3f}.xwing-primer-action-copy>p svg{width:17px;margin-top:1px;flex:0 0 auto}.xwing-primer-controls{min-width:0;display:flex;align-items:center;justify-content:flex-end;gap:10px}.xwing-choice-grid{min-width:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.xwing-choice-grid button{min-height:68px;padding:8px 9px;display:grid;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:7px;border:1px solid #b8c3c6;border-radius:2px;background:#fbfcf9;color:var(--ink);font:700 .59rem/1.35 var(--sans);text-align:left;cursor:pointer}.xwing-choice-grid button>span{width:20px;height:20px;display:grid;place-items:center;border-radius:50%;background:#e4ecec;font-size:.55rem}.xwing-choice-grid button:hover,.xwing-choice-grid button:focus-visible{border-color:#28586b;outline:2px solid rgba(40,88,107,.2);outline-offset:1px}.xwing-choice-grid button.correct{border-color:#55765c;background:#edf4ec;color:#315d3f}.xwing-choice-grid button.wrong{border-color:var(--coral);background:#fbece8;color:#984a3f}.xwing-check-button:disabled{cursor:not-allowed;opacity:.45}@keyframes xwing-primer-enter{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}@keyframes xwing-signal-lock{0%{opacity:.25;transform:scale(.7)}to{opacity:1;transform:scale(1)}}@media(max-width:980px){.xwing-primer-stage{min-height:630px;padding:18px 24px 24px;grid-template-columns:1fr;gap:16px;background:linear-gradient(rgba(31,81,99,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(31,81,99,.045) 1px,transparent 1px),#f3f5f1;background-size:24px 24px}.xwing-blueprint{width:min(100%,590px);margin:0 auto;grid-template-columns:250px minmax(0,1fr);align-items:center;-moz-column-gap:18px;column-gap:18px}.xwing-blueprint>span,.xwing-blueprint>em{grid-column:1 / -1}.xwing-blueprint-frame{margin:0 auto}.xwing-blueprint-lines{grid-template-columns:1fr}.xwing-primer-action{grid-template-columns:1fr;gap:16px}.xwing-primer-controls{justify-content:flex-start;flex-wrap:wrap}.xwing-choice-grid,.xwing-primer-controls .candidate-removal-picker{width:100%}}@media(max-width:560px){.xwing-primer>header{margin-bottom:10px;flex-direction:column;gap:10px}.xwing-primer h2{margin-block:3px 5px;font-size:1.55rem}.xwing-primer header p{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.xwing-primer-stage{min-height:620px;padding:12px 9px 16px}.xwing-primer-stage .lesson-board-figure{width:min(100%,330px)}.xwing-blueprint{grid-template-columns:1fr;gap:8px}.xwing-blueprint>span,.xwing-blueprint>em{grid-column:1}.xwing-blueprint-frame{transform:scale(.88);margin-block:-9px}.xwing-blueprint-lines{grid-template-columns:1fr 1fr}.xwing-primer-action{padding:16px 0 0}.xwing-choice-grid{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.xwing-primer-workspace,.xwing-primer-stage .lesson-candidates i,.xwing-primer-stage.is-eliminate.is-complete .lesson-candidates{animation:none}}.swordfish-primer>header{margin-bottom:20px;display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.swordfish-primer>header>div:first-child{max-width:720px}.swordfish-primer h2{margin-bottom:8px;font-size:clamp(1.7rem,3vw,2.55rem);line-height:1.08}.swordfish-primer header p{max-width:690px;margin:0;font-size:.78rem;line-height:1.65}.swordfish-primer-progress{padding-top:2px;display:flex;align-items:center;gap:4px}.swordfish-primer-progress i{width:27px;height:22px;display:grid;place-items:center;border:1px solid #9aabb0;color:#687a80;font:800 .52rem var(--sans);font-style:normal;clip-path:polygon(7px 0,100% 0,calc(100% - 7px) 100%,0 100%);transition:border-color .16s ease,background .16s ease,color .16s ease,transform .16s ease}.swordfish-primer-progress i.filled{border-color:#183f53;background:#183f53;color:#f7fbfa;transform:translateY(-1px)}.swordfish-primer-workspace{overflow:hidden;border-block:1px solid #183f53;background:#fbfcf8;animation:swordfish-primer-enter .24s ease-out both}.swordfish-primer-stage{min-height:434px;padding:22px 34px;display:grid;grid-template-columns:318px minmax(0,1fr);align-items:center;gap:34px;background:linear-gradient(90deg,rgba(215,229,227,.88) 0 352px,transparent 352px),repeating-linear-gradient(0deg,transparent 0 23px,rgba(24,63,83,.045) 23px 24px),repeating-linear-gradient(90deg,transparent 0 23px,rgba(24,63,83,.045) 23px 24px),#f2f5f0}.swordfish-primer-stage .lesson-board-figure{width:min(100%,358px);margin:0 auto}.swordfish-primer-stage .lesson-board-frame{width:100%}.swordfish-primer-stage .lesson-board-cell:not(.pattern):not(.related):not(.selected){opacity:.38}.swordfish-primer-stage .lesson-candidates i.candidate-sage,.swordfish-primer-stage .lesson-candidates i.candidate-saffron{animation:swordfish-node-arrive .22s ease-out both}.swordfish-primer-stage.is-eliminate.is-complete .lesson-candidates{animation:pair-candidates-settle .3s ease-out both}.swordfish-net{min-width:0;padding:14px 0 13px;display:grid;gap:12px;border-block:1px solid #8da3a6}.swordfish-net-heading{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:end;gap:13px}.swordfish-net-heading>span{display:flex;align-items:center;gap:7px;color:#365e64;font-size:.54rem;font-weight:850;letter-spacing:.11em;text-transform:uppercase}.swordfish-net-heading>span svg{width:15px}.swordfish-net-heading p{margin:0;display:grid;gap:2px;text-align:right}.swordfish-net-heading small{color:#718085;font-size:.42rem;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.swordfish-net-heading strong{color:#183f53;font-size:.63rem}.swordfish-net-table{min-height:224px;padding:12px;display:grid;grid-template-rows:26px repeat(3,1fr);align-items:center;gap:4px;border:1px solid #aebcbd;background:linear-gradient(rgba(24,63,83,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(24,63,83,.04) 1px,transparent 1px),#fafcf8d1;background-size:18px 18px}.swordfish-net-table>b{display:grid;place-items:center;color:#6a7b80;font-size:.48rem;font-weight:850;letter-spacing:.05em;text-transform:uppercase;transition:color .18s ease,opacity .18s ease}.swordfish-net-table>b.revealed{color:#183f53}.swordfish-net-table>b.extra-cover{color:#a04d43}.swordfish-net-table>i{min-width:0;min-height:42px;position:relative;display:grid;place-items:center;border-inline:1px solid rgba(91,118,123,.2);color:transparent;font:850 .72rem var(--sans);font-style:normal}.swordfish-net-table>i.active{width:34px;min-height:34px;justify-self:center;border:2px solid #2e6f6a;border-radius:50%;background:#e9f3ef;color:#214f4c;box-shadow:0 0 0 5px #2e6f6a14;animation:swordfish-net-close .22s ease-out both}.swordfish-net.is-balanced .swordfish-net-table>i.active,.swordfish-net.is-proved .swordfish-net-table>i.active{border-color:#183f53;background:#eef5f4;color:#183f53;box-shadow:0 0 0 5px #183f5317}.swordfish-net.is-proved .swordfish-net-table{border-color:#2e6f6a;box-shadow:inset 0 0 0 2px #2e6f6a14}.swordfish-net-table>i.active.extra-cover,.swordfish-net.is-broken .swordfish-net-table>i.active.extra-cover{border-color:#a75a4e;background:#fbece8;color:#984a3f;box-shadow:0 0 0 5px #a75a4e1a}.swordfish-net>em{width:-moz-fit-content;width:fit-content;padding:5px 8px;border:1px solid #a8b6b8;border-radius:999px;color:#65777c;font-size:.5rem;font-style:normal;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.swordfish-net.is-balanced>em,.swordfish-net.is-proved>em{border-color:#2e6f6a;background:#eaf3ef;color:#214f4c}.swordfish-net.is-broken>em{border-color:#a75a4e;background:#fbece8;color:#984a3f}.swordfish-primer-action{min-height:152px;padding:18px 28px;display:grid;grid-template-columns:minmax(220px,.72fr) minmax(420px,1.28fr);align-items:center;gap:26px}.swordfish-primer-action-copy{min-width:0}.swordfish-primer-action-copy>strong{display:block;max-width:530px;font-family:var(--sans);font-size:.9rem;font-weight:800;line-height:1.45}.swordfish-primer-action-copy>span{display:block;margin-top:6px;color:var(--muted);font-size:.66rem;font-weight:700}.swordfish-primer-action-copy>p.correct,.swordfish-primer-action-copy>p.wrong{max-width:570px;margin:11px 0 0;display:flex;align-items:flex-start;gap:8px;font-size:.71rem;font-weight:700;line-height:1.5}.swordfish-primer-action-copy>p.correct{color:#315d3f}.swordfish-primer-action-copy>p.wrong{color:#984a3f}.swordfish-primer-action-copy>p svg{width:17px;margin-top:1px;flex:0 0 auto}.swordfish-primer-controls{min-width:0;display:flex;align-items:center;justify-content:flex-end;gap:10px}.swordfish-choice-grid{min-width:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.swordfish-choice-grid button{min-height:70px;padding:8px 9px;display:grid;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:7px;border:1px solid #b4c1c3;border-radius:2px;background:#fbfcf8;color:var(--ink);font:700 .58rem/1.35 var(--sans);text-align:left;cursor:pointer}.swordfish-choice-grid button>span{width:20px;height:20px;display:grid;place-items:center;border-radius:50%;background:#e3ecea;font-size:.55rem}.swordfish-choice-grid button:hover,.swordfish-choice-grid button:focus-visible{border-color:#2e6f6a;outline:2px solid rgba(46,111,106,.2);outline-offset:1px}.swordfish-choice-grid button.correct{border-color:#55765c;background:#edf4ec;color:#315d3f}.swordfish-choice-grid button.wrong{border-color:var(--coral);background:#fbece8;color:#984a3f}.swordfish-check-button:disabled{cursor:not-allowed;opacity:.45}@keyframes swordfish-primer-enter{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}@keyframes swordfish-node-arrive{0%{opacity:.25;transform:scale(.7)}to{opacity:1;transform:scale(1)}}@keyframes swordfish-net-close{0%{opacity:.25;transform:scale(.7)}to{opacity:1;transform:scale(1)}}@media(max-width:1020px){.swordfish-primer-stage{min-height:660px;padding:18px 24px 24px;grid-template-columns:1fr;gap:17px;background:repeating-linear-gradient(0deg,transparent 0 23px,rgba(24,63,83,.045) 23px 24px),repeating-linear-gradient(90deg,transparent 0 23px,rgba(24,63,83,.045) 23px 24px),#f2f5f0}.swordfish-net{width:min(100%,620px);margin:0 auto}.swordfish-net-table{min-height:200px}.swordfish-primer-action{grid-template-columns:1fr;gap:16px}.swordfish-primer-controls{justify-content:flex-start;flex-wrap:wrap}.swordfish-choice-grid,.swordfish-primer-controls .candidate-removal-picker{width:100%}}@media(max-width:560px){.swordfish-primer>header{margin-bottom:10px;flex-direction:column;gap:10px}.swordfish-primer h2{margin-block:3px 5px;font-size:1.55rem}.swordfish-primer header p{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.swordfish-primer-stage{min-height:630px;padding:12px 9px 16px}.swordfish-primer-stage .lesson-board-figure{width:min(100%,330px)}.swordfish-net-heading{grid-template-columns:minmax(0,1fr) auto auto;gap:7px}.swordfish-net-heading>span{font-size:.48rem}.swordfish-net-heading small{display:none}.swordfish-net-table{min-height:184px;padding:8px;gap:3px}.swordfish-net-table>i{min-height:36px}.swordfish-net-table>i.active{width:30px;min-height:30px}.swordfish-primer-action{padding:16px 0 0}.swordfish-choice-grid{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.swordfish-primer-workspace,.swordfish-primer-stage .lesson-candidates i,.swordfish-net-table>i.active,.swordfish-primer-stage.is-eliminate.is-complete .lesson-candidates{animation:none}}.xywing-primer>header{margin-bottom:20px;display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.xywing-primer>header>div:first-child{max-width:720px}.xywing-primer h2{margin-bottom:8px;font-size:clamp(1.7rem,3vw,2.55rem);line-height:1.08}.xywing-primer header p{max-width:690px;margin:0;font-size:.78rem;line-height:1.65}.xywing-primer-progress{padding-top:2px;display:flex;align-items:center;gap:5px}.xywing-primer-progress i{width:28px;height:24px;display:grid;place-items:center;border:1px solid #a39e96;color:#716d67;font:800 .52rem var(--sans);font-style:normal;clip-path:polygon(0 0,calc(100% - 7px) 0,100% 50%,calc(100% - 7px) 100%,0 100%,7px 50%);transition:border-color .16s ease,background .16s ease,color .16s ease,transform .16s ease}.xywing-primer-progress i.filled{border-color:#274f4a;background:#274f4a;color:#fbfdf9;transform:translateY(-1px)}.xywing-primer-workspace{overflow:hidden;border-block:1px solid #274f4a;background:#fcfcf8;animation:xywing-primer-enter .24s ease-out both}.xywing-primer-stage{min-height:446px;padding:22px 34px;display:grid;grid-template-columns:330px minmax(0,1fr);align-items:center;gap:34px;background:linear-gradient(90deg,rgba(229,225,210,.86) 0 364px,transparent 364px),radial-gradient(circle at 19px 19px,rgba(39,79,74,.08) 1px,transparent 1.5px),#f5f5ef;background-size:auto,24px 24px,auto}.xywing-primer-stage .lesson-board-figure{width:min(100%,360px);margin:0 auto}.xywing-primer-stage .lesson-board-frame{width:100%}.xywing-primer-stage .lesson-board-cell:not(.pattern):not(.related):not(.selected){opacity:.4}.xywing-primer-stage .lesson-candidates i.candidate-sage,.xywing-primer-stage .lesson-candidates i.candidate-saffron{animation:xywing-node-arrive .22s ease-out both}.xywing-primer-stage.is-eliminate.is-complete .lesson-candidates{animation:pair-candidates-settle .3s ease-out both}.xywing-fork{min-width:0;padding:14px 0;display:grid;gap:12px;border-block:1px solid #9f9b91}.xywing-fork-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.xywing-fork-heading>span{display:flex;align-items:center;gap:7px;color:#385f59;font-size:.54rem;font-weight:850;letter-spacing:.11em;text-transform:uppercase}.xywing-fork-heading svg{width:15px}.xywing-fork-heading em{padding:5px 8px;border:1px solid #aaa59b;border-radius:999px;color:#726e67;font-size:.46rem;font-style:normal;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.xywing-fork.is-proved .xywing-fork-heading em{border-color:#447365;background:#e8f1ea;color:#315d50}.xywing-fork.is-broken .xywing-fork-heading em{border-color:#a75a4e;background:#fbece8;color:#984a3f}.xywing-pivot-node,.xywing-wing-node{min-width:0;display:grid;align-items:center;border:1px solid #9c998f;background:#fcfcf8e6}.xywing-pivot-node{width:152px;min-height:55px;margin:0 auto;padding:8px 10px;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"label candidates" "cell candidates";border-color:#8b6b39;box-shadow:0 0 0 4px #b5791912}.xywing-pivot-node small,.xywing-wing-node small{grid-area:label;color:#777269;font-size:.43rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.xywing-pivot-node strong,.xywing-wing-node strong{grid-area:cell;color:#263d3a;font-size:.62rem}.xywing-pivot-node>span,.xywing-wing-node>span{grid-area:candidates;display:flex;align-items:center;gap:4px}.xywing-pivot-node>span i,.xywing-wing-node>span i{width:25px;height:25px;display:grid;place-items:center;border-radius:50%;background:#f5e7c8;color:#795712;font:850 .66rem var(--sans);font-style:normal}.xywing-wing-node>span i:last-child{background:#deece6;color:#315f51}.xywing-routes{position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.xywing-routes:before{width:calc(50% + 2px);height:16px;position:absolute;top:-12px;left:25%;border-top:1px solid #aaa59b;border-right:1px solid #aaa59b;border-left:1px solid #aaa59b;content:""}.xywing-route{min-width:0;display:grid;justify-items:stretch;gap:5px;opacity:.32;transition:opacity .18s ease,transform .18s ease}.xywing-route.revealed{opacity:1;transform:translateY(1px)}.xywing-route>span{color:#6d6962;font-size:.46rem;font-weight:800;text-align:center}.xywing-route-line{min-height:20px;position:relative;display:grid;place-items:center}.xywing-route-line:before{width:1px;height:100%;position:absolute;background:#b57919;content:""}.xywing-route-line i{z-index:1;width:20px;height:20px;display:grid;place-items:center;border:1px solid #b57919;border-radius:50%;background:#f8edda;color:#795712;font:850 .52rem var(--sans);font-style:normal}.xywing-wing-node{min-height:54px;padding:8px;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"label candidates" "cell candidates"}.xywing-route.revealed .xywing-wing-node{border-color:#447365}.xywing-route.broken .xywing-route-line:before{background:#a75a4e}.xywing-route.broken .xywing-route-line i,.xywing-route.broken .xywing-wing-node{border-color:#a75a4e;background:#fbece8;color:#984a3f}.xywing-route>b{min-height:18px;color:#315d50;font-size:.48rem;text-align:center}.xywing-route.broken>b{color:#984a3f}.xywing-merge{width:min(100%,220px);min-height:54px;margin:0 auto;padding:7px 12px;display:grid;place-items:center;gap:2px;border:1px dashed #aaa59b;background:#fcfcf899;opacity:.55;transition:border-color .18s ease,background .18s ease,opacity .18s ease,transform .18s ease}.xywing-merge:before{width:1px;height:13px;margin-top:-20px;background:#aaa59b;content:""}.xywing-merge span{color:#777269;font-size:.43rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.xywing-merge strong{color:#5e5b55;font-size:.64rem}.xywing-merge small{color:#5e6e68;font-size:.47rem;font-weight:750}.xywing-merge.revealed{border-color:#447365;border-style:solid;background:#e8f1ea;opacity:1;transform:translateY(1px)}.xywing-merge.revealed strong{color:#315d50}.xywing-fork.is-broken .xywing-merge{border-color:#a75a4e;background:#fbece8;opacity:1}.xywing-primer-action{min-height:152px;padding:18px 28px;display:grid;grid-template-columns:minmax(220px,.72fr) minmax(420px,1.28fr);align-items:center;gap:26px}.xywing-primer-action-copy{min-width:0}.xywing-primer-action-copy>strong{display:block;max-width:530px;font-family:var(--sans);font-size:.9rem;font-weight:800;line-height:1.45}.xywing-primer-action-copy>span{display:block;margin-top:6px;color:var(--muted);font-size:.66rem;font-weight:700}.xywing-primer-action-copy>p.correct,.xywing-primer-action-copy>p.wrong{max-width:570px;margin:11px 0 0;display:flex;align-items:flex-start;gap:8px;font-size:.71rem;font-weight:700;line-height:1.5}.xywing-primer-action-copy>p.correct{color:#315d3f}.xywing-primer-action-copy>p.wrong{color:#984a3f}.xywing-primer-action-copy>p svg{width:17px;margin-top:1px;flex:0 0 auto}.xywing-primer-controls{min-width:0;display:flex;align-items:center;justify-content:flex-end;gap:10px}.xywing-choice-grid{min-width:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.xywing-choice-grid button{min-height:70px;padding:8px 9px;display:grid;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:7px;border:1px solid #b9b5ab;border-radius:2px;background:#fcfcf8;color:var(--ink);font:700 .58rem/1.35 var(--sans);text-align:left;cursor:pointer}.xywing-choice-grid button>span{width:20px;height:20px;display:grid;place-items:center;border-radius:50%;background:#e7ede8;font-size:.55rem}.xywing-choice-grid button:hover,.xywing-choice-grid button:focus-visible{border-color:#447365;outline:2px solid rgba(68,115,101,.2);outline-offset:1px}.xywing-choice-grid button.correct{border-color:#55765c;background:#edf4ec;color:#315d3f}.xywing-choice-grid button.wrong{border-color:var(--coral);background:#fbece8;color:#984a3f}.xywing-check-button:disabled{cursor:not-allowed;opacity:.45}@keyframes xywing-primer-enter{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}@keyframes xywing-node-arrive{0%{opacity:.25;transform:scale(.7)}to{opacity:1;transform:scale(1)}}@media(max-width:1020px){.xywing-primer-stage{min-height:690px;padding:18px 24px 24px;grid-template-columns:1fr;gap:18px;background:radial-gradient(circle at 19px 19px,rgba(39,79,74,.08) 1px,transparent 1.5px),#f5f5ef;background-size:24px 24px}.xywing-fork{width:min(100%,620px);margin:0 auto}.xywing-primer-action{grid-template-columns:1fr;gap:16px}.xywing-primer-controls{justify-content:flex-start;flex-wrap:wrap}.xywing-choice-grid,.xywing-primer-controls .candidate-removal-picker{width:100%}}@media(max-width:560px){.xywing-primer>header{margin-bottom:10px;flex-direction:column;gap:10px}.xywing-primer h2{margin-block:3px 5px;font-size:1.55rem}.xywing-primer header p{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.xywing-primer-stage{min-height:660px;padding:12px 9px 16px}.xywing-primer-stage .lesson-board-figure{width:min(100%,330px)}.xywing-fork{gap:9px}.xywing-fork-heading{gap:7px}.xywing-fork-heading>span{font-size:.48rem}.xywing-routes{gap:8px}.xywing-pivot-node{width:146px}.xywing-wing-node{padding:7px}.xywing-pivot-node>span i,.xywing-wing-node>span i{width:23px;height:23px}.xywing-primer-action{padding:16px 0 0}.xywing-choice-grid{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.xywing-primer-workspace,.xywing-primer-stage .lesson-candidates i,.xywing-primer-stage.is-eliminate.is-complete .lesson-candidates{animation:none}}.xyzwing-primer>header{margin-bottom:20px;display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.xyzwing-primer>header>div:first-child{max-width:730px}.xyzwing-primer h2{margin-bottom:8px;font-size:clamp(1.7rem,3vw,2.55rem);line-height:1.08}.xyzwing-primer header p{max-width:700px;margin:0;font-size:.78rem;line-height:1.65}.xyzwing-primer-progress{padding-top:2px;display:flex;align-items:center;gap:6px}.xyzwing-primer-progress i{width:25px;height:25px;position:relative;display:grid;place-items:center;border:1px solid #9f9c93;border-radius:50%;color:#716d67;font:850 .5rem var(--sans);font-style:normal;transition:border-color .16s ease,background .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease}.xyzwing-primer-progress i:after{width:7px;height:7px;position:absolute;border:1px solid currentColor;border-radius:50%;content:"";opacity:.38}.xyzwing-primer-progress i.filled{border-color:#315d50;background:#315d50;color:#fcfdf9;box-shadow:0 0 0 3px #315d501a;transform:translateY(-1px)}.xyzwing-primer-workspace{overflow:hidden;border-block:1px solid #315d50;background:#fcfcf8;animation:xyzwing-primer-enter .24s ease-out both}.xyzwing-primer-stage{min-height:486px;padding:22px 32px;display:grid;grid-template-columns:minmax(330px,370px) minmax(0,1fr);align-items:center;gap:32px;background:radial-gradient(circle at 184px 222px,rgba(197,226,212,.62),transparent 148px),linear-gradient(90deg,rgba(235,234,222,.92) 0 405px,transparent 405px),repeating-radial-gradient(circle at 20px 20px,rgba(49,93,80,.055) 0 1px,transparent 1px 22px),#f5f5ef}.xyzwing-primer-stage .lesson-board-figure{width:min(100%,370px);margin:0 auto}.xyzwing-primer-stage .lesson-board-frame{width:100%}.xyzwing-primer-stage .lesson-board-cell:not(.pattern):not(.related):not(.selected){opacity:.4}.xyzwing-primer-stage .lesson-candidates i.candidate-sage,.xyzwing-primer-stage .lesson-candidates i.candidate-saffron{animation:xyzwing-source-arrive .22s ease-out both}.xyzwing-primer-stage.is-eliminate.is-complete .lesson-candidates{animation:pair-candidates-settle .3s ease-out both}.xyzwing-lens{min-width:0;padding:13px 0 14px;display:grid;gap:11px;border-block:1px solid #96958d}.xyzwing-lens-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.xyzwing-lens-heading>span{display:flex;align-items:center;gap:7px;color:#315d50;font-size:.54rem;font-weight:850;letter-spacing:.11em;text-transform:uppercase}.xyzwing-lens-heading svg{width:16px}.xyzwing-lens-heading em{padding:5px 8px;border:1px solid #aaa59b;border-radius:999px;color:#726e67;font-size:.46rem;font-style:normal;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.xyzwing-lens.is-proved .xyzwing-lens-heading em{border-color:#447365;background:#e8f1ea;color:#315d50}.xyzwing-lens.is-broken .xyzwing-lens-heading em{border-color:#a75a4e;background:#fbece8;color:#984a3f}.xyzwing-source-map{min-height:202px;position:relative;margin-inline:2px}.xyzwing-source-map:before{width:54%;height:58%;position:absolute;top:31px;left:23%;border:1px solid rgba(74,111,100,.56);clip-path:polygon(50% 0,100% 100%,0 100%);content:"";transform:rotate(45deg);opacity:.72}.xyzwing-source{width:145px;min-height:56px;position:absolute;z-index:2;padding:8px 9px;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"label candidates" "cell candidates";align-items:center;border:1px solid #9c998f;background:#fcfcf8f2;opacity:.28;transition:border-color .18s ease,box-shadow .18s ease,opacity .18s ease,transform .18s ease}.xyzwing-source.revealed{opacity:1}.xyzwing-source-pivot{top:2px;left:50%;border-color:#9a722f;box-shadow:0 0 0 4px #b5791912;transform:translate(-50%)}.xyzwing-source-wing-1{bottom:6px;left:0}.xyzwing-source-wing-2{right:0;bottom:6px}.xyzwing-source-wing.revealed{border-color:#447365;box-shadow:0 0 0 3px #44736512;transform:translateY(1px)}.xyzwing-source small{grid-area:label;color:#777269;font-size:.42rem;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.xyzwing-source strong{grid-area:cell;color:#263d3a;font-size:.61rem}.xyzwing-source>span{grid-area:candidates;display:flex;align-items:center;gap:3px}.xyzwing-source>span i{width:23px;height:23px;display:grid;place-items:center;border-radius:50%;background:#f5e7c8;color:#795712;font:850 .62rem var(--sans);font-style:normal}.xyzwing-source>span i.shared{background:#dcebe4;color:#315d50;box-shadow:inset 0 0 0 1px #315d5038}.xyzwing-kernel{width:92px;height:70px;position:absolute;top:87px;left:50%;z-index:3;display:grid;place-items:center;align-content:center;gap:2px;border:1px dashed #9f9d95;border-radius:50%;background:#f6f4eb;opacity:.72;transform:translate(-50%);transition:border-color .18s ease,background .18s ease,opacity .18s ease,transform .18s ease}.xyzwing-kernel small{color:#777269;font-size:.4rem;font-weight:850;letter-spacing:.06em;text-align:center;text-transform:uppercase}.xyzwing-kernel strong{color:#66625b;font-size:.55rem;text-align:center}.xyzwing-kernel.revealed{border-color:#447365;border-style:solid;background:#dfece5;opacity:1;transform:translate(-50%) scale(1.03)}.xyzwing-kernel.revealed strong{color:#315d50}.xyzwing-outcomes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;opacity:.52;transition:opacity .18s ease}.xyzwing-outcomes.revealed{opacity:1}.xyzwing-outcomes span{min-width:0;padding:6px 5px;display:grid;gap:2px;border-top:1px solid #aaa69e;color:#716d67;font-size:.43rem;font-weight:800;text-align:center}.xyzwing-outcomes b{color:#315d50;font-size:.47rem}.xyzwing-target-gate{min-height:54px;padding:8px 10px;display:grid;grid-template-columns:minmax(68px,.7fr) minmax(60px,.65fr) auto;grid-template-areas:"label cell dots" "status status status";align-items:center;gap:3px 8px;border:1px solid #aaa59b;background:#fcfcf8b8}.xyzwing-target-gate>span{grid-area:label;color:#777269;font-size:.42rem;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.xyzwing-target-gate>strong{grid-area:cell;color:#263d3a;font-size:.58rem}.xyzwing-target-gate>div{grid-area:dots;display:flex;justify-content:flex-end;gap:5px}.xyzwing-target-gate>div i{width:17px;height:17px;position:relative;border:1px solid #aaa59b;border-radius:50%;background:#f5f3eb}.xyzwing-target-gate>div i:after{width:5px;height:5px;position:absolute;top:5px;right:5px;bottom:5px;left:5px;border-radius:50%;background:#aaa59b;content:""}.xyzwing-target-gate>div i.connected{border-color:#447365;background:#e4efe8}.xyzwing-target-gate>div i.connected:after{background:#447365}.xyzwing-target-gate>div i.missing{border-color:#a75a4e;background:#fbece8}.xyzwing-target-gate>div i.missing:after{width:8px;height:1px;top:8px;right:4px;bottom:8px;left:4px;border-radius:0;background:#a75a4e;transform:rotate(-45deg)}.xyzwing-target-gate>div i.unknown:after{opacity:.25}.xyzwing-target-gate>small{grid-area:status;color:#69665f;font-size:.45rem;font-weight:750}.xyzwing-target-gate.revealed{border-color:#447365;background:#eef4ef}.xyzwing-lens.is-broken .xyzwing-target-gate.revealed{border-color:#a75a4e;background:#fbece8}.xyzwing-primer-action{min-height:152px;padding:18px 28px;display:grid;grid-template-columns:minmax(220px,.72fr) minmax(420px,1.28fr);align-items:center;gap:26px}.xyzwing-primer-action-copy{min-width:0}.xyzwing-primer-action-copy>strong{display:block;max-width:540px;font-family:var(--sans);font-size:.9rem;font-weight:800;line-height:1.45}.xyzwing-primer-action-copy>span{display:block;margin-top:6px;color:var(--muted);font-size:.66rem;font-weight:700}.xyzwing-primer-action-copy>p.correct,.xyzwing-primer-action-copy>p.wrong{max-width:580px;margin:11px 0 0;display:flex;align-items:flex-start;gap:8px;font-size:.71rem;font-weight:700;line-height:1.5}.xyzwing-primer-action-copy>p.correct{color:#315d3f}.xyzwing-primer-action-copy>p.wrong{color:#984a3f}.xyzwing-primer-action-copy>p svg{width:17px;margin-top:1px;flex:0 0 auto}.xyzwing-primer-controls{min-width:0;display:flex;align-items:center;justify-content:flex-end;gap:10px}.xyzwing-choice-grid{min-width:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.xyzwing-choice-grid button{min-height:70px;padding:8px 9px;display:grid;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:7px;border:1px solid #b9b5ab;border-radius:2px;background:#fcfcf8;color:var(--ink);font:700 .58rem/1.35 var(--sans);text-align:left;cursor:pointer}.xyzwing-choice-grid button>span{width:20px;height:20px;display:grid;place-items:center;border-radius:50%;background:#e7ede8;font-size:.55rem}.xyzwing-choice-grid button:hover,.xyzwing-choice-grid button:focus-visible{border-color:#447365;outline:2px solid rgba(68,115,101,.2);outline-offset:1px}.xyzwing-choice-grid button.correct{border-color:#55765c;background:#edf4ec;color:#315d3f}.xyzwing-choice-grid button.wrong{border-color:var(--coral);background:#fbece8;color:#984a3f}.xyzwing-check-button:disabled{cursor:not-allowed;opacity:.45}@keyframes xyzwing-primer-enter{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}@keyframes xyzwing-source-arrive{0%{opacity:.25;transform:scale(.72)}to{opacity:1;transform:scale(1)}}@media(max-width:1020px){.xyzwing-primer-stage{min-height:760px;padding:18px 24px 24px;grid-template-columns:1fr;gap:20px;background:radial-gradient(circle at 50% 215px,rgba(197,226,212,.58),transparent 150px),repeating-radial-gradient(circle at 20px 20px,rgba(49,93,80,.055) 0 1px,transparent 1px 22px),#f5f5ef}.xyzwing-lens{width:min(100%,650px);margin:0 auto}.xyzwing-primer-action{grid-template-columns:1fr;gap:16px}.xyzwing-primer-controls{justify-content:flex-start;flex-wrap:wrap}.xyzwing-choice-grid,.xyzwing-primer-controls .candidate-removal-picker{width:100%}}@media(max-width:560px){.xyzwing-primer>header{margin-bottom:10px;flex-direction:column;gap:10px}.xyzwing-primer h2{margin-block:3px 5px;font-size:1.55rem}.xyzwing-primer header p{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.xyzwing-primer-stage{min-height:740px;padding:12px 9px 16px}.xyzwing-primer-stage .lesson-board-figure{width:min(100%,330px)}.xyzwing-lens{gap:9px}.xyzwing-lens-heading{gap:7px}.xyzwing-lens-heading>span{font-size:.48rem}.xyzwing-source{width:126px;padding:7px}.xyzwing-source>span i{width:21px;height:21px;font-size:.56rem}.xyzwing-kernel{width:82px}.xyzwing-outcomes span{padding-inline:2px}.xyzwing-target-gate{grid-template-columns:minmax(66px,1fr) auto;grid-template-areas:"label dots" "cell dots" "status status"}.xyzwing-primer-action{padding:16px 0 0}.xyzwing-choice-grid{grid-template-columns:1fr}}@media(max-width:390px){.xyzwing-source{width:116px}.xyzwing-source-map{min-height:210px}}@media(prefers-reduced-motion:reduce){.xyzwing-primer-workspace,.xyzwing-primer-stage .lesson-candidates i,.xyzwing-primer-stage.is-eliminate.is-complete .lesson-candidates{animation:none}}.unique-rectangle-primer>header{margin-bottom:20px;display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.unique-rectangle-primer>header>div:first-child{max-width:730px}.unique-rectangle-primer h2{margin-bottom:8px;font-size:clamp(1.7rem,3vw,2.55rem);line-height:1.08}.unique-rectangle-primer header p{max-width:700px;margin:0;font-size:.78rem;line-height:1.65}.unique-rectangle-primer-progress{padding-top:2px;display:flex;align-items:center;gap:6px}.unique-rectangle-primer-progress i{width:25px;height:25px;display:grid;place-items:center;border:1px solid #9d9891;color:#706a64;font:850 .5rem var(--sans);font-style:normal;transition:border-color .16s ease,background .16s ease,color .16s ease,transform .16s ease}.unique-rectangle-primer-progress i:nth-child(2n){border-radius:50%}.unique-rectangle-primer-progress i.filled{border-color:#7e3d36;background:#7e3d36;color:#fffaf2;transform:translateY(-1px)}.unique-rectangle-primer-workspace{overflow:hidden;border-block:1px solid #243d49;background:#fbfaf5;animation:unique-rectangle-enter .24s ease-out both}.unique-rectangle-primer-stage{min-height:500px;padding:22px 32px;display:grid;grid-template-columns:minmax(340px,390px) minmax(0,1fr);align-items:center;gap:32px;background:linear-gradient(90deg,rgba(232,229,217,.93) 0 422px,transparent 422px),linear-gradient(rgba(36,61,73,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(36,61,73,.045) 1px,transparent 1px),#f5f3eb;background-size:auto,22px 22px,22px 22px,auto}.unique-rectangle-primer-stage .lesson-board-figure{width:min(100%,380px);margin:0 auto}.unique-rectangle-primer-stage .lesson-board-frame{width:100%}.unique-rectangle-primer-stage .lesson-board-cell:not(.pattern):not(.related):not(.selected){opacity:.4}.unique-rectangle-primer-stage .lesson-candidates i.candidate-sage,.unique-rectangle-primer-stage .lesson-candidates i.candidate-saffron{animation:unique-candidate-arrive .22s ease-out both}.unique-circuit{min-width:0;padding-block:12px;display:grid;gap:11px;border-block:1px solid #98928a}.unique-circuit-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.unique-circuit-heading>span{display:flex;align-items:center;gap:7px;color:#243d49;font-size:.54rem;font-weight:850;letter-spacing:.11em;text-transform:uppercase}.unique-circuit-heading svg{width:16px}.unique-circuit-heading em{padding:5px 8px;border:1px solid #aaa49c;border-radius:999px;color:#6f6963;font-size:.46rem;font-style:normal;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.unique-circuit.is-danger .unique-circuit-heading em{border-color:#a75a4e;background:#faeae5;color:#8d3f36}.unique-circuit.is-resolved .unique-circuit-heading em{border-color:#477464;background:#e7f0e9;color:#315d50}.unique-circuit.is-broken .unique-circuit-heading em{border-color:#8b645b;background:#f4e9e4;color:#7e3d36}.unique-circuit-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-block:1px solid #aca69e}.unique-circuit-facts>span{min-width:0;padding:7px 10px;display:flex;align-items:center;justify-content:space-between;gap:8px;border-right:1px solid #aca69e}.unique-circuit-facts>span:last-child{border-right:0}.unique-circuit-facts small{color:#736d67;font-size:.43rem;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.unique-circuit-facts strong{color:#243d49;font-size:.72rem}.unique-circuit-facts span.valid strong{color:#315d50}.unique-circuit-facts span.invalid{background:#a75a4e1a}.unique-circuit-facts span.invalid strong{color:#8d3f36}.unique-circuit-corners{min-height:184px;position:relative;padding:6px 8px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,1fr);gap:38px 76px}.unique-circuit-corners:before,.unique-circuit-corners:after,.unique-circuit-corners>b{position:absolute;z-index:0;background:#243d497a;content:""}.unique-circuit-corners:before,.unique-circuit-corners:after{width:calc(100% - 126px);height:1px;left:63px}.unique-circuit-corners:before{top:35px}.unique-circuit-corners:after{bottom:35px}.unique-circuit-corners>b{width:1px;height:calc(100% - 70px);top:35px;left:50%;box-shadow:-148px 0 #243d497a,148px 0 #243d497a;opacity:.7}.unique-corner{min-width:0;position:relative;z-index:2;padding:7px 8px;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"label notes" "cell notes";align-items:center;border:1px solid #99938b;background:#fbfaf5f5;opacity:.42;transition:border-color .18s ease,box-shadow .18s ease,opacity .18s ease,transform .18s ease}.unique-corner.revealed{border-color:#243d49;box-shadow:3px 3px #243d491a;opacity:1;transform:translateY(-1px)}.unique-corner.special{border-color:#9a5047}.unique-corner small{grid-area:label;color:#746e67;font-size:.4rem;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.unique-corner strong{grid-area:cell;color:#243d49;font-size:.59rem}.unique-corner>span{grid-area:notes;display:flex;gap:3px}.unique-corner>span i{width:22px;height:22px;display:grid;place-items:center;border-radius:50%;background:#efe1c2;color:#725211;font:850 .59rem var(--sans);font-style:normal}.unique-corner>span i.extra{background:#dceae2;color:#315d50;box-shadow:inset 0 0 0 1px #315d5038}.unique-swap-proof{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:26px;opacity:.45;transition:opacity .18s ease,transform .18s ease}.unique-swap-proof.revealed{opacity:1;transform:translateY(-1px)}.unique-swap-proof>div{padding:6px 9px;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:8px;border:1px solid #a6a097;background:#fbfaf5d1}.unique-swap-proof>div>span{color:#716b65;font-size:.41rem;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.unique-swap-proof>div>div{display:grid;grid-template-columns:repeat(2,20px);grid-template-rows:repeat(2,20px);justify-content:end}.unique-swap-proof i{display:grid;place-items:center;border:1px solid #918a82;color:#243d49;font:850 .52rem var(--sans);font-style:normal}.unique-swap-proof>svg{width:17px;position:absolute;top:50%;left:50%;color:#7e3d36;transform:translate(-50%,-50%)}.unique-breaker{min-height:50px;padding:7px 9px;display:grid;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:8px;border-left:3px solid #9a5047;background:#fbfaf5c2}.unique-breaker>span{color:#746e67;font-size:.42rem;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.unique-breaker>strong{color:#243d49;font-size:.58rem}.unique-breaker p{margin:0;display:flex;align-items:center;justify-content:flex-end;gap:5px;color:#716b65;font-size:.47rem;font-weight:780}.unique-breaker p svg{width:15px}.unique-breaker.resolved{border-left-color:#477464;background:#e9f1eb}.unique-breaker.resolved p{color:#315d50}.unique-rectangle-primer-action{min-height:152px;padding:18px 28px;display:grid;grid-template-columns:minmax(220px,.72fr) minmax(420px,1.28fr);align-items:center;gap:26px}.unique-rectangle-primer-action-copy{min-width:0}.unique-rectangle-primer-action-copy>strong{display:block;max-width:540px;font-family:var(--sans);font-size:.9rem;font-weight:800;line-height:1.45}.unique-rectangle-primer-action-copy>span{display:block;margin-top:6px;color:var(--muted);font-size:.66rem;font-weight:700}.unique-rectangle-primer-action-copy>p{max-width:580px;margin:11px 0 0;display:flex;align-items:flex-start;gap:8px;font-size:.71rem;font-weight:700;line-height:1.5}.unique-rectangle-primer-action-copy>p.correct{color:#315d3f}.unique-rectangle-primer-action-copy>p.wrong{color:#984a3f}.unique-rectangle-primer-action-copy>p svg{width:17px;margin-top:1px;flex:0 0 auto}.unique-rectangle-primer-controls{min-width:0;display:flex;align-items:center;justify-content:flex-end;gap:10px}.unique-rectangle-choice-grid{min-width:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.unique-rectangle-choice-grid button{min-height:70px;padding:8px 9px;display:grid;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:7px;border:1px solid #b5afa7;border-radius:2px;background:#fbfaf5;color:var(--ink);font:700 .58rem/1.35 var(--sans);text-align:left;cursor:pointer}.unique-rectangle-choice-grid button>span{width:20px;height:20px;display:grid;place-items:center;border-radius:50%;background:#e8e5dc;font-size:.55rem}.unique-rectangle-choice-grid button:hover,.unique-rectangle-choice-grid button:focus-visible{border-color:#7e3d36;outline:2px solid rgba(126,61,54,.18);outline-offset:1px}.unique-rectangle-choice-grid button.correct{border-color:#55765c;background:#edf4ec;color:#315d3f}.unique-rectangle-choice-grid button.wrong{border-color:var(--coral);background:#fbece8;color:#984a3f}.unique-rectangle-check-button:disabled{cursor:not-allowed;opacity:.45}@keyframes unique-rectangle-enter{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}@keyframes unique-candidate-arrive{0%{opacity:.25;transform:scale(.72)}to{opacity:1;transform:scale(1)}}@media(max-width:1020px){.unique-rectangle-primer-stage{min-height:790px;padding:18px 24px 24px;grid-template-columns:1fr;gap:20px;background:linear-gradient(rgba(36,61,73,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(36,61,73,.045) 1px,transparent 1px),#f5f3eb;background-size:22px 22px}.unique-circuit{width:min(100%,660px);margin:0 auto}.unique-rectangle-primer-action{grid-template-columns:1fr;gap:16px}.unique-rectangle-primer-controls{justify-content:flex-start;flex-wrap:wrap}.unique-rectangle-choice-grid,.unique-rectangle-primer-controls .candidate-removal-picker{width:100%}}@media(max-width:560px){.unique-rectangle-primer>header{margin-bottom:10px;flex-direction:column;gap:10px}.unique-rectangle-primer h2{margin-block:3px 5px;font-size:1.55rem}.unique-rectangle-primer header p{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.unique-rectangle-primer-stage{min-height:770px;padding:12px 9px 16px}.unique-rectangle-primer-stage .lesson-board-figure{width:min(100%,330px)}.unique-circuit{gap:9px}.unique-circuit-heading>span{font-size:.48rem}.unique-circuit-corners{gap:34px 28px}.unique-circuit-corners>b{box-shadow:-115px 0 #243d497a,115px 0 #243d497a}.unique-corner{padding:6px}.unique-corner>span i{width:20px;height:20px;font-size:.54rem}.unique-breaker{grid-template-columns:auto 1fr}.unique-breaker p{grid-column:1 / -1;justify-content:flex-start}.unique-rectangle-primer-action{padding:16px 0 0}.unique-rectangle-choice-grid{grid-template-columns:1fr}}@media(max-width:390px){.unique-circuit-corners{gap-inline:18px}.unique-circuit-corners>b{box-shadow:-104px 0 #243d497a,104px 0 #243d497a}}@media(prefers-reduced-motion:reduce){.unique-rectangle-primer-workspace,.unique-rectangle-primer-stage .lesson-candidates i{animation:none}}.coloring-primer>header{margin-bottom:20px;display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.coloring-primer>header>div:first-child{max-width:740px}.coloring-primer h2{margin-bottom:8px;font-size:clamp(1.7rem,3vw,2.55rem);line-height:1.08}.coloring-primer header p{max-width:710px;margin:0;font-size:.78rem;line-height:1.65}.coloring-primer-progress{padding-top:2px;display:flex;align-items:center;gap:6px}.coloring-primer-progress i{width:25px;height:25px;display:grid;place-items:center;border:1px solid #929a91;border-radius:50%;color:#687169;font:850 .5rem var(--sans);font-style:normal;transition:border-color .16s ease,background .16s ease,color .16s ease,transform .16s ease}.coloring-primer-progress i.filled{border-color:#153a45;background:#153a45;color:#fffdf7;transform:translateY(-1px)}.coloring-primer-workspace{animation:coloring-primer-enter .24s ease-out both}.coloring-primer-stage{min-height:650px;padding:16px;display:grid;grid-template-columns:minmax(210px,.68fr) minmax(330px,1.32fr);align-items:center;gap:clamp(16px,2vw,26px);overflow:hidden;border:1px solid #c9c5b7;background:linear-gradient(rgba(35,69,77,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(35,69,77,.045) 1px,transparent 1px),#f7f4eb;background-size:24px 24px}.coloring-primer-stage .lesson-board-figure{width:min(100%,560px);justify-self:center}.coloring-primer-stage .lesson-board-frame{box-shadow:0 20px 55px #12323e1f}.coloring-primer-stage .lesson-board-cell:not(.pattern):not(.related):not(.selected){background:#ffffffc2}.coloring-primer-stage .lesson-candidates i.candidate-sage,.coloring-primer-stage .lesson-candidates i.candidate-saffron{border-radius:50%;font-weight:900;transform:scale(1.1);animation:coloring-candidate-arrive .22s ease-out both}.coloring-relay{min-width:0;padding:18px;display:grid;gap:13px;align-self:stretch;border:1px solid #173e49;background:#102f39;color:#f8f4e8;box-shadow:12px 12px #cf9f3524}.coloring-relay-heading{padding-bottom:12px;display:flex;justify-content:space-between;gap:14px;border-bottom:1px solid rgba(255,255,255,.16)}.coloring-relay-heading>span{display:flex;align-items:center;gap:8px;color:#fffdf7;font:850 .54rem var(--sans);letter-spacing:.11em;text-transform:uppercase}.coloring-relay-heading svg{width:16px;color:#efbe53}.coloring-relay-heading em{color:#b9c9c4;font:750 .54rem var(--sans);font-style:normal}.coloring-relay-digit{min-height:60px;padding:9px 12px;display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;-moz-column-gap:12px;column-gap:12px;align-items:center;border-left:3px solid #efbe53;background:#ffffff0e}.coloring-relay-digit small{grid-column:2;color:#9fb3b0;font:800 .48rem var(--sans);letter-spacing:.09em;text-transform:uppercase}.coloring-relay-digit strong{grid-row:1 / 3;display:grid;place-items:center;width:40px;height:40px;border:1px solid #efbe53;border-radius:50%;color:#efbe53;font:850 1.2rem var(--serif)}.coloring-relay-digit span{grid-column:2;color:#fffdf7;font:720 .6rem var(--sans)}.coloring-relay-lane-labels{display:grid;grid-template-columns:1fr 1fr;gap:10px}.coloring-relay-lane-labels span{padding:6px 8px;border-top:2px solid #789889;color:#c9d8d1;font:820 .48rem var(--sans);letter-spacing:.08em;text-align:center;text-transform:uppercase}.coloring-relay-lane-labels span:last-child{border-color:#d49a2f;color:#f0d39c}.coloring-relay-nodes{min-height:138px;padding:2px 5px;display:grid;grid-template-columns:1fr 1fr;grid-auto-flow:row;gap:8px 18px;position:relative}.coloring-relay-nodes:before{content:"";position:absolute;top:0;right:50%;bottom:0;left:50%;width:1px;background:linear-gradient(transparent,rgba(255,255,255,.2),transparent)}.coloring-relay-node{min-height:58px;padding:8px;display:grid;grid-template-columns:auto 1fr;gap:1px 8px;align-items:center;opacity:.44;border:1px dashed rgba(255,255,255,.28);background:#ffffff09;transition:opacity .18s ease,border-color .18s ease,background .18s ease,transform .18s ease}.coloring-relay-node.is-sage{grid-column:1}.coloring-relay-node.is-saffron{grid-column:2}.coloring-relay-node.revealed{opacity:1;border-style:solid;transform:translateY(-1px)}.coloring-relay-node.is-sage.revealed{border-color:#86a99a;background:#759e8b29}.coloring-relay-node.is-saffron.revealed{border-color:#e0ad46;background:#e0ad4624}.coloring-relay-node i{grid-row:1 / 3;width:30px;height:30px;display:grid;place-items:center;border:1px solid currentColor;border-radius:50%;color:#9eb0ae;font:850 .72rem var(--sans);font-style:normal}.coloring-relay-node.is-sage.revealed i{color:#b4d3c5}.coloring-relay-node.is-saffron.revealed i{color:#f1cb7d}.coloring-relay-node span{color:#fffdf7;font:820 .58rem var(--sans)}.coloring-relay-node small{color:#95a8a5;font:720 .46rem var(--sans)}.coloring-relay-links{display:grid;gap:6px}.coloring-relay-links>div{min-height:34px;padding:6px 8px;display:grid;grid-template-columns:auto 1fr;gap:0 7px;align-items:center;opacity:.38;border-left:2px solid rgba(255,255,255,.25);background:#ffffff09}.coloring-relay-links>div.revealed{opacity:1;border-left-color:#efbe53}.coloring-relay-links svg{grid-row:1 / 3;width:14px;color:#efbe53}.coloring-relay-links span{color:#f8f4e8;font:760 .5rem var(--sans)}.coloring-relay-links b{color:#efbe53}.coloring-relay-links small{color:#9fb3b0;font:650 .45rem var(--sans)}.coloring-relay-conclusion{min-height:54px;padding:9px 10px;display:grid;grid-template-columns:auto 1fr auto;gap:9px;align-items:center;border:1px solid #d8a644;background:#f3d58e;color:#173e49;animation:coloring-conclusion-enter .26s ease-out both}.coloring-relay-conclusion.is-collision{border-color:#a8564e;background:#eac7bd;color:#672f2b}.coloring-relay-conclusion svg{width:19px}.coloring-relay-conclusion span{display:grid}.coloring-relay-conclusion small{font:800 .45rem var(--sans);letter-spacing:.08em;text-transform:uppercase}.coloring-relay-conclusion strong{font:850 .65rem var(--sans)}.coloring-relay-conclusion em{font:780 .5rem var(--sans);font-style:normal}.coloring-primer-action{padding:20px 22px;display:grid;grid-template-columns:minmax(230px,.72fr) minmax(0,1.28fr);gap:24px;align-items:start;border:1px solid #c9c5b7;border-top:0;background:#fffdf7}.coloring-primer-action-copy{min-width:0}.coloring-primer-action-copy>strong{display:block;color:var(--ink);font:850 clamp(.84rem,1.5vw,1.04rem) var(--serif);line-height:1.3}.coloring-primer-action-copy>span{display:block;margin-top:7px;color:var(--muted);font:760 .55rem var(--sans)}.coloring-primer-action-copy>p{margin:10px 0 0;display:flex;gap:8px;align-items:flex-start;font:720 .6rem var(--sans);line-height:1.5}.coloring-primer-action-copy>p.correct{color:#2d6951}.coloring-primer-action-copy>p.wrong{color:#9e403b}.coloring-primer-action-copy>p svg{width:16px;flex:0 0 auto}.coloring-primer-controls{min-width:0;display:grid;gap:12px}.coloring-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.coloring-choice-grid button{min-height:68px;padding:10px;display:grid;grid-template-columns:auto 1fr;gap:8px;align-items:center;border:1px solid #bbb8ad;background:#fffdf8;color:var(--ink);font:750 .56rem var(--sans);line-height:1.35;text-align:left;cursor:pointer}.coloring-choice-grid button>span{width:25px;height:25px;display:grid;place-items:center;border:1px solid #a8a599;border-radius:50%;color:#6f7069;font-size:.48rem}.coloring-choice-grid button:hover,.coloring-choice-grid button:focus-visible{border-color:#173e49;transform:translateY(-1px)}.coloring-choice-grid button.correct{border-color:#55806d;background:#edf4ee;color:#2d624d}.coloring-choice-grid button.wrong{border-color:#b95a52;background:#fbefec;color:#9a3d37}.coloring-primer-controls>.button{justify-self:end}.coloring-primer-check-button:disabled{opacity:.45}@keyframes coloring-primer-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes coloring-candidate-arrive{0%{opacity:.2;transform:scale(.72)}to{opacity:1;transform:scale(1.1)}}@keyframes coloring-conclusion-enter{0%{opacity:0;transform:translate(-7px)}to{opacity:1;transform:translate(0)}}@media(max-width:1020px){.coloring-primer-stage{grid-template-columns:minmax(200px,.7fr) minmax(310px,1.3fr);gap:18px;padding:14px}.coloring-relay{padding:14px}.coloring-primer-action{grid-template-columns:minmax(200px,.65fr) minmax(0,1.35fr)}}@media(max-width:760px){.coloring-primer>header{margin-bottom:12px;gap:12px}.coloring-primer-progress{display:none}.coloring-primer-stage{min-height:auto;grid-template-columns:1fr;align-items:start}.coloring-relay{width:min(100%,520px);justify-self:center}.coloring-primer-stage .lesson-board-figure{width:min(100%,490px)}.coloring-primer-action{grid-template-columns:1fr}.coloring-primer-controls>.button{width:100%;justify-self:stretch}}@media(max-width:560px){.coloring-primer h2{margin-block:3px 5px;font-size:1.55rem}.coloring-primer header p{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:4}.coloring-primer-stage{padding:10px 8px 14px}.coloring-relay{padding:12px;gap:10px;box-shadow:6px 6px #cf9f3524}.coloring-relay-heading>span{font-size:.46rem}.coloring-relay-heading em{max-width:120px;text-align:right}.coloring-relay-node{min-height:52px;padding:6px;gap:1px 5px}.coloring-relay-node i{width:27px;height:27px}.coloring-relay-links span{font-size:.46rem}.coloring-primer-action{padding:16px 0 0;border-right:0;border-bottom:0;border-left:0}.coloring-choice-grid{grid-template-columns:1fr}}@media(max-width:390px){.coloring-relay-nodes{gap-inline:8px}.coloring-relay-node span{font-size:.51rem}.coloring-relay-conclusion{grid-template-columns:auto 1fr}.coloring-relay-conclusion em{grid-column:1 / -1}}@media(prefers-reduced-motion:reduce){.coloring-primer-workspace,.coloring-primer-stage .lesson-candidates i,.coloring-relay-conclusion{animation:none}}.chains-primer>header{margin-bottom:20px;display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.chains-primer>header>div:first-child{max-width:760px}.chains-primer h2{margin-bottom:8px;font-size:clamp(1.7rem,3vw,2.55rem);line-height:1.08}.chains-primer header p{max-width:720px;margin:0;font-size:.78rem;line-height:1.65}.chains-primer-progress{padding-top:2px;display:flex;align-items:center;gap:6px}.chains-primer-progress i{width:25px;height:25px;display:grid;place-items:center;border:1px solid #9b8f7b;border-radius:2px;color:#776c5d;background:#f7f0e3;font:850 .5rem var(--sans);font-style:normal;transition:border-color .16s ease,background .16s ease,color .16s ease,transform .16s ease}.chains-primer-progress i.filled{border-color:#8d3d34;background:#8d3d34;color:#fff9ed;transform:translateY(-1px)}.chains-primer-workspace{animation:chain-primer-enter .24s ease-out both}.chains-primer-stage{min-height:650px;padding:16px;display:grid;grid-template-columns:minmax(255px,.82fr) minmax(330px,1.18fr);align-items:center;gap:clamp(16px,2vw,28px);overflow:hidden;border:1px solid #c9bda9;background:linear-gradient(90deg,rgba(120,77,54,.04) 1px,transparent 1px),linear-gradient(rgba(120,77,54,.04) 1px,transparent 1px),#f5efe3;background-size:28px 28px}.chains-primer-stage .lesson-board-figure{width:min(100%,560px);justify-self:center}.chains-primer-stage .lesson-board-frame{box-shadow:0 22px 55px #46302521}.chains-primer-stage .lesson-board-cell:not(.pattern):not(.related):not(.selected){background:#fffdf8cc}.chain-proof-tape{min-width:0;padding:18px;display:grid;gap:14px;align-self:stretch;align-content:start;border:1px solid #a9967d;border-left:5px solid #17374c;background:linear-gradient(180deg,rgba(151,113,69,.05),transparent 120px),repeating-linear-gradient(0deg,transparent,transparent 25px,rgba(80,57,39,.045) 26px),#fffaf0;box-shadow:9px 9px #855b381c}.chain-proof-tape-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.chain-proof-tape-heading>span{display:flex;align-items:center;gap:7px;color:#17374c;font:900 .52rem var(--sans);letter-spacing:.1em;text-transform:uppercase}.chain-proof-tape-heading svg{width:16px}.chain-proof-tape-heading em{max-width:125px;color:#8d3d34;font:800 .48rem var(--sans);font-style:normal;line-height:1.3;text-align:right}.chain-proof-assumption{padding:10px 11px;display:grid;grid-template-columns:1fr auto;gap:2px 10px;align-items:center;border-block:1px solid #cbbba4}.chain-proof-assumption small{color:#736757;font:800 .46rem var(--sans);letter-spacing:.08em;text-transform:uppercase}.chain-proof-assumption strong{grid-row:1 / 3;grid-column:2;display:flex;align-items:center;gap:3px;color:#8d3d34;font:900 1.35rem var(--serif)}.chain-proof-assumption strong svg{width:14px;stroke-width:3}.chain-proof-assumption span{color:#3c4650;font:720 .55rem var(--sans)}.chain-proof-nodes{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.chain-proof-nodes:before{position:absolute;top:45px;right:6%;left:6%;z-index:0;height:2px;background:#b9aa95;content:""}.chain-proof-node{position:relative;z-index:1;min-width:0;padding:7px 5px 8px;display:grid;gap:6px;justify-items:center;border:1px dashed #b8aa96;background:#f4ede0;color:#827664;opacity:.62}.chain-proof-node.revealed{border-style:solid;border-color:#866e51;background:#fffdf6;color:#17374c;opacity:1;animation:chain-node-snap .21s ease-out both}.chain-proof-node>span{overflow:hidden;max-width:100%;font:850 .47rem var(--sans);text-overflow:ellipsis;white-space:nowrap}.chain-proof-node>div{display:flex;gap:3px}.chain-proof-node i{width:27px;height:27px;display:grid;place-items:center;border:1px solid #a99a85;background:#f8f1e5;color:#7f7362;font:900 .72rem var(--serif);font-style:normal;transition:background .16s ease,color .16s ease,transform .16s ease}.chain-proof-node i.blocked{color:#a06057;background:linear-gradient(135deg,transparent 46%,#a06057 47%,#a06057 53%,transparent 54%),#f5e7df}.chain-proof-node i.forced{border-color:#17374c;background:#17374c;color:#fffaf0;transform:translateY(-2px)}.chain-proof-node small{color:#786b5a;font:760 .42rem var(--sans)}.chain-proof-node.revealed small{color:#8d3d34}.chain-proof-links{display:grid;gap:6px}.chain-proof-links>div{padding:7px 8px;display:grid;grid-template-columns:auto 1fr;gap:2px 7px;align-items:center;border-left:2px solid #c4b59f;color:#8a7e6b;opacity:.55}.chain-proof-links>div.revealed{border-left-color:#8d3d34;color:#17374c;opacity:1;animation:chain-link-draw .2s ease-out both}.chain-proof-links svg{grid-row:1 / 3;width:14px}.chain-proof-links span{font:850 .49rem var(--sans)}.chain-proof-links b{color:#8d3d34}.chain-proof-links small{color:#756a5b;font:680 .43rem var(--sans)}.chain-proof-conclusion{padding:10px;display:grid;grid-template-columns:1fr auto 1fr;gap:9px;align-items:center;border:1px solid #8d3d34;background:#f8e9df;animation:chain-link-draw .22s ease-out both}.chain-proof-conclusion>span{display:grid;gap:2px}.chain-proof-conclusion>span:last-child{text-align:right}.chain-proof-conclusion small{color:#746454;font:750 .42rem var(--sans);text-transform:uppercase}.chain-proof-conclusion strong{color:#8d3d34;font:900 .82rem var(--serif)}.chain-proof-conclusion>i{color:#17374c;font:900 .8rem var(--sans);font-style:normal}.chains-primer-action{padding:18px;display:grid;grid-template-columns:minmax(230px,.72fr) minmax(0,1.28fr);gap:24px;align-items:start;border:1px solid #c9bda9;border-top:0;background:#fffdf7}.chains-primer-action-copy{min-width:0}.chains-primer-action-copy>strong{display:block;color:var(--ink);font:850 clamp(.84rem,1.5vw,1.04rem) var(--serif);line-height:1.3}.chains-primer-action-copy>span{display:block;margin-top:7px;color:var(--muted);font:760 .55rem var(--sans)}.chains-primer-action-copy>p{margin:10px 0 0;display:flex;gap:8px;align-items:flex-start;font:720 .6rem var(--sans);line-height:1.5}.chains-primer-action-copy>p.correct{color:#2d6951}.chains-primer-action-copy>p.wrong{color:#9e403b}.chains-primer-action-copy>p svg{width:16px;flex:0 0 auto}.chains-primer-controls{min-width:0;display:grid;gap:12px}.chains-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.chains-choice-grid button{min-height:68px;padding:10px;display:grid;grid-template-columns:auto 1fr;gap:8px;align-items:center;border:1px solid #bcae9a;background:#fffaf0;color:var(--ink);font:750 .56rem var(--sans);line-height:1.35;text-align:left;cursor:pointer}.chains-choice-grid button>span{width:25px;height:25px;display:grid;place-items:center;border:1px solid #a9967d;color:#6f6252;font-size:.48rem}.chains-choice-grid button:hover,.chains-choice-grid button:focus-visible{border-color:#17374c;transform:translateY(-1px)}.chains-choice-grid button.correct{border-color:#55806d;background:#edf4ee;color:#2d624d}.chains-choice-grid button.wrong{border-color:#b95a52;background:#fbefec;color:#9a3d37}.chains-primer-controls>.button{justify-self:end}.chains-primer-check-button:disabled{opacity:.45}@keyframes chain-primer-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes chain-node-snap{0%{opacity:.4;transform:translateY(6px) rotate(-1deg)}to{opacity:1;transform:translateY(0) rotate(0)}}@keyframes chain-link-draw{0%{opacity:.35;transform:translate(-6px)}to{opacity:1;transform:translate(0)}}@media(max-width:1020px){.chains-primer-stage{grid-template-columns:minmax(240px,.82fr) minmax(310px,1.18fr);gap:18px;padding:14px}.chain-proof-tape{padding:14px}.chains-primer-action{grid-template-columns:minmax(210px,.68fr) minmax(0,1.32fr)}}@media(max-width:760px){.chains-primer>header{margin-bottom:12px;gap:12px}.chains-primer-progress{display:none}.chains-primer-stage{min-height:auto;grid-template-columns:1fr;align-items:start}.chain-proof-tape{width:min(100%,540px);justify-self:center}.chains-primer-stage .lesson-board-figure{width:min(100%,490px)}.chains-primer-action{grid-template-columns:1fr}.chains-primer-controls>.button{width:100%;justify-self:stretch}}@media(max-width:560px){.chains-primer h2{margin-block:3px 5px;font-size:1.55rem}.chains-primer header p{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:4}.chains-primer-stage{padding:10px 8px 14px}.chain-proof-tape{padding:11px;gap:10px;border-left-width:3px;box-shadow:6px 6px #855b381c}.chain-proof-tape-heading>span{font-size:.46rem}.chain-proof-node{padding-inline:3px}.chain-proof-node i{width:23px;height:25px}.chain-proof-links span{font-size:.45rem}.chains-primer-action{padding:16px 0 0;border-right:0;border-bottom:0;border-left:0}.chains-choice-grid{grid-template-columns:1fr}}@media(max-width:390px){.chain-proof-node>span{font-size:.42rem}.chain-proof-node i{width:21px}.chain-proof-conclusion{grid-template-columns:1fr}.chain-proof-conclusion>i{display:none}.chain-proof-conclusion>span:last-child{text-align:left}}@media(prefers-reduced-motion:reduce){.chains-primer-workspace,.chain-proof-node.revealed,.chain-proof-links>div.revealed,.chain-proof-conclusion{animation:none}}.forcing-primer>header{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:18px}.forcing-primer>header>div:first-child{max-width:700px}.forcing-primer h2{margin:5px 0 7px;color:#112f46;font-family:var(--font-display);font-size:clamp(1.8rem,3vw,2.65rem);line-height:1.02}.forcing-primer header p{max-width:680px;margin:0;color:#556875;font-size:.92rem;line-height:1.55}.forcing-primer-progress{display:flex;gap:5px;flex:0 0 auto}.forcing-primer-progress i{display:grid;width:27px;height:27px;place-items:center;border:1px solid #c9c2b6;border-radius:50%;background:#f7f3eb;color:#8a8378;font-family:var(--font-sans);font-size:.62rem;font-style:normal;font-weight:800;transition:color .18s ease,border-color .18s ease,background .18s ease}.forcing-primer-progress i.filled{border-color:#a7673d;background:#a7673d;color:#fffaf3}.forcing-primer-workspace{animation:forcing-primer-enter .26s ease both}.forcing-primer-stage{display:grid;grid-template-columns:minmax(350px,1.12fr) minmax(240px,.88fr);align-items:center;gap:clamp(18px,3vw,34px);overflow:hidden;padding:clamp(15px,2.5vw,26px);border:1px solid #d9d0c2;border-radius:5px;background:linear-gradient(rgba(26,55,75,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(26,55,75,.035) 1px,transparent 1px),#f6f1e8;background-size:24px 24px;box-shadow:0 18px 46px #18304017}.forcing-primer-stage .lesson-board-figure{width:min(100%,440px);justify-self:center}.forcing-primer-stage .lesson-board-frame{box-shadow:8px 9px #74563d1c}.forcing-primer-stage .lesson-board-cell:not(.pattern):not(.related):not(.selected):not(.conclusion){background:#ffffffc7}.forcing-branch-lab{position:relative;display:grid;gap:13px;min-width:0;padding:16px;border:1px solid #bcb2a5;border-left:4px solid #a7673d;border-radius:2px;background:#fffdf8f5;box-shadow:8px 9px #74563d1a}.forcing-branch-lab:after{position:absolute;top:7px;right:7px;bottom:7px;left:7px;border:1px solid rgba(167,103,61,.12);content:"";pointer-events:none}.forcing-branch-lab-heading,.forcing-branch-lab-heading>span{display:flex;align-items:center}.forcing-branch-lab-heading{position:relative;z-index:1;justify-content:space-between;gap:12px;padding-bottom:10px;border-bottom:1px solid #d8d0c4}.forcing-branch-lab-heading>span{gap:7px;color:#233f52;font-size:.57rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.forcing-branch-lab-heading svg{width:15px;color:#a7673d}.forcing-branch-lab-heading em{color:#776e63;font-family:var(--font-mono);font-size:.58rem;font-style:normal;font-weight:700}.forcing-source-card{position:relative;z-index:1;display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:10px;padding:9px 11px;border:1px solid #d8c8b7;background:#fffaf2}.forcing-source-card small{color:#817568;font-size:.47rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.forcing-source-card strong{color:#17374c;font-family:var(--font-mono);font-size:.66rem}.forcing-source-card>span{display:flex;gap:4px}.forcing-source-card i{display:grid;width:24px;height:24px;place-items:center;border:1px solid #c49a7b;background:#f6e5d4;color:#754528;font-family:var(--font-display);font-size:.8rem;font-style:normal;font-weight:800}.forcing-source-card>svg{width:18px;color:#a7673d}.forcing-branch-sheets{position:relative;z-index:1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.forcing-branch-sheet{display:grid;grid-template-rows:auto 1fr auto;min-width:0;min-height:238px;overflow:hidden;border:1px solid #cfc6ba;background:#fff;opacity:.66;transform:translate(0);transition:opacity .22s ease,transform .22s ease,border-color .22s ease}.forcing-branch-sheet.branch-a{transform:rotate(-.6deg)}.forcing-branch-sheet.branch-b{transform:rotate(.6deg)}.forcing-branch-sheet.is-testing,.forcing-branch-sheet.is-contradiction,.forcing-branch-sheet.is-survives{opacity:1}.forcing-branch-sheet.is-testing{border-color:#ad7753}.forcing-branch-sheet.is-contradiction{border-color:#b55a4e;background:#fff9f7}.forcing-branch-sheet.is-survives{border-color:#698674;background:#f8fcf8}.forcing-branch-sheet>header{display:grid;grid-template-columns:1fr auto;gap:3px 8px;padding:10px;border-bottom:1px solid #ded7ce;background:#f5f1eb}.forcing-branch-sheet>header span{color:#786e63;font-size:.48rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.forcing-branch-sheet>header strong{grid-column:1 / -1;color:#17374c;font-family:var(--font-mono);font-size:.7rem}.forcing-branch-sheet>header em{grid-column:2;grid-row:1;color:#9a6a48;font-size:.47rem;font-style:normal;font-weight:800;text-transform:uppercase}.forcing-branch-sheet ol{display:grid;align-content:start;gap:6px;margin:0;padding:10px;list-style:none}.forcing-branch-sheet li{display:grid;grid-template-columns:18px minmax(0,1fr);gap:7px;align-items:start;color:#aaa198;font-size:.56rem;line-height:1.35}.forcing-branch-sheet li.visible{color:#415461;animation:forcing-fact-stamp .23s ease both}.forcing-branch-sheet li i{display:grid;width:18px;height:18px;place-items:center;border:1px solid currentColor;border-radius:50%;font-size:.45rem;font-style:normal;font-weight:900}.forcing-branch-sheet>footer{display:flex;gap:6px;align-items:center;min-height:38px;padding:8px 10px;border-top:1px dashed #d8d0c6;color:#877c70;font-size:.52rem;line-height:1.3}.forcing-branch-sheet>footer svg{width:15px;flex:0 0 auto}.forcing-branch-sheet.is-contradiction>footer{color:#9d3f38}.forcing-branch-sheet.is-survives>footer{color:#416b53}.forcing-comparison-tray{position:relative;z-index:1;display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:10px 12px;border:1px solid #b8aa9b;background:#f0e9df;color:#5f574e;animation:forcing-tray-enter .26s ease both}.forcing-comparison-tray>svg{width:18px;color:#a7673d}.forcing-comparison-tray>span{display:grid;gap:2px}.forcing-comparison-tray small{color:#87796c;font-size:.46rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.forcing-comparison-tray strong{color:#243f51;font-size:.65rem}.forcing-comparison-tray.is-commit{border-color:#5f806b;background:#edf4ee}.forcing-comparison-tray.is-commit>svg:last-child{color:#47715a}.forcing-primer-action{display:grid;grid-template-columns:minmax(235px,.75fr) minmax(0,1.25fr);gap:24px;align-items:start;padding:18px 20px;border:1px solid #d7cfc3;border-top:0;background:#fffdf8}.forcing-primer-action-copy{display:grid;gap:5px}.forcing-primer-action-copy>strong{color:#17374c;font-size:.84rem;line-height:1.35}.forcing-primer-action-copy>span{color:#7b7167;font-size:.65rem}.forcing-primer-action-copy>p{display:flex;gap:7px;align-items:flex-start;margin:5px 0 0;font-size:.7rem;line-height:1.4}.forcing-primer-action-copy>p.correct{color:#3f7458}.forcing-primer-action-copy>p.wrong{color:#a3443e}.forcing-primer-action-copy>p svg{width:15px;flex:0 0 auto}.forcing-primer-controls{display:grid;gap:10px}.forcing-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.forcing-choice-grid button{display:grid;grid-template-columns:auto 1fr;gap:7px;align-items:start;min-height:62px;padding:9px;border:1px solid #d2c9bd;border-radius:3px;background:#fff;color:#334c5d;text-align:left;font:inherit;font-size:.65rem;line-height:1.35;cursor:pointer}.forcing-choice-grid button>span{display:grid;width:19px;height:19px;place-items:center;border:1px solid #b9aa9b;border-radius:50%;color:#8c6549;font-size:.48rem;font-weight:900}.forcing-choice-grid button:hover,.forcing-choice-grid button:focus-visible{border-color:#9b6947;transform:translateY(-1px)}.forcing-choice-grid button.correct{border-color:#5c806a;background:#edf4ee;color:#2e624b}.forcing-choice-grid button.wrong{border-color:#b95a52;background:#fbefec;color:#963d37}.forcing-primer-controls>.button{justify-self:end}.forcing-primer-check-button:disabled{opacity:.45}@keyframes forcing-primer-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes forcing-fact-stamp{0%{opacity:.35;transform:translateY(5px) rotate(-1deg)}to{opacity:1;transform:translateY(0) rotate(0)}}@keyframes forcing-tray-enter{0%{opacity:0;transform:translateY(-7px)}to{opacity:1;transform:translateY(0)}}@media(max-width:1080px){.forcing-primer-stage{grid-template-columns:minmax(330px,1.05fr) minmax(230px,.95fr);gap:18px}.forcing-branch-lab{padding:13px}.forcing-branch-sheet{min-height:226px}}@media(max-width:840px){.forcing-primer-stage{grid-template-columns:minmax(0,1fr)}.forcing-branch-lab{order:2}.forcing-primer-stage .lesson-board-figure{width:min(100%,390px)}.forcing-primer-action{grid-template-columns:minmax(0,1fr)}}@media(max-width:560px){.forcing-primer>header{align-items:start;margin-bottom:10px}.forcing-primer h2{margin-block:3px 5px;font-size:1.55rem}.forcing-primer header p{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:5}.forcing-primer-progress{gap:3px}.forcing-primer-progress i{width:23px;height:23px}.forcing-primer-stage{padding:10px 8px 14px}.forcing-branch-lab{padding:11px;border-left-width:3px;box-shadow:6px 6px #74563d1a}.forcing-branch-sheets{grid-template-columns:minmax(0,1fr)}.forcing-branch-sheet{min-height:0;transform:none}.forcing-branch-sheet ol{min-height:82px}.forcing-primer-action{padding:16px 0 0;border-right:0;border-bottom:0;border-left:0}.forcing-choice-grid{grid-template-columns:minmax(0,1fr)}.forcing-primer-controls>.button{width:100%;justify-self:stretch}}@media(max-width:390px){.forcing-branch-lab-heading{align-items:flex-start}.forcing-branch-lab-heading em{max-width:110px;text-align:right}.forcing-source-card{grid-template-columns:1fr auto auto}.forcing-source-card small{grid-column:1 / -1}}@media(prefers-reduced-motion:reduce){.forcing-primer-workspace,.forcing-branch-sheet li.visible,.forcing-comparison-tray{animation:none}.forcing-branch-sheet{transition:none}}@keyframes rules-primer-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(max-width:880px){.rules-primer-workspace{grid-template-columns:1fr}.rules-visual{min-height:390px}.rules-primer-action{padding:24px;border-top:1px solid var(--line);border-left:0}}@media(max-width:520px){.rules-primer>header{flex-direction:column}.rules-primer-workspace,.rules-visual{min-height:330px}.rules-target-square{width:135px;height:135px}.rules-number-range span{width:24px;height:24px;font-size:.55rem}.rules-unit-stage .lesson-unit-visual.is-column{width:34px}.rules-unit-stage .lesson-unit-visual.is-box{width:260px}.rules-overlap{width:min(250px,calc(100vw - 100px))}}@media(prefers-reduced-motion:reduce){.rules-primer-workspace{animation:none}}.practice-heading{margin-bottom:22px;display:flex;justify-content:space-between;gap:20px}.lesson-practice-prompt{scroll-margin-top:16px}.practice-heading p{max-width:700px;margin:0;font-size:.76rem}.practice-progress{min-width:95px;padding-top:7px;display:flex;gap:4px}.practice-progress i{width:17px;height:4px;background:#ddd9d0}.practice-progress i.filled{background:var(--saffron)}.practice-response{min-width:0;container-type:inline-size}.practice-response .lesson-choice-grid{margin-top:0}.practice-response .lesson-choice-grid button:disabled{color:inherit;cursor:default}@container (min-width: 540px){.practice-response .lesson-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.practice-response .lesson-choice-grid button{min-width:0;height:100%}}.cell-task-callout{padding:20px;border:1px solid #d7e1d1;background:#f1f5ed}.cell-task-callout svg{width:20px;color:var(--sage-dark)}.cell-task-callout h3{margin:7px 0 4px}.cell-task-callout p{margin:0;font-size:.7rem}.process-feedback{min-height:112px;margin-top:16px;padding:15px;display:grid;grid-template-columns:58px 1fr;gap:12px;align-items:center;border:1px solid var(--line);background:#f8f5ed}.process-feedback.wrong{border-color:#e5b8af;background:#fcf0ed}.process-feedback.correct{border-color:#b9cdb4;background:#eef5ea}.process-feedback .mascot{width:58px;height:70px}.process-feedback p{margin:0;display:flex;flex-direction:column;gap:4px}.process-feedback strong{font-family:var(--serif);font-size:.84rem}.process-feedback span,.process-feedback em{color:var(--muted);font-size:.64rem;line-height:1.45}.process-feedback em{color:var(--ink);font-style:normal}.lesson-hint{margin-top:10px;padding:11px 12px;display:flex;align-items:center;gap:8px;border-left:3px solid var(--saffron);background:#fff8e7;font-size:.68rem;line-height:1.5}.lesson-hint svg,.hint-button svg{flex:0 0 auto;width:15px}.hint-button{margin-top:12px;display:inline-flex;align-items:center;gap:5px}.practice-next-action{margin-top:16px;padding-top:15px;display:flex;flex-wrap:wrap;gap:8px;border-top:1px solid var(--line)}.completion-celebration{position:relative;isolation:isolate;width:190px;height:160px;margin:-10px auto 20px;display:grid;place-items:center}.completion-glow{position:absolute;z-index:-2;width:170px;height:170px;border-radius:50%;background:radial-gradient(circle,rgba(138,171,132,.34) 0 34%,rgba(138,171,132,.12) 53%,transparent 72%);animation:completion-glow-arrive .9s cubic-bezier(.05,.7,.1,1) both}.completion-sparks{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none}.completion-sparks i{--spark-angle: 0deg;--spark-distance: -70px;position:absolute;top:50%;left:50%;width:5px;height:15px;border-radius:999px;background:var(--sage-dark);box-shadow:0 0 0 4px #8aab841f;opacity:0;transform-origin:50% 50%;animation:completion-spark-bloom 1.2s cubic-bezier(.05,.7,.1,1) both}.completion-sparks i:nth-child(1){--spark-angle: 0deg;--spark-distance: -72px}.completion-sparks i:nth-child(2){--spark-angle: 45deg;--spark-distance: -78px;animation-delay:45ms}.completion-sparks i:nth-child(3){--spark-angle: 90deg;--spark-distance: -68px;animation-delay:90ms}.completion-sparks i:nth-child(4){--spark-angle: 135deg;--spark-distance: -76px;animation-delay:30ms}.completion-sparks i:nth-child(5){--spark-angle: 180deg;--spark-distance: -72px;animation-delay:75ms}.completion-sparks i:nth-child(6){--spark-angle: 225deg;--spark-distance: -80px;animation-delay:15ms}.completion-sparks i:nth-child(7){--spark-angle: 270deg;--spark-distance: -69px;animation-delay:105ms}.completion-sparks i:nth-child(8){--spark-angle: 315deg;--spark-distance: -77px;animation-delay:60ms}.evidence-complete .completion-celebration .mascot{position:relative;z-index:1;width:135px;height:150px;margin:0 auto;filter:drop-shadow(0 10px 16px rgba(16,42,67,.12));animation:completion-mascot-arrive .7s 80ms cubic-bezier(.05,.7,.1,1) both}@keyframes completion-mascot-arrive{0%{opacity:0;transform:translateY(12px) scale(.92)}65%{opacity:1;transform:translateY(-2px) scale(1.025)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes completion-glow-arrive{0%{opacity:0;transform:scale(.62)}62%{opacity:1;transform:scale(1.08)}to{opacity:.78;transform:scale(1)}}@keyframes completion-spark-bloom{0%{opacity:0;transform:translate(-50%,-50%) rotate(var(--spark-angle)) translateY(-24px) scale(.3)}18%{opacity:.95}72%{opacity:.72;transform:translate(-50%,-50%) rotate(var(--spark-angle)) translateY(var(--spark-distance)) scale(1)}to{opacity:0;transform:translate(-50%,-50%) rotate(var(--spark-angle)) translateY(calc(var(--spark-distance) - 9px)) scale(.55)}}@media(prefers-reduced-motion:reduce){.completion-sparks{display:none}.completion-glow,.evidence-complete .completion-celebration .mascot{animation:none}.completion-glow{opacity:.6}}@media(max-width:980px){.pedagogy-layout{grid-template-columns:145px minmax(0,1fr);gap:20px}.pedagogy-content{padding:30px}.pedagogy-overview,.model-stage,.practice-workspace{grid-template-columns:1fr}.lesson-poster-visual{grid-template-columns:minmax(230px,340px) minmax(130px,1fr);gap:18px}.proof-narration{border-left:0;border-top:3px solid var(--saffron)}}@media(max-width:680px){.pedagogy-layout{display:block}.pedagogy-layout>.lesson-steps{position:static;margin-bottom:12px;display:grid;grid-template-columns:repeat(4,1fr);gap:4px}.pedagogy-layout>.lesson-steps>.eyebrow,.pedagogy-layout>.lesson-steps>.lesson-outcome{display:none}.pedagogy-layout>.lesson-steps>button{min-height:64px;padding:4px 2px 2px;flex-direction:column;justify-content:flex-start;align-items:center;gap:4px;font-size:.55rem;text-align:center}.pedagogy-layout>.lesson-steps>button span{width:100%;line-height:1.25;text-align:center}.pedagogy-content{min-height:0;padding:20px 16px 26px;scroll-margin-top:66px}.lesson-content-header,.practice-heading{flex-direction:column}.lesson-content-header{margin-bottom:22px}.lesson-prose h2{margin-bottom:16px}.pedagogy-overview{gap:25px}.lesson-poster{padding:17px 17px 16px;border-radius:16px}.lesson-poster-copy h1,.lesson-complete .lesson-poster-copy h1{font-size:clamp(2.05rem,11vw,2.75rem)}.lesson-poster-copy p,.lesson-complete .lesson-poster-copy p{margin-top:10px;font-size:.72rem}.lesson-poster-visual{min-height:205px;grid-template-columns:minmax(0,1fr) 98px;gap:8px}.lesson-poster .lesson-board-figure{width:min(100%,235px);margin-top:8px}.lesson-poster .lesson-board-frame{--lesson-axis-size: 11px}.lesson-poster .lesson-board-figure figcaption{margin-left:11px;font-size:.5rem;line-height:1.35}.lesson-poster-mascot{min-height:190px}.lesson-poster-mascot .mascot,.lesson-complete .lesson-poster-mascot .mascot{width:112px;height:177px}.lesson-poster-glow{bottom:10px;width:125px;height:125px}.lesson-poster-spark-one{top:16px;right:3px}.lesson-poster-spark-two{top:48px}.lesson-poster-stats{margin-top:13px;padding-top:13px}.lesson-poster-stats>div{padding-inline:8px}.lesson-poster-stats dt{font-size:.47rem;letter-spacing:.04em}.lesson-poster-stats dd{font-size:.86rem}.overview-actions{margin-top:24px}.evidence-complete .completion-celebration{margin-bottom:16px}.evidence-complete>.eyebrow{margin-bottom:20px}.evidence-complete h2{margin-bottom:20px}.lesson-complete.evidence-complete>p{margin-bottom:32px}.lesson-completion-actions{margin-top:24px;flex-direction:column;gap:12px}.lesson-completion-actions .button,.lesson-share-control{width:100%}.lesson-share-status{max-width:none}.evidence-badge,.lesson-board{width:100%}.lesson-board-cell>small{display:none}.lesson-candidates i{font-size:clamp(.31rem,1.9vw,.52rem)}.practice-progress{padding-top:0}.process-feedback{grid-template-columns:48px 1fr}.process-feedback .mascot{width:48px;height:58px}.practice-next-action .button{width:100%}.review-queue{align-items:stretch;flex-direction:column}.review-queue>div:last-child{justify-content:flex-start}}.review-heading .mascot{width:92px;height:102px}.review-summary{margin:16px 0;padding:22px 28px;display:grid;grid-template-columns:repeat(4,1fr) 125px;align-items:center;border:1px solid var(--line);border-radius:8px}.review-summary>div:not(.progress-ring){min-height:50px;padding-left:22px;border-left:1px solid var(--line);display:flex;flex-direction:column;gap:6px}.review-summary>div:first-child{border-left:0;padding-left:0}.review-summary span{color:var(--muted);font-size:.65rem}.review-summary strong{font-family:var(--serif);font-size:1.25rem}.puzzle-share-strip{margin:16px 0;padding:22px 28px;display:flex;align-items:center;justify-content:space-between;gap:28px;border:1px solid #b9cdb4;border-radius:8px;background:var(--sage-soft)}.puzzle-share-strip h2{margin:3px 0 5px;font-size:1.45rem}.puzzle-share-strip p{max-width:620px;margin:0;color:var(--muted)}.puzzle-share-control{min-width:210px;justify-items:end}.puzzle-share-button{white-space:nowrap}.review-grid{display:grid;grid-template-columns:1fr 330px;gap:16px}.review-mistakes,.technique-review{padding:26px;border:1px solid var(--line);border-radius:8px}.review-mistakes article{margin-top:18px;padding:18px;display:grid;grid-template-columns:27px 1fr 25px;gap:13px;background:#fbf1ee;border:1px solid #efd4cf;border-radius:5px}.review-mistakes article>i{width:24px;height:24px;display:grid;place-items:center;border-radius:50%;background:var(--coral);color:#fff;font-style:normal;font-size:.67rem}.review-mistakes h3{margin:0 0 5px;font-size:.96rem}.review-mistakes p{margin-bottom:10px;font-size:.69rem}.free-mistake-summary{margin:0 0 16px;padding:14px 16px;border-left:3px solid var(--saffron);background:#fff9e9;color:var(--ink);line-height:1.6}.review-mistakes .text-button{font-size:.66rem}.mistake-mark{color:var(--coral)}.mistake-mark svg{width:16px}.technique-review>.eyebrow{margin-bottom:16px}.technique-review>div:not(.coach-summary){padding:9px 0;display:grid;grid-template-columns:22px 1fr auto;align-items:center;border-bottom:1px solid #eee9df;font-size:.74rem}.technique-review>div svg{width:16px;color:#bcc1bd}.technique-review>div svg.complete{color:var(--sage-dark)}.technique-review small{color:var(--muted);font-size:.59rem}.coach-summary{margin-top:22px;display:flex;align-items:center;gap:10px}.coach-summary .mascot{width:70px;height:75px}.coach-summary p{margin:0;display:flex;flex-direction:column}.coach-summary strong{font-family:var(--serif);font-size:.82rem}.coach-summary span{color:var(--muted);font-size:.63rem;line-height:1.45}.review-next{margin-top:16px;padding:26px 30px;display:flex;align-items:center;justify-content:space-between;gap:30px;background:var(--ink);color:#fff;border-radius:8px}.review-next .eyebrow{color:#b9ceb9}.review-next h2{margin-bottom:6px}.review-next p{margin:0;color:#cad3da;font-size:.76rem}.review-next>div:last-child{display:flex;gap:8px}.review-next .button-outline{border-color:#fff;color:#fff}.empty-progress{min-height:330px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.empty-progress img{width:170px;height:160px;margin-bottom:12px;border-radius:32px;-o-object-fit:contain;object-fit:contain}.empty-progress p{max-width:330px;font-size:.75rem}.history-gate{margin-top:18px;padding:16px;display:grid;grid-template-columns:25px 1fr auto;align-items:center;gap:12px;border:1px solid #d9c98d;background:#fff8e5;border-radius:5px}.history-gate>svg{width:17px;color:#8a6715}.history-gate p{margin:0;display:flex;flex-direction:column}.history-gate strong{color:var(--ink);font-family:var(--serif);font-size:.8rem}.history-gate span{color:var(--muted);font-size:.62rem}.upgrade-page{min-height:100vh;background:radial-gradient(circle at 50% 30%,#eef1e8,transparent 30%),var(--ivory)}.upgrade-page:before{content:"";position:fixed;z-index:1000;inset:0 0 auto;height:var(--safe-area-top);background:var(--ivory);pointer-events:none}.upgrade-main{width:min(940px,calc(100% - 40px));margin:0 auto;padding:40px 0 55px}.upgrade-heading{max-width:670px;margin:0 auto 38px;text-align:center}.upgrade-heading h1{margin-bottom:15px;font-size:clamp(2.7rem,5vw,4.2rem)}.upgrade-heading p{margin:0}.pricing-grid{max-width:620px;margin:0 auto;display:grid;grid-template-columns:1fr}.price-plan{min-height:0;position:relative;padding:38px;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:8px;background:#fffdf8e0}.price-plan.featured{border-color:#d99917;box-shadow:0 18px 45px #6a4c0b1a}.price-owl{position:absolute;right:25px;top:25px;width:100px;height:120px}.price-owl .mascot{width:100%;height:100%}.plan-name{font-family:var(--serif);font-size:1.25rem}.price-plan h2{margin:7px 0;font-size:2.4rem}.price-plan h2 small{font-family:sans-serif;color:var(--muted);font-size:.7rem;font-weight:500}.price-plan .store-price-pending{max-width:230px;margin-block:14px;font-size:1.45rem;line-height:1.15}.price-plan>p{margin-bottom:22px;font-size:.75rem}.price-plan ul{margin:0 0 28px;padding:0;list-style:none;display:flex;flex-direction:column;gap:12px}.price-plan li{display:flex;align-items:center;gap:9px;font-size:.76rem}.price-plan li svg{width:15px;color:var(--sage-dark);stroke-width:3}.price-plan>.button{margin-top:8px}.price-plan>.restore-purchases{min-height:44px;margin:14px auto 0}.plan-active-status{min-height:47px;margin-top:8px;padding:0 4px;display:flex;align-items:center;justify-content:center;gap:9px;color:var(--sage-dark);font-size:.9rem;font-weight:720}.plan-active-status svg{flex:0 0 auto;stroke-width:2.4}.checkout-status{max-width:650px;margin:18px auto 0;padding:12px 15px;border:1px solid #dfcf9f;background:#fff8e5;border-radius:4px;text-align:center;font-size:.74rem}.checkout-trust{margin-top:25px;display:flex;justify-content:center;gap:35px;color:var(--muted);font-size:.65rem}.checkout-trust span{display:flex;align-items:center;gap:6px}.checkout-trust svg{width:16px}.price-plan>.checkout-status{max-width:none;margin:16px 0 0}.upgrade-auth{max-width:none;margin-top:2px;padding-top:18px;border-top:1px solid var(--line)}.upgrade-auth-switch{margin:0 0 14px;color:var(--muted);font-size:.7rem;text-align:right}.upgrade-auth-switch .text-button{min-height:36px;margin:-8px -8px -8px 0;padding-inline:8px}.upgrade-auth form{gap:13px}.upgrade-auth form>.button{min-height:50px;margin-top:2px;padding-inline:18px;text-align:center}.upgrade-auth .password-recovery-note{margin-top:14px;text-align:center}.upgrade-free-path{max-width:650px;margin:28px auto 0;padding-top:22px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-top:1px solid var(--line)}.upgrade-free-path p,.upgrade-free-path strong,.upgrade-free-path span{display:block}.upgrade-free-path p{margin:0}.upgrade-free-path strong{margin-bottom:3px;color:var(--ink);font-family:var(--serif);font-size:.86rem}.upgrade-free-path span{color:var(--muted);font-size:.69rem}.upgrade-free-path .text-link{flex:0 0 auto}.native-purchase-terms{max-width:760px;margin:32px auto 0}.settings-page>:not(.app-page-header):not(.sr-only){width:min(100%,720px)}.account-page>:not(.app-page-header):not(.sr-only){width:min(100%,780px)}.notebook-callout{margin-top:16px;padding:18px 20px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;border:1px solid color-mix(in srgb,var(--sage-dark) 22%,var(--line));border-radius:10px;background:var(--sage-soft);color:var(--ink);transition:border-color .15s ease,background-color .15s ease,transform .15s var(--ease-out-ui)}.notebook-callout-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:var(--sage);color:var(--sage-dark)}.notebook-callout>svg,.notebook-count svg{color:var(--sage-dark)}.notebook-callout .eyebrow{margin-bottom:3px}.notebook-callout h2{margin:0;font-family:var(--serif);font-size:1rem;line-height:1.25;letter-spacing:-.015em}.notebook-callout small{display:block;margin-top:4px;color:var(--muted);font-size:.7rem;line-height:1.4}.notebook-callout>svg{color:var(--sage-dark);transition:transform .15s var(--ease-out-ui)}@media(hover:hover)and (pointer:fine){.notebook-callout:hover{border-color:color-mix(in srgb,var(--sage-dark) 42%,var(--line));background:color-mix(in srgb,var(--sage-soft) 82%,var(--sage));transform:translateY(-1px)}.notebook-callout:hover>svg{transform:translate(3px)}}.notebook-count{padding:10px 14px;display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:99px;background:var(--paper);font-size:.76rem;font-weight:700}.practice-layout{display:grid;grid-template-columns:minmax(420px,590px) minmax(260px,340px);align-items:start;gap:42px}.practice-board .sudoku-board{width:100%}.practice-prompt,.notebook-gate{padding:28px;border:1px solid var(--line);border-radius:8px;background:var(--paper);box-shadow:var(--shadow)}.practice-prompt .mascot,.notebook-gate .mascot{width:105px;height:115px;margin:-14px auto 10px}.practice-prompt h2{margin-bottom:10px}.practice-prompt p{font-size:.84rem}.practice-prompt.correct{border-color:#9eb89f}.practice-prompt.wrong{border-color:#d19b94}.notebook-gate{max-width:650px;margin:55px auto;text-align:center}.notebook-gate .eyebrow{margin-bottom:8px}.notebook-gate h1{margin-bottom:14px;font-size:clamp(2.2rem,5vw,3.8rem)}.notebook-gate p{max-width:540px;margin:0 auto 22px}.settings-section{min-width:0;max-width:100%;margin-bottom:20px;padding:26px;border:1px solid var(--line);border-radius:8px}.settings-section>h2{margin-bottom:18px}.settings-group{padding:0 0 32px;border-bottom:1px solid var(--line)}.settings-group+.settings-group{padding-top:32px}.settings-group>h2{margin-bottom:8px;font-size:1.45rem}.coach-preference{padding:20px 0 22px;border-top:1px solid #ebe6dd}.coach-preference>strong,.coach-preference>span{display:block}.coach-preference>strong{font-family:var(--serif);font-size:.9rem}.coach-preference>span{margin-top:3px;color:var(--muted);font-size:.67rem}.segmented-control{margin-top:12px;display:inline-grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);border-radius:5px;overflow:hidden}.segmented-control button{min-height:36px;padding:0 14px;border:0;border-right:1px solid var(--line);background:var(--paper);text-transform:capitalize;font-size:.72rem;cursor:pointer}.segmented-control button:last-child{border-right:0}.segmented-control button.active{background:var(--ink);color:#fff}.setting-row{min-height:76px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:center;border-top:1px solid #ebe6dd}.setting-row p{margin:0;display:flex;flex-direction:column}.setting-row strong{color:var(--ink);font-family:var(--serif);font-size:.9rem}.setting-row span{color:var(--muted);font-size:.67rem}.toggle{width:42px;height:24px;padding:2px;border:0;border-radius:13px;background:#c9cbc8;cursor:pointer;transition:background .2s ease}.toggle i{display:block;width:20px;height:20px;border-radius:50%;background:#fff;transition:transform .2s ease;box-shadow:0 1px 3px #0000002e}.toggle.on{background:var(--sage-dark)}.toggle.on i{transform:translate(18px)}.local-data-settings>div{max-width:590px}.local-data-settings p{margin:0 0 12px;font-size:.75rem}.account-summary{margin-bottom:22px;padding:22px 24px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:24px;border:1px solid color-mix(in srgb,var(--sage-dark) 24%,var(--line));border-radius:12px;background:var(--sage-soft)}.account-summary-identity,.account-summary-state,.account-sync-state{display:flex;align-items:center}.account-summary-identity{min-width:0;gap:14px}.account-avatar{width:44px;height:44px;display:grid;flex:0 0 auto;border-radius:50%;background:color-mix(in srgb,var(--sage) 64%,white);color:var(--sage-dark);place-items:center}.account-avatar svg{width:23px;height:23px}.account-summary h2,.account-summary p{margin:0;overflow-wrap:anywhere}.account-summary h2{font-size:1.08rem;line-height:1.25}.account-summary p{margin-top:3px;color:var(--muted);font-size:.69rem}.account-summary-state{flex:0 0 auto;flex-direction:column;align-items:flex-end;gap:9px}.account-plan-badge{padding:5px 9px;border:1px solid color-mix(in srgb,var(--sage-dark) 24%,transparent);border-radius:999px;background:color-mix(in srgb,var(--paper) 80%,transparent);color:var(--sage-dark);font-size:.65rem;font-weight:800}.account-sync-state{gap:7px;color:var(--sage-dark)}.account-sync-state>svg{width:17px;height:17px}.account-sync-state span,.account-sync-state strong,.account-sync-state small{display:block}.account-sync-state strong{font-size:.68rem}.account-sync-state small{margin-top:1px;color:var(--muted);font-size:.58rem}.account-settings-list{margin-bottom:22px;border-block:1px solid var(--line)}.account-setting-group{border-bottom:1px solid var(--line)}.account-setting-group:last-child{border-bottom:0}.account-setting-group>summary{min-height:92px;display:grid;grid-template-columns:42px minmax(0,1fr) minmax(90px,auto) 20px;align-items:center;gap:14px;cursor:pointer;list-style:none}.account-setting-group>summary::-webkit-details-marker{display:none}.account-setting-group>summary:focus-visible{outline:3px solid rgba(71,114,90,.18);outline-offset:4px}.account-setting-icon{width:38px;height:38px;display:grid;border-radius:50%;background:var(--sage-soft);color:var(--sage-dark);place-items:center}.account-setting-icon svg{width:19px;height:19px}.account-setting-copy,.account-setting-copy strong,.account-setting-copy small{display:block;min-width:0}.account-setting-copy strong{font-family:var(--serif);font-size:.95rem}.account-setting-copy small{margin-top:4px;color:var(--muted);font-size:.65rem;line-height:1.4}.account-setting-value{max-width:210px;color:var(--muted);font-size:.67rem;text-align:right}.account-setting-group>summary>svg{width:18px;color:var(--muted);transition:transform .16s ease}.account-setting-group[open]>summary>svg{transform:rotate(90deg)}.account-setting-content{padding:0 0 24px 56px}.account-setting-content .account-data-block{padding-top:20px}.account-plan-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px}.account-plan-offer{width:100%;padding:19px 20px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:24px;border:1px solid #e4c36c;border-radius:9px;background:#fff8e4}.account-action-kicker{display:flex;align-items:center;gap:7px;color:#825f08;font-size:.67rem;font-weight:800}.account-action-kicker svg{width:16px;height:16px}.account-plan-offer p{max-width:470px;margin:6px 0 0;color:var(--ink);font-size:.72rem;line-height:1.5}.account-plan-offer .button{flex:0 0 auto;white-space:nowrap}.account-plan-offer .button svg{width:17px;height:17px}.account-plan-actions .checkout-status{flex-basis:100%}.account-export-panel{padding:18px 20px;display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:14px;border:1px solid var(--line);border-radius:9px;background:color-mix(in srgb,var(--paper) 84%,var(--sage-soft))}.account-export-icon{width:38px;height:38px;display:grid;border-radius:50%;background:var(--sage-soft);color:var(--sage-dark);place-items:center}.account-export-icon svg{width:19px;height:19px}.account-export-panel h2,.account-export-panel p{margin:0}.account-export-panel h2{font-size:.94rem}.account-export-panel p{margin-top:4px;color:var(--muted);font-size:.67rem;line-height:1.45}.account-export-panel .button{min-width:160px;white-space:nowrap}.account-export-panel .button svg{width:17px;height:17px}.account-session-actions{padding:4px 2px 30px;display:flex;align-items:center;justify-content:space-between}.account-session-actions .text-button{display:inline-flex;align-items:center;gap:8px}.account-session-actions svg{width:17px;height:17px}.account-delete-trigger{color:#9b4439}.account-dialog-backdrop{position:fixed;z-index:1000;top:0;right:0;bottom:0;left:0;padding:24px;display:grid;overflow-y:auto;background:#081c2a8c;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);place-items:center}.account-delete-dialog{width:min(100%,500px);padding:30px;border:1px solid #dfb5ae;border-radius:14px;background:var(--paper);box-shadow:0 28px 80px #0d2d4440}.account-dialog-icon{width:42px;height:42px;display:grid;margin-bottom:16px;border-radius:50%;background:#fff0ed;color:#a1463b;place-items:center}.account-dialog-icon svg{width:21px}.account-delete-dialog h2{margin:0;font-size:1.4rem}.account-delete-dialog>p{margin:10px 0 20px;color:var(--muted);font-size:.74rem}.account-delete-form{display:grid;gap:20px}.account-delete-form .password-field{display:grid;gap:7px;font-size:.74rem;font-weight:700}.account-delete-form input{width:100%;min-height:46px;padding:0 48px 0 12px;border:1px solid var(--line);border-radius:5px;background:#fff;font:inherit}.account-dialog-actions{display:flex;justify-content:flex-end;gap:10px}.button-danger{border-color:#9b4439;background:#9b4439;color:#fff}.button-danger:hover:not(:disabled){border-color:#84372f;background:#84372f}.account-dialog-cancel{margin-top:16px}.account-page-status{max-width:none;margin:0 0 20px}.checkout-confirmation{margin-bottom:20px;padding:22px 24px;display:flex;align-items:center;justify-content:space-between;gap:24px;border:1px solid #d9c27d;border-radius:8px;background:#fff8e5}.checkout-confirmation.active{border-color:#adc2a9;background:#f1f5ee}.checkout-confirmation>div:first-child{min-width:0;display:flex;align-items:flex-start;gap:12px}.checkout-confirmation>div:first-child>svg{flex:0 0 auto;color:var(--sage-dark)}.checkout-confirmation h2,.checkout-confirmation p{margin:0}.checkout-confirmation h2{font-size:1.05rem}.checkout-confirmation p{margin-top:4px;font-size:.72rem}.checkout-confirmation-actions{flex:0 0 auto;display:flex;align-items:center;gap:14px}.checkout-auto-return{flex:0 0 auto;color:var(--sage-dark);font-size:.72rem;font-weight:750}.spinning{animation:spin 1.2s linear infinite}.account-data-disclosure{padding:0;overflow:hidden}.account-data-disclosure>summary{min-height:88px;padding:22px 26px;display:flex;align-items:center;justify-content:space-between;gap:18px;cursor:pointer;list-style:none}.account-data-disclosure>summary::-webkit-details-marker{display:none}.account-data-disclosure>summary span,.account-data-disclosure>summary strong,.account-data-disclosure>summary small{display:block}.account-data-disclosure>summary strong{font-family:var(--serif);font-size:1rem}.account-data-disclosure>summary small{margin-top:4px;color:var(--muted);font-size:.67rem}.account-data-disclosure>summary>svg{flex:0 0 auto;transition:transform .16s ease}.account-data-disclosure[open]>summary>svg{transform:rotate(90deg)}.account-data-disclosure>summary:focus-visible{outline:3px solid rgba(71,114,90,.18);outline-offset:-3px}.account-data-content{padding:0 26px;border-top:1px solid var(--line)}.account-data-block{max-width:none;padding:26px 0}.account-data-block+.account-data-block{border-top:1px solid var(--line)}.account-data-block>h2,.account-data-block form>h2{margin-bottom:8px;font-size:1.15rem}.account-data-block>p,.account-data-block form>p{margin:0 0 14px;font-size:.72rem}.password-recovery-note{margin:20px 0 0;color:var(--muted);font-size:.72rem}.subscription-delete-warning{margin:16px 0;padding:15px;border:1px solid #e0b7af;border-radius:5px;background:#fff6f3}.subscription-delete-warning p{margin:0 0 12px;font-size:.72rem}.auth-panel{max-width:520px}.oauth-entry{margin-bottom:26px}.oauth-provider-buttons{display:grid;gap:11px}.auth-provider-button{position:relative;display:flex;width:100%;min-height:48px;align-items:center;justify-content:center;gap:12px;padding:0 18px;border:1px solid #747775;border-radius:5px;background:#fff;color:#1f1f1f;font:600 .78rem/1.2 var(--sans);letter-spacing:0;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease,transform .15s ease}.auth-provider-button svg{position:absolute;left:17px;width:20px;height:20px}.auth-provider-button.apple{border-color:#000;background:#000;color:#fff}.auth-provider-button:hover:not(:disabled){box-shadow:0 2px 7px #0d2d4421;transform:translateY(-1px)}.auth-provider-button.google:hover:not(:disabled){border-color:#4b4f4d;background:#f8f9fa}.auth-provider-button.apple:hover:not(:disabled){background:#252525}.auth-provider-button:focus-visible{outline:3px solid rgba(71,114,90,.22);outline-offset:3px}.auth-provider-button:disabled{opacity:.55;cursor:wait}.auth-divider{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:13px;margin-top:24px;color:var(--muted);font-size:.67rem}.auth-divider:before,.auth-divider:after{height:1px;background:var(--line);content:""}.auth-tabs{display:grid;grid-template-columns:repeat(2,1fr);margin-bottom:28px;border-bottom:1px solid var(--line)}.auth-tabs button{padding:12px;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--muted);cursor:pointer}.auth-tabs button.active{border-bottom-color:var(--ink);color:var(--ink);font-weight:700}.auth-panel form{display:flex;flex-direction:column;gap:18px}.auth-panel label,.auth-panel .password-field{display:flex;flex-direction:column;gap:7px;color:var(--ink);font-size:.75rem;font-weight:700}.auth-panel .password-field>label{display:block}.auth-panel input{width:100%;min-height:46px;padding:0 12px;border:1px solid var(--line);border-radius:4px;background:#fff;color:var(--ink);font:inherit}.auth-panel input:focus{border-color:var(--sage-dark);outline:3px solid rgba(71,114,90,.12)}.password-input{position:relative}.password-input input{padding-inline-end:48px}.password-visibility{position:absolute;top:50%;right:5px;display:grid;width:36px;min-height:36px;padding:0;transform:translateY(-50%);place-items:center;border:0;border-radius:4px;background:transparent;color:var(--muted);cursor:pointer}.password-visibility:hover{background:var(--paper-deep);color:var(--ink)}.password-visibility:focus-visible{outline:3px solid rgba(71,114,90,.18);color:var(--ink)}.password-visibility svg{width:17px;height:17px}.auth-panel small{color:var(--muted);font-weight:400}.password-panel{max-width:none}.password-panel form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:end}.password-panel form .button{justify-self:start}.signin-method-list{overflow:hidden;border:1px solid var(--line);border-radius:5px}.signin-method-row{display:flex;min-height:68px;align-items:center;justify-content:space-between;gap:18px;padding:13px 15px;background:#ffffff80}.signin-method-row+.signin-method-row{border-top:1px solid var(--line)}.signin-method-row>div{display:grid;gap:3px;min-width:0}.signin-method-row strong{font-size:.75rem}.signin-method-row>div span{overflow:hidden;color:var(--muted);font-size:.67rem;text-overflow:ellipsis;white-space:nowrap}.signin-method-row .button,.signin-method-row .text-button{flex:0 0 auto;min-height:38px}.signin-method-status{flex:0 0 auto;padding:5px 8px;border-radius:999px;background:var(--sage-soft);color:var(--sage-dark);font-size:.62rem;font-weight:700}.provider-delete-actions{display:grid;gap:11px;max-width:460px;margin-top:16px}.provider-delete-actions>p{margin:0 0 2px}.oauth-callback-page{display:grid;min-height:min(620px,calc(100vh - 150px));place-items:center}.oauth-callback-card{display:grid;width:min(100%,520px);justify-items:center;gap:18px;padding:38px;text-align:center}.oauth-callback-card>svg{width:34px;height:34px;color:var(--sage-dark)}.oauth-callback-card>div{display:grid;gap:8px}.oauth-callback-card h1,.oauth-callback-card p{margin:0}.oauth-callback-card p{color:var(--muted)}.danger-zone{border-color:#e0b7af}.danger-zone h2{color:var(--coral)}.danger-zone label,.danger-zone .password-field{max-width:360px;display:flex;flex-direction:column;gap:7px;margin:16px 0;font-size:.72rem;font-weight:700}.danger-zone .password-field>label{display:block;margin:0}.danger-zone input{min-height:43px;padding:0 11px;border:1px solid var(--line);border-radius:4px}@keyframes rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes reveal{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-7px)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{transform:scale(.92);opacity:.65}}@media(max-width:1000px){.welcome-hero{padding-inline:40px;gap:25px}.welcome-visual{min-height:500px}.welcome-visual .sun-disc{width:330px;height:330px}.page{width:min(100% - 40px,1080px)}.page.app-page{--app-page-max-width: 1080px;--app-page-inline-gutter: 20px}.puzzle-layout{grid-template-columns:minmax(470px,620px) 290px;gap:20px}.lesson-stage{grid-template-columns:1fr 250px}.review-grid{grid-template-columns:1fr 280px}}@media(min-width:781px)and (max-height:850px){.puzzle-header{height:58px}.puzzle-layout{padding:10px 0}.board-workspace{--puzzle-board-size: min(100%, max(432px, calc(100dvh - 184px) ))}.board-tools{margin-top:8px}.number-pad{margin-top:7px;gap:4px}.number-pad button{min-height:44px}}@media(max-width:780px){.mobile-only{display:grid!important}.public-header{height:calc(68px + var(--safe-area-top));padding:var(--safe-area-top) max(20px,var(--safe-area-right)) 0 max(20px,var(--safe-area-left))}.welcome-page{background:radial-gradient(circle at 50% 28%,rgba(220,232,215,.7),transparent 24%),var(--ivory)}.welcome-hero{min-height:auto;padding:30px 24px 45px;grid-template-columns:1fr;text-align:center;gap:10px}.welcome-copy{display:flex;flex-direction:column;align-items:center}.welcome-copy h1{font-size:clamp(2.8rem,13vw,4.1rem)}.welcome-copy>p{font-size:.96rem}.welcome-visual{grid-row:1;min-height:290px}.welcome-visual .sun-disc{width:260px;height:260px}.welcome-visual .mascot{width:270px;height:290px}.coach-quote{right:5%;bottom:8%;font-size:.78rem}.welcome-proof{flex-direction:column;align-items:center;gap:6px}.hero-actions{flex-direction:column;align-items:stretch}.welcome-return{min-width:0;padding:12px 4px 0;border-top:1px solid var(--line);border-left:0;align-items:center}.welcome-features{padding:22px 24px;grid-template-columns:1fr;gap:16px}.welcome-features>div{padding:0;border:0}.welcome-learning{width:calc(100% - 48px);margin-top:34px;padding:8px;grid-template-columns:1fr;gap:8px;border-radius:18px}.welcome-learning-intro{min-height:0;padding:54px 24px 34px;align-items:flex-start}.welcome-learning-intro h2{font-size:clamp(2.15rem,10vw,3.2rem)}.welcome-learning-mark{width:160px;height:160px;top:-55px;right:-35px}.welcome-learning-grid{padding:4px}.welcome-learning-step{min-height:0;padding:24px 38px 24px 14px;position:relative;grid-template-columns:38px minmax(0,1fr);gap:12px}.welcome-step-icon{width:38px;height:38px}.welcome-step-number{position:absolute;top:13px;right:15px;padding:0}.welcome-step-arrow{position:absolute;right:14px;bottom:20px}.level-options{grid-template-columns:1fr}.level-options button{min-height:115px}.level-options strong{margin-top:15px}.app-shell{display:block}.sidebar{position:fixed;left:0;width:250px;transform:translate(-105%);transition:transform .25s var(--ease-drawer);box-shadow:var(--shadow)}.sidebar.sidebar-open{transform:translate(0)}.scrim{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;border:0;background:#102a434d;opacity:0;pointer-events:none;transition:opacity .15s var(--ease-out-ui)}.scrim[data-open]{opacity:1;pointer-events:auto;transition-duration:.18s}.mobile-header{height:calc(58px + var(--safe-area-top));padding:var(--safe-area-top) max(12px,var(--safe-area-right)) 0 max(12px,var(--safe-area-left));position:sticky;top:0;z-index:15;display:grid;grid-template-columns:45px 36px minmax(0,1fr) auto;align-items:center;border-bottom:1px solid var(--line);background:#f7f3eaf2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.header-title{min-width:0;padding-left:8px;overflow:hidden;font-family:var(--serif);font-size:.9rem;text-overflow:ellipsis;white-space:nowrap}.page{width:min(100% - 28px,680px);padding:35px 0 calc(60px + var(--safe-area-bottom))}.page-heading{align-items:flex-start;flex-direction:column;margin-bottom:26px}.page-heading h1{font-size:2.8rem}.home-primary{grid-template-columns:1fr}.today-body{grid-template-columns:170px 1fr}.resume-body{grid-template-columns:190px minmax(0,1fr);gap:24px}.progress-panel{display:grid;grid-template-columns:1fr 130px}.progress-panel>.eyebrow{grid-column:1 / -1}.progress-ring{width:120px;height:120px;grid-column:2;grid-row:2}.progress-stats{grid-column:1;grid-row:2}.path-line{grid-template-columns:1fr;gap:16px}.path-line:before{width:1px;height:auto;top:12px;bottom:12px;left:16px;right:auto}.path-step{min-height:42px;display:grid;grid-template-columns:36px 1fr;grid-template-rows:1fr 1fr;text-align:left}.path-step i{grid-row:1 / 3}.path-step strong,.path-step span{margin:0}.continue-lesson{grid-template-columns:105px 1fr}.puzzle-header{padding:var(--safe-area-top) max(14px,var(--safe-area-right)) 0 max(14px,var(--safe-area-left));grid-template-columns:auto 1fr auto;gap:8px}.puzzle-options-trigger{width:40px;padding:0;justify-content:center;border-color:transparent}.puzzle-options-trigger>span{display:none}.puzzle-options-backdrop{position:fixed;z-index:89;top:0;right:0;bottom:0;left:0;display:block;background:#0c1f2c4d}.puzzle-options-panel{position:fixed;z-index:90;inset:auto 0 0;width:100%;max-height:min(78dvh,650px);padding-bottom:var(--safe-area-bottom);border-width:1px 0 0;border-radius:18px 18px 0 0;box-shadow:0 -18px 50px #0d2d4433}.mistake-count{display:none}.puzzle-layout{width:min(100% - 20px,620px);padding:12px 0 calc(96px + var(--safe-area-bottom));display:flex;flex-direction:column}.board-workspace{--puzzle-board-size: 100%}.mobile-coach-launcher{width:100%;margin:0 0 6px;display:grid;grid-template-columns:1fr;gap:4px;color:var(--ink)}.mobile-puzzle-goal{min-width:0;padding:0 4px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:baseline;gap:7px;color:var(--muted);font-size:clamp(.6rem,2.7vw,.72rem);line-height:1.2}.mobile-puzzle-goal>span{color:var(--sage-dark);font-weight:800}.mobile-puzzle-goal strong{min-width:0;overflow:hidden;color:var(--ink-soft);font-weight:650;text-overflow:ellipsis;white-space:nowrap}.mobile-puzzle-goal small{display:inline-flex;align-items:center;gap:4px;color:var(--ink-soft);font-size:inherit;font-weight:750;font-variant-numeric:tabular-nums;white-space:nowrap}.mobile-puzzle-goal.complete small{color:var(--sage-dark)}.mobile-coach-card{position:relative;min-height:76px;border:1px solid #cbc8bc;border-radius:10px;background:#fffdf8eb;box-shadow:0 5px 18px #102a430d;transition:border-color .16s ease,background-color .16s ease}.mobile-coach-launcher.has-unread .mobile-coach-card{border-color:#9eb49f;background:#f8faf4}.mobile-coach-open{width:100%;min-height:74px;padding:6px 10px;display:grid;grid-template-columns:60px minmax(0,1fr) 18px;align-items:center;gap:8px;border:0;border-radius:inherit;background:transparent;color:inherit;text-align:left;cursor:pointer;transition:transform .16s var(--ease-out-ui)}.mobile-coach-open:active{transform:scale(.988)}.mobile-coach-launcher.has-context-action .mobile-coach-open{padding-right:83px;grid-template-columns:60px minmax(0,1fr)}.mobile-coach-launcher.has-context-action .mobile-coach-chevron{display:none}.mobile-coach-context-action{position:absolute;right:8px;bottom:8px;z-index:1;min-height:32px;padding:0 9px;border:1px solid #9eb49f;border-radius:999px;background:var(--paper);color:var(--sage-dark);font-size:.55rem;font-weight:750;cursor:pointer}.mobile-coach-identity{align-self:stretch;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:var(--sage-dark);font-size:.54rem;font-weight:800;letter-spacing:.08em;line-height:1.1;text-align:center;text-transform:uppercase}.mobile-coach-avatar{position:relative;width:44px;height:44px}.mobile-coach-avatar-frame{width:100%;height:100%;display:block;overflow:hidden;border:1px solid #bfd0bb;border-radius:50%;background:var(--sage)}.mobile-coach-avatar .mascot{width:54px;height:59px;max-width:none;transform:translate(-5px,2px)}.mobile-coach-unread-dot{position:absolute;z-index:2;top:1px;right:1px;width:10px;height:10px;border:2px solid var(--paper);border-radius:50%;background:var(--saffron);box-shadow:0 1px 4px #75560c38}.mobile-coach-unread-ring{position:absolute;z-index:1;top:-1px;right:-1px;bottom:-1px;left:-1px;border:2px solid #709376;border-radius:50%;pointer-events:none;animation:mobile-coach-unread-pulse .72s var(--ease-out-ui) 2}.mobile-coach-copy{min-width:0}.mobile-coach-copy>strong{display:block;font-family:var(--serif);font-size:.78rem;font-weight:650;line-height:1.32}.mobile-coach-chevron{color:#6f7f78;transition:transform .16s var(--ease-out-ui)}.mobile-coach-open:active .mobile-coach-chevron{transform:translate(2px)}.mobile-coach-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:block;border:0;background:#102a4357;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s ease,visibility 0s linear .24s}.mobile-coach-scrim[data-open]{opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s}.mobile-coach-sheet{position:fixed;right:0;bottom:0;left:0;z-index:51;width:min(100%,620px);height:min(88dvh,760px);max-height:calc(100dvh - var(--safe-area-top) - 16px);margin:0 auto;display:flex;flex-direction:column;overflow:hidden;border:1px solid #c9c5b9;border-bottom:0;border-radius:18px 18px 0 0;background:var(--paper);box-shadow:0 -18px 48px #102a432e;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(calc(100% + 18px));transition:transform .3s var(--ease-drawer),visibility 0s linear .3s}.mobile-coach-sheet[data-open]{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0);transition-delay:0s}.mobile-coach-sheet-header{position:relative;min-height:108px;padding:16px 12px 10px;display:grid;grid-template-columns:48px minmax(0,1fr) auto;grid-template-rows:auto auto;align-items:center;-moz-column-gap:9px;column-gap:9px;row-gap:8px;border-bottom:1px solid var(--line);background:#fffdf8fa}.mobile-coach-sheet-header:before{content:"";position:absolute;top:7px;left:50%;width:34px;height:3px;border-radius:999px;background:#d4d0c6;transform:translate(-50%)}.mobile-coach-sheet-avatar{grid-column:1;grid-row:1;width:46px;height:46px;overflow:hidden;border:1px solid #bfd0bb;border-radius:50%;background:var(--sage)}.mobile-coach-sheet-avatar .mascot{width:56px;height:62px;max-width:none;transform:translate(-5px,1px)}.mobile-coach-sheet-title{min-width:0;grid-column:2;grid-row:1;display:flex;flex-direction:column}.mobile-coach-sheet-title .eyebrow{font-size:.47rem}.mobile-coach-sheet-title>strong{font-family:var(--serif);font-size:.94rem;line-height:1.05}.mobile-coach-sheet-focus{min-width:0;grid-column:1 / -1;grid-row:2;display:flex;flex-direction:column;gap:2px}.mobile-coach-sheet-focus small{display:flex;align-items:center;gap:5px;color:var(--sage-dark);font-size:.53rem;font-weight:700}.mobile-coach-sheet-focus small b{padding-left:5px;border-left:1px solid #b7c6b3;font-variant-numeric:tabular-nums}.mobile-coach-sheet-focus>span{color:var(--muted);font-size:.66rem;font-weight:500;line-height:1.3}.mobile-coach-sheet-header>button{grid-column:3;grid-row:1;min-height:44px;padding:0 8px;display:inline-flex;align-items:center;gap:3px;border:0;border-radius:999px;background:transparent;color:var(--ink-soft);font-size:.59rem;font-weight:750;cursor:pointer}.mobile-coach-sheet-header>button:active{background:var(--sage)}.mobile-coach-sheet-body{min-height:0;flex:1;display:flex}.puzzle-goal,.exploration-banner{width:100%}.coach-status{display:none}.practice-layout{grid-template-columns:1fr;gap:22px}.notebook-callout{grid-template-columns:auto 1fr}.board-wrap{width:100%}.mobile-coach-sheet-body>.coach-panel.coach-chat{position:static;width:100%;height:100%;min-height:0;border:0;border-radius:0;box-shadow:none}.mobile-coach-sheet .coach-chat-header{display:none}.mobile-coach-sheet-body>.guided-practice-complete{position:static;width:100%;height:100%;min-height:0;border:0;border-radius:0;box-shadow:none}.mobile-coach-sheet .coach-thread-shell{min-height:0;max-height:none;flex:1 1 0;overflow:hidden}.mobile-coach-sheet .coach-chat-controls{position:relative;z-index:2;padding-bottom:max(10px,env(safe-area-inset-bottom))}.lesson-list{border-top-color:var(--line)}.lesson-row{grid-template-columns:42px 1fr 24px}.lesson-row-meta>span{display:none}.advanced-preview{align-items:flex-start;flex-direction:column}.lesson-layout{grid-template-columns:1fr;gap:18px}.lesson-steps{position:static;display:grid;grid-template-columns:repeat(4,1fr)}.lesson-steps>.eyebrow,.lesson-outcome{display:none}.lesson-steps>button{justify-content:center;flex-direction:column;gap:5px}.lesson-content{padding:26px;min-height:590px}.lesson-content>h1{font-size:2.6rem}.lesson-stage,.worked-example,.try-stage{grid-template-columns:1fr}.lesson-illustration{max-height:250px;order:-1}.review-summary{grid-template-columns:repeat(2,1fr);gap:14px}.review-summary>div:not(.progress-ring){border-left:0;padding-left:0}.review-summary .progress-ring{grid-column:1 / -1;justify-self:center}.puzzle-share-strip{padding:20px;align-items:flex-start;flex-direction:column}.puzzle-share-control{width:100%;justify-items:stretch}.puzzle-share-button{width:100%;justify-content:center}.puzzle-share-control .lesson-share-status{max-width:none;text-align:center}.review-grid{grid-template-columns:1fr}.history-gate{grid-template-columns:25px minmax(0,1fr)}.history-gate .button{width:100%;grid-column:1 / -1}.review-next{align-items:flex-start;flex-direction:column}.pricing-grid{grid-template-columns:1fr}.checkout-trust{align-items:center;flex-direction:column;gap:14px}.upgrade-free-path,.checkout-confirmation{align-items:flex-start;flex-direction:column}.upgrade-free-path .text-link,.checkout-confirmation>.button{width:100%;justify-content:center}}@media(max-width:520px){.upgrade-main{padding-top:24px}.upgrade-heading{margin-bottom:22px}.upgrade-heading h1{margin-bottom:10px;font-size:2.35rem;line-height:.98}.upgrade-heading p{font-size:.76rem}.auth-panel input,.danger-zone input,.coach-composer textarea{font-size:16px}.account-summary{grid-template-columns:1fr;gap:17px}.account-summary-state{padding-top:14px;align-items:flex-start;border-top:1px solid color-mix(in srgb,var(--sage-dark) 18%,transparent)}.account-setting-group>summary{min-height:98px;grid-template-columns:38px minmax(0,1fr) 18px;gap:11px}.account-setting-value{max-width:none;grid-column:2;text-align:left}.account-setting-group>summary>svg{grid-column:3;grid-row:1 / span 2}.account-setting-content{padding-left:49px}.account-plan-offer,.account-export-panel{grid-template-columns:1fr}.account-plan-offer{gap:16px}.account-plan-offer .button,.account-export-panel .button{width:100%;justify-content:center}.account-export-icon{display:none}.account-session-actions{align-items:flex-start;flex-direction:column;gap:8px}.account-dialog-backdrop{padding:14px;align-items:end}.account-delete-dialog{padding:24px 20px;border-radius:14px 14px 8px 8px}.account-dialog-actions{flex-direction:column-reverse}.account-dialog-actions .button{width:100%;justify-content:center}.signin-method-row{align-items:flex-start;flex-direction:column}.signin-method-row .button,.signin-method-row .text-button{width:100%;justify-content:center}.oauth-callback-card{padding:28px 20px}.coach-composer textarea{height:40px;padding-block:8px}.coach-composer textarea::-moz-placeholder{font-size:.68rem}.coach-composer textarea::placeholder{font-size:.68rem}.public-header .text-link{font-size:.72rem}.password-panel form{grid-template-columns:1fr}.account-data-disclosure>summary{padding-inline:20px}.account-data-content{padding-inline:20px}.checkout-confirmation{padding:20px}.checkout-confirmation-actions{width:100%;align-items:flex-start;flex-direction:column}.checkout-confirmation-actions .button{width:100%;justify-content:center}.hero-actions{width:100%;flex-direction:column}.hero-actions .button{width:100%}.onboarding-main{padding-top:30px}.onboarding-coach{align-items:flex-start}.today-body,.resume-body{grid-template-columns:1fr}.today-body .mini-board,.resume-body .mini-board{width:185px}.today-panel,.resume-panel,.learning-path{padding:20px}.continue-lesson{padding:18px;grid-template-columns:75px minmax(0,1fr) auto;gap:15px}.puzzle-header{height:calc(58px + var(--safe-area-top))}.puzzle-header>.text-link{font-size:.7rem}.puzzle-meta{gap:8px}.coach-chat-header{min-height:74px;padding:10px 12px}.segmented-control{width:100%}.segmented-control button{padding-inline:6px}.practice-prompt,.notebook-gate{padding:22px 18px}.cell-value{font-size:1.45rem}.sudoku-cell.hinted:after{top:3px;right:3px;bottom:3px;left:3px}.number-pad{grid-template-columns:repeat(10,1fr);gap:3px}.number-pad button{grid-column:span 2;min-height:52px;aspect-ratio:auto;padding:0;font-size:1rem}.number-pad button:nth-child(6){grid-column:2 / span 2}.board-tools{margin-top:12px;display:flex;flex-direction:column}.board-tools .puzzle-number-pad{order:-1;margin-top:0;grid-template-columns:repeat(5,minmax(0,1fr))}.board-tools .puzzle-number-pad button,.board-tools .puzzle-number-pad button:nth-child(6){grid-column:auto}.board-tools .mobile-input-mode{display:flex;gap:2px;border-color:var(--line);background:#fff;color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,sans-serif}.board-tools .mobile-input-mode.active{border-color:#2d6793;background:var(--blue-wash);box-shadow:inset 0 0 0 1px #2d6793}.board-tools .mobile-input-mode small{max-width:100%;margin:0;color:inherit;font-size:.54rem;font-weight:750;line-height:1.1;text-wrap:balance}.board-tools .mobile-input-mode .notes-symbol{font-size:.92rem;line-height:1}.edit-tools{margin-top:8px}.edit-tools .desktop-note-tool-wrap{display:none}.edit-tools .tool-tooltip{width:0;max-width:0;padding-right:0;padding-left:0;overflow:hidden}.edit-tools .tool-button-wrap:focus-within .tool-tooltip,.edit-tools .tool-button-wrap:focus-visible .tool-tooltip{width:-moz-max-content;width:max-content;max-width:min(230px,72vw);padding-right:9px;padding-left:9px;overflow:visible}.edit-tools button{min-width:0;width:100%;flex:1;flex-direction:column}.puzzle-dialog-backdrop{height:100dvh;padding:14px 14px calc(14px + var(--safe-area-bottom));align-items:end}.puzzle-recovery-dialog,.puzzle-reset-dialog{max-height:calc(100dvh - 28px - var(--safe-area-bottom));padding:22px 18px;overflow-y:auto;border-radius:14px 14px 0 0}.recovery-note-cleanup{display:grid}.edit-tools .tool-button-wrap{min-width:0;flex:1}.edit-tools .tool-button-wrap:first-child .tool-tooltip{left:0;transform:translateY(4px)}.edit-tools .tool-button-wrap:first-child:hover .tool-tooltip,.edit-tools .tool-button-wrap:first-child:focus-within .tool-tooltip,.edit-tools .tool-button-wrap:first-child:focus-visible .tool-tooltip{transform:translateY(0)}.edit-tools .tool-button-wrap:first-child .tool-tooltip:after{left:28px}.edit-tools .tool-button-wrap:last-child .tool-tooltip,.edit-tools .explore-tool-wrap .tool-tooltip{right:0;left:auto;transform:translateY(4px)}.edit-tools .tool-button-wrap:last-child:hover .tool-tooltip,.edit-tools .tool-button-wrap:last-child:focus-within .tool-tooltip,.edit-tools .tool-button-wrap:last-child:focus-visible .tool-tooltip,.edit-tools .explore-tool-wrap:hover .tool-tooltip,.edit-tools .explore-tool-wrap:focus-within .tool-tooltip,.edit-tools .explore-tool-wrap:focus-visible .tool-tooltip{transform:translateY(0)}.edit-tools .tool-button-wrap:last-child .tool-tooltip:after,.edit-tools .explore-tool-wrap .tool-tooltip:after{right:28px;left:auto;transform:none}.lesson-row{padding-inline:5px}.lesson-content{padding:22px 18px}.lesson-steps>button span{font-size:.6rem}.review-next>div:last-child,.lesson-complete>div{width:100%;flex-direction:column}.price-plan{padding:20px}.price-owl{top:18px;right:18px;width:78px;height:94px}.price-plan>p{margin-bottom:16px}.price-plan ul{margin-bottom:12px;gap:6px}.upgrade-auth{padding-top:13px}.upgrade-auth-switch{margin-bottom:7px}.upgrade-auth-switch .text-button{min-height:32px}.upgrade-auth form{gap:8px}.upgrade-auth form>.button{min-height:52px;padding-block:10px;line-height:1.25}}@media(max-width:380px){.public-header>.brand{flex:0 0 auto}.public-header>.brand>span{display:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-property:color,background-color,border-color,opacity!important;transition-duration:.12s!important}.button:active:not(:disabled),.icon-button:active:not(:disabled){transform:none}}.public-header-actions{display:flex;align-items:center;gap:1rem}.language-picker{display:flex;align-items:center;justify-content:space-between;gap:.75rem;color:var(--ink, #17324d);font-size:.76rem;font-weight:650}.sidebar>.language-picker{min-height:34px;margin-top:6px;padding:0 4px}.sidebar>.language-picker .language-toggle button{min-height:28px}.language-picker-label{display:inline-flex;align-items:center;gap:.45rem;color:var(--muted);letter-spacing:.01em}.language-picker.compact .language-picker-label{color:var(--ink-soft)}.language-toggle{position:relative;isolation:isolate;display:grid;grid-template-columns:repeat(2,1fr);width:94px;padding:3px;border:1px solid rgba(16,42,67,.14);border-radius:999px;background:#fffdf8b8;box-shadow:inset 0 1px 2px #102a430a,0 1px #fffc}.language-toggle:before{content:"";position:absolute;z-index:-1;top:3px;bottom:3px;left:3px;width:calc(50% - 3px);border-radius:inherit;background:var(--ink);box-shadow:0 2px 7px #102a432e;transition:transform .18s cubic-bezier(.22,1,.36,1),background-color .18s ease}.language-toggle[data-locale=fr]:before{transform:translate(100%)}.language-toggle button{min-width:0;min-height:30px;padding:0 9px;border:0;border-radius:999px;background:transparent;color:var(--muted);font-size:.7rem;font-weight:750;letter-spacing:.08em;cursor:pointer;transition:color .15s ease,transform .15s var(--ease-out-ui)}.language-toggle button:active{transform:scale(.97)}.language-toggle button.active{color:var(--paper)}.language-toggle button:focus-visible{outline:2px solid var(--saffron);outline-offset:1px}.language-picker.compact{gap:.5rem}.mobile-header>.language-picker.compact{min-width:0;justify-self:end}.language-picker.compact .language-toggle{width:86px}.language-picker.compact .language-toggle button{min-height:28px;padding-inline:7px}.search-guide-page{min-height:100vh;background:radial-gradient(circle at 84% 12%,rgba(216,165,68,.12),transparent 25rem),var(--paper)}.search-guide-header{max-width:1240px;margin:0 auto}.search-guide-main{padding:clamp(32px,6vw,82px) clamp(22px,5vw,64px) 76px}.search-guide-main>article{max-width:1120px;margin:0 auto}.search-guide-back{width:-moz-fit-content;width:fit-content}.search-guide-intro{max-width:860px;margin-top:clamp(42px,7vw,88px);animation:guide-rise .48s var(--ease-out-ui) both}.search-guide-intro h1{max-width:15ch;margin:12px 0 22px;color:var(--ink);font-family:var(--display);font-size:clamp(2.55rem,6.2vw,5.4rem);font-weight:670;line-height:.98;letter-spacing:-.045em;text-wrap:balance}.search-guide-intro>p{max-width:66ch;margin:0;color:var(--ink-soft);font-size:clamp(1rem,1.8vw,1.18rem);line-height:1.75}.search-guide-proof{display:grid;grid-template-columns:minmax(0,.85fr) minmax(380px,1.15fr);gap:clamp(40px,7vw,94px);align-items:center;margin-top:clamp(72px,10vw,140px);padding:clamp(48px,7vw,86px) 0;border-top:1px solid rgba(16,42,67,.14);border-bottom:1px solid rgba(16,42,67,.14)}.search-guide-proof-copy h2,.search-guide-coaching-preview h2,.search-guide-action h2,.search-guide-related h2{margin:12px 0 24px;color:var(--ink);font-family:var(--display);font-size:clamp(1.8rem,3.5vw,3rem);font-weight:650;line-height:1.1;letter-spacing:-.025em;text-wrap:balance}.search-guide-proof-copy ol{display:grid;gap:0;margin:34px 0 0;padding:0;list-style:none}.search-guide-proof-copy li{display:grid;gap:7px;padding:22px 0;border-top:1px solid rgba(16,42,67,.12)}.search-guide-proof-copy li strong{color:var(--ink);font-size:.95rem}.search-guide-proof-copy li span{color:var(--muted);line-height:1.65}.search-guide-board{display:grid;justify-items:center;gap:18px}.search-guide-board .lesson-board-figure{width:min(100%,540px)}.search-guide-board .button{min-width:min(100%,260px)}.search-guide-answer{display:flex;align-items:flex-start;gap:10px;max-width:58ch;margin:0;color:#315e49;font-weight:650;line-height:1.55;animation:guide-rise .28s var(--ease-out-ui) both}.search-guide-answer svg{flex:0 0 auto;margin-top:2px}.search-guide-coaching-preview{max-width:900px;margin:clamp(72px,10vw,140px) auto 0;padding:clamp(34px,6vw,64px);display:grid;grid-template-columns:auto minmax(0,1fr);gap:clamp(22px,4vw,40px);border:1px solid rgba(16,42,67,.16);border-radius:8px;background:linear-gradient(145deg,#dce8d785,#fffdf8d6);box-shadow:0 20px 58px #102a430f}.search-guide-preview-mark{width:52px;height:52px;display:grid;place-items:center;border-radius:50%;background:var(--ink);color:var(--paper)}.search-guide-coaching-preview h2{max-width:22ch}.search-guide-coaching-preview ul{margin:30px 0 0;padding:0;display:grid;gap:14px;list-style:none}.search-guide-coaching-preview li{display:flex;align-items:flex-start;gap:10px;color:var(--ink-soft);line-height:1.6}.search-guide-coaching-preview li svg{flex:0 0 auto;margin-top:3px;color:var(--sage-dark)}.search-guide-action{max-width:780px;margin:clamp(76px,11vw,150px) auto 0;text-align:center}.search-guide-action h2{margin-inline:auto}.search-guide-action>p{max-width:58ch;margin:0 auto 28px;color:var(--muted);line-height:1.7}.search-guide-action>p strong{color:var(--ink);font-weight:700}.search-guide-action-note{display:block;margin-top:12px;color:var(--muted);font-size:.78rem}.search-guide-action-mascot{display:block;width:clamp(76px,8vw,96px);height:auto;margin:0 auto 18px;filter:drop-shadow(0 12px 18px color-mix(in srgb,var(--ink) 13%,transparent))}.search-guide-related{display:grid;max-width:860px;margin:clamp(84px,12vw,160px) auto 0}.search-guide-related h2{font-size:clamp(1.6rem,3vw,2.35rem)}.search-guide-related a{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:20px 0;border-top:1px solid rgba(16,42,67,.14);color:var(--ink);font-weight:700;text-decoration:none;transition:color .16s ease,padding .18s var(--ease-out-ui)}@media(hover:hover)and (pointer:fine){.search-guide-related a:hover{padding-left:8px;color:var(--blue)}}@keyframes guide-rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media(max-width:820px){.search-guide-proof{grid-template-columns:minmax(0,1fr)}.search-guide-proof-copy{max-width:650px}}@media(max-width:640px){.search-guide-header .public-header-actions .text-link:first-child{display:inline-flex}.search-guide-main{padding-inline:18px}.search-guide-intro{margin-top:40px}.search-guide-intro h1{font-size:clamp(2.35rem,12vw,3.55rem)}.search-guide-proof{min-width:0;margin-top:64px;padding-block:42px}.search-guide-board{min-width:0}.search-guide-answer{font-size:.9rem}}.mobile-tabbar{display:none}.page-heading h1,.section-title h2,.lesson-content-header h1,.upgrade-heading h1{text-wrap:balance}.home-progress-summary{min-height:108px;margin-top:16px;padding:18px 4px;display:flex;align-items:center;justify-content:space-between;gap:16px;border-block:1px solid var(--line);color:var(--ink);transition:color .15s ease,transform .15s var(--ease-out-ui)}.home-progress-summary>span{min-width:0;display:flex;flex-direction:column;gap:5px}.home-progress-summary h2{margin:0;font-family:var(--serif);font-size:1.25rem;line-height:1.2}.home-progress-items{display:flex;flex-wrap:wrap;gap:4px 14px}.home-progress-items small{color:var(--muted);font-size:.7rem;line-height:1.5}.home-progress-summary>svg{flex:0 0 auto;color:var(--sage-dark);transition:transform .15s var(--ease-out-ui)}@media(hover:hover)and (pointer:fine){.home-progress-summary:hover{color:var(--sage-dark);transform:translateY(-1px)}.home-progress-summary:hover>svg{transform:translate(3px)}}.review-number-pad{grid-template-columns:repeat(5,minmax(0,1fr))}.progress-first-step{max-width:580px;margin:5vh auto 0;display:flex;flex-direction:column;align-items:center;text-align:center}.progress-first-step img{width:min(250px,62vw);height:250px;margin-bottom:10px;border-radius:32px;-o-object-fit:contain;object-fit:contain}.progress-first-step h1{margin:8px 0 12px;font-size:clamp(2.2rem,6vw,3.5rem)}.progress-first-step p{max-width:420px;margin:0 0 22px}.progress-first-step .text-link{min-height:44px;margin-top:10px}.setting-language-row{min-height:76px;padding-top:12px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;border-top:1px solid #ebe6dd}.setting-language-row>p{margin:0;color:var(--muted);font-size:.7rem}.language-toggle button{min-height:44px}.upgrade-proof-preview{margin:-4px 0 24px;padding:16px 0;display:grid;gap:6px;border-block:1px solid var(--line)}.upgrade-proof-preview strong{font-family:var(--serif);font-size:.88rem}.upgrade-proof-preview blockquote{margin:0;color:var(--ink);font-family:var(--serif);font-size:.82rem}.upgrade-proof-preview span{color:var(--muted);font-size:.67rem;line-height:1.45}.plan-cancel-note{margin:12px 0 0;display:flex;align-items:center;justify-content:center;gap:6px;color:var(--muted);font-size:.67rem}.upgrade-auth .oauth-entry{margin-bottom:12px}@media(max-width:780px){.app-shell-sidebar-collapsed{display:block}.sidebar{visibility:hidden;pointer-events:none;transition:transform .25s var(--ease-drawer),visibility 0s linear .25s}.sidebar.sidebar-open{visibility:visible;pointer-events:auto;transition-delay:0s}.sidebar-collapse-button,.sidebar-item-tooltip{display:none}.sidebar-collapsed{width:250px;padding:calc(28px + var(--safe-area-top)) max(20px,var(--safe-area-right)) calc(20px + var(--safe-area-bottom)) max(20px,var(--safe-area-left));overflow-y:auto}.sidebar-collapsed .sidebar-head{padding:0 8px 35px;justify-content:space-between}.sidebar-collapsed .sidebar-head .brand span,.sidebar-collapsed .nav-link>span,.sidebar-collapsed .sidebar-sign-out>span,.sidebar-collapsed .sidebar-upgrade>span{display:initial}.sidebar-collapsed .sidebar-note{display:flex}.sidebar-collapsed .sidebar-auth-status{display:block}.sidebar-collapsed>.language-picker .language-picker-label{display:inline-flex}.sidebar-collapsed nav{align-items:stretch}.sidebar-collapsed .nav-link,.sidebar-collapsed .sidebar-sign-out,.sidebar-collapsed .sidebar-upgrade{width:auto;min-width:0;padding-inline:12px;justify-content:flex-start}.sidebar-collapsed .sidebar-account{width:auto;display:block}.sidebar-collapsed .sidebar-account-link{min-height:54px}.sidebar-collapsed .sidebar-sign-out{min-height:36px}.sidebar-collapsed .sidebar-upgrade{min-height:40px;margin-block:12px;justify-content:center}.sidebar-collapsed>.language-picker{min-height:34px;padding:0 4px;justify-content:space-between}.sidebar-collapsed>.language-picker .language-toggle{width:94px;grid-template-columns:repeat(2,1fr)}.mobile-header{grid-template-columns:44px 36px minmax(0,1fr) auto}.app-update-banner{width:calc(100% - 28px);min-height:0;margin:10px 14px 0;padding:10px 9px 10px 11px;grid-template-columns:34px minmax(0,1fr) auto;gap:9px}.app-shell-immersive .app-update-banner{margin-top:calc(8px + var(--safe-area-top))}.app-update-icon{width:34px;height:34px}.app-update-banner p strong{font-size:.78rem}.app-update-banner p span{font-size:.64rem}.app-update-action{min-height:36px;padding-inline:12px;font-size:.68rem}.app-update-dismiss{width:36px;height:36px}.mobile-header-actions{display:inline-flex;align-items:center;justify-self:end;gap:4px}.mobile-header-action{display:inline-flex}.mobile-account-shortcut{width:40px;height:40px;display:grid;place-items:center;border-radius:50%;color:var(--ink)}.mobile-account-shortcut:hover,.mobile-account-shortcut:focus-visible{background:var(--blue-wash)}.app-shell-immersive .mobile-header{display:none}.mobile-tabbar{position:fixed;right:0;bottom:0;left:0;z-index:19;min-height:calc(62px + var(--safe-area-bottom));padding:5px max(6px,var(--safe-area-right)) var(--safe-area-bottom) max(6px,var(--safe-area-left));display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid rgba(16,42,67,.13);background:#fffdf8f7;box-shadow:0 -8px 28px #102a430f;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.mobile-tabbar a{min-width:0;min-height:52px;padding:4px 2px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border-radius:8px;color:#65727b;font-size:.58rem;font-weight:700;line-height:1.08;text-align:center}.mobile-tabbar a.active{background:var(--blue-wash);color:var(--ink)}.mobile-tabbar a.active svg{color:var(--sage-dark);stroke-width:2.4}.app-shell:not(.app-shell-immersive) .page{padding-bottom:calc(90px + var(--safe-area-bottom))}.app-shell:not(.app-shell-immersive) .page.app-page{--app-page-max-width: 680px;--app-page-inline-gutter: 14px;--app-page-padding-top: 20px;--app-page-padding-bottom: calc(90px + var(--safe-area-bottom))}.app-shell-immersive .page{width:min(100% - 20px,680px);padding-top:calc(10px + var(--safe-area-top));padding-bottom:calc(18px + var(--safe-area-bottom))}.page-heading{gap:14px;margin-bottom:22px}.page-heading h1{margin-bottom:8px;font-size:clamp(2.15rem,10vw,2.65rem);line-height:.98}.page.app-page>.app-page-header{margin-bottom:16px;display:grid;grid-template-columns:minmax(0,1fr);align-items:end;gap:8px 14px}.page.app-page>.app-page-header .eyebrow{margin-bottom:5px;font-size:.62rem}.page.app-page>.app-page-header h1{margin:0 0 6px;font-size:clamp(2rem,9vw,2.35rem);line-height:.98}.page.app-page>.app-page-header p{font-size:.82rem;line-height:1.35}.page.app-page>.app-page-header .app-page-header-aside{justify-self:start}.page.app-page>.app-page-header.review-heading .app-page-header-aside{display:none}.home-primary{gap:18px}.practice-week-strip{margin-bottom:16px;padding-inline:0;grid-template-columns:1fr;gap:12px}.practice-week-heading strong{font-size:.92rem}.practice-week-days{gap:4px}.practice-week-days>span{min-height:44px}.today-panel,.resume-panel{padding:18px 0 4px;border-inline:0;border-radius:0;box-shadow:none}.home-progress-summary{min-height:96px;padding:17px 4px}.continue-lesson{margin-top:16px}.progress-first-step{margin-top:2vh}.setting-language-row{grid-template-columns:1fr;gap:10px}.setting-language-row .language-picker{width:100%}.language-toggle{width:108px}.language-picker.compact .language-toggle button,.language-toggle button{min-height:44px}.mobile-coach-sheet-title .eyebrow,.mobile-coach-sheet-focus small,.mobile-coach-sheet-header>button{font-size:.75rem}.mobile-coach-sheet{height:min(70dvh,640px);overscroll-behavior:contain;transition:height .28s var(--ease-drawer),opacity .18s ease,transform .3s var(--ease-drawer),visibility 0s linear .3s}.mobile-coach-sheet[data-expanded]{height:min(92dvh,760px)}.mobile-coach-sheet[data-dragging]{-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:none}.mobile-coach-sheet-grabber{width:100%;min-height:28px;padding:0;display:grid;place-items:center;flex:0 0 28px;border:0;background:#fffdf8fa;cursor:ns-resize;touch-action:none}.mobile-coach-sheet-grabber>span{width:40px;height:4px;border-radius:999px;background:#c9c5ba}.mobile-coach-sheet-header{min-height:86px;padding-top:6px}.mobile-coach-sheet-header:before{content:none}.mobile-coach-sheet-focus>span{font-size:.75rem}.mobile-coach-sheet-body{overflow:hidden;overscroll-behavior:contain}.mobile-coach-sheet .coach-thread-shell,.mobile-coach-sheet .coach-thread{overscroll-behavior:contain}.lesson-header{min-height:36px;margin-bottom:8px;align-items:center}.lesson-layout{gap:8px}.lesson-steps{min-height:52px}.lesson-steps>button{min-height:50px}.lesson-content{min-height:0;padding:14px 0 20px;border:0;border-radius:0;overflow:visible}.lesson-content-header{margin-bottom:12px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px}.lesson-content-header>div:first-child{min-width:0}.lesson-content-header h1{font-size:clamp(1.8rem,9vw,2.2rem);line-height:.98}.lesson-content-header .eyebrow{margin-bottom:5px;font-size:.58rem;line-height:1.35}.lesson-content-header .evidence-badge{min-width:108px;padding:8px 10px}.lesson-content-header .evidence-badge strong{font-size:.82rem}.practice-heading{margin-bottom:8px;flex-direction:column;gap:5px}.practice-heading h2{margin:3px 0 5px;font-size:clamp(1.35rem,6vw,1.75rem)}.practice-progress{padding-top:0}.practice-workspace,.model-stage{display:block}.lesson-board-figure{width:min(100%,340px);margin:8px auto 0}.lesson-board-frame{margin:0 auto}.lesson-content[data-stage=diagnostic],.lesson-content[data-stage=practice]{padding-bottom:min(49dvh,410px)}.practice-response,.model-stage .proof-narration,.rules-primer-action{position:fixed;right:10px;bottom:max(8px,var(--safe-area-bottom));left:10px;z-index:18;width:min(calc(100% - 20px),430px);max-height:min(46dvh,390px);margin:0 auto;padding:14px;overflow:auto;overscroll-behavior:contain;border:1px solid #cbc8bc;border-radius:18px;background:#fffdf8fb;box-shadow:0 -14px 38px #102a4326}.practice-stage .practice-response{right:0;bottom:0;left:0;width:auto;max-width:none;margin:0;padding-bottom:calc(14px + var(--safe-area-bottom));border:0;border-top:1px solid #cbc8bc;border-radius:0}.practice-response .lesson-choice-grid{gap:7px}.practice-response .lesson-choice-grid button{min-height:50px}.practice-response:has(.process-feedback.correct) .lesson-choice-grid,.practice-response:has(.process-feedback.correct) .cell-task-callout{display:none}.process-feedback{min-height:78px;margin-top:10px;padding:12px}.model-stage .proof-narration{border-left:1px solid #dfcf9f}.lesson-content[data-stage=model]{padding-bottom:min(43dvh,360px)}.lesson-content.rules-lesson-content[data-stage=model],.lesson-content.scanning-lesson-content[data-stage=model],.lesson-content.candidate-lesson-content[data-stage=model],.lesson-content.naked-lesson-content[data-stage=model],.lesson-content.hidden-lesson-content[data-stage=model],.lesson-content.locked-lesson-content[data-stage=model],.lesson-content.pair-lesson-content[data-stage=model],.lesson-content.hidden-pair-lesson-content[data-stage=model],.lesson-content.xwing-lesson-content[data-stage=model],.lesson-content.swordfish-lesson-content[data-stage=model],.lesson-content.xywing-lesson-content[data-stage=model],.lesson-content.xyzwing-lesson-content[data-stage=model],.lesson-content.unique-rectangle-lesson-content[data-stage=model],.lesson-content.coloring-lesson-content[data-stage=model],.lesson-content.chains-lesson-content[data-stage=model],.lesson-content.forcing-lesson-content[data-stage=model]{padding-bottom:20px}.lesson-content.hidden-lesson-content[data-stage=model]>.lesson-content-header,.lesson-content.locked-lesson-content[data-stage=model]>.lesson-content-header,.lesson-content.pair-lesson-content[data-stage=model]>.lesson-content-header,.lesson-content.hidden-pair-lesson-content[data-stage=model]>.lesson-content-header,.lesson-content.xwing-lesson-content[data-stage=model]>.lesson-content-header,.lesson-content.swordfish-lesson-content[data-stage=model]>.lesson-content-header,.lesson-content.xywing-lesson-content[data-stage=model]>.lesson-content-header,.lesson-content.xyzwing-lesson-content[data-stage=model]>.lesson-content-header,.lesson-content.unique-rectangle-lesson-content[data-stage=model]>.lesson-content-header,.lesson-content.coloring-lesson-content[data-stage=model]>.lesson-content-header,.lesson-content.chains-lesson-content[data-stage=model]>.lesson-content-header,.lesson-content.forcing-lesson-content[data-stage=model]>.lesson-content-header{display:none}.rules-primer>header{margin-bottom:8px}.rules-primer h2{margin:3px 0 5px;font-size:1.55rem}.rules-primer header p{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.scanning-primer>header{margin-bottom:8px}.scanning-primer h2{margin:3px 0 5px;font-size:1.55rem}.scanning-primer header p{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.candidate-primer>header{margin-bottom:8px}.candidate-primer h2{margin:3px 0 5px;font-size:1.55rem}.candidate-primer header p{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.naked-primer>header{margin-bottom:8px}.naked-primer h2{margin:3px 0 5px;font-size:1.55rem}.naked-primer header p{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.hidden-primer>header{margin-bottom:8px}.hidden-primer h2{margin:3px 0 5px;font-size:1.55rem}.hidden-primer header p{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.rules-primer-workspace,.rules-visual{min-height:300px}.rules-primer-workspace,.scanning-primer-workspace,.candidate-primer-workspace,.naked-primer-workspace,.hidden-primer-workspace{padding-bottom:0;animation:none;transform:none}.rules-primer-action,.scanning-primer-action,.candidate-primer-action{position:static;right:auto;bottom:auto;left:auto;z-index:auto;width:100%;max-height:none;margin:0;padding:16px 0 0;justify-content:flex-start;overflow:visible;border:0;border-top:1px solid var(--line);border-radius:0;background:transparent;box-shadow:none}.practice-page:has(.practice-layout){padding-top:20px;padding-bottom:calc(340px + var(--safe-area-bottom))}.notebook-heading{margin-bottom:10px}.notebook-heading p{display:none}.notebook-count{padding:6px 10px}.practice-layout{gap:8px}.practice-board .sudoku-board{max-width:320px;margin:0 auto}.practice-prompt{position:fixed;right:10px;bottom:calc(70px + var(--safe-area-bottom));left:10px;z-index:18;width:min(calc(100% - 20px),430px);max-height:330px;margin:0 auto;padding:15px;overflow:auto;overscroll-behavior:contain;border-radius:18px;background:#fffdf8fb;box-shadow:0 -14px 38px #102a4326}.practice-prompt .mascot{float:left;width:64px;height:68px;margin:-5px 10px 4px -4px}.review-number-pad{clear:both;margin:8px 0 12px;grid-template-columns:repeat(10,minmax(0,1fr))}.review-number-pad button{min-height:46px}.practice-prompt h2{margin:4px 0 6px;font-size:1.45rem}.practice-prompt p{margin-bottom:12px;font-size:.76rem}.practice-position-context{margin-bottom:6px;color:var(--ink-soft);font-size:.7rem;line-height:1.35}.practice-prompt .practice-commit-copy{display:none}.upgrade-main{width:min(100% - 24px,620px);padding-top:22px}.upgrade-heading{margin-bottom:24px}.upgrade-heading h1{font-size:clamp(2.3rem,11vw,3.1rem)}.price-plan{padding:20px}.price-plan h2{font-size:2rem}.checkout-trust{margin-top:14px}}@media(max-width:520px){.app-update-banner{grid-template-columns:34px minmax(0,1fr)}.app-update-actions{grid-column:2;justify-content:flex-start}}@media(prefers-reduced-motion:reduce){.app-update-banner{animation:none}}@media(hover:hover)and (pointer:fine){.language-toggle button:hover:not(.active){color:var(--ink)}}@media(max-width:640px){.public-header-actions .text-link{display:none}.language-picker.compact{gap:.35rem}.language-picker.compact .language-toggle button{min-height:36px}}@media(max-width:780px){.home-page .streak{padding-bottom:3px;white-space:nowrap}.resume-panel{display:grid;grid-template-columns:clamp(140px,38vw,160px) minmax(0,1fr);grid-template-rows:auto 1fr;-moz-column-gap:18px;column-gap:18px;align-items:start}.resume-panel>.section-title{grid-column:2;gap:8px}.resume-panel>.section-title .difficulty{display:none}.resume-panel>.resume-body{display:contents}.resume-panel .mini-board{width:100%;grid-column:1;grid-row:1 / 3;align-self:start}.resume-copy{min-width:0;grid-column:2}.resume-puzzle-name{margin-bottom:7px;font-size:.96rem}.resume-status{margin-bottom:12px;font-size:.68rem}.resume-copy .button{width:100%;min-height:44px;padding-inline:10px;font-size:.78rem}.notebook-callout{grid-template-columns:42px minmax(0,1fr) auto;padding:16px}.continue-lesson{grid-template-columns:88px minmax(0,1fr) auto;padding:16px;gap:14px}.lesson-art{width:88px;height:88px}.continue-lesson h2{font-size:1.2rem}.continue-lesson p{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}}@media(max-width:389px){.app-shell-immersive .page.lesson-page{padding-top:calc(4px + var(--safe-area-top))}.lesson-page .lesson-header{min-height:32px;margin-bottom:2px}.lesson-page .lesson-header .text-link{min-height:38px;font-size:.76rem}.lesson-page .lesson-layout{gap:2px}.pedagogy-layout>.lesson-steps{position:sticky;top:0;z-index:16;min-height:44px;margin-bottom:4px;padding-top:2px;gap:2px;border-bottom:1px solid color-mix(in srgb,var(--line) 72%,transparent);background:color-mix(in srgb,var(--paper) 96%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.pedagogy-layout>.lesson-steps>button{min-height:44px;gap:2px;font-size:.5rem}.pedagogy-layout>.lesson-steps>button i{width:21px;height:21px;flex-basis:21px;font-size:.55rem}.pedagogy-layout>.lesson-steps>button span{font-size:.5rem;line-height:1.15}.lesson-page .pedagogy-content{padding-top:8px;scroll-margin-top:48px}.lesson-page .lesson-content-header{margin-bottom:8px;grid-template-columns:minmax(0,1fr) 92px;gap:6px}.lesson-page .lesson-content-header h1{margin-top:2px;font-size:1.68rem}.lesson-page .lesson-content-header .eyebrow{margin-bottom:2px;font-size:.5rem}.lesson-page .lesson-content-header .evidence-badge{min-width:92px;padding:6px 8px}.lesson-page .lesson-content-header .evidence-badge span,.lesson-page .lesson-content-header .evidence-badge small{font-size:.5rem}.lesson-page .lesson-content-header .evidence-badge strong{margin-top:1px;font-size:.7rem}.lesson-page .lesson-content:is([data-stage=diagnostic],[data-stage=model],[data-stage=practice])>.lesson-content-header{min-height:28px;margin-bottom:6px;padding:0 2px;grid-template-columns:minmax(0,1fr) auto;align-items:center}.lesson-page .lesson-content:is([data-stage=diagnostic],[data-stage=model],[data-stage=practice])>.lesson-content-header .eyebrow,.lesson-page .lesson-content:is([data-stage=diagnostic],[data-stage=model],[data-stage=practice])>.lesson-content-header .evidence-badge span,.lesson-page .lesson-content:is([data-stage=diagnostic],[data-stage=model],[data-stage=practice])>.lesson-content-header .evidence-badge small{display:none}.lesson-page .lesson-content:is([data-stage=diagnostic],[data-stage=model],[data-stage=practice])>.lesson-content-header h1{margin:0;font-family:var(--sans);font-size:1rem;font-weight:750;line-height:1.2}.lesson-page .lesson-content:is([data-stage=diagnostic],[data-stage=model],[data-stage=practice])>.lesson-content-header .evidence-badge{min-width:0;padding:0;border:0;background:transparent}.lesson-page .lesson-content:is([data-stage=diagnostic],[data-stage=model],[data-stage=practice])>.lesson-content-header .evidence-badge strong{margin:0;color:var(--sage-dark);font-family:var(--sans);font-size:.62rem;font-weight:750}.lesson-content.scanning-lesson-content[data-stage=model]{padding-bottom:calc(150px + var(--safe-area-bottom))}.scanning-primer-action{position:fixed;right:0;bottom:0;left:0;z-index:18;width:auto;max-height:min(38dvh,250px);margin:0;padding:12px 12px calc(12px + var(--safe-area-bottom));overflow:auto;overscroll-behavior:contain;border:0;border-top:1px solid #cbc8bc;border-radius:0;background:#fffdf8fb;box-shadow:0 -10px 28px #102a4321}.scanning-primer-action>strong{display:block;margin-bottom:0;font-size:.82rem;line-height:1.25}.scanning-primer-check-label{margin-bottom:4px;font-size:.5rem}.scanning-primer-action .rules-binary-choice{margin-top:10px;gap:8px}.scanning-primer-action .rules-binary-choice button{min-height:44px;border-radius:8px;background:#fffefa}.scanning-primer-action>p{margin:8px 0;font-size:.65rem;line-height:1.35}.scanning-primer-action>p.correct{min-height:52px;margin-top:0;padding:11px 14px}.scanning-primer-action>.button{width:100%;min-height:44px;margin-top:8px}.home-page .streak{padding-bottom:0}.resume-panel{display:block}.resume-panel>.section-title{margin-bottom:16px}.resume-panel>.resume-body{display:grid;grid-template-columns:1fr;gap:16px}.resume-panel .mini-board{width:min(184px,100%)}.resume-copy .button{width:auto;padding-inline:18px}.notebook-callout{grid-template-columns:38px minmax(0,1fr) auto;padding:14px;gap:10px}.notebook-callout-icon{width:38px;height:38px}.continue-lesson{grid-template-columns:76px minmax(0,1fr) auto;padding:14px;gap:10px}.lesson-art{width:76px;height:76px}}.public-resource-page{min-height:100vh;background:radial-gradient(circle at 88% 8%,rgba(216,165,68,.11),transparent 28rem),linear-gradient(180deg,#fffdf8 0,var(--paper) 38rem)}.resource-header{max-width:1240px;margin:0 auto}.resource-main{width:min(1160px,calc(100% - 48px));margin:0 auto;padding:clamp(52px,8vw,108px) 0 110px}.resource-hero{max-width:970px;animation:guide-rise .48s var(--ease-out-ui) both}.resource-hero h1{max-width:15ch;margin:14px 0 26px;color:var(--ink);font-family:var(--display);font-size:clamp(3rem,7.2vw,6.6rem);font-weight:670;line-height:.94;letter-spacing:-.052em;text-wrap:balance}.resource-hero>p{max-width:66ch;margin:0;color:var(--ink-soft);font-size:clamp(1.02rem,1.8vw,1.22rem);line-height:1.75}.resource-count{width:-moz-fit-content;width:fit-content;margin-top:28px;padding-top:12px;display:block;border-top:1px solid rgba(16,42,67,.26);color:var(--muted);font-size:.74rem;font-weight:720;letter-spacing:.035em}.resource-method{margin-top:clamp(80px,12vw,160px);padding:clamp(40px,6vw,72px) 0;display:grid;grid-template-columns:minmax(0,.95fr) minmax(320px,.75fr);gap:clamp(44px,10vw,130px);align-items:start;border-block:1px solid rgba(16,42,67,.15)}.resource-method h2,.resource-practice h2,.resource-links h2,.embed-includes h2{margin:12px 0 0;color:var(--ink);font-family:var(--display);font-size:clamp(2rem,4vw,3.4rem);font-weight:650;line-height:1.05;letter-spacing:-.03em;text-wrap:balance}.resource-method>p{margin:3px 0 0;color:var(--muted);line-height:1.8}.technique-index-section{margin-top:clamp(76px,10vw,126px)}.technique-index-heading{display:grid;grid-template-columns:minmax(0,.9fr) minmax(280px,.72fr);gap:clamp(30px,8vw,100px);align-items:end}.technique-index-heading h2{margin:0;color:var(--ink);font-family:var(--display);font-size:clamp(1.9rem,3.8vw,3.15rem);font-weight:650;line-height:1.05;letter-spacing:-.03em;text-wrap:balance}.technique-index-heading .eyebrow+h2{margin-top:12px}.technique-index-heading>p{margin:0;color:var(--muted);line-height:1.7}.coaching-preview-index{padding:clamp(34px,5vw,58px);border:1px solid rgba(16,42,67,.14);border-radius:8px;background:linear-gradient(145deg,#dce8d775,#fffdf8c7)}.technique-index{margin-top:44px;border-bottom:1px solid rgba(16,42,67,.15)}.technique-index-row{min-height:132px;padding:26px 0;display:grid;grid-template-columns:58px minmax(0,1fr) auto;align-items:center;gap:24px;border-top:1px solid rgba(16,42,67,.15);color:var(--ink);transition:color .16s ease,padding .19s var(--ease-out-ui)}.technique-index-number{align-self:start;padding-top:4px;color:var(--sage-dark);font-family:var(--serif);font-size:.82rem;font-variant-numeric:tabular-nums}.technique-index-copy{display:grid;gap:8px}.technique-index-copy strong{max-width:30ch;font-family:var(--serif);font-size:clamp(1.2rem,2.4vw,1.85rem);line-height:1.18}.technique-index-copy>span{max-width:70ch;color:var(--muted);font-size:.82rem;line-height:1.6}.technique-index-action{color:var(--blue);font-size:.72rem;font-weight:750;white-space:nowrap}.coaching-preview-row .technique-index-number,.coaching-preview-row .technique-index-action{color:var(--sage-dark)}@media(hover:hover)and (pointer:fine){.technique-index-row:hover{padding-inline:10px;color:var(--blue)}}.resource-practice{max-width:760px;margin:clamp(90px,13vw,170px) auto 0;text-align:center}.resource-practice p{max-width:60ch;margin:22px auto 28px;color:var(--muted);line-height:1.72}.resource-links{max-width:900px;margin:clamp(90px,13vw,160px) auto 0}.resource-links h2{margin-bottom:28px}.resource-links>a{padding:24px 0;display:grid;grid-template-columns:minmax(170px,.4fr) minmax(0,1fr);gap:34px;border-top:1px solid rgba(16,42,67,.15);color:var(--ink)}.resource-links>a span{color:var(--muted);line-height:1.6}.resource-footer{flex-wrap:wrap}.resource-actions{margin-top:32px;display:flex;flex-wrap:wrap;gap:12px}.printable-hero{margin-bottom:72px}.printable-hero h1{max-width:14ch;font-size:clamp(2.8rem,6.5vw,5.8rem)}.printable-sheet{width:min(100%,840px);min-height:1080px;margin:0 auto 48px;padding:clamp(32px,6vw,70px);display:flex;flex-direction:column;align-items:center;border:1px solid rgba(16,42,67,.16);background:#fff;box-shadow:0 22px 70px #102a4314}.printable-sheet-heading{width:100%;margin-bottom:46px;display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.printable-sheet-heading h2{margin:7px 0 0;font-family:var(--serif);font-size:clamp(2rem,5vw,3.3rem);font-weight:560}.printable-sheet-heading>p{margin:0;color:var(--muted);font-size:.78rem;line-height:1.6;text-align:right}.public-sudoku-grid{width:min(100%,610px);aspect-ratio:1;display:grid;grid-template-columns:repeat(9,minmax(0,1fr));grid-template-rows:repeat(9,minmax(0,1fr));border:3px solid var(--ink);background:#fff}.public-sudoku-row{display:contents}.public-sudoku-cell{display:grid;place-items:center;border-right:1px solid #aeb8be;border-bottom:1px solid #aeb8be;color:#2b5e83;font-family:var(--sans);font-size:clamp(1.05rem,3.3vw,1.85rem);font-variant-numeric:tabular-nums}.public-sudoku-cell.given{color:var(--ink);font-weight:780}.public-sudoku-cell.answer{font-weight:620}.public-sudoku-cell.box-right{border-right:3px solid var(--ink)}.public-sudoku-cell.box-bottom{border-bottom:3px solid var(--ink)}.public-sudoku-cell:last-child{border-right:0}.public-sudoku-row:last-child .public-sudoku-cell{border-bottom:0}.printable-instructions{width:min(100%,610px);margin-top:42px;padding-top:28px;border-top:1px solid rgba(16,42,67,.17)}.printable-instructions h3{margin:0 0 14px;font-family:var(--serif);font-size:1.08rem}.printable-instructions ol{margin:0;padding-left:22px;color:var(--ink-soft);font-size:.8rem;line-height:1.65}.printable-permission{width:min(100%,610px);margin:auto 0 0;padding-top:28px;color:var(--muted);font-size:.68rem;line-height:1.5}.embed-hero h1{max-width:14ch}.embed-workspace{margin-top:clamp(70px,11vw,140px);padding-block:clamp(46px,7vw,78px);display:grid;grid-template-columns:minmax(390px,.9fr) minmax(0,1.1fr);gap:clamp(40px,7vw,86px);border-block:1px solid rgba(16,42,67,.15)}.embed-preview,.embed-code-panel{min-width:0}.embed-preview iframe{width:100%;height:720px;margin-top:18px;border:1px solid rgba(16,42,67,.15);border-radius:8px;background:var(--paper)}.embed-code-panel pre{max-width:100%;margin:18px 0;padding:20px;overflow:auto;border:1px solid #ccd4d7;border-radius:6px;background:#f5f7f6;color:var(--ink);font-size:.73rem;line-height:1.7;white-space:pre-wrap;overflow-wrap:anywhere}.embed-code-panel>p{max-width:58ch;color:var(--muted);font-size:.74rem;line-height:1.6}.embed-language{margin-top:22px;display:flex;gap:8px}.embed-language button{min-height:42px;padding:0 14px;border:1px solid #bbc6c8;border-radius:999px;background:transparent;color:var(--ink-soft);font-weight:700;cursor:pointer}.embed-language button.active{border-color:var(--ink);background:var(--ink);color:var(--paper)}.embed-includes{max-width:820px;margin:clamp(80px,12vw,150px) auto 0}.embed-includes ul{margin:32px 0 24px;padding:0;display:grid;list-style:none}.embed-includes li{padding:16px 0;display:flex;gap:12px;align-items:flex-start;border-top:1px solid rgba(16,42,67,.14);color:var(--ink-soft)}.embed-includes li svg{flex:0 0 auto;margin-top:2px;color:var(--sage-dark)}.daily-embed-page{width:min(100% - 32px,610px);margin:0 auto;padding:22px 0 18px;color:var(--ink)}.daily-embed-heading{margin-bottom:8px;display:flex;align-items:end;justify-content:space-between;gap:20px}.daily-embed-heading h1{margin:3px 0 0;font-family:var(--serif);font-size:clamp(1.8rem,8vw,2.65rem);font-weight:560}.daily-embed-heading>p{margin:0 0 5px;color:var(--muted);font-size:.68rem;text-align:right}.daily-embed-instruction{margin:0 0 12px;color:var(--muted);font-size:.74rem}.daily-embed-board{width:100%}.daily-embed-board .sudoku-board{width:100%;box-shadow:0 12px 34px #102a4312}.daily-embed-board .sudoku-cell{font-size:clamp(1rem,5vw,1.75rem)}.daily-embed-pad{margin-top:12px;display:grid;grid-template-columns:repeat(9,minmax(0,1fr));gap:5px}.daily-embed-pad button{min-width:0;min-height:44px;border:1px solid #c4cccd;border-radius:5px;background:#fff;color:var(--ink);font-size:1rem;font-weight:730;cursor:pointer}.daily-embed-pad .daily-embed-erase{grid-column:1 / -1;min-height:38px;display:flex;align-items:center;justify-content:center;gap:7px;color:var(--muted);font-size:.72rem}.daily-embed-status{min-height:24px;margin:8px 0 0;color:var(--sage-dark);font-size:.72rem;font-weight:680;line-height:1.45}.daily-embed-status.mistake{color:#9c3f35}.daily-embed-attribution{display:block;color:var(--blue);font-size:.68rem;font-weight:720;text-align:right}@media(max-width:820px){.resource-method,.technique-index-heading,.embed-workspace{grid-template-columns:minmax(0,1fr)}.embed-preview{max-width:620px;margin:0 auto}}@media(max-width:640px){.resource-header .public-header-actions .text-link:first-child{display:inline-flex}.resource-header-library{display:none!important}.resource-main{width:min(100% - 36px,1160px);padding-top:48px}.resource-hero h1{font-size:clamp(2.65rem,14vw,4rem)}.resource-method{margin-top:72px;gap:24px}.search-guide-coaching-preview{grid-template-columns:1fr;padding:28px 22px}.search-guide-preview-mark{width:44px;height:44px}.technique-index-section{margin-top:68px}.coaching-preview-index{margin-inline:-8px;padding:30px 20px}.technique-index-row{min-height:0;grid-template-columns:34px minmax(0,1fr);gap:12px}.technique-index-action{display:none}.technique-index-copy strong{font-size:1.15rem}.resource-links>a{grid-template-columns:1fr;gap:8px}.printable-sheet{min-height:0;padding:24px 18px 30px}.printable-sheet-heading{margin-bottom:28px;align-items:flex-start}.printable-sheet-heading h2{font-size:1.8rem}.public-sudoku-cell{font-size:clamp(.82rem,5vw,1.35rem)}.embed-preview iframe{height:670px}.daily-embed-page{width:min(100% - 20px,610px);padding-top:14px}.daily-embed-heading{align-items:flex-start}.daily-embed-heading>p{max-width:120px}.daily-embed-pad{grid-template-columns:repeat(5,minmax(0,1fr))}.daily-embed-pad .daily-embed-erase{grid-column:auto}}.puzzles-hub-page{display:flex;flex-direction:column}.member-status{display:inline-flex;align-items:center;gap:8px;padding:9px 13px;border:1px solid #d99a1d;border-radius:999px;background:#fff7df;color:#6e4900;font-size:.75rem;font-weight:800;white-space:nowrap}.puzzle-hub-primary,.member-practice-card,.weekly-challenge-card,.daily-archive-card,.coaching-privilege-preview,.puzzle-list-section{border:1px solid var(--line);border-radius:10px;background:var(--paper);box-shadow:0 16px 42px #102a430e}.puzzle-hub-primary{margin-bottom:18px;padding:24px}.puzzle-hub-primary.resume-panel{display:block;border-top:3px solid var(--sage-dark)}.puzzle-hub-primary-body{display:grid;grid-template-columns:172px minmax(0,1fr);align-items:center;gap:28px}.puzzle-hub-primary-body .mini-board{width:100%}.puzzle-hub-resume-copy{min-width:0}.puzzle-hub-resume-copy h2{margin:5px 0 8px;font-size:clamp(1.65rem,3vw,2.35rem)}.puzzle-hub-resume-copy .difficulty{display:inline-flex}.puzzle-hub-resume-copy p{margin:12px 0 16px;color:var(--muted);font-size:.75rem}.puzzle-hub-resume-copy .button{padding-inline:16px;white-space:nowrap}.daily-picker{display:grid;grid-template-columns:180px minmax(0,1fr);gap:30px;align-items:center;padding:28px}.daily-picker-board{width:min(100%,180px);justify-self:center;padding:9px;border-radius:8px;background:var(--sage-soft)}.daily-picker-copy h2{margin:5px 0 7px;font-size:clamp(1.65rem,3vw,2.25rem)}.daily-picker-copy>p{max-width:570px;margin-bottom:12px;font-size:.76rem}.difficulty-picker{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:15px 0 10px}.difficulty-picker button{min-height:54px;padding:8px 9px;display:grid;align-content:center;gap:2px;border:1px solid var(--line);border-radius:5px;background:#fff;color:var(--ink-soft);cursor:pointer;text-align:left;transition:border-color .15s ease,background-color .15s ease,transform .15s var(--ease-out-ui)}.difficulty-picker button strong{font-size:.7rem;font-weight:800}.difficulty-picker button small{color:var(--muted);font-size:.56rem;font-weight:650}.difficulty-picker button.active{border-color:var(--ink);background:var(--ink);color:#fff}.difficulty-picker button.active small{color:inherit}.difficulty-picker button:active{transform:scale(.97)}.daily-selection-meta{color:var(--muted);font-size:.7rem}.difficulty-recommendation{margin-top:13px;padding:11px 12px;display:grid;grid-template-columns:20px minmax(0,1fr);align-items:start;gap:9px;border-left:3px solid var(--sage-dark);background:var(--sage-soft)}.difficulty-recommendation>svg{width:18px;color:var(--sage-dark)}.difficulty-recommendation span{display:grid;gap:3px}.difficulty-recommendation strong{font-size:.68rem}.difficulty-recommendation small{color:var(--ink-soft);font-size:.61rem;line-height:1.45}.today-complete-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px;border-color:#cbdcc6;background:var(--sage-soft)}.today-complete-card>svg{color:var(--sage-dark)}.today-complete-card h2,.today-complete-card p{margin-bottom:0}.member-practice-card{margin-top:18px;padding:30px;border-color:var(--ink);background:var(--ink);color:#fff;box-shadow:0 20px 45px #102a432e}.member-practice-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.member-practice-heading .eyebrow,.member-practice-heading p{color:#cbd8e3}.member-practice-heading h2{margin:5px 0 8px;font-size:2rem}.member-practice-heading p{margin:0;font-size:.8rem}.member-practice-heading>svg{color:var(--saffron)}.member-practice-controls{display:grid;grid-template-columns:minmax(150px,.7fr) minmax(190px,1fr) auto;align-items:end;gap:12px;margin-top:24px}.member-practice-controls label,.archive-controls label{display:grid;gap:7px;color:inherit;font-size:.65rem;font-weight:750}.member-practice-controls select,.archive-controls select,.archive-controls input{width:100%;min-height:43px;padding:9px 11px;border:1px solid #c9d2da;border-radius:5px;background:#fff;color:var(--ink);font:inherit}.member-puzzle-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:16px;margin-top:16px}.weekly-challenge-card,.daily-archive-card{padding:26px}.weekly-challenge-card{border-color:#e7c46e;background:#fff8e7}.weekly-challenge-card h2,.daily-archive-card h2{margin:5px 0 9px}.weekly-challenge-card p{font-size:.77rem}.archive-controls{display:grid;grid-template-columns:minmax(150px,1fr) minmax(120px,.7fr);gap:10px;margin:18px 0 14px}.coaching-privilege-preview{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(230px,.9fr) auto;align-items:center;gap:30px;margin-top:18px;padding:28px 30px;border-color:#e2bd5c;background:linear-gradient(120deg,#fffaf0,#fff4cf);order:1}.coaching-privilege-preview h2{margin:5px 0 8px}.coaching-privilege-preview p{margin:0;font-size:.78rem}.coaching-privilege-preview ul{margin:0;padding:0;display:grid;gap:10px;list-style:none;font-size:.73rem;font-weight:700}.coaching-privilege-preview li{display:flex;align-items:center;gap:8px}.coaching-privilege-preview li svg{flex:0 0 auto;color:#97660b}.puzzle-list-section{margin-top:16px;padding:24px 26px}.puzzle-list-section.is-empty{padding:19px 26px}.puzzle-list-section.is-empty .section-title{align-items:center}.puzzle-session-list{display:grid;gap:1px;margin-top:15px;overflow:hidden;border:1px solid #e4dfd5;border-radius:6px;background:#e4dfd5}.puzzle-session-list>a{min-height:62px;padding:12px 15px;display:flex;align-items:center;justify-content:space-between;gap:16px;background:#fff;transition:background-color .15s ease}.puzzle-session-list>a:hover{background:var(--sage-soft)}.puzzle-session-list span{display:grid;gap:4px}.puzzle-session-list strong{font-family:var(--serif);font-size:.95rem;font-weight:600}.puzzle-session-list small{color:var(--muted);font-size:.64rem}.puzzle-history-empty{min-height:40px;margin-top:8px;padding:0;display:flex;align-items:center;gap:11px;border:0;color:var(--muted)}.puzzle-history-empty p{margin:0;font-size:.75rem}.puzzle-hub-notebook{margin-top:16px}.technique-review-locked{align-content:start;background:#fff9e9}.technique-review-locked>svg{margin-bottom:12px;color:#a36e08}.technique-review-locked h2{margin:4px 0 8px;font-size:1.4rem}.technique-review-locked p{font-size:.73rem}.technique-review-locked>.button{margin-top:8px}@media(max-width:1000px){.coaching-privilege-preview{grid-template-columns:minmax(0,1fr) minmax(250px,1fr);align-items:start;gap:20px 24px}.coaching-privilege-preview .button{grid-column:2;justify-self:start}}@media(max-width:860px){.daily-picker{grid-template-columns:160px minmax(0,1fr);gap:24px}.member-practice-controls{grid-template-columns:1fr 1fr}.member-practice-controls .button{grid-column:1 / -1;justify-self:start}.coaching-privilege-preview{grid-template-columns:1fr 1fr}.coaching-privilege-preview .button{justify-self:start}}@media(max-width:680px){.member-status{margin-top:5px}.member-puzzle-grid,.coaching-privilege-preview{grid-template-columns:minmax(0,1fr)}.coaching-privilege-preview .button{grid-column:auto}.daily-picker,.puzzle-hub-primary,.member-practice-card{padding:22px}.daily-picker{grid-template-columns:minmax(0,1fr)}.daily-picker-board{display:none}.puzzle-hub-primary-body{grid-template-columns:150px minmax(0,1fr);gap:20px}.puzzle-hub-primary-body .mini-board{width:150px}.difficulty-picker{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}.difficulty-picker button{min-height:52px;padding-inline:7px}.difficulty-picker button strong{font-size:.63rem}.difficulty-picker button small{font-size:.52rem}.member-practice-controls,.archive-controls{grid-template-columns:minmax(0,1fr)}.member-practice-controls .button{grid-column:auto}.today-complete-card{grid-template-columns:auto minmax(0,1fr)}.today-complete-card .button{grid-column:1 / -1;justify-self:start}}.progress-learning-intro .streak{flex:0 0 auto}.progress-overview,.progress-techniques,.progress-history,.progress-coaching{border:1px solid var(--line);border-radius:8px;background:var(--paper)}.progress-overview{margin-bottom:16px;padding:26px 28px;display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:34px}.progress-overview-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.progress-overview-heading h2{margin:6px 0 0;font-size:1.55rem}.progress-overview-heading>strong{font-family:var(--serif);font-size:1.55rem;font-weight:500}.lesson-progress-track{height:8px;margin:19px 0;overflow:hidden;border-radius:999px;background:var(--sage)}.lesson-progress-track>span{height:100%;display:block;border-radius:inherit;background:var(--saffron)}.progress-next-lesson{min-height:54px;padding:10px 13px;display:flex;align-items:center;justify-content:space-between;gap:18px;border-radius:5px;background:var(--sage-soft);color:var(--ink);transition:background-color .15s ease,transform .15s ease}.progress-next-lesson span{display:grid;gap:2px}.progress-next-lesson small{color:var(--sage-dark);font-size:.61rem;font-weight:800;text-transform:uppercase}.progress-next-lesson strong{font-size:.76rem}.progress-next-lesson:hover{background:var(--sage);transform:translateY(-1px)}.progress-next-lesson:focus-visible{outline:3px solid var(--saffron);outline-offset:2px}.progress-metrics{margin:0;display:grid;grid-template-columns:repeat(3,1fr);align-items:center}.progress-metrics>div{min-width:0;padding:4px 14px;border-left:1px solid var(--line)}.progress-metrics>div:first-child{border-left:0}.progress-metrics dt{min-height:31px;color:var(--muted);font-size:.62rem;line-height:1.35}.progress-metrics dd{margin:5px 0 0;font-family:var(--serif);font-size:1.45rem}.progress-techniques,.progress-history{margin-bottom:16px;padding:24px 28px}.progress-techniques .section-title,.progress-history .section-title{align-items:center}.progress-techniques .section-title h2,.progress-history .section-title h2{margin-top:5px;font-size:1.45rem}.technique-development-list{margin-top:18px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));-moz-column-gap:28px;column-gap:28px}.technique-development-list>div{min-height:46px;display:grid;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:8px;border-top:1px solid var(--line);font-size:.74rem}.technique-development-list svg{width:16px;color:var(--line)}.technique-development-list svg.complete{color:var(--sage-dark)}.technique-development-list small{color:var(--muted);font-size:.61rem}.technique-learning-map{margin-top:18px;border-top:1px solid var(--line)}.technique-map-legend{padding:12px 42px 10px min(42%,310px);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;color:var(--muted);font-size:.52rem;line-height:1.25;text-align:center}.technique-map-level+.technique-map-level{margin-top:18px}.technique-map-level h3{margin:0;padding:10px 0 7px;color:var(--sage-dark);font-family:var(--sans);font-size:.57rem;letter-spacing:.13em;text-transform:uppercase}.technique-map-row{min-height:56px;display:grid;grid-template-columns:minmax(180px,.8fr) minmax(180px,1fr) 20px;align-items:center;gap:15px;border-top:1px solid var(--line);color:var(--ink);text-decoration:none}.technique-map-row:hover .technique-map-name strong,.technique-map-row:focus-visible .technique-map-name strong{color:var(--sage-dark)}.technique-map-name{display:grid;gap:2px}.technique-map-name strong{font-family:var(--serif);font-size:.76rem}.technique-map-name small{color:var(--muted);font-size:.55rem}.technique-map-stages{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.technique-map-stages i{position:relative;display:grid;place-items:center;color:#c8ccc8}.technique-map-stages i:not(:last-child):after{content:"";position:absolute;left:calc(50% + 10px);width:calc(100% - 20px);height:1px;background:var(--line)}.technique-map-stages i.complete{color:var(--sage-dark)}.technique-map-stages svg,.technique-map-row>svg{width:16px}.technique-map-row>svg{color:var(--muted)}.mini-board span.evidence{background:#edf5e9}.mini-board span.target{position:relative;z-index:1;background:#fff3c9;box-shadow:inset 0 0 0 2px var(--saffron)}.technique-moment{position:relative;z-index:4;width:var(--puzzle-board-size);min-height:62px;margin:10px auto 0;padding:10px 42px 10px 12px;display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:9px;border:1px solid #a8c0a8;border-radius:11px;background:var(--paper);box-shadow:0 16px 42px #102a4333;animation:technique-moment-arrive .36s var(--ease-out-ui) both}.technique-moment>svg{color:var(--sage-dark)}.technique-moment>span{min-width:0;display:grid;gap:1px}.technique-moment small{color:var(--muted);font-size:.52rem}.technique-moment strong{overflow:hidden;font-family:var(--serif);font-size:.78rem;text-overflow:ellipsis;white-space:nowrap}.technique-moment>button:not(.technique-moment-close){min-height:34px;padding:0 10px;border:1px solid #9eb89f;border-radius:999px;background:var(--sage-soft);color:var(--sage-dark);font-size:.59rem;font-weight:800;cursor:pointer}.technique-moment-close{position:absolute;top:6px;right:6px;width:30px;height:30px;padding:0;display:grid;border:0;background:transparent;color:var(--muted);cursor:pointer;place-items:center}.technique-moment-close svg{width:15px}.technique-teaching-dialog{width:min(100%,720px);padding:28px;border:1px solid var(--line);border-radius:14px;background:var(--paper);box-shadow:0 28px 80px #0d2d4440}.technique-teaching-dialog h2{margin:6px 0 8px;font-size:1.6rem}.technique-teaching-dialog>p{margin:0;color:var(--muted);font-size:.74rem}.technique-teaching-evidence{margin-top:22px;padding-top:22px;display:grid;grid-template-columns:minmax(210px,.75fr) minmax(260px,1fr);align-items:center;gap:30px;border-top:1px solid var(--line)}.technique-teaching-evidence .mini-board{width:100%;max-width:300px;justify-self:center}.technique-teaching-evidence ol{margin:0;padding:0;display:grid;gap:15px;list-style:none;counter-reset:teaching-step}.technique-teaching-evidence li{position:relative;padding-left:34px;display:grid;gap:3px;counter-increment:teaching-step}.technique-teaching-evidence li:before{content:counter(teaching-step);position:absolute;left:0;top:0;width:23px;height:23px;display:grid;border-radius:50%;background:var(--sage-soft);color:var(--sage-dark);font-size:.61rem;font-weight:800;place-items:center}.technique-teaching-evidence strong{font-size:.69rem}.technique-teaching-evidence span{color:var(--ink-soft);font-size:.67rem;line-height:1.5}.technique-teaching-actions{margin-top:24px;display:flex;justify-content:flex-end;gap:10px}@keyframes technique-moment-arrive{0%{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@media(max-width:760px){.technique-moment{position:relative;width:min(420px,calc(100vw - 24px))}.technique-teaching-backdrop{align-items:end}.technique-teaching-dialog{max-height:calc(100dvh - 28px - var(--safe-area-bottom));padding:22px 18px;overflow-y:auto;border-radius:14px 14px 0 0}.technique-teaching-evidence{grid-template-columns:minmax(0,1fr);gap:20px}.technique-teaching-evidence .mini-board{max-width:250px}.technique-teaching-actions{display:grid}.technique-map-legend{padding-right:34px;padding-left:46%}.technique-map-row{grid-template-columns:minmax(130px,.8fr) minmax(125px,1fr) 18px;gap:8px}}@media(max-width:460px){.technique-moment{padding-left:10px;grid-template-columns:24px minmax(0,1fr) auto}.technique-moment>button:not(.technique-moment-close){padding-inline:8px}.technique-map-legend{padding-left:0;grid-template-columns:repeat(3,minmax(0,1fr))}.technique-map-row{padding:9px 0;grid-template-columns:minmax(0,1fr) 110px 16px}.technique-map-name strong{font-size:.7rem}.technique-map-name small{font-size:.51rem}}.progress-techniques-empty{margin:17px 0 0;padding-top:16px;border-top:1px solid var(--line);color:var(--muted);font-size:.74rem}.progress-history-list{margin-top:17px}.progress-history-list article{min-height:66px;display:grid;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:13px;border-top:1px solid var(--line)}.progress-history-list article>svg{width:18px;color:var(--sage-dark)}.progress-history-list h3{margin:0 0 3px;font-size:.88rem}.progress-history-list p{margin:0;color:var(--muted);font-size:.65rem}.progress-history-empty{min-height:184px;margin-top:15px;padding:16px 24px;display:grid;grid-template-columns:150px minmax(0,1fr);align-items:center;justify-content:center;gap:32px;border-top:1px solid var(--line)}.progress-history-empty img{width:150px;height:142px;border-radius:28px;-o-object-fit:contain;object-fit:contain}.progress-history-empty>div{justify-self:start}.progress-history-empty p{max-width:390px;margin-bottom:16px;color:var(--muted);font-size:.75rem}.progress-coaching{min-height:170px;padding:26px 28px;display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:18px}.progress-coaching.is-locked{border-color:var(--saffron);background:color-mix(in srgb,var(--paper) 72%,var(--saffron) 28%)}.progress-coaching>svg{align-self:start;margin-top:3px;color:var(--saffron-ink)}.progress-coaching h2{margin:6px 0;font-size:1.5rem}.progress-coaching p{max-width:570px;margin:0;color:var(--ink-soft);font-size:.74rem;line-height:1.55}@media(max-width:760px){.progress-learning-intro .streak{padding-bottom:0}.progress-overview{padding:22px 20px;grid-template-columns:minmax(0,1fr);gap:20px}.progress-metrics{padding-top:18px;border-top:1px solid var(--line)}.progress-metrics>div{padding-inline:10px}.progress-techniques,.progress-history{padding:22px 20px}.technique-development-list{grid-template-columns:minmax(0,1fr)}.progress-history-empty{min-height:160px;padding-inline:4px;grid-template-columns:105px minmax(0,1fr);gap:20px}.progress-history-empty img{width:105px;height:105px;border-radius:22px}.progress-coaching{min-height:0;padding:23px 20px;grid-template-columns:28px minmax(0,1fr)}.progress-coaching .button{grid-column:2;justify-self:start}}@media(max-width:420px){.progress-overview-heading h2,.progress-overview-heading>strong{font-size:1.3rem}.progress-techniques .section-title{align-items:flex-start;flex-direction:column;gap:10px}.progress-history-empty{padding-top:20px;grid-template-columns:minmax(0,1fr);text-align:center}.progress-history-empty img,.progress-history-empty>div{justify-self:center}.progress-history-list article{grid-template-columns:22px minmax(0,1fr);padding:12px 0}.progress-history-list .text-link{grid-column:2;justify-self:start}}@media(max-width:780px){.puzzle-hub-primary{margin-bottom:16px;padding:16px}.puzzle-hub-primary-body{grid-template-columns:clamp(140px,40vw,150px) minmax(0,1fr);gap:16px}.puzzle-hub-primary-body .mini-board{width:100%}.puzzle-hub-resume-copy h2{margin:4px 0 6px;font-size:1.35rem}.puzzle-hub-resume-copy p{margin:8px 0 10px}.puzzle-hub-resume-copy .button{min-height:44px;padding-inline:12px}.coaching-privilege-preview{gap:14px;margin-top:16px;padding:16px}.coaching-privilege-preview h2{margin:4px 0 6px;font-size:1.35rem}.coaching-privilege-preview p{font-size:.72rem}.coaching-privilege-preview ul{gap:7px;font-size:.69rem}.puzzle-list-section,.puzzle-list-section.is-empty{margin-top:16px;padding:16px}.lessons-page .library-count{display:block;margin-top:10px;padding:0;font-size:.66rem}.review-queue{margin-bottom:16px;padding:16px;gap:12px}.review-queue h2{font-size:1.2rem}.review-queue>div:last-child{width:100%;justify-content:flex-start}.review-queue .button{width:100%;min-height:44px}.lesson-row{min-height:108px;padding:14px 4px;grid-template-columns:38px minmax(0,1fr) 22px}.lesson-index{padding-top:4px}.lesson-row-copy h2{margin:4px 0;font-size:1.2rem}.lesson-row-copy p{font-size:.69rem;line-height:1.45}.advanced-preview{margin-top:16px;padding:20px 0;gap:14px}.advanced-preview h2{margin:5px 0 6px;font-size:1.4rem}.advanced-preview p{font-size:.74rem}.progress-overview,.progress-techniques,.progress-history,.progress-coaching{padding:16px}.progress-overview{gap:16px}.progress-overview-heading h2{margin-top:5px}.lesson-progress-track{margin:14px 0}.progress-next-lesson{min-height:48px;padding:8px 11px}.progress-metrics{padding-top:14px}.progress-metrics>div{padding-inline:8px}.progress-techniques .section-title h2,.progress-history .section-title h2{margin-top:4px;font-size:1.3rem}.technique-development-list{margin-top:12px}.progress-history-empty{min-height:142px;margin-top:12px;padding:14px 0 0;grid-template-columns:84px minmax(0,1fr);gap:16px;text-align:left}.progress-history-empty img{width:84px;height:84px;border-radius:18px}.progress-history-empty>div{justify-self:start}.progress-history-empty p{margin-bottom:12px;font-size:.7rem}.progress-history-empty .button{min-height:44px}.progress-coaching{gap:12px}.progress-coaching h2{margin:4px 0;font-size:1.3rem}.progress-coaching p{font-size:.7rem}.progress-coaching .button{min-height:44px}}@media(max-width:340px){.progress-history-empty{grid-template-columns:minmax(0,1fr);text-align:center}.progress-history-empty img,.progress-history-empty>div{justify-self:center}}@media(max-width:389px){.puzzle-hub-primary-body{grid-template-columns:minmax(0,1fr)}.puzzle-hub-primary-body .mini-board{width:min(100%,172px);justify-self:center}}.lesson-proof-metric{min-width:0}.lesson-proof-metric b{display:block;font-style:normal}.lesson-proof-metric.is-resolved b{animation:lesson-proof-resolve .26s ease-out both}.candidate-primer-visual.has-proof-meter{padding:20px;grid-template-columns:minmax(0,1fr) 112px;gap:16px}.candidate-primer-visual.has-proof-meter .lesson-board-figure{width:min(100%,460px)}.candidate-count-meter{min-height:174px;padding-left:18px;display:flex;flex-direction:column;justify-content:center;border-left:1px solid #c9c8bd}.candidate-count-meter>span{color:var(--muted);font-size:.54rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.candidate-count-meter b{margin:9px 0 4px;color:var(--ink);font:700 clamp(2.7rem,6vw,4.4rem) / .9 var(--serif)}.candidate-count-meter small{max-width:86px;color:var(--muted);font-size:.64rem;line-height:1.35}.candidate-count-meter .is-resolved b{color:var(--sage-dark)}.naked-proof-meter .lesson-proof-metric{display:flex;flex-direction:column}.naked-proof-meter .lesson-proof-metric b{margin:10px 0 4px;color:var(--ink);font:700 clamp(3.5rem,8vw,5.4rem) / .9 var(--serif)}.naked-proof-meter .lesson-proof-metric small{max-width:92px;color:var(--muted);font-size:.68rem;line-height:1.4}.naked-proof-meter.resolved .lesson-proof-metric b,.hidden-digit-lens .hidden-place-count.is-resolved b{color:var(--sage-dark)}.hidden-digit-lens .hidden-candidate-count{margin-top:9px;padding-top:9px;border-top:1px solid rgba(55,91,69,.18)}.hidden-digit-lens .hidden-candidate-count b{color:#8b6423}.hidden-pair-evidence-stack{min-width:0;display:grid;gap:13px}.hidden-pair-balance{animation:lesson-evidence-arrive .22s ease-out both}.hidden-pair-balance>span{margin-bottom:4px}.hidden-pair-balance>div{min-height:62px;padding:8px}.hidden-pair-balance>div strong{font-size:.66rem}.hidden-pair-balance>em{margin-top:4px}.lesson-coverage-counts{display:grid;grid-template-columns:repeat(2,auto);align-items:end;gap:12px}.lesson-coverage-counts p{margin:0;display:grid;gap:2px;text-align:right}.lesson-coverage-counts small{color:#718085;font-size:.42rem;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.lesson-coverage-counts strong{color:#183f53;font-size:.63rem;animation:lesson-proof-resolve .22s ease-out both}.swordfish-net-heading{grid-template-columns:minmax(0,1fr) auto}.xwing-coverage-counts{padding:7px 8px;border:1px solid rgba(40,88,107,.24);background:#f8fbfaa3}.xwing-coverage-counts p{text-align:left}.lesson-outcome-merge-copy{min-width:0;display:grid;gap:2px}.lesson-outcome-merge-copy>strong{text-transform:none}.lesson-outcome-merge-copy>em{color:#5e6e68;font-size:.47rem;font-style:normal;font-weight:750;text-transform:none}.lesson-outcome-merge.is-proved,.lesson-outcome-merge.is-commit{animation:lesson-proof-resolve .24s ease-out both}.xywing-merge .lesson-outcome-merge-copy,.xyzwing-kernel .lesson-outcome-merge-copy{place-items:center;text-align:center}@keyframes lesson-evidence-arrive{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes lesson-proof-resolve{0%{opacity:.55}to{opacity:1}}@media(max-width:880px){.candidate-primer-visual.has-proof-meter{padding:18px;grid-template-columns:minmax(0,1fr) 92px;gap:10px}.candidate-count-meter{padding-left:12px}}@container (max-width: 820px){.candidate-primer-visual.has-proof-meter{grid-template-columns:minmax(0,1fr)}.candidate-count-meter{width:min(100%,460px);min-height:0;padding:8px 0 0;flex-direction:row;align-items:baseline;justify-content:flex-start;gap:9px;border-top:1px solid #c9c8bd;border-left:0}.candidate-count-meter b{margin:0;font-size:2rem}.candidate-count-meter small{max-width:none}}@media(prefers-reduced-motion:reduce){.lesson-proof-metric.is-resolved b,.hidden-pair-balance,.lesson-coverage-counts strong,.lesson-outcome-merge.is-proved,.lesson-outcome-merge.is-commit{animation:none}}@media print{@page{size:auto;margin:14mm}html,body,.public-resource-page,.printable-resource-page{background:#fff!important;print-color-adjust:exact;-webkit-print-color-adjust:exact}.no-print,.resource-header,.printable-hero{display:none!important}.resource-main{width:auto;margin:0;padding:0}.printable-sheet{width:100%;min-height:calc(100vh - 28mm);margin:0;padding:8mm;border:0;background:#fff!important;box-shadow:none;print-color-adjust:exact;-webkit-print-color-adjust:exact;-moz-column-break-after:page;break-after:page;page-break-after:always}.answer-sheet{-moz-column-break-after:auto;break-after:auto;page-break-after:auto}.printable-sheet-heading{margin-bottom:8mm}.public-sudoku-grid{width:145mm;max-width:100%}.public-sudoku-cell{font-size:17pt;print-color-adjust:exact;-webkit-print-color-adjust:exact}.printable-instructions{margin-top:8mm;padding-top:5mm}.printable-permission{padding-top:5mm}}
