@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-italic-B5xAaiFk.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-italic-DzZdc28x.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-italic-DcOpz6Lw.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-italic-CILZdfAp.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-italic-K3WlGtc8.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-italic-0pjOp8NU.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-italic-DpCbqKDY.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-cyrillic-ext-wght-normal-cHuGMAiY.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-cyrillic-wght-normal-DwHjdM4S.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-greek-wght-normal-ece1310W.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-vietnamese-wght-normal-D-yuW59g.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-latin-ext-wght-normal-CxNHBx-q.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-latin-wght-normal-D9elroTD.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Source Serif 4 Variable";font-style:italic;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-cyrillic-ext-wght-italic-BXuSHrjR.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Source Serif 4 Variable";font-style:italic;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-cyrillic-wght-italic-RLIThRd4.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"Source Serif 4 Variable";font-style:italic;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-greek-wght-italic-F2ziEGcb.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:"Source Serif 4 Variable";font-style:italic;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-vietnamese-wght-italic-C3q834ic.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Source Serif 4 Variable";font-style:italic;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-latin-ext-wght-italic-CpkvI5hy.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Source Serif 4 Variable";font-style:italic;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-latin-wght-italic-D2yaqPoE.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Caveat Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/assets/caveat-cyrillic-ext-wght-normal-DiMfzA-V.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Caveat Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/assets/caveat-cyrillic-wght-normal-D5lnP6kL.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Caveat Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/assets/caveat-latin-ext-wght-normal-Byk3UhVp.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Caveat Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/assets/caveat-latin-wght-normal-C1hSzPvX.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{color:#102a43;font-synthesis:none;--font-sans:"Inter Variable", ui-sans-serif, system-ui, sans-serif;--font-display:"Source Serif 4 Variable", Georgia, "Times New Roman", serif;--font-mono:ui-monospace, "SFMono-Regular", Consolas, "Liberation Mono", monospace;--font-handwritten:"Caveat Variable", cursive;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--radius-control:8px;--radius-surface:14px;--radius-feature:20px;--control-min-target:44px;--control-comfortable-target:48px;--motion-duration-fast:.15s;--motion-duration-ui:.22s;--motion-duration-panel:.28s;--motion-duration-feedback:.24s;--motion-duration-press:.12s;--motion-distance-small:4px;--motion-distance-medium:10px;--ease-out-ui:cubic-bezier(.23, 1, .32, 1);--ease-drawer:cubic-bezier(.32, .72, 0, 1);--color-canvas:#f7f3ea;--color-canvas-deep:#eee8dc;--color-surface:#fff;--color-surface-soft:#f4f5ee;--color-surface-raised:#fffdf8;--color-text:#102a43;--color-text-soft:#29455f;--color-text-muted:#596870;--color-text-subtle:#5d665f;--color-text-on-strong:#fffdf8;--color-border:#d8d2c7;--color-border-strong:#b9b1a4;--color-accent:#efa91e;--color-accent-strong:#7a5200;--color-accent-soft:#fff4d6;--color-success:#3f684f;--color-success-soft:#edf4ea;--color-success-pale:#f2f7ef;--color-success-fill:#dce8d7;--color-danger:#943d35;--color-danger-fill:#c85a4e;--color-danger-soft:#f8e6e2;--color-info:#1f669a;--color-info-soft:#e8eff5;--color-focus:#7a5200;--text-primary:var(--color-text);--text-secondary:var(--color-text-soft);--text-muted:var(--color-text-muted);--text-on-strong:var(--color-text-on-strong);--canvas:var(--color-canvas);--canvas-deep:var(--color-canvas-deep);--border-strong:var(--color-border-strong);--accent-border:var(--color-accent-strong);--accent-surface:var(--color-accent-soft);--accent-surface-strong:color-mix(in srgb, var(--color-accent) 32%, var(--color-surface));--accent-text:var(--color-accent-strong);--success-border:var(--color-success);--success-surface:var(--color-success-soft);--success-text:var(--color-success);--danger-border:var(--color-danger);--danger-surface:var(--color-danger-soft);--danger-text-semantic:var(--color-danger);--info-surface:var(--color-info-soft);--info-text:var(--color-info);--control-face:color-mix(in srgb, var(--color-surface) 94%, var(--color-canvas-deep));--control-face-hover:color-mix(in srgb, var(--color-info-soft) 64%, var(--color-surface));--control-face-pressed:color-mix(in srgb, var(--color-surface) 78%, var(--color-text));--control-face-disabled:color-mix(in srgb, var(--color-surface) 82%, var(--color-border));--control-note-face:color-mix(in srgb, var(--color-info-soft) 70%, var(--color-surface));--control-note-border:color-mix(in srgb, var(--color-info) 48%, var(--color-border));--feedback-placement:var(--color-success);--feedback-assisted:var(--color-info);--feedback-independent:var(--color-accent-strong);--feedback-rejected:var(--color-danger);--feedback-history:var(--color-info);--feedback-candidate:var(--color-accent-strong);--color-board-cell:#fff;--color-board-line:#cfd6da;--color-board-line-strong:#7d8b94;--color-board-related:#f2f4ef;--color-board-match:#e4ede0;--color-board-selected:#dce9f4;--color-board-value:#1f669a;--color-board-candidate:#587184;--color-board-selection-border:#2d6793;--color-board-guide:#fff8e5;--color-board-target:#ffe8a8;--color-board-error:#f8e6e2;--color-board-evidence:#245b8a;--color-board-target-border:#704a00;--color-board-goal:#356746;--color-board-danger:#8d302a;--color-board-recovery:#275d78;--edge-subtle:color-mix(in srgb, var(--color-text) 12%, transparent);--edge-strong:color-mix(in srgb, var(--color-text) 22%, transparent);--shadow:0 18px 50px color-mix(in srgb, var(--color-text) 8%, transparent);--shadow-border:0 0 0 1px color-mix(in srgb, var(--color-text) 6%, transparent), 0 1px 2px -1px color-mix(in srgb, var(--color-text) 6%, transparent), 0 2px 4px color-mix(in srgb, var(--color-text) 4%, transparent);--shadow-border-hover:0 0 0 1px color-mix(in srgb, var(--color-text) 8%, transparent), 0 1px 2px -1px color-mix(in srgb, var(--color-text) 8%, transparent), 0 3px 7px color-mix(in srgb, var(--color-text) 6%, transparent);--shadow-control:0 8px 20px color-mix(in srgb, var(--color-text) 16%, transparent);--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);--visual-viewport-height:100dvh;--visual-viewport-offset-top:0px;--keyboard-inset:0px;--duration-fast:var(--motion-duration-fast);--duration-ui:var(--motion-duration-ui);--ink:var(--color-text);--ink-soft:var(--color-text-soft);--ink-muted:var(--color-text-subtle);--ivory:var(--color-canvas);--paper:var(--color-surface-raised);--paper-bright:var(--color-surface);--paper-deep:var(--color-canvas-deep);--surface:var(--color-surface);--surface-soft:var(--color-surface-soft);--surface-raised:var(--color-surface-raised);--line:var(--color-border);--line-strong:var(--color-border-strong);--border:var(--color-border);--border-subtle:var(--color-border);--muted:var(--color-text-muted);--sage:var(--color-success-fill);--sage-deep:var(--color-success);--sage-soft:var(--color-success-soft);--sage-pale:var(--color-success-pale);--sage-light:var(--color-success-fill);--sage-dark:var(--color-success);--saffron:var(--color-accent);--saffron-dark:var(--color-accent-strong);--saffron-ink:var(--color-accent-strong);--saffron-soft:var(--color-accent-soft);--coral:var(--color-danger-fill);--coral-dark:var(--color-danger);--coral-soft:var(--color-danger-soft);--danger:var(--color-danger);--danger-text:var(--color-danger);--error:var(--color-danger);--error-soft:var(--color-danger-soft);--blue:var(--color-info);--blue-wash:var(--color-info-soft);--navy:var(--color-text);--focus-ring:var(--color-focus);--ink-fill:var(--color-text);--on-ink:var(--color-text-on-strong);--accent-ink:var(--color-text);--toggle-off:#c9cbc8;--board-cell:var(--color-board-cell);--board-line:var(--color-board-line);--board-related:var(--color-board-related);--board-match:var(--color-board-match);--board-selected:var(--color-board-selected);--board-value:var(--color-board-value);--board-candidate:var(--color-board-candidate);--board-selection-border:var(--color-board-selection-border);--board-guide:var(--color-board-guide);--board-target:var(--color-board-target);--board-error:var(--color-board-error);--serif:var(--font-display);--sans:var(--font-sans);--handwritten:var(--font-handwritten);--handwritten-ink:#7a858a;--display:var(--font-display);--active-control-surface:color-mix(in srgb, var(--surface) 82%, var(--saffron) 18%);--active-control-border:color-mix(in srgb, var(--saffron) 76%, var(--ink) 24%);--active-control-shadow:inset 0 0 0 1px var(--active-control-border), inset 0 1px 0 color-mix(in srgb, var(--surface) 72%, transparent), 0 1px 2px color-mix(in srgb, var(--ink) 10%, transparent);background:#f5f0e6;font-family:Inter Variable,ui-sans-serif,system-ui,sans-serif}@supports not (height:100dvh){:root{--visual-viewport-height:100vh}}html[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#edf2f5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--color-canvas:#111820;--color-canvas-deep:#0d141b;--color-surface:#1b2732;--color-surface-soft:#202d35;--color-surface-raised:#202d38;--color-text:#edf2f5;--color-text-soft:#c1ccd4;--color-text-muted:#9eacb6;--color-text-subtle:#a9b4bc;--color-text-on-strong:#f7fafc;--color-border:#34434f;--color-border-strong:#536573;--color-accent:#f2b842;--color-accent-strong:#ffd982;--color-accent-soft:#453b24;--color-success:#91c2a1;--color-success-soft:#20352b;--color-success-pale:#21392d;--color-success-fill:#294638;--color-danger:#f0a198;--color-danger-fill:#e98074;--color-danger-soft:#4b2d2e;--color-info:#8fc3e8;--color-info-soft:#233b4d;--color-focus:#ffd982;--color-board-cell:#1c2833;--color-board-line:#455562;--color-board-line-strong:#93a4b0;--color-board-related:#24343c;--color-board-match:#294238;--color-board-selected:#294d68;--color-board-value:#8fc3e8;--color-board-candidate:#b4c7d1;--color-board-selection-border:#8fc3e8;--color-board-guide:#453b24;--color-board-target:#6b5422;--color-board-error:#4b2d2e;--color-board-evidence:#8fc3e8;--color-board-target-border:#ffd982;--color-board-goal:#91c2a1;--color-board-danger:#f0a198;--color-board-recovery:#8fc3e8;--ink-fill:#263d4f;--accent-ink:#102a43;--toggle-off:#53616b;--handwritten-ink:#b8c1c6;--shadow:0 18px 50px color-mix(in srgb, var(--color-canvas-deep) 72%, transparent);--shadow-border:0 0 0 1px color-mix(in srgb, var(--color-text) 8%, transparent), 0 2px 5px color-mix(in srgb, var(--color-canvas-deep) 68%, transparent);--shadow-border-hover:0 0 0 1px color-mix(in srgb, var(--color-text) 14%, transparent), 0 3px 8px color-mix(in srgb, var(--color-canvas-deep) 74%, transparent);--shadow-control:0 8px 20px color-mix(in srgb, var(--color-canvas-deep) 58%, transparent);--control-face:color-mix(in srgb, var(--color-surface) 92%, var(--color-canvas-deep));--control-face-hover:color-mix(in srgb, var(--color-info-soft) 72%, var(--color-surface));--control-face-pressed:color-mix(in srgb, var(--color-surface) 76%, var(--color-text));--control-face-disabled:color-mix(in srgb, var(--color-surface) 76%, var(--color-border));--control-note-face:color-mix(in srgb, var(--color-info-soft) 78%, var(--color-surface));--control-note-border:color-mix(in srgb, var(--color-info) 64%, var(--color-border));--feedback-placement:var(--color-success);--feedback-assisted:var(--color-info);--feedback-independent:var(--color-accent-strong);--feedback-rejected:var(--color-danger);--feedback-history:var(--color-info);--feedback-candidate:var(--color-accent-strong);background:#111820}@media (prefers-reduced-motion:reduce){:root{--motion-duration-fast:1ms;--motion-duration-ui:1ms;--motion-duration-panel:1ms;--motion-duration-feedback:1ms;--motion-duration-press:1ms;--motion-distance-small:0px;--motion-distance-medium:0px}}:where(h1,h2,h3,h4,h5,h6,blockquote,figcaption,dt){text-wrap:balance}:where(p,li,dd,td,label){overflow-wrap:break-word;text-wrap:pretty}:where(html){hanging-punctuation:first last;scrollbar-gutter:stable}:where(body){font-optical-sizing:auto;font-synthesis-weight:none}:where(table,output,time,.tabular,[data-numeric]){font-variant-numeric:tabular-nums}::selection{background:color-mix(in srgb, currentColor 18%, transparent)}:where(li)::marker{color:color-mix(in srgb, currentColor 55%, transparent)}:where(img,svg,video,canvas,iframe){max-width:100%}:where(img,video){height:auto}:where(.row,.flex,.grid,[class*=col-])>*{min-width:0}:where(pre,table){max-width:100%}.crisp-truncate{text-box-edge:cap text;text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}*,:before,:after,::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:#3b82f680;--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:0 solid #e5e7eb}:before,:after{--tw-content:""}html,:host{-webkit-text-size-adjust:100%;tab-size:4;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;line-height:1.5}body{line-height:inherit;margin:0}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;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-feature-settings:normal;font-variation-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-feature-settings:inherit;font-variation-settings:inherit;font-family: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:#0000;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button{height:auto}::-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{margin:0;padding:0;list-style:none}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder{opacity:1;color:#9ca3af}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{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media (width>=640px){.container{max-width:640px}}@media (width>=768px){.container{max-width:768px}}@media (width>=1024px){.container{max-width:1024px}}@media (width>=1280px){.container{max-width:1280px}}@media (width>=1536px){.container{max-width:1536px}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.\!visible{visibility:visible!important}.visible{visibility:visible}.invisible{visibility:hidden}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.isolate{isolation:isolate}.block{display:block}.inline{display:inline}.flex{display:flex}.table{display:table}.grid{display:grid}.contents{display:contents}.\!hidden{display:none!important}.hidden{display:none}.rotate-180{--tw-rotate:180deg;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(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)) skewX(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)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.resize{resize:both}.border{border-width:1px}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.ordinal{--tw-ordinal:ordinal;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.shadow{--tw-shadow:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.outline{outline-style:solid}.blur{--tw-blur:blur(8px);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)}.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)}.\!transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter,backdrop-filter!important;transition-duration:.15s!important;transition-timing-function:cubic-bezier(.4,0,.2,1)!important}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter,backdrop-filter;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.sudoku-day-no-hint-notice{border:1px solid color-mix(in srgb, var(--sage-dark) 36%, var(--line));border-radius:var(--radius-control);background:var(--sage-soft);width:min(100%,620px);color:var(--ink);align-items:flex-start;gap:9px;margin:0 auto 10px;padding:11px 13px;display:none}.sudoku-day-no-hint-notice svg{width:18px;color:var(--sage-dark);flex:none}.sudoku-day-no-hint-notice div{gap:2px;display:grid}.sudoku-day-no-hint-notice span{color:var(--ink-soft);font-size:.76rem;line-height:1.4}.sudoku-day-open-coach-notice{border:1px solid color-mix(in srgb, var(--sage-dark) 30%, var(--line));border-radius:var(--radius-control);background:color-mix(in srgb, var(--sage-soft) 76%, var(--paper));width:min(100%,620px);color:var(--ink);align-items:flex-start;gap:9px;margin:0 auto 10px;padding:11px 13px;display:flex}.sudoku-day-open-coach-notice svg{width:18px;color:var(--sage-dark);flex:none}.sudoku-day-open-coach-notice div{gap:2px;display:grid}.sudoku-day-open-coach-notice span{color:var(--ink-soft);font-size:.76rem;line-height:1.4}.sudoku-day-no-hint-panel{border:1px solid color-mix(in srgb, var(--sage-dark) 32%, var(--line));border-radius:var(--radius-feature);background:var(--sage-soft);box-shadow:var(--shadow-border);align-self:start;justify-items:start;padding:28px;display:grid}.sudoku-day-no-hint-panel>svg{width:34px;height:34px;color:var(--sage-dark);margin-bottom:18px}.sudoku-day-no-hint-panel h2{font-family:var(--serif);margin:5px 0 10px;font-size:1.65rem}.sudoku-day-no-hint-panel p{color:var(--ink-soft);margin:0 0 22px;line-height:1.55}@media (width<=780px){.sudoku-day-no-hint-notice{display:flex}.sudoku-day-no-hint-panel{display:none}}.puzzle-number-pad .number-key.number-locked{border-color:var(--active-control-border);background:var(--active-control-surface);color:var(--ink);box-shadow:var(--active-control-shadow);opacity:1;transform:translateY(1px)}.puzzle-number-pad[data-mode=notes] .number-key.number-locked{border-color:var(--active-control-border);background:color-mix(in srgb, var(--blue-wash) 78%, var(--saffron) 22%)}.daily-picker-actions{justify-items:start;gap:10px;display:grid}.quick-practice-link{border:1px solid var(--line);background:var(--paper);width:min(100%,460px);min-height:58px;color:var(--ink);border-radius:5px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;padding:10px 13px;transition:border-color .15s,background-color .15s,transform .15s;display:grid}.quick-practice-link>svg:first-child{color:var(--sage-dark)}.quick-practice-link span{gap:2px;display:grid}.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)}.quick-practice-link:focus-visible{outline:3px solid var(--saffron);outline-offset:2px}.practice-calendar{border:1px solid var(--line);background:var(--paper);border-radius:8px;margin-bottom:16px}.practice-calendar h2{margin:5px 0 4px;font-size:1.45rem}.practice-calendar header p{color:var(--muted);margin:0;font-size:.7rem}.practice-calendar{padding:24px 28px 28px}.practice-calendar>header{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:17px;display:flex}.practice-calendar-legend{color:var(--muted);flex-wrap:wrap;justify-content:flex-end;gap:12px;font-size:.61rem;display:flex}.practice-calendar-legend span{align-items:center;gap:5px;display:inline-flex}.practice-calendar-legend span:before,.practice-calendar-marks i{content:"";border-radius:999px;width:7px;height:7px;display:block}.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{table-layout:fixed;border-collapse:separate;border-spacing:5px;width:100%}.practice-calendar th{color:var(--muted);text-transform:uppercase;padding-bottom:5px;font-size:.58rem;font-weight:800}.practice-calendar td{background:color-mix(in srgb, var(--paper) 74%, var(--sage-soft) 26%);border:1px solid #0000;border-radius:5px;height:50px;padding:0}.practice-calendar td.outside-month{background:0 0}.practice-calendar td>a,.practice-calendar td>span{width:100%;height:100%;color:var(--ink);flex-direction:column;justify-content:space-between;padding:7px;display:flex}.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{outline:3px solid var(--saffron);outline-offset:2px;border-radius:4px}.practice-calendar-day-number{font-family:var(--serif);font-size:.74rem}.practice-calendar-marks{gap:3px;display:flex}@media (width<=760px){.practice-calendar{padding:18px 16px}.practice-calendar>header{flex-direction:column;align-items:flex-start;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);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;scroll-padding-block:calc(var(--safe-area-top) + 16px) calc(var(--safe-area-bottom) + var(--keyboard-inset) + 16px);-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--ivory);overscroll-behavior-x:none;min-width:320px;min-height:100vh;margin:0}button,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}button{font:inherit;color:inherit}:where(a[href],button,input,select,textarea,summary,[tabindex]:not([tabindex="-1"])):focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px;scroll-margin-block:16px}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--serif);letter-spacing:-.025em;text-wrap:balance;font-weight:500}h1{font-size:clamp(2.35rem,4vw,4.4rem);line-height:.98}h2{font-size:clamp(1.4rem,2vw,2rem)}p{color:var(--ink-soft);text-wrap:pretty;line-height:1.65}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:3px;outline:3px solid #efa91ea6}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{top:max(10px, var(--safe-area-top));left:max(10px, var(--safe-area-left));z-index:50;background:var(--ink-fill);color:#fff;transform:translateY(calc(-100% - max(10px, var(--safe-area-top))));transition:transform .15s var(--ease-out-ui);border-radius:4px;padding:10px 14px;font-weight:700;position:fixed}.skip-link:focus{transform:translateY(0)}.mobile-only{display:none!important}.brand{font-family:var(--sans);color:var(--ink);white-space:nowrap;align-items:center;gap:10px;font-size:1.05rem;font-weight:700;line-height:1;display:inline-flex}.brand-mark{background:var(--ivory);-o-object-fit:cover;object-fit:cover;width:38px;height:38px;box-shadow:0 1px 2px color-mix(in srgb, var(--ink) 12%, transparent), 0 6px 16px color-mix(in srgb, var(--ink) 10%, transparent);border:0;border-radius:22.4%;display:block}.mascot{-o-object-fit:contain;object-fit:contain}.asset-fallback{border:1px solid var(--line);background:var(--sage);min-width:80px;min-height:80px;color:var(--ink);font-family:var(--serif);border-radius:50%;place-items:center;font-size:1.25rem;display:grid}.fatal-error{width:min(620px,100% - 40px);min-height:100vh;padding-top:var(--safe-area-top);padding-bottom:var(--safe-area-bottom);flex-direction:column;justify-content:center;align-items:flex-start;margin:0 auto;display:flex}.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{flex-wrap:wrap;gap:10px;display:flex}.public-legal-links{padding:24px max(24px, var(--safe-area-right)) calc(24px + var(--safe-area-bottom)) max(24px, var(--safe-area-left));color:var(--muted);justify-content:center;gap:24px;font-size:.72rem;display:flex}.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);letter-spacing:-.01em;font-weight:700}.legal-page{background:var(--paper);min-height:100vh}.legal-content{width:min(760px,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)}@media (width<=520px){.legal-content h1{overflow-wrap:anywhere}}.legal-content h2{margin:42px 0 10px;font-size:1.45rem}.legal-content p{color:var(--ink-soft);margin:0 0 16px;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{border-top:1px solid var(--line);color:var(--muted);justify-content:center;gap:24px;padding:28px 40px;font-size:.75rem;display:flex}.public-header{width:100%;height:calc(82px + var(--safe-area-top));box-sizing:border-box;max-width:1320px;padding:var(--safe-area-top) max(44px, var(--safe-area-right)) 0 max(44px, var(--safe-area-left));justify-content:space-between;align-items:center;margin:0 auto;display:flex}.text-link,.text-button{color:var(--ink);cursor:pointer;background:0 0;border:0;align-items:center;gap:7px;padding:0;font-size:.87rem;font-weight:650;display:inline-flex}.text-link:hover,.text-button:hover{color:var(--sage-dark)}.eyebrow{text-transform:uppercase;letter-spacing:.13em;color:var(--sage-dark);margin-bottom:9px;font-size:.68rem;font-weight:800;display:block}.button{cursor:pointer;min-height:47px;transition:transform .15s var(--ease-out-ui), background-color .18s ease, color .18s ease, box-shadow .18s ease;border:1px solid #0000;border-radius:4px;justify-content:center;align-items:center;gap:9px;padding:0 21px;font-size:.9rem;font-weight:720;display:inline-flex}.button:active:not(:disabled){transform:translateY(1px)}.button-primary{background:var(--ink-fill);color:#fff;box-shadow:var(--shadow-control)}.button-outline{border-color:var(--ink);color:var(--ink);background:0 0}.button-secondary{color:var(--ink);background:#ffffffe0;border-color:#12324a47;border-bottom-width:2px;box-shadow:0 1px #12324a0d}.button-secondary:hover:not(:disabled){background:var(--blue-wash);border-color:#2d6793}.button-secondary:focus-visible{outline-offset:2px;border-color:#2d6793;outline:3px solid #2d67933d}.button-ghost{color:var(--ink);background:0 0}.button-saffron{background:var(--saffron);color:#382606;border-color:#d89511;box-shadow:0 8px 20px #efa91e38}.wide{width:100%}.icon-button{cursor:pointer;width:40px;height:40px;transition:transform .15s var(--ease-out-ui), background-color .15s ease;background:0 0;border:0;border-radius:50%;place-items:center;display:grid}.icon-button:active:not(:disabled){background:#102a431c}@media (hover:hover) and (pointer:fine){.button:hover:active:not(:disabled){transform:translateY(1px)}.button-primary:hover{background:#1a3b58;box-shadow:0 11px 24px #102a4333}.button-outline:hover{background:var(--ink-fill);color:#fff}.icon-button:hover{background:#102a4312}}.hero-actions{align-items:stretch;gap:16px;display:flex}.coach-quote{z-index:2;background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow);font-family:var(--serif);border-radius:6px;align-items:center;gap:10px;padding:14px 16px;animation:4s ease-in-out infinite float;display:flex;position:absolute;bottom:15%;right:3%}.coach-quote svg{color:var(--saffron)}.import-hero-copy small,.import-final small{color:var(--muted);justify-content:flex-start;align-items:center;gap:7px;margin-top:13px;font-size:.75rem;display:flex}.sidebar-note p{flex-direction:column;margin:0;display:flex}.public-sudoku-cell.coach-highlighted{background:#fffdf7}.public-sudoku-cell.coach-highlighted:before{background:color-mix(in srgb, var(--sage) 28%, #fffdf7);animation:welcome-evidence-arrive .18s var(--ease-out-ui) var(--coach-reveal-delay,0s) both}.public-sudoku-cell.coach-target{box-shadow:inset 0 0 0 3px var(--saffron);background:#fffdf7;position:relative}.public-sudoku-cell.coach-target:before{background:color-mix(in srgb, var(--saffron) 35%, #fffdf7);animation:welcome-target-arrive .22s var(--ease-out-ui) 60ms both}.public-sudoku-cell.coach-revealed .public-sudoku-value{color:var(--ink);animation:.26s ease-out both lesson-proof-resolve}@keyframes welcome-evidence-arrive{0%{opacity:0;transform:scale(.96)}}@keyframes welcome-target-arrive{0%{opacity:0;transform:scale(.96)}}@keyframes welcome-demo-copy-arrive{0%{opacity:0;transform:translateY(4px)}}.lesson-catalog-details>summary{cursor:pointer;color:var(--ink);margin:16px 0 22px;font-weight:700}@media (width<=780px){.puzzle-more-action-list{gap:0}.puzzle-more-action{border:0;border-top:1px solid var(--line);background:0 0;border-radius:0;padding-inline:2px}.puzzle-more-action:last-child{border-bottom:1px solid var(--line)}}.puzzle-more-actions,.puzzle-more-options{border-block:1px solid var(--line);margin:0 0 16px}.puzzle-more-options{margin-top:16px}.puzzle-more-actions-heading,.puzzle-more-options>summary{min-height:56px;color:var(--ink);cursor:pointer;justify-content:space-between;align-items:center;gap:16px;padding:15px 2px;font-size:.78rem;font-weight:800;list-style:none;display:flex}.puzzle-more-options>summary::-webkit-details-marker{display:none}.puzzle-more-actions-heading h2{color:inherit;font-size:inherit;font-weight:inherit;font-family:var(--sans);letter-spacing:normal;margin:0}.puzzle-more-actions-heading{cursor:default}.puzzle-more-options>summary:focus-visible{outline:3px solid var(--saffron);outline-offset:3px;border-radius:4px}.puzzle-more-options>summary>svg{color:var(--muted);transition:transform .16s var(--ease-out-ui);flex:none}.puzzle-more-options[open]>summary>svg{transform:rotate(180deg)}.puzzle-more-action-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:0 0 14px;display:grid}.puzzle-more-action{border:1px solid var(--line);min-height:58px;color:var(--ink);background:var(--surface);border-radius:8px;grid-template-columns:24px minmax(0,1fr) 18px;align-items:center;gap:11px;padding:11px 12px;text-decoration:none;transition:border-color .15s,background-color .15s;display:grid}.puzzle-more-action:hover{border-color:var(--sage-dark);background:var(--sage-soft)}.puzzle-more-action>svg:first-child{color:var(--sage-dark)}.puzzle-more-action span,.puzzle-more-action strong,.puzzle-more-action small{display:block}.puzzle-more-action small{color:var(--muted);margin-top:3px;font-size:.66rem;line-height:1.35}.puzzle-more-options-content{padding-bottom:18px}.puzzle-more-options-content .member-practice-card{margin-top:0}.weekly-challenge-teaser{color:var(--ink);background:linear-gradient(120deg,#fffaf0,#fff8e7);border:1px solid #e7c46e;border-left:3px solid #d99a1d;border-radius:10px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:15px;margin:0 0 16px;padding:15px 17px;display:grid}.weekly-challenge-teaser-art{aspect-ratio:1;background:#fffdf7;border:1px solid #e7c46e;border-radius:12px;width:72px;height:72px;display:block;overflow:hidden}.weekly-challenge-teaser-art img,.weekly-challenge-teaser-art .asset-fallback{-o-object-fit:contain;object-fit:contain;width:100%;height:100%;display:block}.weekly-challenge-teaser-copy{min-width:0}.weekly-challenge-teaser-copy .eyebrow{color:#6e4900}.weekly-challenge-teaser-copy h2{color:var(--ink);font-family:var(--sans);margin:3px 0;font-size:.98rem;font-weight:800}.weekly-challenge-teaser-copy p{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:.7rem;line-height:1.4;overflow:hidden}.weekly-challenge-teaser-action{color:#6e4900;white-space:nowrap;min-height:40px;transition:background-color .15s ease, border-color .15s ease, transform .15s var(--ease-out-ui);background:#fffdf7;border:1px solid #c99622;border-radius:6px;justify-content:center;align-items:center;gap:7px;padding:8px 11px;font-size:.68rem;font-weight:800;text-decoration:none;display:inline-flex}.weekly-challenge-teaser-action:hover,.weekly-challenge-teaser-action:focus-visible{background:#fff4cf;border-color:#97660b}.weekly-challenge-teaser-action:active{transform:scale(.98)}.daily-picker-home .daily-picker-actions,.daily-picker-library .daily-picker-actions{margin-top:17px}.difficulty-technique-expectation{color:var(--muted);margin:14px 0 0;font-size:.9rem}.custom-puzzle-layout{-moz-column-gap:clamp(32px, 6vw, 72px);grid-template-columns:minmax(320px,.9fr) minmax(320px,1.1fr);grid-template-areas:"form preview""form actions";align-items:start;gap:18px clamp(32px,6vw,72px);display:grid}.custom-puzzle-form{grid-area:form}.custom-puzzle-preview{grid-area:preview}.custom-puzzle-actions{grid-area:actions}.mobile-manual-entry-trigger,.mobile-manual-entry-back{display:none}.entry-method-heading{grid-template-columns:28px 1fr;align-items:start;gap:12px;display:grid}.entry-method-icon{width:28px;height:32px;color:var(--sage-dark);place-items:center;display:grid}.entry-method-icon svg{width:24px;height:24px}.custom-puzzle-form .photo-import-heading h2{margin:0 0 6px}.entry-method-heading p{color:var(--muted);margin:0}.custom-puzzle-form .manual-entry-heading h2{margin:0 0 6px}.photo-input-actions{flex-wrap:wrap;gap:10px;margin:22px 0 10px;display:flex}.custom-puzzle-form label.photo-input-button{cursor:pointer;width:fit-content;margin:0;display:inline-flex}.custom-puzzle-form label.photo-input-button.button-primary{color:#fff}.custom-puzzle-form label.photo-input-button.button-secondary{color:var(--ink)}.photo-input-button input{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}.scanner-trust{color:var(--muted);gap:8px;font-size:.78rem;line-height:1.4;display:grid}.scanner-trust-strip{flex-wrap:wrap;gap:7px;display:flex}.scanner-trust-strip span{border:1px solid color-mix(in srgb, var(--sage) 34%, transparent);background:color-mix(in srgb, var(--sage-pale) 46%, var(--paper));color:var(--sage-dark);border-radius:999px;align-items:center;gap:5px;padding:5px 8px;display:inline-flex}.scanner-trust-strip svg{flex:none;width:14px;height:14px}.photo-scan-status{color:var(--ink);grid-template-columns:22px 1fr;align-items:center;gap:8px 10px;margin-top:18px;display:grid}.photo-scan-status.error{color:var(--coral-dark);display:block}.photo-scan-status progress{width:100%;height:5px;accent-color:var(--sage-dark);grid-column:1/-1}.photo-scan-progress{color:var(--ink);font-family:var(--sans);gap:11px;margin-top:14px;display:grid}.photo-scan-progress-summary{color:var(--muted);justify-content:space-between;font-size:.78rem;font-weight:700;display:flex}.photo-scan-progress-summary strong{color:var(--sage-dark);font-variant-numeric:tabular-nums}.photo-scan-steps{grid-template-columns:repeat(5,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.photo-scan-steps li{min-width:0;color:var(--muted);text-align:center;justify-items:center;gap:6px;font-size:.72rem;font-weight:700;display:grid;position:relative}.photo-scan-steps li:not(:last-child):after{z-index:0;content:"";background:var(--line);width:calc(100% - 30px);height:2px;position:absolute;top:11px;left:calc(50% + 15px)}.photo-scan-steps li.complete:not(:last-child):after{background:var(--sage-dark)}.photo-scan-step-marker{z-index:1;border:2px solid var(--line);background:var(--paper);border-radius:50%;place-items:center;width:24px;height:24px;font-size:.66rem;display:grid}.photo-scan-step-marker svg{width:15px;height:15px}.photo-scan-steps .complete,.photo-scan-steps .current{color:var(--ink)}.photo-scan-steps .complete .photo-scan-step-marker,.photo-scan-steps .current .photo-scan-step-marker{border-color:var(--sage-dark);color:var(--sage-dark)}.photo-scan-progress progress{width:100%;height:6px;accent-color:var(--sage-dark)}.photo-scan-cancel{margin-top:8px}.photo-scan-activity{gap:7px;display:grid}.photo-scan-activity-dots{gap:5px;display:flex}.photo-scan-activity-dots span{background:var(--line);border-radius:999px;width:18px;height:3px;transition:background-color .18s,transform .18s}.photo-scan-activity-dots .complete,.photo-scan-activity-dots .current{background:var(--sage-dark)}.photo-scan-activity-dots .current{transform-origin:0;transform:scaleX(1.2)}.photo-scan-activity-label{min-height:20px;color:var(--ink);align-items:center;gap:7px;font-size:.78rem;font-weight:700;animation:.18s ease-out photo-scan-activity-enter;display:flex}.photo-scan-activity-label svg{width:16px;height:16px;color:var(--sage-dark)}@keyframes photo-scan-activity-enter{0%{opacity:0;transform:translateY(3px)}}@media (prefers-reduced-motion:reduce){.photo-scan-activity-dots span{transition:none}.photo-scan-activity-label{animation:none}}.learning-story-section{border:1px solid color-mix(in srgb, var(--ink) 14%, transparent);background:color-mix(in srgb, var(--paper) 92%, var(--sage) 8%);box-shadow:var(--shadow-border);border-radius:20px;gap:18px;margin:14px 0;padding:clamp(18px,3vw,28px);display:grid}.difficulty-recommendation-note{color:color-mix(in srgb, var(--ink) 66%, transparent);margin:10px 0 0;font-size:.73rem;line-height:1.4}.learning-story-intro h2{margin:4px 0 5px;font-size:clamp(1.45rem,3vw,2rem);line-height:1.08}.learning-story-intro p{max-width:48rem;color:color-mix(in srgb, var(--ink) 72%, transparent);margin:0;line-height:1.5}.learning-story-archive-status{font-size:.78rem;color:color-mix(in srgb, var(--ink) 60%, transparent)!important;margin-top:8px!important}.learning-story-interval{color:color-mix(in srgb, var(--ink) 62%, transparent);margin:-4px 0 0;font-size:.78rem}.learning-story-stats{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;display:grid}.learning-story-stats>div{background:color-mix(in srgb, var(--paper) 78%, var(--sage) 22%);border-radius:12px;gap:4px;min-height:64px;padding:11px 12px;display:grid}.learning-story-stats span,.learning-story-reflection legend{letter-spacing:.08em;text-transform:uppercase;color:color-mix(in srgb, var(--ink) 62%, transparent);font-size:.62rem;font-weight:700}.learning-story-stats strong{font-size:1.35rem;line-height:1}.learning-story-replay{grid-template-columns:minmax(220px,360px) minmax(0,1fr);align-items:start;gap:18px 24px;padding-top:2px;display:grid}.learning-story-replay-heading,.learning-story-replay-controls{grid-column:1/-1}.learning-story-replay-heading{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.learning-story-replay-heading h2{margin:3px 0 0;font-size:1.18rem}.learning-story-step-label{color:color-mix(in srgb, var(--ink) 62%, transparent);font-size:.75rem}.learning-story-replay-board{justify-self:center;width:min(100%,360px)}.learning-story-replay-board .sudoku-board{pointer-events:none}.learning-story-replay-controls{gap:8px;display:grid}.learning-story-replay-controls p{margin:0;font-size:.82rem}.learning-story-replay-controls p span{color:color-mix(in srgb, var(--ink) 62%, transparent)}.learning-story-replay-controls input[type=range]{width:100%;accent-color:var(--sage)}.learning-story-reflection{border-top:1px solid color-mix(in srgb, var(--ink) 10%, transparent);gap:14px;padding-top:3px;display:grid}.learning-story-reflection h2{margin:3px 0 4px;font-size:1.18rem}.learning-story-reflection p{max-width:45rem;color:color-mix(in srgb, var(--ink) 68%, transparent);margin:0;font-size:.8rem;line-height:1.45}.learning-story-reflection fieldset{border:0;gap:8px;margin:0;padding:0;display:grid}.learning-story-choice-grid{flex-wrap:wrap;gap:8px;display:flex}.learning-story-choice-grid label{border:1px solid color-mix(in srgb, var(--ink) 15%, transparent);background:var(--paper);cursor:pointer;border-radius:999px;align-items:center;gap:7px;min-height:38px;padding:8px 12px;font-size:.78rem;display:inline-flex}.learning-story-choice-grid label.is-selected{border-color:color-mix(in srgb, var(--sage) 70%, var(--ink));background:color-mix(in srgb, var(--sage) 16%, var(--paper))}.learning-story-choice-grid input{accent-color:var(--sage)}.learning-story-reflection-saved{font-weight:700;color:var(--sage-deep,var(--sage))!important}.learning-story-export{border-top:1px solid color-mix(in srgb, var(--ink) 10%, transparent);justify-content:space-between;align-items:center;gap:14px;padding-top:4px;display:flex}.learning-story-export>div:first-child{gap:3px;display:grid}.learning-story-export>div:first-child span{color:color-mix(in srgb, var(--ink) 62%, transparent);font-size:.72rem}.learning-story-export-actions{flex-wrap:wrap;gap:8px;display:flex}@media (width<=780px){.learning-story-section{border-radius:16px;gap:14px;padding:15px}.learning-story-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.learning-story-stats>div:last-child{grid-column:1/-1}.learning-story-replay{grid-template-columns:1fr;gap:12px}.learning-story-replay-board{width:min(100%,330px)}.learning-story-export{flex-direction:column;align-items:stretch}.learning-story-export-actions{grid-template-columns:1fr 1fr;display:grid}.learning-story-export-actions .button{min-height:42px;padding-inline:8px;font-size:.72rem}}.custom-puzzle-divider{color:var(--muted);text-transform:uppercase;align-items:center;gap:12px;margin:30px 0 20px;font-size:.82rem;font-weight:750;display:flex}.custom-puzzle-divider:before,.custom-puzzle-divider:after{content:"";background:var(--line);flex:1;height:1px}.custom-puzzle-form>svg{color:var(--sage-dark)}.custom-puzzle-form h2,.manual-entry-panel h2{margin:12px 0 6px}.custom-puzzle-form>p,.custom-puzzle-form label,.manual-entry-panel>p{color:var(--muted)}.custom-puzzle-form label{margin:24px 0 8px;font-weight:700;display:block}.custom-puzzle-form textarea{resize:vertical;border:1px solid var(--line-strong);background:var(--paper);width:100%;min-height:220px;color:var(--ink);letter-spacing:.08em;border-radius:16px;padding:16px;font:600 1rem/1.55 ui-monospace,SFMono-Regular,Menlo,monospace}.custom-grid-label-row{justify-content:space-between;align-items:baseline;gap:14px;margin-top:24px;display:flex}.custom-puzzle-form .custom-grid-label-row label{margin:0}.custom-grid-label-row span{color:var(--muted);flex:none;font-size:.78rem}.custom-grid-status{min-height:48px;color:var(--muted);padding:12px 0}.custom-grid-status span{align-items:center;gap:8px;display:flex}.custom-grid-status.valid{color:var(--sage-dark)}.custom-grid-status.error{color:var(--coral-dark)}.custom-puzzle-preview{max-width:520px}.photo-preview-frame{aspect-ratio:1;background:var(--paper-deep);position:relative;overflow:hidden}.photo-preview-frame img{-o-object-fit:cover;object-fit:cover;opacity:.76;width:100%;height:100%}.photo-preview-frame>span{color:#fff;background:#0f203747;place-items:center;display:grid;position:absolute;inset:0}.photo-preview-frame>span svg{width:36px;height:36px}.recognized-grid-heading{margin-bottom:18px}.recognized-grid-heading p{color:var(--muted);margin:6px 0 10px}.recognized-grid-heading strong{color:var(--sage-dark);font-size:.9rem;display:block}.recognized-grid-heading strong.needs-attention{color:var(--coral-dark)}.recognized-grid-status{background:var(--paper-deep);min-height:46px;color:var(--muted);border-left:3px solid;grid-template-columns:22px minmax(0,1fr);align-items:center;gap:9px;padding:10px 12px;font-size:.86rem;line-height:1.4;display:grid}.recognized-grid-status svg{width:20px;height:20px}.recognized-grid-status-copy{gap:2px;min-width:0;display:grid}.recognized-grid-status-copy strong,.recognized-grid-status-copy small{display:block}.recognized-grid-status-copy small{color:inherit;opacity:.86;font-size:.76rem;line-height:1.4}.recognized-grid-status.valid{color:var(--sage-dark);background:color-mix(in srgb, var(--sage-pale) 58%, var(--paper))}.recognized-grid-status.error,.recognized-grid-status.needs-attention{color:var(--coral-dark);background:color-mix(in srgb, var(--coral) 9%, var(--paper))}.recognized-grid-review-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;margin-top:10px;display:flex}.recognized-grid-photo-actions{flex-wrap:wrap;gap:6px;display:none}.recognized-grid-edit-toggle,.recognized-grid-photo-action{min-height:40px;padding:8px 11px;font-size:.8rem}.recognized-grid-photo-action{color:var(--muted)}.recognized-grid-review-editor{min-width:0}.cell-photo-review{border:1px solid color-mix(in srgb, var(--ink) 18%, transparent);background:color-mix(in srgb, var(--ink) 3%, var(--paper));border-radius:14px;grid-template-columns:92px minmax(0,1fr);align-items:stretch;gap:14px;margin-bottom:12px;padding:12px;display:grid}.cell-photo-review.is-uncertain{border-color:color-mix(in srgb, var(--coral) 38%, transparent);background:color-mix(in srgb, var(--coral) 7%, var(--paper))}.cell-photo-crop{aspect-ratio:1;border:2px solid color-mix(in srgb, var(--ink) 45%, transparent);background:#fff;border-radius:9px;align-self:center;position:relative;overflow:hidden}.cell-photo-review.is-uncertain .cell-photo-crop{border-color:var(--coral-dark)}.cell-photo-crop img{width:900%;max-width:none;transform:translate(calc(var(--selected-column) * -11.1111%), calc(var(--selected-row) * -11.1111%));position:absolute}.cell-photo-review-copy{min-width:0}.cell-photo-review-copy h3{margin:2px 0 4px;font-size:1rem}.cell-photo-review-copy p,.cell-photo-review-copy small{color:var(--muted);margin:0 0 5px;display:block}.uncertain-cell-review-actions{gap:5px;margin-top:6px;display:grid}.cell-photo-review-copy .button{min-height:40px;margin-top:6px;padding:8px 12px}.recognized-grid{aspect-ratio:1;border:2px solid var(--ink);background:var(--ink-fill);grid-template-columns:repeat(9,1fr);gap:1px;display:grid}.scanner-state-legend{color:var(--muted);flex-wrap:wrap;gap:7px 14px;margin-bottom:12px;font-size:.72rem;line-height:1.3;display:flex}.scanner-state-legend>span{align-items:center;gap:6px;display:inline-flex}.scanner-state-swatch{border:1px solid var(--line-strong);background:var(--paper);border-radius:3px;flex:none;width:18px;height:18px;position:relative}.scanner-state-swatch.recognized:before,.scanner-cell-mark.recognized{background:var(--blue);border-radius:999px;width:8px;height:2px}.scanner-state-swatch.recognized:before{content:"";position:absolute;top:4px;left:4px}.scanner-state-swatch.handwritten:before{content:"7";color:var(--handwritten-ink);font:700 .9rem/1 var(--handwritten);place-items:center;display:grid;position:absolute;inset:0;transform:rotate(-5deg)}.scanner-state-swatch.doubtful{border-style:dashed;border-color:var(--coral-dark)}.scanner-state-swatch.doubtful:after{content:"";background:var(--coral);border-radius:50%;width:5px;height:5px;position:absolute;top:3px;right:3px}.scanner-state-swatch.edited:before{content:"";background:var(--saffron-dark);border-radius:999px;width:10px;height:3px;position:absolute;bottom:3px;left:3px;transform:rotate(-32deg)}.scanner-state-swatch.invalid{border-color:var(--coral-dark);background:var(--coral-soft)}.scanner-state-swatch.invalid:before{content:"!";color:var(--coral-dark);place-items:center;font-weight:800;display:grid;position:absolute;inset:0}.recognized-grid button{aspect-ratio:1;background:var(--paper);min-width:0;color:var(--ink);font:700 clamp(1rem, 4.5vw, 1.55rem) / 1 var(--sans);border:0;border-radius:0;padding:0;position:relative}.recognized-grid button.scanner-state-recognized{color:var(--ink)}.recognized-grid button.scanner-state-edited{background:color-mix(in srgb, var(--saffron-soft) 42%, var(--paper))}.recognized-grid button.scanner-state-invalid{background:linear-gradient(135deg, transparent 0 72%, color-mix(in srgb, var(--coral) 18%, transparent) 72%), color-mix(in srgb, var(--coral-soft) 54%, var(--paper))}.scanner-cell-mark,.scanner-cell-invalid-mark{z-index:2;pointer-events:none;position:absolute}.scanner-cell-mark.recognized{top:5px;left:5px}.scanner-cell-mark.handwritten{background:color-mix(in srgb, var(--handwritten-ink) 70%, transparent);border-radius:50%;height:2px;bottom:7px;left:20%;right:20%;transform:rotate(-4deg)}.scanner-cell-mark.doubtful{border:2px dashed var(--coral-dark);background:var(--paper);border-radius:50%;width:10px;height:10px;top:4px;right:4px}.scanner-cell-mark.edited{background:var(--saffron-dark);width:13px;height:3px;box-shadow:0 0 0 3px color-mix(in srgb, var(--saffron) 14%, transparent);border-radius:999px;bottom:5px;left:5px;transform:rotate(-32deg)}.scanner-cell-invalid-mark{background:var(--coral-dark);width:14px;height:14px;color:var(--paper);font:800 .66rem/1 var(--sans);border-radius:3px;place-items:center;display:grid;bottom:4px;right:4px}.recognized-grid button.handwritten{font-family:var(--handwritten);color:var(--handwritten-ink);font-weight:700}.recognized-candidates{color:color-mix(in srgb, var(--ink) 72%, transparent);font:500 clamp(.38rem, 1.55vw, .68rem) / 1 var(--sans);grid-template-rows:repeat(3,1fr);grid-template-columns:repeat(3,1fr);display:grid;position:absolute;inset:8%}.recognized-candidates span{place-items:center;display:grid}.recognized-grid button.box-right{box-shadow:inset -2px 0 0 var(--ink)}.recognized-grid button.box-bottom{box-shadow:inset 0 -2px 0 var(--ink)}.recognized-grid button.box-right.box-bottom{box-shadow:inset -2px 0 0 var(--ink), inset 0 -2px 0 var(--ink)}.recognized-grid button.uncertain:after{content:none}.recognized-grid button.selected{z-index:1;background:var(--sage-pale);outline:3px solid var(--saffron);outline-offset:-3px}.live-scan-grid-shell{isolation:isolate;background:var(--paper);position:relative;overflow:hidden}.live-scan-grid-shell:after{z-index:2;top:var(--scan-position,0%);pointer-events:none;content:"";background:linear-gradient(to bottom, transparent, color-mix(in srgb, var(--sage) 18%, transparent), color-mix(in srgb, var(--sage-dark) 70%, transparent), transparent);filter:blur(.2px);opacity:.72;height:12%;transition:top .32s cubic-bezier(.4,0,.2,1);position:absolute;left:2px;right:2px;transform:translateY(-50%)}.live-scan-grid [role=gridcell]{aspect-ratio:1;background:var(--paper);min-width:0;color:var(--ink);font:700 clamp(1rem, 4.5vw, 1.55rem) / 1 var(--sans);place-items:center;display:grid;position:relative}.live-scan-grid [role=gridcell].box-right{box-shadow:inset -2px 0 0 var(--ink)}.live-scan-grid [role=gridcell].box-bottom{box-shadow:inset 0 -2px 0 var(--ink)}.live-scan-grid [role=gridcell].box-right.box-bottom{box-shadow:inset -2px 0 0 var(--ink), inset 0 -2px 0 var(--ink)}.live-scan-grid [role=gridcell].has-digit{animation:.48s cubic-bezier(.05,.7,.1,1) live-scan-cell-confirm}.live-scan-grid [role=gridcell]>span{z-index:3;animation:.36s cubic-bezier(.175,.885,.32,1.18) both live-scan-digit-arrive;position:relative}@keyframes live-scan-cell-confirm{0%{background:color-mix(in srgb, var(--sage-pale) 15%, var(--paper))}35%{background:color-mix(in srgb, var(--sage-pale) 82%, var(--paper))}to{background:var(--paper)}}@keyframes live-scan-digit-arrive{0%{opacity:0;transform:translateY(7px)scale(.72)}68%{opacity:1;transform:translateY(-1px)scale(1.06)}to{opacity:1;transform:translateY(0)scale(1)}}.recognized-grid-keypad{grid-template-columns:repeat(5,1fr);gap:8px;margin-top:14px;display:grid}.recognized-grid-tools{align-items:center;gap:10px;margin-top:14px;display:flex}.recognized-entry-kind{background:var(--paper-deep);border-radius:11px;grid-template-columns:repeat(3,1fr);gap:4px;margin-top:14px;padding:4px;display:grid}.recognized-entry-kind button{min-width:0;min-height:38px;color:var(--muted);background:0 0;border:0;border-radius:8px;padding:7px 8px;font-size:.82rem;font-weight:800}.recognized-entry-kind button.active{background:var(--paper);color:var(--ink);box-shadow:0 1px 4px color-mix(in srgb, var(--ink) 14%, transparent)}.recognized-entry-kind-help{min-height:1.35em;color:var(--muted);margin:7px 2px 0;font-size:.78rem;line-height:1.35}.recognized-grid-tools button{border:1px solid var(--line-strong);min-height:36px;color:var(--ink);background:0 0;border-radius:9px;flex:none;align-items:center;gap:7px;padding:7px 11px;font-weight:800;display:inline-flex}.recognized-grid-tools span{color:var(--muted);font-size:.82rem;line-height:1.35}.recognized-grid-tools button.active,.recognized-grid-keypad button.active{border-color:var(--saffron-ink);background:color-mix(in srgb, var(--paper) 72%, var(--saffron) 28%);color:var(--ink);box-shadow:inset 0 0 0 1px var(--saffron-ink)}.recognized-grid-keypad button{border:1px solid var(--line-strong);min-height:44px;color:var(--ink);background:0 0;border-radius:10px;padding:8px;font-weight:800}.recognized-grid-keypad button:hover{background:var(--paper-deep)}.recognized-grid-keypad .recognized-grid-erase{color:var(--muted);place-items:center;display:grid}.imported-puzzle-promise{color:var(--muted);grid-template-columns:20px minmax(0,1fr);align-items:start;gap:9px;margin:0 2px;font-size:.8rem;line-height:1.45;display:grid}.imported-puzzle-promise svg{width:18px;height:18px;color:var(--sage-dark);margin-top:1px}.custom-puzzle-actions{gap:12px;max-width:520px;display:grid}.custom-puzzle-action-bar{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:10px;padding-top:14px;display:grid}.custom-puzzle-import-action{grid-column:-2/-1;justify-self:end;min-width:180px}.custom-puzzle-import-action:disabled{cursor:not-allowed;opacity:.42;box-shadow:none}.scanner-contribution-trigger{white-space:nowrap;min-width:0;margin:0;padding-inline:12px;font-size:.86rem}.scanner-contribution-manage{margin-top:8px;padding-left:0;font-size:.78rem}.scanner-contribution-dialog[data-app-dialog=dialog]{z-index:1001;width:min(100%,620px);max-height:calc(var(--visual-viewport-height) - max(24px, var(--safe-area-top)) - max(24px, var(--safe-area-bottom)));border:1px solid var(--line);background:var(--paper);overscroll-behavior:contain;-webkit-overflow-scrolling:touch;border-radius:18px;padding:clamp(20px,4vw,30px);position:fixed;top:50%;left:50%;overflow:hidden auto;transform:translate(-50%,-50%);box-shadow:0 28px 80px #0d2d4447}.scanner-contribution-dialog-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.scanner-contribution-dialog-header .eyebrow{margin-bottom:5px}.scanner-contribution-dialog h2,.scanner-contribution-dialog h3{margin:0}.scanner-contribution-intro{color:var(--muted);margin:10px 0 18px;line-height:1.5}.scanner-contribution-preview{border:1px solid var(--line);background:var(--paper-deep);border-radius:14px;overflow:hidden}.scanner-contribution-preview img{-o-object-fit:contain;object-fit:contain;width:100%;max-height:min(34dvh,320px);display:block}.scanner-contribution-preview>span{border-top:1px solid var(--line);color:var(--muted);padding:9px 12px;font-size:.78rem;display:block}.scanner-contribution-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:16px 0 12px;display:grid}.scanner-contribution-options>label{border:1px solid var(--line-strong);cursor:pointer;border-radius:12px;grid-template-columns:20px minmax(0,1fr);align-items:start;gap:9px;min-height:86px;padding:12px;display:grid}.scanner-contribution-options>label:has(svg){grid-template-columns:20px 20px minmax(0,1fr)}.scanner-contribution-options>label:has(input:checked){border-color:var(--sage-dark);background:color-mix(in srgb, var(--sage) 12%, var(--paper))}.scanner-contribution-options>label.disabled{cursor:not-allowed;opacity:.52}.scanner-contribution-options input{margin:3px 0 0}.scanner-contribution-options svg{color:var(--sage-dark);margin-top:1px}.scanner-contribution-options span{gap:4px;display:grid}.scanner-contribution-options small{color:var(--muted);font-size:.75rem;line-height:1.35}.scanner-contribution-check{color:var(--ink);cursor:pointer;grid-template-columns:20px minmax(0,1fr);gap:9px;padding:8px 0;font-size:.84rem;line-height:1.4;display:grid}.scanner-contribution-check input{margin:3px 0 0}.scanner-contribution-note,.scanner-contribution-retention,.scanner-contribution-error{color:var(--muted);align-items:flex-start;gap:8px;margin:8px 0;font-size:.78rem;line-height:1.45;display:flex}.scanner-contribution-note.warning,.scanner-contribution-error{color:var(--coral-dark)}.scanner-contribution-note svg,.scanner-contribution-retention svg{flex:none;margin-top:1px}.scanner-contribution-dialog-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:16px;display:flex}.scanner-contribution-success{justify-items:start;gap:10px;padding-top:14px;display:grid}.scanner-contribution-success>svg{width:36px;height:36px;color:var(--sage-dark)}.scanner-contribution-success p{color:var(--muted);margin:0}.scanner-contribution-success code,.scanner-contribution-receipts code{max-width:100%;color:var(--muted);text-overflow:ellipsis;font-size:.7rem;overflow:hidden}.scanner-contribution-receipts{gap:8px;margin:18px 0 0;padding:0;list-style:none;display:grid}.scanner-contribution-receipts li{border:1px solid var(--line);border-radius:12px;justify-content:space-between;align-items:center;gap:14px;min-height:72px;padding:12px;display:flex}.scanner-contribution-receipts li>div{gap:3px;min-width:0;display:grid}.scanner-contribution-receipts small{color:var(--muted)}.custom-puzzle-assurance{border:1px solid color-mix(in srgb, var(--sage) 28%, var(--line));background:linear-gradient(135deg, color-mix(in srgb, var(--sage-pale) 56%, var(--paper)), color-mix(in srgb, var(--sage-pale) 24%, var(--paper)));box-shadow:inset 0 1px color-mix(in srgb, var(--paper) 88%, transparent);border-radius:14px;grid-template-columns:38px minmax(0,1fr);align-items:start;gap:12px;padding:14px 16px;display:grid}.custom-puzzle-assurance-icon{background:var(--paper);width:38px;height:38px;color:var(--sage-dark);box-shadow:0 1px 3px color-mix(in srgb, var(--ink) 12%, transparent);border-radius:50%;place-items:center;display:grid}.custom-puzzle-assurance-icon svg{width:20px;height:20px}.custom-puzzle-assurance strong{color:var(--ink);font-size:.9rem;display:block}.custom-puzzle-assurance p{color:var(--muted);margin:3px 0 0;font-size:.78rem;line-height:1.42}.custom-puzzle-empty{aspect-ratio:1;border:1px dashed var(--line-strong);width:100%;color:var(--muted);font:inherit;text-align:center;cursor:pointer;place-content:center;justify-items:center;gap:10px;display:grid}.custom-puzzle-empty:focus-visible{outline:3px solid var(--saffron);outline-offset:3px}.custom-puzzle-empty svg{width:42px;height:42px}.custom-puzzle-preview>p{color:var(--muted);grid-template-columns:24px 1fr;gap:12px;margin-top:18px;line-height:1.45;display:grid}.custom-puzzle-preview>p strong{color:var(--ink);display:block}@media (prefers-reduced-motion:reduce){.live-scan-grid-shell:after{opacity:0;transition:none}.live-scan-grid [role=gridcell].has-digit,.live-scan-grid [role=gridcell]>span{animation:none}}.play-presets>div:first-child p{color:var(--muted)}.play-preset-options{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.play-preset-options button{border:1px solid var(--line);min-height:150px;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border-radius:16px;flex-direction:column;align-items:flex-start;gap:8px;padding:18px;display:flex}.play-preset-options button:hover,.play-preset-options button:focus-visible{border-color:var(--sage-dark);background:color-mix(in srgb, var(--sage) 10%, transparent)}.play-preset-options button span{color:var(--muted);line-height:1.4}.play-presets>small{color:var(--muted)}.plan-comparison{grid-template-columns:minmax(210px,.66fr) minmax(0,1.34fr);align-items:start;gap:44px;width:min(900px,100%);margin:56px auto 20px;display:grid}.plan-comparison h2{margin:8px 0 12px;font-size:clamp(2rem,3.6vw,3rem);line-height:1}.plan-comparison p{max-width:31rem;color:var(--muted);margin:0;line-height:1.55}.plan-comparison-table{border-collapse:collapse;border:1px solid var(--line);background:color-mix(in srgb, var(--paper) 92%, transparent);border-radius:14px;width:100%;overflow:hidden;box-shadow:0 16px 42px #102a4312}.plan-comparison-table tr{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1.3fr) minmax(0,.94fr) minmax(0,1.06fr);display:grid}.plan-comparison-table tr:last-child{border-bottom:0}.plan-comparison-table tr>*{min-width:0;padding:14px 16px}.plan-comparison-table tr>:nth-child(3){background:color-mix(in srgb, var(--saffron) 10%, var(--paper))}.plan-comparison-table .plan-comparison-head{background:color-mix(in srgb, var(--ink) 4%, var(--paper))}.plan-comparison-table .plan-comparison-head>*{color:var(--ink);align-items:center;font-size:.72rem;line-height:1.25;display:flex}.plan-comparison-table .plan-comparison-head>:nth-child(3){color:var(--saffron-ink)}.plan-comparison-table td{color:var(--muted);font-size:.74rem;line-height:1.45}.plan-comparison-table th[scope=row]{color:var(--ink);font-weight:700}@media (width<=760px){.custom-puzzle-layout,.plan-comparison,.play-preset-options{grid-template-columns:1fr}.play-preset-options button{min-height:auto}.plan-comparison-table{font-size:.84rem}}.feature-icon{width:40px;color:var(--ink)}.onboarding-page{flex-direction:column;min-height:100vh;display:flex}.onboarding-main{width:min(780px,100% - 40px);margin:auto;padding:55px 0 25px}.onboarding-intro{text-align:center;max-width:600px;margin:0 auto 34px}.onboarding-intro h1{margin-bottom:15px;font-size:clamp(2.5rem,5vw,4rem)}.onboarding-intro p{max-width:480px;margin:0 auto}.level-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.level-options button{border:1px solid var(--line);text-align:left;cursor:pointer;min-height:156px;transition:transform .18s var(--ease-out-ui), border-color .18s ease, background-color .18s ease;background:#ffffff73;border-radius:8px;padding:24px;position:relative}.level-options button:active{transform:scale(.985)}@media (hover:hover) and (pointer:fine){.level-options button:hover{border-color:#91a28e}.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.recommended{grid-column:1/-1;min-height:132px}.level-options button.selected>span:nth-child(2){animation:onboarding-choice-arrive .18s var(--ease-out-ui) both}.level-options button>span:nth-child(2){flex-direction:column;gap:9px;display:flex}.level-options strong{font-family:var(--serif);margin-top:26px;font-size:1.18rem}.level-options small{color:var(--muted);line-height:1.5}.level-options button>i{width:17px;height:17px;color:var(--sage-dark);position:absolute;top:20px;right:20px}.onboarding-choice-icon svg{transition:opacity .16s var(--ease-out-ui), transform .16s var(--ease-out-ui);position:absolute;inset:0}.onboarding-choice-check{opacity:0;transform:scale(.8)}.level-options button.selected .onboarding-choice-circle{opacity:0;transform:scale(1.12)}.level-options button.selected .onboarding-choice-check{opacity:1;transform:scale(1)}.level-number{color:var(--saffron-ink);font-family:var(--serif);font-size:.84rem}.onboarding-recommended{background:var(--sage-soft);color:var(--sage-dark);letter-spacing:.06em;text-transform:uppercase;border-radius:999px;padding:3px 8px;font-size:.62rem;font-style:normal;font-weight:800;position:absolute;top:22px;left:58px}.onboarding-action{flex-direction:column;align-items:center;gap:12px;margin-top:28px;display:flex}.onboarding-action>span{color:var(--muted);font-size:.75rem}.onboarding-action-label{animation:onboarding-action-label-arrive .15s var(--ease-out-ui) both}.onboarding-coach{justify-content:center;align-items:center;gap:16px;width:min(620px,100% - 40px);margin:20px auto 35px;display:flex}.onboarding-coach .mascot{width:74px;height:74px}.onboarding-coach>div{flex-direction:column;gap:4px;display:flex}.onboarding-coach strong{font-family:var(--serif)}.onboarding-coach span{color:var(--muted);font-size:.8rem}@keyframes onboarding-choice-arrive{0%{opacity:.75;transform:translateY(2px)}}@keyframes onboarding-action-label-arrive{0%{opacity:0;transform:translateY(2px)}}.app-shell{--mobile-tabbar-height:62px;background:var(--paper);min-height:100vh;transition:grid-template-columns .18s var(--ease-out-ui);grid-template-columns:clamp(228px,16vw,244px) minmax(0,1fr);display:grid}.app-shell-sidebar-collapsed{grid-template-columns:72px minmax(0,1fr)}.sidebar{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);z-index:30;transition:padding .18s var(--ease-out-ui), width .18s var(--ease-out-ui);flex-direction:column;display:flex;position:sticky;top:0;overflow-y:auto}.sidebar-head{justify-content:space-between;align-items:center;padding:0 8px 35px;display:flex;position:relative}.sidebar-collapse-button{z-index:31;top:calc(34px + var(--safe-area-top));border:1px solid var(--line);background:var(--ivory);width:28px;height:32px;color:var(--muted);cursor:pointer;border-radius:6px;place-items:center;padding:0;transition:color .15s,background-color .15s;display:grid;position:fixed;left:clamp(214px,16vw - 14px,230px)}.sidebar-collapse-button:hover{background:var(--paper);color:var(--ink)}.sidebar-collapse-button:focus-visible{outline-offset:2px;outline:3px solid #47725a38}.sidebar-collapse-button svg{width:16px;height:16px}.sidebar nav{flex-direction:column;gap:4px;display:flex}.nav-link{color:#5c6b76;border-radius:4px;align-items:center;gap:12px;height:44px;padding:0 12px;font-size:.84rem;font-weight:600;display:flex}.nav-link:hover{background:#102a430d}.nav-link.active{background:var(--ink-fill);color:#fff;box-shadow:0 5px 12px #102a4324}.sidebar-account{border-top:1px solid var(--line-strong);margin-top:12px;padding-top:12px}.sidebar-account-link{background:color-mix(in srgb, var(--paper) 82%, transparent);border-radius:10px;height:auto;min-height:54px;margin-bottom:3px;padding-block:8px;transition:color .15s,background-color .15s,box-shadow .15s;box-shadow:0 0 0 1px #102a4312,0 1px 2px #102a430d,0 5px 14px #102a430a}.sidebar-account-link:hover{background:var(--paper);box-shadow:0 0 0 1px #102a431a,0 2px 4px #102a430f,0 7px 18px #102a430f}.sidebar-account-link.active,.sidebar-account-link.active:hover{background:var(--ink-fill);box-shadow:0 5px 14px #102a4329}.sidebar-account-link>span{gap:2px;min-width:0;display:grid}.sidebar-account-link strong,.sidebar-account-link small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sidebar-account-link strong{font-size:.75rem}.sidebar-account-link small{color:var(--muted);font-size:.61rem;font-weight:600}.sidebar-account-link .sidebar-account-plan{color:#97660b;align-items:center;gap:4px;font-weight:800;display:inline-flex}.sidebar-account-link.active small{color:#ffffffb8}.sidebar-account-link.active .sidebar-account-plan{color:var(--saffron)}.sidebar-sign-out{width:100%;min-height:40px;color:var(--muted);cursor:pointer;font:650 .72rem var(--sans);text-align:left;background:0 0;border:0;border-radius:4px;align-items:center;gap:12px;padding:0 12px;display:flex}.sidebar-sign-out:hover:not(:disabled){color:var(--ink);background:#102a430d}.sidebar-sign-out:disabled{cursor:wait;opacity:.6}.sidebar-auth-status{color:#9a3f31;margin:8px 12px 0;font-size:.65rem;line-height:1.4}.sidebar-note{border-top:1px solid var(--line);align-items:center;gap:9px;margin-top:auto;padding:18px 7px;display:flex}.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{color:#75560c;border:1px solid #d1b66a;border-radius:4px;justify-content:center;align-items:center;gap:7px;min-height:40px;margin-block:12px;font-size:.75rem;font-weight:700;display:flex}.sidebar-collapsed{padding-left:12px;padding-right:12px;overflow:visible}.sidebar-collapsed .sidebar-collapse-button{left:58px}.sidebar-collapsed .sidebar-head{justify-content:center;padding-inline:0}.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{justify-content:center;width:44px;min-width:44px;padding-inline:0;position:relative}.sidebar-collapsed .nav-link{height:44px}.sidebar-collapsed .sidebar-account{justify-items:center;width:100%;display:grid}.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{justify-content:center;min-height:0;padding:0}.sidebar-collapsed>.language-picker .language-toggle{grid-template-columns:1fr;width:44px}.sidebar-collapsed>.language-picker .language-toggle button{min-height:30px}.sidebar-language-rail,.sidebar-theme-rail{place-items:center;display:grid;position:relative}.language-picker-rail,.theme-picker-rail{min-height:0;margin-top:6px;padding:0}.language-rail-button,.theme-rail-button{width:44px;height:44px;color:var(--ink);cursor:pointer;font:800 .57rem/1 var(--sans);transition:border-color .15s ease, background-color .15s ease, transform .15s var(--ease-out-ui);background:#fffdf8c7;border:1px solid #102a4329;border-radius:10px;grid-template-columns:16px auto;justify-content:center;align-items:center;gap:4px;padding:0;display:grid;box-shadow:0 2px 8px #102a430f}.theme-rail-button{grid-template-columns:1fr;justify-items:center}.language-rail-button:hover,.theme-rail-button:hover{border-color:color-mix(in srgb, var(--sage-dark) 45%, var(--line));background:var(--surface)}.language-rail-button:focus-visible,.theme-rail-button:focus-visible{outline-offset:2px;outline:3px solid #47725a38}.sidebar-item-tooltip{z-index:20;background:var(--ink-fill);color:#fff;max-width:230px;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);border:1px solid #ffffff1a;border-radius:7px;padding:9px 12px;display:block;position:absolute;top:50%;left:calc(100% + 12px);transform:translate(4px,-50%);box-shadow:0 12px 30px #102a4333}.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{background:var(--ink-fill);content:"";width:10px;height:10px;position:absolute;top:50%;left:-5px;transform:translateY(-50%)rotate(45deg)}.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,.sidebar-theme-rail:hover>.sidebar-item-tooltip,.sidebar-theme-rail:focus-within>.sidebar-item-tooltip{opacity:1;visibility:visible;transform:translateY(-50%)}.app-main{min-width:0}.app-update-banner{border:1px solid color-mix(in srgb, var(--sage-dark) 24%, var(--line));background:color-mix(in srgb, var(--sage) 52%, var(--paper));width:min(760px,100% - 64px);min-height:68px;animation:app-update-arrive .18s var(--ease-out-ui) both;border-radius:8px;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:12px;margin:18px auto -10px;padding:12px 12px 12px 15px;display:grid;box-shadow:0 10px 28px #102a4314}.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;color:var(--sage-dark);background:#ffffffad;border-radius:50%;place-items:center;display:grid}.app-update-banner p{gap:3px;min-width:0;margin:0;display:grid}.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{align-items:center;gap:3px;display:flex}.app-update-action{white-space:nowrap;min-height:38px;padding-inline:15px;font-size:.74rem}.app-update-action:disabled{cursor:wait;opacity:.7}.app-update-dismiss{width:38px;height:38px;color:var(--muted)}.open-mobile-app-banner{display:none}@media (width<=780px){.open-mobile-app-banner{border:1px solid color-mix(in srgb, var(--sage-dark) 20%, var(--line));background:color-mix(in srgb, var(--sage) 32%, var(--paper));width:calc(100% - 28px);min-height:64px;animation:app-update-arrive .18s var(--ease-out-ui) both;border-radius:8px;grid-template-columns:34px minmax(0,1fr) auto 34px;align-items:center;gap:8px;margin:10px 14px -4px;padding:9px;display:grid;box-shadow:0 8px 22px #102a430f}.open-mobile-app-icon{background:color-mix(in srgb, var(--paper) 82%, transparent);width:34px;height:34px;color:var(--sage-dark);border-radius:50%;place-items:center;display:grid}.open-mobile-app-icon>svg{width:17px}.open-mobile-app-banner p{gap:2px;min-width:0;margin:0;display:grid}.open-mobile-app-banner p strong{font:700 .76rem/1.2 var(--serif)}.open-mobile-app-banner p span{color:var(--ink-soft);font-size:.62rem;line-height:1.35}.open-mobile-app-action{white-space:nowrap;min-height:34px;padding-inline:11px;font-size:.68rem}.open-mobile-app-dismiss{width:34px;height:34px;color:var(--muted)}.open-mobile-app-dismiss>svg{width:16px}}@keyframes app-update-arrive{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.mobile-header,.mobile-theme-picker,.scrim{display:none}.page{width:min(1180px,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)));padding:var(--app-page-padding-top) 0 var(--app-page-padding-bottom);margin-inline:auto}.page.app-page>.app-page-header{justify-content:space-between;align-items:flex-end;gap:30px;min-height:0;margin-bottom:36px;display:flex}.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;color:var(--ink-soft);margin:0;font-size:1rem;line-height:1.65}.app-page-header-aside{flex:none}.page.app-page>.app-page-state{margin-top:0}.page-heading{justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:36px;display:flex}.page-heading h1{margin-bottom:12px;font-size:clamp(2.5rem,4vw,3.7rem)}.page-heading p{margin:0}.section-title{justify-content:space-between;align-items:flex-start;gap:25px;display:flex}.section-title h2{margin:0}.difficulty{background:var(--sage);color:var(--sage-dark);text-transform:uppercase;letter-spacing:.08em;white-space:nowrap;border-radius:3px;padding:6px 9px;font-size:.61rem;font-weight:800}.streak{color:var(--muted);align-items:center;gap:5px;padding-bottom:8px;font-size:.75rem;display:flex}.streak svg{color:var(--saffron)}.streak strong{color:var(--ink)}.practice-week-strip{border-bottom:1px solid var(--line);color:var(--ink);grid-template-columns:minmax(180px,.65fr) minmax(360px,1fr);align-items:end;gap:24px;margin-bottom:20px;padding:4px 4px 16px;display:grid}.practice-week-heading{justify-content:space-between;align-items:flex-end;gap:12px;min-width:0;display:flex}.practice-week-heading>span{gap:4px;display:grid}.practice-week-heading strong{font-family:var(--serif);font-size:1rem;font-weight:500}.practice-week-heading>small{color:var(--sage-dark);white-space:nowrap;font-size:.65rem;font-weight:800}.practice-week-days{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;display:grid}.practice-week-days>span{background:color-mix(in srgb, var(--paper) 74%, var(--sage-soft) 26%);border:1px solid #0000;border-radius:6px;align-content:center;place-items:center;gap:4px;min-height:49px;display:grid}.practice-week-days small{color:var(--muted);text-transform:uppercase;font-size:.56rem;font-weight:800}.practice-week-days i{font-family:var(--serif);font-size:.72rem;font-style:normal}.practice-week-days .practice-calendar-marks{align-items:center;min-height:7px}.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{outline:3px solid var(--saffron);outline-offset:3px;border-radius:4px}@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)}}@media (width>=781px) and (width<=900px){.practice-week-strip{grid-template-columns:minmax(0,1fr);align-items:stretch;gap:12px}.practice-week-heading{align-items:end}.practice-week-days{width:100%}}.home-primary{grid-template-columns:minmax(0,1fr);gap:16px;display:grid}.today-panel,.resume-panel,.progress-panel,.learning-path{border:1px solid var(--line);background:var(--paper);border-radius:8px}.today-panel{padding:26px}.resume-panel{border-top:3px solid var(--sage-dark);padding:28px;box-shadow:0 14px 32px #102a430f}.today-body{grid-template-columns:210px 1fr;align-items:center;gap:26px;margin-top:24px;display:grid}.resume-status{color:var(--muted);font-variant-numeric:tabular-nums;margin:0 0 18px;font-size:.72rem;line-height:1.5}.resume-copy dl{margin:0 0 18px}.resume-copy dl div{border-bottom:1px solid #ebe6dc;justify-content:space-between;gap:15px;padding:7px 0;font-size:.72rem;display:flex}.resume-copy dt{color:var(--muted)}.resume-copy dd{margin:0;font-weight:700}.resume-copy>small{color:var(--muted);margin-top:10px;font-size:.64rem;display:block}.today-copy>p{margin-bottom:16px;font-size:.85rem}.today-copy dl{margin:0 0 18px}.today-copy dl div{border-bottom:1px solid #ebe6dc;justify-content:space-between;gap:15px;padding:7px 0;font-size:.72rem;display:flex}.today-copy dt{color:var(--muted)}.today-copy dd{margin:0;font-weight:700}.mini-board{aspect-ratio:1;border:1.5px solid var(--ink);background:var(--surface);grid-template-columns:repeat(9,1fr);display:grid}.mini-board>span{min-width:0;font-family:var(--serif);border-bottom:1px solid #d8dde0;border-right:1px solid #d8dde0;place-items:center;font-size:clamp(.45rem,1vw,.72rem);display:grid}.mini-board-value{display:inline-block}.mini-board-revealing .mini-board-value{animation:mini-board-value-arrive .18s var(--ease-out-ui) var(--mini-reveal-delay,0s) both}.mini-board>.box-r{border-right:1.5px solid var(--ink)}.mini-board>.box-b{border-bottom:1.5px solid var(--ink)}@keyframes mini-board-value-arrive{0%{opacity:0;transform:scale(.96)}}.progress-panel{flex-direction:column;align-items:center;padding:26px;display:flex}.progress-panel>.eyebrow{align-self:flex-start}.progress-ring{--progress:0deg;background:conic-gradient(var(--saffron) var(--progress), #e8e6df 0);border-radius:50%;place-items:center;width:160px;height:160px;margin:13px 0 20px;display:grid;position:relative}.progress-ring:after{content:"";background:var(--paper);border-radius:50%;position:absolute;inset:12px}.progress-ring>div{z-index:1;flex-direction:column;align-items:center;display:flex;position:relative}.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{inset:8px}.progress-ring.small strong{font-size:1.35rem}.progress-stats{flex-direction:column;gap:9px;width:100%;display:flex}.progress-stats span{color:var(--muted);justify-content:space-between;align-items:center;font-size:.67rem;display:flex}.progress-stats strong{color:var(--ink);font-size:.78rem}.learning-path{margin-top:16px;padding:26px}.continue-lesson{border:1px solid var(--line);background:color-mix(in srgb, var(--paper) 88%, var(--sage-soft));color:var(--ink);transition:border-color .15s ease, box-shadow .15s ease, transform .15s var(--ease-out-ui);border-radius:12px;grid-template-columns:104px minmax(0,1fr) auto;align-items:center;gap:20px;margin-top:16px;padding:18px 20px;display:grid;box-shadow:0 1px 2px #102a430a}.continue-lesson-secondary{background:var(--paper)}.continue-lesson-secondary .lesson-art{aspect-ratio:1;height:auto}.lesson-art{place-items:center;width:104px;height:104px;display:grid;overflow:hidden}.lesson-art img{-o-object-fit:contain;object-fit:contain;border-radius:28px;width:100%;height:100%}.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;color:var(--muted);text-wrap:pretty;margin:0;font-size:.78rem;line-height:1.5}.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}.continue-lesson:hover .continue-lesson-chevron{transform:translate(3px)}}.puzzle-page{background:var(--paper);min-height:100vh}.puzzle-print-view{display:none}.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);grid-template-columns:1fr auto 1fr;align-items:center;display:grid}.puzzle-header>:last-child{justify-self:end}.puzzle-header-actions{justify-content:flex-end;align-items:center;gap:4px;display:flex;position:relative}.puzzle-options{justify-content:flex-end;display:flex;position:relative}.puzzle-options-trigger{border:1px solid var(--line);min-height:40px;color:var(--ink);cursor:pointer;transform-origin:100%;transition:background-color .15s ease, border-color .15s ease, transform .15s var(--ease-out-ui);background:0 0;border-radius:999px;align-items:center;gap:8px;padding:0 13px;font-size:.68rem;font-weight:750;display:inline-flex}.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{opacity:0;transition:opacity .18s;display:none}.puzzle-options-backdrop[data-state=open]{opacity:1}:where([data-radix-dialog-overlay],[data-radix-alert-dialog-overlay]){z-index:1000;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);place-items:center;display:grid;position:fixed;inset:0;overflow-y:auto}.puzzle-options-panel{z-index:90;border:1px solid var(--line);background:var(--paper);opacity:0;visibility:hidden;pointer-events:none;transform-origin:100% 0;border-radius:12px;width:min(370px,100vw - 28px);max-height:min(720px,100dvh - 90px);transition:opacity .14s,transform .14s,visibility 0s linear .14s;position:absolute;top:calc(100% + 8px);left:auto;right:0;overflow-y:auto;transform:scale(.97);box-shadow:0 18px 50px #0d2d442e}.puzzle-options-panel[data-state=open],.puzzle-options-panel[data-open]{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .18s var(--ease-out-ui), transform .18s var(--ease-out-ui), visibility 0s linear 0s;transform:scale(1)}.puzzle-options-panel:focus{outline:none}.app-dialog-overlay,.app-dialog-backdrop{z-index:1000;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);place-items:center;display:grid;position:fixed;inset:0;overflow-y:auto}.app-dialog-overlay{background:#081c2a7a;animation:.18s both app-dialog-overlay-in}.app-dialog-overlay[data-state=closed]{animation:.14s both app-dialog-overlay-out}.app-dialog-overlay[data-state=closed],.app-dialog-backdrop[data-state=closed],.puzzle-options-backdrop[data-state=closed]{pointer-events:none}.app-dialog-backdrop{background:#081c2a8c;padding:24px}[data-app-dialog=dialog],[data-app-dialog=alert]{z-index:1001;max-width:calc(100vw - max(16px, var(--safe-area-left)) - max(16px, var(--safe-area-right)));max-height:calc(var(--visual-viewport-height) - max(16px, var(--safe-area-top)) - max(16px, var(--safe-area-bottom)));overflow-wrap:anywhere;position:relative}[data-app-dialog=dialog].app-mobile-sheet{min-width:0}@media (width<=780px){[data-app-dialog=dialog].app-mobile-sheet-full-bleed{max-width:none}}.puzzle-options-panel[data-app-dialog=dialog]{position:absolute}.app-switch{width:var(--control-comfortable-target);height:var(--control-min-target);cursor:pointer;background:0 0;border:0;border-radius:22px;flex:none;padding:0;position:relative}.app-switch:before{content:"";border:1px solid var(--color-text-muted);background:var(--surface-soft);transition:border-color var(--duration-fast) ease, background-color var(--duration-fast) ease;border-radius:13px;position:absolute;inset:10px 2px}.app-switch:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.app-switch-thumb{z-index:1;background:var(--surface);width:20px;height:20px;transition:transform var(--duration-fast) ease;border-radius:50%;display:block;position:absolute;top:12px;left:4px;box-shadow:0 1px 3px #0000002e}.app-switch[data-state=checked]:before{border-color:var(--sage-dark);background:var(--sage-dark)}.app-switch[data-state=checked] .app-switch-thumb{transform:translate(20px)}.app-switch:disabled{cursor:not-allowed;opacity:.55}.app-tooltip-content{z-index:2000;pointer-events:none;border:1px solid color-mix(in srgb, var(--ink) 22%, transparent);background:var(--ink-fill);max-width:min(280px,100vw - 24px);color:var(--on-ink);-webkit-user-select:none;user-select:none;border-radius:6px;padding:7px 9px;font-size:.62rem;font-weight:650;line-height:1.35;animation:.12s both app-tooltip-in;box-shadow:0 8px 20px #0d2d442e}.app-tooltip-arrow{fill:var(--ink-fill)}.app-tooltip-content[data-state=closed]{animation:90ms both app-tooltip-out}.app-tooltip-content.app-tooltip-instant,.app-tooltip-content.app-tooltip-instant[data-state=open]{transition-duration:0s;transition-delay:0s;animation-duration:0s;animation-delay:0s}.app-popover-content{z-index:1100;border:1px solid var(--line);background:var(--paper);border-radius:10px;min-width:220px;max-width:min(360px,100vw - 24px);padding:14px;animation:.14s both app-tooltip-in;box-shadow:0 18px 50px #0d2d442e}.app-tabs-root,.app-accordion-root{width:100%}.app-accordion-content[data-state=open]{animation:.18s ease-out app-accordion-down}.app-accordion-content[data-state=closed]{animation:.14s ease-out app-accordion-up}@keyframes app-dialog-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes app-dialog-overlay-out{0%{opacity:1}to{opacity:0}}@keyframes app-tooltip-in{0%{opacity:0;transform:translateY(3px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes app-tooltip-out{0%{opacity:1}to{opacity:0}}@keyframes app-accordion-down{0%{height:0}to{height:var(--radix-accordion-content-height)}}@keyframes app-accordion-up{0%{height:var(--radix-accordion-content-height)}to{height:0}}.puzzle-options-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:16px;padding:18px 18px 14px;display:flex}.puzzle-options-heading h2{margin:0;font-size:1.15rem}.puzzle-options-heading .puzzle-options-heading-accent{color:var(--sage-dark)}.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{border-top:1px solid #ebe6dd;padding-top:12px}.puzzle-options-section h3{color:var(--muted);font-family:var(--sans);letter-spacing:.11em;text-transform:uppercase;margin:0 0 4px;font-size:.58rem;font-weight:800}.puzzle-appearance-section{padding-bottom:14px}.puzzle-appearance-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.puzzle-appearance-options>button{border:1px solid var(--line);min-width:0;min-height:44px;color:var(--muted);font:700 .62rem/1.15 var(--sans);cursor:pointer;transition:background-color .15s ease, border-color .15s ease, color .15s ease, transform .15s var(--ease-out-ui);background:0 0;border-radius:7px;justify-content:center;align-items:center;gap:6px;padding:7px 6px;display:flex}.puzzle-appearance-options>button:hover,.puzzle-appearance-options>button:focus-visible{border-color:color-mix(in srgb, var(--sage-dark) 42%, var(--line))}.puzzle-appearance-options>button:active{transform:scale(.96)}.puzzle-appearance-options>button.active{border-color:color-mix(in srgb, var(--sage-dark) 48%, var(--line));background:var(--sage-soft);color:var(--ink)}.puzzle-appearance-options svg{width:16px;height:16px;color:var(--sage-dark);flex:none}.puzzle-digit-style-setting{border-top:1px solid #ebe6dd;gap:6px;margin-top:12px;padding-top:12px;display:grid}.puzzle-digit-style-setting>span{color:var(--muted);font:800 .58rem/1 var(--sans);letter-spacing:.08em;text-transform:uppercase}.puzzle-digit-style-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.puzzle-digit-style-options button{border:1px solid var(--line);min-width:0;min-height:48px;color:var(--muted);font:700 .62rem/1.15 var(--sans);cursor:pointer;background:0 0;border-radius:7px;justify-content:center;align-items:center;gap:8px;padding:6px 10px;display:flex}.puzzle-digit-style-options button>span{color:var(--ink);font:700 1.35rem/1 var(--serif)}.puzzle-digit-style-options button.inter>span{font-family:var(--sans);color:var(--ink)}.puzzle-digit-style-options button:hover,.puzzle-digit-style-options button:focus-visible{border-color:color-mix(in srgb, var(--sage-dark) 42%, var(--line))}.puzzle-digit-style-options button.active{border-color:color-mix(in srgb, var(--sage-dark) 48%, var(--line));background:var(--sage-soft);color:var(--ink)}html[data-puzzle-digit-style=inter] .sudoku-board .cell-value{font-family:var(--sans)}.puzzle-option-row{border-top:1px solid #ebe6dd;justify-content:space-between;align-items:center;gap:18px;min-height:52px;display:flex}.puzzle-option-label{min-width:0;color:var(--ink);align-items:center;gap:8px;font-size:.72rem;font-weight:680;display:flex}.puzzle-option-label>svg{width:16px;color:var(--sage-dark)}.puzzle-option-info{width:22px;height:22px;color:var(--muted);cursor:help;background:0 0;border:0;border-radius:50%;flex:none;place-items:center;padding:0;display:grid}.puzzle-option-info svg{width:14px;height:14px}.puzzle-option-info:hover,.puzzle-option-info:focus-visible{background:var(--surface-soft);color:var(--sage-dark);outline:none}.puzzle-option-info:focus-visible{box-shadow:0 0 0 2px color-mix(in srgb, var(--sage-dark) 28%, transparent)}.puzzle-options-panel .toggle{flex:none}.puzzle-options-settings-link{color:var(--ink);border-radius:7px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;margin:10px 12px 12px;padding:11px 8px;transition:background-color .15s;display:grid}.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{gap:2px;display:grid}.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-support-button{width:calc(100% - 24px);color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:7px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;margin:0 12px 12px;padding:11px 8px;transition:background-color .15s;display:grid}.puzzle-options-support-button:hover,.puzzle-options-support-button:focus-visible{background:#f3eee5}.puzzle-options-support-button>svg{width:18px;color:var(--sage-dark)}.puzzle-options-support-button>svg:last-child{width:16px}.puzzle-options-support-button span{gap:2px;display:grid}.puzzle-options-support-button strong{font-size:.72rem}.puzzle-options-support-button small{color:var(--muted);font-size:.61rem;line-height:1.35}.puzzle-options-danger{border-top:1px solid var(--line);padding:8px 12px 12px}.puzzle-options-danger button{width:100%;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;grid-template-columns:auto 1fr;align-items:start;gap:10px;padding:11px 12px;display:grid}.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{color:#9b4439;width:18px}.puzzle-options-danger span{gap:2px;display:grid}.puzzle-options-danger strong{font-size:.72rem}.puzzle-options-danger small{color:var(--muted);font-size:.62rem;line-height:1.35}.puzzle-bug-report-overlay{padding:24px}.puzzle-bug-report-dialog{z-index:1001;border:1px solid var(--line);background:var(--paper);border-radius:16px;width:min(640px,100vw - 32px);max-height:min(820px,100dvh - 48px);position:fixed;inset:50% auto auto 50%;overflow-y:auto;transform:translate(-50%,-50%);box-shadow:0 24px 80px #0d2d4442}.puzzle-bug-report-dialog:focus{outline:none}.puzzle-bug-report-heading{z-index:2;border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--paper) 94%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:18px 20px;display:grid;position:sticky;top:0}.puzzle-bug-report-heading h2{margin:0;font-size:1.18rem}.puzzle-bug-report-heading .puzzle-bug-report-heading-accent{color:var(--sage-dark)}.puzzle-bug-report-heading .icon-button{width:38px;height:38px}.puzzle-bug-report-icon{background:var(--sage-soft);width:38px;height:38px;color:var(--sage-dark);border-radius:10px;place-items:center;display:grid}.puzzle-bug-report-icon svg{width:20px}.puzzle-bug-report-body{gap:16px;padding:20px;display:grid}.puzzle-bug-report-body>p{color:var(--muted);margin:0;font-size:.76rem;line-height:1.55}.puzzle-bug-report-field{gap:7px;display:grid}.puzzle-bug-report-field>span{color:var(--ink);font-size:.7rem;font-weight:760}.puzzle-bug-report-field textarea{resize:vertical;border:1px solid var(--line);background:var(--surface);width:100%;min-height:96px;color:var(--ink);font:.72rem/1.5 var(--sans);border-radius:9px;padding:11px 12px}.puzzle-bug-report-field textarea:focus{border-color:var(--sage-dark);outline:3px solid color-mix(in srgb, var(--sage-dark) 18%, transparent)}.puzzle-bug-report-includes{border-block:1px solid color-mix(in srgb, var(--sage-dark) 22%, var(--line));background:color-mix(in srgb, var(--sage-soft) 42%, transparent);grid-template-columns:auto minmax(0,1fr);align-items:start;gap:11px;padding:13px 14px;display:grid}.puzzle-bug-report-includes>svg{width:19px;color:var(--sage-dark)}.puzzle-bug-report-includes strong{font-size:.7rem;display:block}.puzzle-bug-report-includes p,.puzzle-bug-report-includes small{color:var(--muted);margin:4px 0 0;font-size:.63rem;line-height:1.45;display:block}.puzzle-bug-report-preview{border-block:1px solid var(--line)}.puzzle-bug-report-preview summary{color:var(--ink);cursor:pointer;padding:11px 2px;font-size:.68rem;font-weight:740}.puzzle-bug-report-preview pre{background:var(--ink-fill);color:#f5f7f8;white-space:pre-wrap;overflow-wrap:anywhere;border-radius:8px;max-height:260px;margin:0 0 12px;padding:12px;font:.59rem/1.5 ui-monospace,SFMono-Regular,Menlo,monospace;overflow:auto}.puzzle-bug-report-actions{gap:9px;display:grid}.puzzle-bug-report-actions>.button-primary{width:100%}.puzzle-bug-report-fallbacks{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.puzzle-bug-report-fallbacks .button{min-width:0}.puzzle-bug-report-status{min-height:1.4em;color:var(--sage-dark);text-align:center;margin:0;font-size:.62rem}.puzzle-bug-report-status.error{color:var(--danger-text)}.puzzle-meta{align-items:center;gap:16px;display:flex}.timer{cursor:pointer;font-variant-numeric:tabular-nums;background:0 0;border:0;align-items:center;gap:6px;min-height:44px;padding:0 6px;display:flex}.mistake-count{color:var(--muted);font-size:.72rem}.puzzle-layout{width:min(1260px,100% - 48px);padding:32px 0 calc(32px + var(--safe-area-bottom));grid-template-columns:minmax(520px,740px) minmax(280px,355px);justify-content:center;gap:36px;margin:0 auto;display:grid}.board-workspace{--puzzle-board-size:min(100%, max(440px, calc(100dvh - 262px)));min-width:0}.puzzle-goal{width:var(--puzzle-board-size);border:1px solid var(--line);background:#fffdf8bf;border-radius:6px;grid-template-columns:auto 1fr auto;align-items:center;gap:11px;margin:0 auto 12px;padding:11px 14px;display:grid}.puzzle-goal:has(.puzzle-goal-guide){grid-template-columns:auto minmax(0,1fr) auto auto}.puzzle-goal-guide{border:1px solid color-mix(in srgb, var(--sage-dark) 28%, var(--line));background:var(--sage-soft);min-height:30px;color:var(--sage-dark);font:750 .61rem/1.1 var(--sans);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;gap:5px;padding:5px 9px;display:inline-flex}.puzzle-goal-guide svg{width:13px;height:13px}.puzzle-goal div{flex-direction:column;gap:2px;display:flex}.puzzle-goal span{color:var(--muted);font-size:.65rem}.puzzle-goal strong{font-family:var(--serif);font-size:.78rem;line-height:1.08}.puzzle-goal small{color:var(--muted);font-variant-numeric:tabular-nums}.puzzle-goal>svg{color:var(--sage-dark)}.puzzle-goal.complete{background:#edf5e9;border-color:#9eb89f}.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}.board-wrap{width:var(--puzzle-board-size);margin:0 auto;position:relative}.sudoku-board{aspect-ratio:1;border:2px solid var(--ink);background:var(--board-cell);grid-template-rows:repeat(9,minmax(0,1fr));grid-template-columns:repeat(9,minmax(0,1fr));display:grid;box-shadow:0 15px 34px #102a4317}.puzzle-completed-board{box-shadow:0 20px 55px #102a432e, 0 0 0 8px color-mix(in srgb, var(--sage) 56%, transparent);animation:puzzle-board-complete .82s var(--ease-out-ui) both;position:relative}.completion-wave-cell:after{content:"";z-index:4;background:color-mix(in srgb, var(--sage) 78%, transparent);opacity:0;pointer-events:none;animation:puzzle-cell-complete .72s var(--ease-out-ui) var(--completion-delay) both;position:absolute;inset:0}.completion-origin-cell .cell-value{z-index:5;animation:puzzle-final-value .65s var(--ease-out-ui) both;position:relative}@keyframes puzzle-board-complete{0%{box-shadow:0 15px 34px #102a4317,0 0 #0000}}@keyframes puzzle-cell-complete{0%,to{opacity:0}38%{opacity:.9}}@keyframes puzzle-final-value{0%{opacity:0;transform:scale(.55)}60%{transform:scale(1.16)}to{opacity:1;transform:scale(1)}}.puzzle-completion-active .board-tools,.puzzle-completion-active .mobile-coach-launcher,.puzzle-completion-active .puzzle-layout>aside{opacity:.14;transition:opacity .5s}.puzzle-completion-active .puzzle-header{opacity:.42;transition:opacity .5s}.puzzle-completion-moment{z-index:95;min-height:100dvh;padding:calc(86px + var(--safe-area-top)) max(48px, var(--safe-area-right)) calc(36px + var(--safe-area-bottom)) max(48px, var(--safe-area-left));background:radial-gradient(circle at 72% 24%, color-mix(in srgb, var(--saffron) 17%, transparent), transparent 24%), linear-gradient(90deg, color-mix(in srgb, var(--paper) 2%, transparent) 0%, color-mix(in srgb, var(--paper) 7%, transparent) 44%, color-mix(in srgb, var(--ink) 18%, transparent) 69%, color-mix(in srgb, var(--ink) 28%, transparent) 100%);grid-template-columns:minmax(300px,1fr) minmax(390px,470px);align-items:center;gap:clamp(20px,4vw,72px);animation:.5s both puzzle-completion-backdrop;display:grid;position:fixed;inset:0;overflow:hidden}.puzzle-completion-overlay{display:none}.puzzle-completion-moment:before{content:"";background:color-mix(in srgb, var(--paper) 44%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);pointer-events:none;position:absolute;inset:0 0 0 48%;-webkit-mask-image:linear-gradient(90deg,#0000,#000 28%);mask-image:linear-gradient(90deg,#0000,#000 28%)}.puzzle-completion-atmosphere{pointer-events:none;position:absolute;inset:0;overflow:hidden}.puzzle-completion-atmosphere i{--spark-size:8px;width:var(--spark-size);height:var(--spark-size);background:var(--saffron);box-shadow:0 0 18px color-mix(in srgb, var(--saffron) 70%, transparent);opacity:0;animation:puzzle-completion-spark 1.4s var(--ease-out-ui) both;border-radius:2px;position:absolute;transform:rotate(45deg)scale(0)}.puzzle-completion-atmosphere i:after{content:"";background:inherit;border-radius:999px;position:absolute;inset:35% -85%}.puzzle-completion-atmosphere i:first-of-type{animation-delay:90ms;top:12%;left:61%}.puzzle-completion-atmosphere i:nth-of-type(2){--spark-size:5px;animation-delay:.22s;top:22%;left:79%}.puzzle-completion-atmosphere i:nth-of-type(3){--spark-size:11px;animation-delay:.15s;top:38%;left:54%}.puzzle-completion-atmosphere i:nth-of-type(4){animation-delay:.31s;top:70%;left:60%}.puzzle-completion-atmosphere i:nth-of-type(5){--spark-size:6px;animation-delay:.41s;top:83%;left:76%}.puzzle-completion-atmosphere i:nth-of-type(6){--spark-size:10px;animation-delay:.36s;top:16%;right:5%}.puzzle-completion-atmosphere i:nth-of-type(7){animation-delay:.18s;top:46%;right:3%}.puzzle-completion-atmosphere i:nth-of-type(8){--spark-size:5px;animation-delay:.27s;bottom:8%;right:16%}.puzzle-completion-atmosphere i:nth-of-type(9){--spark-size:6px;animation-delay:.44s;top:8%;left:45%}.puzzle-completion-atmosphere i:nth-of-type(10){--spark-size:9px;animation-delay:.25s;bottom:14%;left:47%}.puzzle-completion-atmosphere i:nth-of-type(11){--spark-size:5px;animation-delay:.48s;top:58%;left:88%}.puzzle-completion-atmosphere i:nth-of-type(12){--spark-size:7px;animation-delay:.52s;top:29%;left:93%}.completion-orbit{border:1px solid color-mix(in srgb, var(--saffron) 38%, transparent);opacity:0;animation:puzzle-completion-orbit 1.2s .16s var(--ease-out-ui) both;border-radius:50%;position:absolute}.completion-orbit-one{width:330px;height:330px;top:calc(50% - 165px);right:385px}.completion-orbit-two{width:470px;height:210px;top:calc(50% - 105px);right:315px;transform:rotate(-18deg)}.puzzle-completion-visual{z-index:2;transform-origin:50% 100%;width:clamp(210px,25vw,330px);animation:puzzle-completion-mascot .9s 90ms var(--ease-out-ui) both;place-self:end;margin-right:-44px;position:relative}.puzzle-completion-visual .mascot{z-index:2;filter:drop-shadow(0 24px 24px #102a432e);width:100%;display:block;position:relative}.puzzle-completion-halo{background:radial-gradient(circle, color-mix(in srgb, var(--saffron) 24%, transparent), transparent 62%), var(--sage-soft);box-shadow:0 0 0 16px color-mix(in srgb, var(--paper) 42%, transparent);animation:puzzle-completion-halo 1s .12s var(--ease-out-ui) both;border-radius:50%;position:absolute;inset:8% -5% 12%;transform:scale(.72)}.puzzle-completion-seal{z-index:3;border:5px solid var(--paper);background:var(--saffron);width:58px;height:58px;color:var(--ink);animation:puzzle-completion-seal .62s .62s var(--ease-out-ui) both;border-radius:50%;place-items:center;display:grid;position:absolute;bottom:17%;right:2%;box-shadow:0 10px 22px #102a4333}.puzzle-completion-seal svg{stroke-width:3px;width:28px}.puzzle-completion-card{z-index:3;border:1px solid color-mix(in srgb, var(--sage-dark) 25%, var(--line));background:color-mix(in srgb, var(--paper) 96%, transparent);width:100%;max-height:calc(100dvh - 122px);animation:puzzle-completion-card .72s .16s var(--ease-out-ui) both;border-radius:20px;padding:clamp(28px,4vw,44px);overflow-y:auto;box-shadow:0 30px 80px #102a433d,inset 0 1px #ffffffb8}.puzzle-completion-eyebrow{color:var(--sage-dark);text-transform:uppercase;align-items:center;gap:8px;font-size:.68rem;font-weight:800;display:inline-flex}.puzzle-completion-eyebrow svg{width:17px;color:var(--saffron-ink)}.puzzle-completion-card h1{text-wrap:balance;margin:12px 0 10px;font-size:clamp(2.25rem,4vw,3.55rem);line-height:.98}.puzzle-completion-card>p{max-width:38ch;color:var(--muted);margin:0;font-size:.86rem;line-height:1.55}.puzzle-completion-achievements{flex-wrap:wrap;gap:8px;margin:24px 0 20px;display:flex}.puzzle-completion-achievements span{border:1px solid color-mix(in srgb, var(--sage-dark) 20%, var(--line));background:var(--sage-soft);min-height:34px;color:var(--sage-dark);border-radius:999px;align-items:center;gap:6px;padding:7px 11px;font-size:.66rem;font-weight:760;display:inline-flex}.puzzle-completion-achievements svg{stroke-width:3px;width:14px}.puzzle-completion-stats{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(3,1fr);margin:0;padding:18px 0;display:grid}.puzzle-completion-stats>div{border-left:1px solid var(--line);padding:0 16px}.puzzle-completion-stats>div:first-child{border-left:0;padding-left:0}.puzzle-completion-stats dt{color:var(--muted);font-size:.62rem}.puzzle-completion-stats dd{color:var(--ink);font-family:var(--serif);font-variant-numeric:tabular-nums;margin:5px 0 0;font-size:1.35rem}.puzzle-completion-actions{grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-top:22px;display:grid}.puzzle-completion-actions .button{min-height:50px}.puzzle-completion-review{justify-content:center}.puzzle-completion-review svg{width:18px;transition:transform .15s var(--ease-out-ui)}.puzzle-completion-review:disabled{cursor:wait;filter:saturate(.45);opacity:.62}.puzzle-completion-review:not(:disabled):hover svg{transform:translate(3px)}.puzzle-completion-exit{padding-inline:14px}.puzzle-completion-card>.puzzle-share-control{justify-items:start;min-width:0;margin-top:10px}.puzzle-completion-card .puzzle-share-button{background:0 0;border-color:#0000;min-height:40px}.puzzle-completion-card .puzzle-share-button:hover:not(:disabled){border-color:color-mix(in srgb, var(--sage-dark) 22%, var(--line));background:var(--sage-soft)}.puzzle-completion-card .lesson-share-status{text-align:left;max-width:none}.intensity-subtle .puzzle-completion-atmosphere i:nth-of-type(n+5),.intensity-subtle .completion-orbit-two{display:none}.intensity-subtle .puzzle-completion-atmosphere i,.intensity-subtle .completion-orbit,.intensity-subtle .puzzle-completion-visual,.intensity-subtle .puzzle-completion-halo,.intensity-subtle .puzzle-completion-seal,.intensity-subtle .puzzle-completion-card{animation-duration:.42s}.intensity-off{background:color-mix(in srgb, var(--ink) 18%, transparent);grid-template-columns:minmax(320px,470px);justify-content:center;animation:none}.intensity-off:before,.intensity-off .puzzle-completion-atmosphere,.intensity-off .puzzle-completion-visual{display:none}.intensity-off .puzzle-completion-card{animation:none}@keyframes puzzle-completion-backdrop{0%{opacity:0}}@keyframes puzzle-completion-card{0%{opacity:0;transform:translate(34px)scale(.97)}}@keyframes puzzle-completion-mascot{0%{opacity:0;transform:translateY(70px)scale(.86)}68%{transform:translateY(-5px)scale(1.02)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes puzzle-completion-halo{0%{opacity:0;transform:scale(.45)}to{opacity:1;transform:scale(1)}}@keyframes puzzle-completion-seal{0%{opacity:0;transform:rotate(-18deg)scale(.3)}72%{transform:rotate(4deg)scale(1.1)}to{opacity:1;transform:rotate(0)scale(1)}}@keyframes puzzle-completion-spark{0%{opacity:0;transform:rotate(45deg)scale(0)}32%{opacity:1;transform:rotate(45deg)scale(1)}to{opacity:0;transform:rotate(75deg)scale(.4)translateY(-24px)}}@keyframes puzzle-completion-orbit{0%{opacity:0;transform:scale(.68)rotate(-7deg)}to{opacity:.72;transform:scale(1)rotate(0)}}@media (width<=780px){.puzzle-completion-moment{background:linear-gradient(180deg, color-mix(in srgb, var(--paper) 3%, transparent) 0%, color-mix(in srgb, var(--ink) 10%, transparent) 32%, color-mix(in srgb, var(--ink) 34%, transparent) 58%, color-mix(in srgb, var(--ink) 42%, transparent) 100%);align-items:flex-end;padding:0;display:flex}.puzzle-completion-moment:before{background:color-mix(in srgb, var(--paper) 35%, transparent);inset:28% 0 0;-webkit-mask-image:linear-gradient(#0000,#000 32%);mask-image:linear-gradient(#0000,#000 32%)}.puzzle-completion-visual{z-index:4;top:clamp(70px,20dvh,170px);right:max(18px, var(--safe-area-right));width:clamp(104px,29vw,148px);margin:0;position:absolute}.puzzle-completion-seal{border-width:3px;width:40px;height:40px;bottom:11%;right:-2%}.puzzle-completion-seal svg{width:20px}.puzzle-completion-card{width:100%;max-height:63dvh;padding:30px max(22px, var(--safe-area-right)) calc(18px + var(--safe-area-bottom)) max(22px, var(--safe-area-left));border-width:1px 0 0;border-radius:24px 24px 0 0;animation-name:puzzle-completion-card-mobile}.puzzle-completion-card h1{max-width:calc(100% - 76px);margin-top:8px;font-size:clamp(2.15rem,10vw,3rem)}.puzzle-completion-card>p{font-size:.78rem}.puzzle-completion-achievements{margin:18px 0 16px}.puzzle-completion-stats{padding:14px 0}.puzzle-completion-stats>div{padding-inline:12px}.puzzle-completion-stats dd{font-size:1.2rem}.puzzle-completion-actions{margin-top:17px}.puzzle-completion-card>.puzzle-share-control{margin-top:5px}.completion-orbit-one{width:190px;height:190px;top:10%;right:-12px}.completion-orbit-two{display:none}.intensity-off{background:linear-gradient(180deg, color-mix(in srgb, var(--paper) 1%, transparent), color-mix(in srgb, var(--ink) 28%, transparent));display:flex}.intensity-off .puzzle-completion-card{max-height:58dvh}}@media (width<=430px){.puzzle-completion-card{max-height:67dvh;padding-top:25px}.puzzle-completion-visual{width:108px;top:14dvh}.puzzle-completion-eyebrow{font-size:.6rem}.puzzle-completion-card h1{font-size:clamp(2rem,9.5vw,2.55rem)}.puzzle-completion-actions{grid-template-columns:1fr}.puzzle-completion-exit{min-height:42px!important}}@media (height<=700px) and (width<=780px){.puzzle-completion-visual{display:none}.puzzle-completion-card h1{max-width:none}.puzzle-completion-card{max-height:72dvh}}@media (prefers-reduced-motion:reduce){.puzzle-completed-board,.completion-wave-cell:after,.completion-origin-cell .cell-value,.puzzle-completion-moment,.puzzle-completion-atmosphere i,.completion-orbit,.puzzle-completion-visual,.puzzle-completion-halo,.puzzle-completion-seal,.puzzle-completion-card{animation:none}.puzzle-completion-atmosphere{display:none}}@keyframes puzzle-completion-card-mobile{0%{opacity:0;transform:translateY(42px)}}.sudoku-row{display:contents}.sudoku-cell{border:0;border-right:1px solid var(--board-line);border-bottom:1px solid var(--board-line);background:var(--board-cell);cursor:pointer;min-width:0;min-height:0;transition:background-color .12s var(--ease-out-ui), box-shadow .12s var(--ease-out-ui), color .12s var(--ease-out-ui);place-items:center;padding:0;display:grid;position:relative}.sudoku-cell:active:not(:disabled){box-shadow:inset 0 0 0 2px color-mix(in srgb, var(--ink) 18%, transparent)}.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:var(--board-related)}.sudoku-cell.same-value{background:var(--board-match)}.sudoku-cell.selected{z-index:2;border:3px solid var(--board-selection-border);background:var(--board-selected)}.sudoku-cell.hinted:after{content:"";border:2px solid var(--saffron);pointer-events:none;border-radius:50%;animation:1.6s infinite pulse;position:absolute;inset:6px}.sudoku-cell.guide-related{background:var(--board-guide)}.sudoku-cell.guide-target{z-index:3;background:var(--board-target);box-shadow:inset 0 0 0 3px var(--saffron)}.sudoku-cell.selected.guide-target{border:0}.sudoku-cell.target-guidance-goal{z-index:2;outline:2px dashed var(--sage-dark);outline-offset:-5px}.sudoku-cell.guide-target.target-guidance-goal{outline:0}.sudoku-cell.conflict{background:var(--board-error);box-shadow:inset 0 0 0 2px var(--coral)}.sudoku-cell.conflict:before{content:"!";color:var(--coral);font:800 10px sans-serif;position:absolute;top:2px;right:4px}.sudoku-cell.needs-review{z-index:3;box-shadow:inset 0 0 0 3px var(--saffron);background:#fff7df}.sudoku-cell.needs-review:after{content:"";border:1px dashed color-mix(in srgb, var(--ink) 38%, transparent);pointer-events:none;border-radius:4px;position:absolute;inset:5px}.sudoku-cell.placement-success:before{content:"";z-index:4;border:2px solid var(--sage-dark);box-shadow:0 0 0 5px color-mix(in srgb, var(--sage-dark) 16%, transparent);pointer-events:none;animation:placement-success-ring .36s var(--ease-out-ui) both;border-radius:4px;position:absolute;inset:3px}.sudoku-cell.placement-routine:before{box-shadow:0 0 0 3px color-mix(in srgb, var(--sage-dark) 10%, transparent);border-width:1px;inset:5px}.sudoku-cell.placement-digit:before,.sudoku-cell.placement-technique:before,.sudoku-cell.placement-goal:before{animation-duration:.62s}.cell-success-mark{z-index:5;background:var(--paper);color:var(--sage-dark);box-shadow:0 1px 4px color-mix(in srgb, var(--ink) 16%, transparent);font-family:var(--sans);pointer-events:none;animation:placement-success-label .7s var(--ease-out-ui) both;border-radius:999px;padding:2px 5px;font-size:clamp(.42rem,.7vw,.58rem);font-weight:700;line-height:1.2;position:absolute;top:4px;right:4px}.sudoku-cell.placement-success .cell-value{color:var(--sage-dark);animation:placement-value-land .18s var(--ease-out-ui) both}.cell-value{font-family:var(--serif);color:var(--board-value);transition:opacity .16s var(--ease-out-ui) var(--sleep-delay,0s), transform .16s var(--ease-out-ui) var(--sleep-delay,0s);font-size:clamp(1.25rem,3.3vw,2.15rem)}.sudoku-cell.given .cell-value{color:var(--ink);font-weight:600}.candidate-grid{width:100%;min-width:0;height:100%;min-height:0;transition:opacity .16s var(--ease-out-ui) var(--sleep-delay,0s), transform .16s var(--ease-out-ui) var(--sleep-delay,0s);grid-template-rows:repeat(3,minmax(0,1fr));grid-template-columns:repeat(3,minmax(0,1fr));padding:4px;display:grid}.sudoku-board.is-paused .cell-value,.sudoku-board.is-paused .candidate-grid{opacity:.12;transform:scale(.98)}.candidate-grid i{color:var(--board-candidate);place-items:center;font-size:clamp(.44rem,.9vw,.7rem);font-style:normal;display:grid}.candidate-grid:not(.solve-candidate-grid) i{opacity:0;filter:blur(2px);transition:opacity .12s var(--ease-out-ui), filter .12s var(--ease-out-ui), transform .12s var(--ease-out-ui);transform:translateY(1px)}.candidate-grid:not(.solve-candidate-grid) i.candidate-visible{opacity:1;filter:blur();transform:translateY(0)}.candidate-grid i.same-value-candidate{width:1.35em;height:1.35em;color:var(--ink);background:#cdddc7;border-radius:50%;margin:auto;font-weight:800}.candidate-grid i.invalid-note{border:1px solid var(--saffron-ink);background:color-mix(in srgb, var(--saffron) 28%, var(--board-cell));width:1.35em;height:1.35em;color:var(--saffron-ink);border-radius:50%;margin:auto;font-weight:800}.candidate-grid i.temporary-note{border:1px dashed var(--board-selection-border);background:color-mix(in srgb, var(--blue-wash) 54%, var(--board-cell));width:1.35em;height:1.35em;color:var(--board-selection-border);border-radius:50%;margin:auto;font-weight:800}.solution-instruction-board .sudoku-cell{cursor:default;transition:background-color .18s var(--ease-out-ui), box-shadow .18s var(--ease-out-ui)}.solution-instruction-board.coach-instruction-board .sudoku-cell{cursor:pointer}.solution-instruction-board .sudoku-cell.solve-muted{background:color-mix(in srgb, var(--board-cell) 94%, var(--paper-deep));color:var(--ink);opacity:1}.solution-instruction-board .sudoku-cell.solve-evidence{background:#edf5e9}.solution-instruction-board .sudoku-cell.solve-blocker{z-index:1;background:#fbe7df}.solution-instruction-board .sudoku-cell.solve-blocker .cell-value{color:var(--coral-dark);font-weight:750}.solution-instruction-board .sudoku-cell.solve-target{z-index:3;box-shadow:inset 0 0 0 3px var(--saffron), 0 0 0 2px color-mix(in srgb, var(--saffron) 24%, transparent);background:#fff3cf}.solution-instruction-board .sudoku-cell.solve-elimination-target{z-index:2;box-shadow:inset 0 0 0 3px color-mix(in srgb, var(--coral-dark) 74%, transparent);background:#fbe7df}.solution-instruction-board .sudoku-cell.solve-preview{background:#e4eee4}.solution-instruction-board .sudoku-cell.solve-temporary{background:#fff9e9}.solution-instruction-board .sudoku-cell.solve-contradiction{z-index:4;box-shadow:inset 0 0 0 3px var(--coral-dark), 0 0 0 3px color-mix(in srgb, var(--coral-dark) 18%, transparent);background:#fbe7df}.solve-preview-value{color:var(--sage-dark);animation:solve-preview-arrive .26s var(--ease-out-ui) both;font-weight:750}.solve-temporary-value{color:#9b6410;opacity:.78;font-style:italic;font-weight:700}.solve-candidate-grid i{color:var(--ink-soft);font-weight:650;position:relative}.solve-candidate-grid i.emphasized{background:var(--saffron);color:var(--ink);border-radius:50%;font-weight:800}.solve-candidate-grid i.tone-a{background:color-mix(in srgb, var(--sage) 78%, white);color:var(--sage-dark);border-radius:50%;font-weight:800}.solve-candidate-grid i.tone-b{background:color-mix(in srgb, var(--blue-wash) 78%, white);color:var(--ink);border-radius:50%;font-weight:800}.solve-candidate-grid i.selectable{border:1px solid color-mix(in srgb, var(--saffron-ink) 58%, transparent);background:color-mix(in srgb, var(--saffron) 18%, var(--board-cell));min-width:1.55em;min-height:1.55em;color:var(--ink);border-radius:50%;font-weight:800}.solve-candidate-grid i.selectable.selected{border-color:var(--sage-dark);background:var(--sage-dark);box-shadow:0 0 0 2px color-mix(in srgb, var(--sage-dark) 22%, transparent);color:#fff}.solve-candidate-grid i.crossed{color:var(--coral-dark);text-decoration:line-through;text-decoration-thickness:2px}.board-instruction-candidate-actions{grid-template-columns:repeat(auto-fit,minmax(112px,1fr));gap:8px;width:min(100%,620px);margin:12px auto 0;display:grid}.board-instruction-candidate-actions button{min-width:0;min-height:var(--control-comfortable-target);border:1px solid var(--border-strong);border-radius:var(--radius-control);background:var(--surface-raised);color:var(--text-primary);cursor:pointer;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:7px 12px;display:grid}.board-instruction-candidate-actions button:hover{border-color:var(--accent-border);background:var(--accent-surface)}.board-instruction-candidate-actions button:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.board-instruction-candidate-actions button[aria-pressed=true]{border-color:var(--success-border);background:var(--success-surface);color:var(--success-text)}.board-instruction-candidate-actions small{overflow-wrap:anywhere;color:inherit;font-weight:750}.board-instruction-candidate-actions strong{background:var(--accent-surface-strong);width:30px;height:30px;color:var(--accent-text);border-radius:50%;place-items:center;font-size:1rem;display:grid}@keyframes solve-preview-arrive{0%{opacity:0;transform:scale(.72)}}@media (prefers-reduced-motion:reduce){.solve-preview-value{animation:none}}@keyframes placement-success-ring{0%{opacity:0;box-shadow:0 0 #0000}55%{opacity:1;box-shadow:0 0 0 5px color-mix(in srgb, var(--sage-dark) 16%, transparent)}to{opacity:0;box-shadow:0 0 0 2px #0000}}@keyframes placement-success-label{0%{opacity:0;transform:translateY(3px)}}@keyframes placement-value-land{0%{opacity:.45;transform:translateY(2px)}}@keyframes goal-success-arrive{0%{box-shadow:0 0 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 #0000}}@keyframes goal-success-check{0%{opacity:0;transform:translateY(3px)rotate(-8deg)}}html[data-feedback=subtle] .sudoku-cell.placement-success:before{box-shadow:0 0 0 3px color-mix(in srgb, var(--sage-dark) 10%, transparent);border-width:1px;animation-duration:.3s;inset:5px}html[data-feedback=subtle] .cell-success-mark{display:none}html[data-feedback=off] .candidate-grid i,html[data-feedback=off] .number-key-value,html[data-feedback=off] .number-key-complete-icon{transition:none}.pause-overlay{z-index:10;text-align:center;animation:pause-overlay-arrive .2s var(--ease-out-ui) both;background:#f7f3eaf7;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.pause-overlay .mascot{width:125px;height:130px}.pause-overlay h2{margin:5px 0}.pause-overlay p{margin-bottom:20px;font-size:.83rem}@keyframes pause-overlay-arrive{0%{opacity:0}}.board-tools{width:var(--puzzle-board-size);margin:18px auto 0}.desktop-shortcut-help{color:#60727e;width:max-content;font:650 .57rem/1.2 var(--sans);cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;margin:0 0 5px auto;padding:3px 1px;display:flex}.desktop-shortcut-help:hover,.desktop-shortcut-help:focus-visible,.desktop-shortcut-help[aria-pressed=true]{color:var(--ink)}.desktop-shortcut-help kbd{font:inherit;white-space:nowrap;background:#ffffffb8;border:1px solid #12324a38;border-bottom-width:2px;border-radius:4px;padding:2px 5px}.edit-tools{justify-content:center;gap:6px;display:flex}.desktop-guidance-status{margin-top:7px}.puzzle-guidance-summary{border:1px solid color-mix(in srgb, var(--sage-dark) 28%, var(--line));background:color-mix(in srgb, var(--sage-soft) 54%, var(--surface));border-radius:9px;grid-template-columns:minmax(0,1fr) 32px;display:grid;position:relative;overflow:hidden}.puzzle-guidance-summary-open{min-width:0;min-height:50px;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:9px;padding:7px 10px;display:grid}.puzzle-guidance-summary-open:hover,.puzzle-guidance-summary-open:focus-visible{background:color-mix(in srgb, var(--sage-soft) 78%, var(--surface))}.puzzle-guidance-summary-icon{background:var(--surface);width:30px;height:30px;color:var(--sage-dark);border-radius:50%;place-items:center;display:grid}.puzzle-guidance-summary-icon svg{width:15px}.puzzle-guidance-summary-copy{gap:2px;min-width:0;display:grid}.puzzle-guidance-summary-copy small{color:var(--sage-dark);text-overflow:ellipsis;white-space:nowrap;font-size:.53rem;font-weight:800;line-height:1.2;overflow:hidden}.puzzle-guidance-summary-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:.66rem;line-height:1.25;overflow:hidden}.puzzle-guidance-summary-action{color:var(--ink-soft);white-space:nowrap;align-items:center;gap:3px;font-size:.55rem;font-weight:750;display:inline-flex}.puzzle-guidance-summary-action svg{width:13px}.puzzle-guidance-summary-stop{border:0;border-left:1px solid color-mix(in srgb, var(--sage-dark) 16%, var(--line));width:32px;min-height:100%;color:var(--muted);cursor:pointer;background:0 0;place-items:center;display:grid}.puzzle-guidance-summary-stop:hover,.puzzle-guidance-summary-stop:focus-visible{background:var(--surface);color:var(--ink)}.puzzle-guidance-summary-stop svg{width:14px}.desktop-guidance-status .puzzle-guidance-status{grid-template-columns:28px minmax(0,1fr);grid-template-areas:"icon copy""icon actions";align-items:start;margin-top:0}.desktop-guidance-status .puzzle-guidance-status-icon{grid-area:icon;margin-top:1px}.desktop-guidance-status .puzzle-guidance-status-copy{grid-area:copy}.desktop-guidance-status .puzzle-guidance-status-actions{justify-content:flex-end;align-items:center;justify-items:initial;border-top:1px solid color-mix(in srgb, var(--sage-dark) 14%, transparent);flex-wrap:wrap;grid-area:actions;gap:5px;min-width:0;margin-top:7px;padding-top:7px;display:flex}.desktop-guidance-status .puzzle-guidance-status-actions .guidance-assist-progress{white-space:nowrap;margin-top:0}.input-mode-tools{display:contents}.input-mode-button-label{min-width:0}.input-mode-label-active,.input-mode-button.active .input-mode-label-default{display:none}.input-mode-button.active .input-mode-label-active{display:inline}.input-mode-active-check{flex:none;width:13px}.puzzle-guidance-status{border:1px solid color-mix(in srgb, var(--sage-dark) 28%, var(--line));background:color-mix(in srgb, var(--sage-soft) 58%, var(--surface));border-radius:8px;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:9px;margin:7px 0 0;padding:8px 10px;display:grid;position:relative}.puzzle-guidance-state-control,.puzzle-guidance-close-label{display:none}.puzzle-guidance-status-icon{background:var(--surface);width:28px;height:28px;color:var(--sage-dark);border-radius:50%;place-items:center;display:grid}.puzzle-guidance-status-icon svg{width:15px}.puzzle-guidance-status-copy{gap:1px;min-width:0;display:grid}.guidance-objective-control{z-index:1;border:1px solid color-mix(in srgb, var(--sage-dark) 28%, var(--line));background:color-mix(in srgb, var(--surface) 82%, transparent);width:fit-content;max-width:100%;min-height:22px;color:var(--sage-dark);font:750 .5rem/1.15 var(--sans);cursor:pointer;border-radius:999px;align-items:center;gap:4px;margin:0;padding:3px 7px;display:inline-flex;position:absolute;top:8px;right:10px}.guidance-objective-control:hover,.guidance-objective-control:focus-visible{border-color:var(--sage-dark);background:var(--surface)}.guidance-objective-control span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.guidance-objective-control svg{flex:none;width:11px;height:11px}.guidance-objective-popover{width:min(340px,100vw - 24px);padding:10px}.guidance-objective-popover-title{color:var(--ink);margin:1px 2px 8px;font-size:.72rem;line-height:1.2;display:block}.guidance-objective-section-label{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;margin:10px 2px 6px;font-size:.54rem;font-weight:750;display:block}.puzzle-guidance-status:has(>.guidance-objective-control) .puzzle-guidance-status-copy{padding-right:150px}.puzzle-guidance-status:has(.guidance-assist-back)>.guidance-objective-control{right:46px}.guidance-status-title-accent{color:var(--sage-dark)}.puzzle-guidance-status.has-incorrect-notes{border-color:color-mix(in srgb, var(--coral-dark) 34%, var(--line));background:color-mix(in srgb, var(--coral) 8%, var(--surface))}.puzzle-guidance-status.has-incorrect-notes .puzzle-guidance-status-icon,.puzzle-guidance-status.has-incorrect-notes .guidance-status-title-accent{color:var(--coral-dark)}.puzzle-guidance-status-copy small{color:var(--sage-dark);letter-spacing:.05em;text-transform:uppercase;font-size:.52rem;font-weight:800}.puzzle-guidance-status-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;line-height:1.25;overflow:hidden}.puzzle-guidance-status-copy>span{color:var(--muted);font-size:.58rem;line-height:1.3}.puzzle-guidance-status-copy .guidance-assist-next{color:var(--ink-soft);margin-top:2px;font-weight:650}.puzzle-guidance-status-copy .guidance-assist-next.is-error{color:var(--coral-dark,#8a3f32)}.objective-goal-guide .puzzle-guidance-status-copy strong{white-space:normal}.puzzle-guidance-status-copy .guidance-assist-progress,.puzzle-guidance-status-actions .guidance-assist-progress{background:color-mix(in srgb, var(--sage-dark) 10%, transparent);width:fit-content;color:var(--sage-dark);white-space:nowrap;border-radius:999px;margin-top:3px;padding:2px 6px;font-size:.5rem;font-weight:800;line-height:1.2}.puzzle-guidance-status-actions{justify-items:end;gap:3px;display:grid}.puzzle-guidance-status-actions .text-link{cursor:pointer;background:0 0;border:0;padding:1px 0;font-size:.57rem}.guidance-primary-actions{align-items:center;gap:5px;display:flex}.puzzle-guidance-back,.guidance-assist-back{z-index:1;border:1px solid color-mix(in srgb, var(--sage-dark) 30%, var(--line));background:color-mix(in srgb, var(--sage-soft) 38%, var(--surface));width:30px;height:30px;min-height:0;color:var(--ink-soft);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;padding:0;display:inline-flex;position:absolute;top:8px;right:10px}:is(.puzzle-guidance-status:has(.puzzle-guidance-back) .puzzle-guidance-status-copy,.puzzle-guidance-status:has(.guidance-assist-back) .puzzle-guidance-status-copy){padding-right:40px}.puzzle-guidance-back:hover,.puzzle-guidance-back:focus-visible,.guidance-assist-back:hover,.guidance-assist-back:focus-visible{border-color:var(--sage-dark);background:var(--surface);color:var(--sage-dark)}.puzzle-guidance-back svg,.guidance-assist-back svg{width:14px;height:14px}.guidance-primary-action,.guidance-secondary-action{border:1px solid color-mix(in srgb, var(--sage-dark) 36%, var(--line));cursor:pointer;border-radius:999px;justify-content:center;align-items:center;min-height:30px;display:inline-flex}.guidance-primary-action{background:var(--ink-fill);color:#fff;gap:5px;padding:6px 10px;font-size:.58rem;font-weight:800;line-height:1.1}.guidance-primary-action:hover,.guidance-primary-action:focus-visible{background:var(--ink)}.guidance-primary-action svg{width:13px;height:13px}.guidance-secondary-action{background:var(--surface);color:var(--ink-soft);gap:5px;padding:6px 9px;font-size:.56rem;font-weight:800;line-height:1.1}.guidance-secondary-action:hover,.guidance-secondary-action:focus-visible{border-color:var(--sage-dark);color:var(--sage-dark)}.guidance-secondary-action svg{width:13px;height:13px}.guidance-action-label-compact{display:none}.guidance-action-copy{text-align:left;gap:2px;min-width:0;display:grid}.guidance-action-copy strong{font:inherit}.guidance-action-copy small{display:none}.guidance-discovery-actions{border-top:1px solid color-mix(in srgb, var(--sage-dark) 12%, transparent);flex-wrap:wrap;grid-column:2/-1;gap:5px 10px;min-width:0;padding-top:6px;display:flex}.guidance-discovery-action{min-height:24px;color:var(--ink-soft);font:750 .53rem/1.2 var(--sans);cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;padding:2px 0;display:inline-flex}.guidance-discovery-action:hover,.guidance-discovery-action:focus-visible{color:var(--sage-dark);text-underline-offset:2px;text-decoration:underline}.guidance-discovery-action svg{width:12px;height:12px}.guidance-discovery-action[aria-expanded=true]>svg{transform:rotate(180deg)}.guidance-alternatives-list{grid-column:2/-1}.guidance-alternatives{grid-column:2/-1;min-width:0;font-size:.54rem}.puzzle-guidance-learning-actions .text-link{gap:4px}.puzzle-guidance-learning-actions svg{width:13px;height:13px}.guidance-alternatives ul{gap:4px;margin:5px 0 0;padding:0;list-style:none;display:grid}.guidance-alternatives li button{border:1px solid var(--line);background:var(--surface);width:100%;color:var(--ink);text-align:left;cursor:pointer;border-radius:6px;justify-content:space-between;align-items:baseline;gap:8px;padding:5px 7px;display:flex}.guidance-alternatives li button small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.guidance-picker-backdrop{z-index:79;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#102a436b;position:fixed;inset:0}.guidance-picker-panel{z-index:80;border:1px solid var(--line);background:var(--surface);border-radius:14px;flex-direction:column;gap:13px;width:min(620px,100vw - 28px);max-height:min(760px,100dvh - 28px);padding:18px;display:flex;position:fixed;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%);box-shadow:0 24px 70px #102a4340}.guidance-picker-heading{grid-template-columns:minmax(0,1fr) 34px;gap:12px;display:grid}.guidance-picker-heading h2{margin:2px 0 4px;font-size:1.25rem}.guidance-picker-heading p{color:var(--muted);margin:0;font-size:.7rem;line-height:1.4}.guidance-picker-presets{border:1px solid var(--line);background:var(--surface-soft);border-radius:10px;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px;padding:3px;display:grid}.guidance-picker-presets>button{min-width:0;min-height:58px;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:7px;grid-template-columns:22px minmax(0,1fr) 16px;align-items:center;gap:8px;padding:9px 10px;display:grid}.guidance-picker-presets>.guidance-target-preset{grid-column:1/-1}.guidance-picker-presets>button:hover,.guidance-picker-presets>button:focus-visible,.guidance-picker-presets>button.active{border-color:var(--sage-dark);background:var(--surface);box-shadow:0 1px 3px #102a431a}.guidance-picker-presets svg{width:18px;color:var(--sage-dark)}.guidance-picker-presets .guidance-picker-preset-check{width:14px;height:14px}.guidance-picker-presets span{gap:2px;min-width:0;display:grid}.guidance-picker-presets strong{font-size:.67rem}.guidance-picker-presets small{color:var(--muted);font-size:.55rem;line-height:1.25}.guidance-picker-presets.guidance-objective-options{grid-template-columns:repeat(2,minmax(0,1fr))}.guidance-objective-options>.guidance-target-preset{grid-column:auto}.guidance-objective-options>button{grid-template-columns:18px minmax(0,1fr) 14px;gap:6px;min-height:54px;padding:7px 8px}.guidance-objective-options>button:disabled,.guidance-objective-options>button:disabled:hover{color:var(--muted);box-shadow:none;opacity:1;cursor:not-allowed;background:0 0;border-color:#0000}.guidance-objective-options>button:disabled>svg,.guidance-objective-options>button:disabled strong{opacity:.58}.guidance-objective-options>button:disabled small{opacity:1}.guidance-objective-options svg{width:15px}.guidance-objective-options strong{font-size:.61rem;line-height:1.15}.guidance-objective-options small{font-size:.5rem;line-height:1.18}.guidance-picker-search{border:1px solid var(--line);background:var(--paper);border-radius:7px;align-items:center;gap:8px;min-height:38px;padding:0 10px;display:flex}.guidance-picker-search svg{width:16px;color:var(--muted)}.guidance-picker-search input{width:100%;color:var(--ink);font:inherit;background:0 0;border:0;outline:0;font-size:.72rem}.guidance-picker-search:focus-within{border-color:var(--sage-dark);box-shadow:0 0 0 3px color-mix(in srgb, var(--sage-dark) 18%, transparent)}.guidance-picker-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;min-height:0;margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.guidance-picker-list>li{min-width:0}.guidance-picker-list>li>button{background:var(--paper-deep);width:100%;min-height:58px;color:var(--ink);text-align:left;cursor:pointer;border:1px solid #0000;border-radius:7px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:7px 9px;display:grid}.guidance-picker-list>li>button:hover,.guidance-picker-list>li>button:focus-visible,.guidance-picker-list>li>button.active{border-color:var(--ink);background:var(--sage-soft)}.guidance-picker-list>li>button>span:first-child{gap:2px;min-width:0;display:grid}.guidance-picker-list strong{text-overflow:ellipsis;white-space:nowrap;font-size:.66rem;overflow:hidden}.guidance-picker-list small{color:var(--muted);font-size:.54rem}.guidance-picker-list .guidance-technique-summary{text-overflow:ellipsis;white-space:nowrap;font-size:.49rem;line-height:1.25;overflow:hidden}.guidance-availability{background:var(--surface);color:var(--muted);white-space:nowrap;border-radius:999px;padding:3px 5px;font-size:.5rem;font-weight:750}.guidance-availability.is-now{background:var(--sage);color:var(--accent-ink)}.guidance-availability.is-later{background:var(--blue-wash);color:var(--ink)}.input-mode-tools .mobile-input-mode{display:none}.tool-button-wrap{border-radius:6px;display:flex;position:relative}.edit-tools button{color:#5f6f7a;cursor:pointer;background:0 0;border:0;border-radius:4px;justify-content:center;align-items:center;gap:5px;min-width:67px;padding:8px;font-size:.68rem;display:flex;position:relative}.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}.edit-tools button.active,.edit-tools button[aria-pressed=true]{background:var(--active-control-surface);box-shadow:var(--active-control-shadow);color:var(--ink)}.edit-tools button:active:not(:disabled){transform:translateY(1px)}.edit-tools button[aria-pressed=true]{z-index:1}.edit-tools .input-mode-active-check{background:var(--saffron);width:14px;height:14px;color:var(--accent-ink);box-shadow:0 0 0 1px color-mix(in srgb, var(--surface) 72%, transparent);border-radius:999px;padding:2px;position:absolute;top:4px;right:4px}.puzzle-shortcut-badge{z-index:2;min-width:18px;color:var(--ink);letter-spacing:0;pointer-events:none;white-space:nowrap;background:#f7f3eaf5;border:1px solid #12324a33;border-radius:4px;padding:1px 4px;font-family:sans-serif;font-size:.48rem;font-weight:700;line-height:1.25;position:absolute;top:3px;right:4px}@media (width>=781px){.board-tools{flex-direction:column;align-items:stretch;gap:8px;display:flex}.board-tools .desktop-guidance-status{order:1;margin-top:0}.board-tools .puzzle-number-pad{order:2;margin-top:0}.board-tools .edit-tools{border:1px solid var(--line);background:var(--surface);border-radius:7px;order:3;justify-content:stretch;align-items:stretch;gap:0;min-height:50px;overflow:hidden}.board-tools .edit-tools>.tool-button-wrap,.board-tools .edit-tools>.input-mode-tools>.tool-button-wrap{flex:1 1 0;min-width:0}.board-tools .edit-tools button{border-left:1px solid var(--line);white-space:nowrap;border-radius:0;flex-direction:column;gap:3px;width:100%;min-width:0;min-height:48px;padding:6px 3px;font-size:.58rem;line-height:1.1}.board-tools .edit-tools>.tool-button-wrap:first-child button,.board-tools .edit-tools>.input-mode-tools>.tool-button-wrap:first-child button{border-left:0}.board-tools .edit-tools>.desktop-guidance-tool-wrap:last-child button{border-radius:0 6px 6px 0}.board-tools .edit-tools button:hover{background:var(--blue-wash);color:var(--ink)}.board-tools .edit-tools svg{height:15px}.board-tools .desktop-shortcut-help{order:4;margin:0 0 0 auto}}.puzzle-reset-dialog,.puzzle-share-dialog,.auto-solve-dialog{border:1px solid var(--line);background:var(--paper);border-radius:14px;width:min(100%,520px);padding:28px;box-shadow:0 28px 80px #0d2d4440}.puzzle-dialog-header{justify-content:space-between;align-items:center;display:flex}.puzzle-dialog-icon{color:#8a6217;background:#fff3cf;border-radius:50%;place-items:center;width:42px;height:42px;margin-bottom:14px;display:grid}.puzzle-dialog-icon.success{color:var(--sage-dark);background:#edf5e9}.puzzle-dialog-icon.danger{color:#a1463b;background:#fff0ed}.puzzle-dialog-icon svg{width:21px}.puzzle-reset-dialog h2,.puzzle-share-dialog h2,.auto-solve-dialog h2{margin:3px 0 5px;font-size:1.28rem}.puzzle-reset-dialog>p,.puzzle-share-dialog>p,.auto-solve-dialog>p{color:var(--muted);margin:0;font-size:.72rem;line-height:1.4}.puzzle-share-dialog{position:relative}.puzzle-share-dialog-close{position:absolute;top:18px;right:18px}.puzzle-share-choices{gap:10px;margin-top:22px;display:grid}.puzzle-share-choice{border:1px solid var(--line);background:var(--paper);width:100%;color:var(--ink);text-align:left;cursor:pointer;border-radius:10px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:13px;padding:15px;display:grid}.puzzle-share-choice.primary{border-color:color-mix(in srgb, var(--sage-dark) 45%, var(--line));background:color-mix(in srgb, var(--sage) 10%, var(--paper))}.puzzle-share-choice:hover:not(:disabled),.puzzle-share-choice:focus-visible{background:#f3eee5}.puzzle-share-choice>svg{width:21px;color:var(--sage-dark)}.puzzle-share-choice span{gap:3px;display:grid}.puzzle-share-choice strong{font-size:.76rem}.puzzle-share-choice small{color:var(--muted);font-size:.65rem;line-height:1.4}.puzzle-share-dialog-status{min-height:20px;color:var(--sage-dark);align-items:center;gap:6px;margin-top:14px;font-size:.68rem;font-weight:700;display:flex}.puzzle-share-dialog-status svg{width:16px}.recovery-counts{border-block:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));margin:20px 0;display:grid}.recovery-counts span{color:var(--muted);gap:2px;padding:16px 12px;font-size:.65rem;display:grid}.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}.puzzle-dialog-done{width:100%}.recovery-upgrade-note{border:1px solid var(--line);background:#fffdf8b8;border-radius:8px;justify-content:space-between;align-items:flex-start;gap:14px;margin-top:2px;padding:14px;display:flex}.recovery-upgrade-note>svg{color:#9a6b13;flex:none;width:19px}.recovery-upgrade-note div{gap:4px;display:grid}.recovery-upgrade-note strong{font-size:.72rem}.recovery-upgrade-note p{color:var(--muted);margin:0;font-size:.64rem;line-height:1.45}.recovery-upgrade-note .text-link{margin-top:5px;font-size:.68rem}.puzzle-dialog-done{margin-top:20px}.puzzle-dialog-actions{justify-content:flex-end;gap:10px;margin-top:22px;display:flex}.auto-solve-panel .button-ghost,.auto-solve-panel .button-secondary,.auto-solve-confirm-dialog .button-ghost,.puzzle-recovery-panel .button-ghost{color:var(--ink);background:#ffffffe0;border-color:#12324a47;border-bottom-width:2px;border-radius:8px;box-shadow:0 1px #12324a0d}.auto-solve-panel .button-ghost:hover:not(:disabled),.auto-solve-panel .button-secondary:hover:not(:disabled),.auto-solve-confirm-dialog .button-ghost:hover:not(:disabled),.puzzle-recovery-panel .button-ghost:hover:not(:disabled){background:var(--blue-wash);border-color:#2d6793}.auto-solve-panel .button-ghost:focus-visible,.auto-solve-panel .button-secondary:focus-visible,.auto-solve-confirm-dialog .button-ghost:focus-visible,.puzzle-recovery-panel .button-ghost:focus-visible{outline-offset:2px;border-color:#2d6793;outline:3px solid #2d67933d}.auto-solve-panel .button-ghost:disabled,.auto-solve-panel .button-secondary:disabled{box-shadow:none;background:#ffffff61;border-color:#12324a1f}.auto-solve-panel{background:var(--paper);border:1px solid #cec8bc;border-radius:10px;outline:none;flex-direction:column;align-self:start;height:min(790px,100dvh - 134px);min-height:min(560px,100dvh - 134px);display:flex;position:sticky;top:16px;overflow:hidden;box-shadow:0 14px 38px #102a4314}.guided-solve-panel{container-type:inline-size}.puzzle-recovery-panel-body{color:var(--muted);font-size:.72rem;line-height:1.4}.puzzle-recovery-panel-body>p{margin:0}.recovery-steps{border-bottom:1px solid var(--line);grid-template-columns:repeat(2,1fr);margin-bottom:14px;display:grid}.recovery-steps span{color:var(--muted);padding:0 4px 10px;font-size:.65rem;font-weight:700}.recovery-steps span.active{color:var(--ink);border-bottom:2px solid #2d6793;margin-bottom:-1px}.recovery-steps span.complete{color:var(--sage-dark)}.recovery-steps small{border:1px solid;border-radius:50%;place-items:center;width:20px;height:20px;margin-right:5px;display:inline-grid}.recovery-review-action{width:100%}.recovery-clean-actions{gap:9px;display:grid}.recovery-clean-actions .button{width:100%}.puzzle-recovery-panel .auto-solve-panel-icon.success{color:var(--sage-dark);background:#edf5e9}.auto-solve-panel:focus-visible{box-shadow:0 14px 38px #102a4314, 0 0 0 3px color-mix(in srgb, var(--sage-dark) 28%, transparent)}.auto-solve-panel-header{border-bottom:1px solid var(--line);background:#fffdf8f5;grid-template-columns:42px minmax(0,1fr) 34px;align-items:start;gap:10px;min-height:94px;padding:14px 13px;display:grid}.auto-solve-panel-icon{width:42px;height:42px;color:var(--sage-dark);background:#edf5e9;border-radius:50%;place-items:center;display:grid}.auto-solve-panel-icon svg{width:20px}.auto-solve-panel-header h2{margin:2px 0 3px;font-size:1rem}.auto-solve-panel-header .auto-solve-panel-heading-accent{color:var(--sage-dark)}.auto-solve-panel-header p{color:var(--muted);margin:0;font-size:.62rem;line-height:1.4}.auto-solve-panel-header .icon-button{width:34px;height:34px}.auto-solve-panel-body{min-height:0;padding:16px 13px calc(18px + var(--safe-area-bottom));background:linear-gradient(#f7f3eae8,#f7f3eae8),radial-gradient(circle at 1px 1px,#3f684f33 1px,#0000 1.2px) 0 0/18px 18px;flex:1;overflow-y:auto}.coach-guidance-panel-body{padding:18px 15px calc(20px + var(--safe-area-bottom))}.coach-guidance-panel .auto-solve-panel-header{grid-template-columns:42px minmax(0,1fr) auto;align-items:center;min-height:68px;padding:12px 13px}.coach-guidance-panel .auto-solve-panel-header h2{margin-block:0}.coach-guidance-panel-header-actions{align-items:center;gap:2px;display:flex}.coach-guidance-panel .puzzle-guidance-status{background:0 0;border:0;border-radius:0;grid-template-columns:minmax(0,1fr);align-content:start;align-items:start;gap:12px;min-height:100%;margin:0;padding:0;display:grid}.coach-guidance-panel .puzzle-guidance-status-icon{display:none}.coach-guidance-panel .puzzle-guidance-status-icon svg{width:20px}.coach-guidance-panel .guidance-objective-control{background:color-mix(in srgb, var(--surface) 82%, transparent);border-radius:8px;grid-column:1/-1;justify-content:flex-start;width:100%;min-height:40px;padding:8px 10px;font-size:.62rem;position:static}.coach-guidance-panel .guidance-objective-control span{flex:1}.coach-guidance-panel .puzzle-guidance-status:has(>.guidance-objective-control) .puzzle-guidance-status-copy{padding-right:0}.coach-guidance-panel .puzzle-guidance-status-copy{grid-column:1;gap:5px}.coach-guidance-panel .puzzle-guidance-status.has-incorrect-notes .puzzle-guidance-status-copy{border-left:3px solid var(--coral-dark);background:color-mix(in srgb, var(--coral) 9%, var(--surface));border-radius:6px;padding:10px 12px}.coach-guidance-panel .puzzle-guidance-status-copy strong{font-family:var(--serif);text-overflow:initial;white-space:normal;font-size:1.02rem;line-height:1.25;overflow:visible}.coach-guidance-panel .puzzle-guidance-status-copy>span{font-size:.7rem;line-height:1.5}.coach-guidance-panel .puzzle-guidance-status-copy .guidance-assist-next{color:var(--ink-soft);margin-top:4px;font-size:.68rem}.coach-guidance-panel .puzzle-guidance-status-actions{grid-column:1/-1;justify-items:stretch;gap:8px;width:100%;display:grid}.coach-guidance-panel .guidance-primary-actions{grid-template-columns:1fr}.coach-guidance-panel .guidance-primary-action,.coach-guidance-panel .guidance-secondary-action{border-radius:8px;width:100%;min-height:42px;padding:10px 12px;font-size:.68rem}.coach-guidance-panel .guidance-secondary-action{background:var(--surface)}.coach-guidance-panel .guidance-primary-action,.coach-guidance-panel .guidance-secondary-action{justify-content:flex-start}.coach-guidance-panel .guidance-action-copy small{color:var(--ink-soft);font-size:.58rem;font-weight:600;line-height:1.3;display:block}.coach-guidance-panel .guidance-primary-action .guidance-action-copy small{color:var(--on-ink)}.coach-guidance-panel .guidance-discovery-actions,.coach-guidance-panel .guidance-alternatives{grid-column:1/-1}.coach-guidance-panel .guidance-discovery-actions{border-top:1px solid var(--line);gap:0;padding-top:12px;display:grid}.coach-guidance-panel .guidance-learning-actions{border-top:0;padding-top:0}.coach-guidance-panel .guidance-technique-actions{margin-top:4px}.coach-guidance-panel .guidance-discovery-action{border-bottom:1px solid color-mix(in srgb, var(--line) 72%, transparent);justify-content:flex-start;min-height:38px;padding:8px 2px;font-size:.62rem;text-decoration:none}.coach-guidance-panel .guidance-discovery-action:last-child{border-bottom:0}.coach-guidance-panel .guidance-alternatives ul{gap:7px}.coach-guidance-panel .guidance-alternatives li button{min-height:48px;padding:9px 10px}.coach-guidance-panel .puzzle-guidance-state-control{display:inline-flex;top:0;right:0}.coach-guidance-panel .puzzle-guidance-status:has(.puzzle-guidance-state-control) .guidance-objective-control{padding-right:42px}.coach-guidance-panel .puzzle-guidance-status:has(.puzzle-guidance-state-control) .puzzle-guidance-status-copy{padding-right:36px}.coach-continuation-content{text-align:center;flex-direction:column;justify-content:center;align-items:stretch;gap:12px;min-height:100%;display:flex}.coach-continuation-success{background:var(--sage-soft);width:64px;height:64px;color:var(--sage-dark);border-radius:50%;place-items:center;margin:0 auto 2px;display:grid}.coach-continuation-success svg{width:30px;height:30px}.coach-continuation-content h2{color:var(--sage-dark);font-family:var(--serif);margin:0;font-size:1.15rem;line-height:1.25}.coach-continuation-content p{color:var(--muted);margin:7px 0 4px;font-size:.7rem;line-height:1.5}.coach-continuation-content .button{width:100%;min-height:42px}.auto-solve-note-review{background:#fff5d3b8;border:1px solid #b17c1b47;border-radius:10px;gap:10px;margin-bottom:14px;padding:14px;display:grid}.auto-solve-note-review p{color:#586a76;margin:3px 0 0;font-size:.7rem;line-height:1.45}.auto-solve-note-review .button{width:fit-content}.auto-solve-note-review.is-idle>.button{min-height:44px;color:var(--ink);background:#ffffffe0;border:1px solid #12324a47;border-bottom-width:2px;border-radius:8px;padding:9px 14px;font-size:.78rem;font-weight:750;box-shadow:0 1px #12324a0d}.auto-solve-note-review.is-idle>.button:hover{background:var(--blue-wash);border-color:#2d6793}.auto-solve-note-review.is-idle>.button:focus-visible{outline-offset:2px;border-color:#2d6793;outline:3px solid #2d67933d}.auto-solve-note-review.is-idle>.button:active{box-shadow:none;border-bottom-width:1px;transform:translateY(1px)}.auto-solve-note-unit-choices{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.auto-solve-note-unit-choices .button{width:100%;min-height:44px;color:var(--ink);background:#ffffffe0;border:1px solid #12324a47;border-bottom-width:2px;border-radius:8px;padding:9px 11px;font-size:.78rem;font-weight:750;box-shadow:0 1px #12324a0d}.auto-solve-note-unit-choices .button:last-child{grid-column:1/-1}.auto-solve-note-unit-choices .button:hover{background:var(--blue-wash);border-color:#2d6793}.auto-solve-note-unit-choices .button:focus-visible{outline-offset:2px;border-color:#2d6793;outline:3px solid #2d67933d}.auto-solve-note-unit-choices .button:active{box-shadow:none;border-bottom-width:1px;transform:translateY(1px)}.auto-solve-proof h3{margin:2px 0 8px;font-size:.98rem}.auto-solve-board-cue{border-left:3px solid var(--sage-dark);background:color-mix(in srgb, var(--sage) 54%, transparent);color:var(--ink-soft);margin:0 0 12px;padding:8px 9px;font-size:.66rem;line-height:1.45}.auto-solve-proof-count{color:var(--muted);margin:0 0 6px;font-size:.7rem;line-height:1.5}.auto-solve-proof-instruction{color:var(--ink);margin:-2px 0 7px;font-size:.68rem;line-height:1.45}.auto-solve-proof-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.auto-solve-proof-list li{border:1px solid var(--line);background:var(--surface);border-radius:8px;overflow:hidden}.auto-solve-proof-list button{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:9px;padding:8px 10px;display:grid}.auto-solve-proof-list button:hover{background:var(--paper-deep)}.auto-solve-proof-list .auto-solve-proof-method.is-advanced,.auto-solve-proof-list .auto-solve-proof-method-link.is-advanced{background:color-mix(in srgb, var(--sage-soft) 58%, var(--surface))}.auto-solve-proof-list .auto-solve-proof-method.is-advanced:hover,.auto-solve-proof-list .auto-solve-proof-method-link.is-advanced:hover,.auto-solve-proof-list .auto-solve-proof-method.is-advanced:focus-visible,.auto-solve-proof-list .auto-solve-proof-method-link.is-advanced:focus-visible{background:var(--sage-soft)}.auto-solve-proof-list .auto-solve-proof-method-link{color:inherit;text-decoration:none}.auto-solve-proof-list .auto-solve-proof-method-kicker{color:var(--sage-dark);font:800 .54rem/1 var(--sans);letter-spacing:.1em;text-transform:uppercase;margin-top:0}.auto-solve-proof-list .auto-solve-proof-method strong{margin-top:2px;display:block}.auto-solve-proof-list .auto-solve-proof-method>span{min-width:0}.auto-solve-proof-list button>svg:last-child{color:var(--muted);transition:transform .16s}.auto-solve-proof-list svg{width:16px;color:var(--sage-dark);flex:none}.auto-solve-proof-list strong{font-size:.7rem}.auto-solve-proof-list small{color:var(--muted);margin:2px 0 0;font-size:.66rem;line-height:1.45;display:block}.auto-solve-walkthrough{margin-top:10px;padding:0}.auto-solve-back-reasons{color:var(--sage-dark);font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;margin:-2px 0 12px;padding:0;font-size:.66rem;font-weight:700;display:inline-flex}.auto-solve-back-reasons:hover{text-decoration:underline}.auto-solve-back-reasons svg{width:15px}.auto-solve-step-heading{color:var(--muted);justify-content:space-between;gap:12px;font-size:.64rem;display:flex}.auto-solve-step-heading strong{color:var(--sage-dark)}.auto-solve-walkthrough h4{margin:10px 0 5px;font-size:.86rem}.auto-solve-walkthrough>p{color:var(--muted);margin:0;font-size:.69rem;line-height:1.55}.contextual-technique-lesson{gap:0;display:grid}.contextual-technique-lesson .auto-solve-step-heading{margin-bottom:2px}.contextual-lesson-answer-grid{grid-template-columns:repeat(9,minmax(0,1fr));gap:4px;margin-top:12px;display:grid}.contextual-lesson-answer-grid button{aspect-ratio:1;border:1px solid color-mix(in srgb, var(--sage-dark) 28%, var(--line));background:var(--surface);min-width:0;color:var(--ink);font:750 .76rem/1 var(--sans);cursor:pointer;border-radius:7px;padding:0}.contextual-lesson-answer-grid button:hover:not(:disabled),.contextual-lesson-answer-grid button:focus-visible{border-color:var(--sage-dark);background:var(--sage-soft)}.contextual-lesson-answer-grid button.is-selected{border-color:var(--sage-dark);box-shadow:inset 0 0 0 1px var(--sage-dark)}.contextual-lesson-answer-grid button:disabled:not(.is-selected){opacity:.42}.contextual-lesson-feedback{border-left:3px solid var(--coral-dark);background:color-mix(in srgb, var(--coral) 14%, var(--surface));border-radius:0 7px 7px 0;margin-top:10px;padding:9px 10px}.contextual-lesson-feedback.is-correct{border-left-color:var(--sage-dark);background:color-mix(in srgb, var(--sage) 28%, var(--surface))}.contextual-lesson-feedback strong{font-size:.72rem}.contextual-lesson-feedback p{color:var(--ink-soft);margin:3px 0 0;font-size:.68rem;line-height:1.45}.contextual-technique-lesson .auto-solve-step-actions:has(.button:only-child){justify-content:flex-end}.auto-solve-step-actions{justify-content:space-between;gap:8px;margin-top:12px;display:flex}.auto-solve-step-actions .button{min-height:34px;padding:7px 10px;font-size:.66rem}.auto-solve-advanced-invite{margin-top:8px}.auto-solve-advanced-action{border:1px solid color-mix(in srgb, var(--sage-dark) 28%, var(--line));width:100%;min-height:48px;color:var(--ink);text-align:left;cursor:pointer;transition:background-color .15s ease, border-color .15s ease, transform .15s var(--ease-out-ui);background:#fffdf8e0;border-radius:9px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:9px;padding:7px 10px;display:grid}.auto-solve-advanced-action:hover:not(:disabled),.auto-solve-advanced-action:focus-visible{border-color:color-mix(in srgb, var(--sage-dark) 52%, var(--line));background:var(--sage-soft)}.auto-solve-advanced-action:active:not(:disabled){transform:scale(.96)}.auto-solve-advanced-action:disabled{opacity:.58;cursor:default}.auto-solve-advanced-action span,.auto-solve-advanced-action small,.auto-solve-advanced-action strong{display:block}.auto-solve-advanced-action small{color:var(--sage-dark);font:800 .54rem/1 var(--sans);letter-spacing:.1em;text-transform:uppercase;margin-bottom:2px}.auto-solve-advanced-action strong{text-wrap:balance;font-size:.7rem;line-height:1.2}.auto-solve-advanced-action svg{width:17px}.auto-solve-advanced-invite>strong{margin-top:3px;font-size:.76rem;display:block}.auto-solve-advanced-invite>p,.auto-solve-advanced-copy{color:var(--muted);margin:5px 0 10px;font-size:.68rem;line-height:1.5}.auto-solve-advanced-invite .button{min-height:34px;padding:7px 10px;font-size:.66rem}.auto-solve-advanced-invite .button svg{width:15px}.auto-solve-advanced-unknown{justify-content:flex-end;margin-top:9px;display:flex}.auto-solve-advanced-unknown .button{min-height:32px;color:var(--sage-dark);padding:6px 9px;font-size:.65rem}.auto-solve-advanced-unknown .button svg{width:15px}.auto-solve-advanced .auto-solve-back-reasons{margin-bottom:14px}.auto-solve-advanced-copy{margin-bottom:12px}.auto-solve-proof-links{gap:4px;max-height:210px;margin:0 0 12px;padding:0;list-style:none;display:grid;overflow-y:auto}.auto-solve-proof-links li{border-left:2px solid var(--line-strong);color:var(--muted);grid-template-columns:68px minmax(0,1fr);gap:7px;padding:5px 7px;font-size:.58rem;line-height:1.35;display:grid}.auto-solve-proof-links li strong{color:var(--ink);font-size:inherit}.auto-solve-advanced-selection-count{color:var(--sage-dark);margin:-3px 0 8px;font-size:.66rem;font-weight:750;line-height:1.3}.auto-solve-advanced-choices{gap:6px;display:grid}.auto-solve-advanced-choices button{border:1px solid var(--line);background:var(--surface);min-height:38px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;border-radius:7px;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:8px;padding:7px 9px;font-size:.67rem;line-height:1.35;display:grid}.auto-solve-advanced-choices button:hover:not(:disabled){border-color:color-mix(in srgb, var(--sage-dark) 48%, var(--line));background:#f7faf4}.auto-solve-advanced-choices button[aria-pressed=true]{border-color:var(--sage-dark);background:#edf5e9}.auto-solve-advanced-choices button:disabled{cursor:default}.auto-solve-advanced-choices button>span:first-child{border:1px solid color-mix(in srgb, var(--ink-soft) 42%, transparent);width:18px;height:18px;color:var(--sage-dark);border-radius:4px;place-items:center;font-size:.72rem;font-weight:800;display:grid}.auto-solve-advanced-choice-copy{align-items:baseline;gap:7px;min-width:0;display:flex}.auto-solve-advanced-choice-copy strong{color:var(--saffron-ink);flex:none;font-size:.82rem;line-height:1}.auto-solve-advanced-choice-copy small{color:var(--ink-soft);margin:0;font-size:.66rem;line-height:1.3}.auto-solve-advanced-step-actions{z-index:5;bottom:calc(-1 * var(--safe-area-bottom));margin:14px -13px calc(-1 * var(--safe-area-bottom));padding:10px 13px calc(10px + var(--safe-area-bottom));border-top:1px solid var(--line);background:color-mix(in srgb, var(--paper) 94%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);position:sticky}.auto-solve-advanced-step-actions .button-primary{flex:auto}.auto-solve-advanced-feedback{border-left:3px solid var(--coral-dark);background:#fdf0eb;margin-top:10px;padding:10px}.auto-solve-advanced-feedback.is-correct{border-left-color:var(--sage-dark);background:#edf5e9}.auto-solve-advanced-feedback.is-unknown{border-left-color:var(--saffron-ink);background:color-mix(in srgb, var(--saffron) 13%, var(--paper))}.auto-solve-advanced-feedback strong{font-size:.7rem}.auto-solve-advanced-feedback p{color:var(--ink-soft);margin:4px 0 0;font-size:.67rem;line-height:1.5}.auto-solve-advanced-handoff{gap:8px;margin-top:10px;display:grid}.auto-solve-advanced-handoff>span{color:var(--sage-dark);align-items:center;gap:6px;font-size:.66rem;font-weight:700;display:flex}.auto-solve-advanced-handoff>span svg{flex:none;width:15px}.auto-solve-advanced-handoff .button{justify-content:space-between;width:100%;min-height:34px;padding:7px 9px;font-size:.66rem}.auto-solve-advanced-handoff .button svg{flex:none;width:15px}.auto-solve-blocked,.auto-solve-elimination{border:1px solid var(--line);background:var(--paper-deep);border-radius:8px;padding:14px}.auto-solve-blocked p,.auto-solve-elimination p{color:var(--muted);margin:5px 0 0;font-size:.7rem;line-height:1.5}.tool-button-wrap:focus-visible{outline-offset:2px;outline:3px solid #2d679338}.notes-symbol{font-family:var(--serif);font-size:1rem}.number-pad{grid-template-columns:repeat(9,1fr);gap:5px;margin-top:12px;display:grid}.number-pad button{aspect-ratio:1.12;border:1px solid var(--line);background:var(--surface);min-width:0;min-height:48px;font-family:var(--serif);cursor:pointer;box-shadow:var(--shadow-border);transition:background-color .12s var(--ease-out-ui), border-color .12s var(--ease-out-ui), box-shadow .12s var(--ease-out-ui), transform .12s var(--ease-out-ui);border-radius:4px;flex-direction:column;justify-content:center;align-items:center;font-size:1.25rem;display:flex;position:relative}html[data-puzzle-digit-style=inter] .number-pad button,html[data-puzzle-digit-style=inter] .today-practice-number-pad button{font-family:var(--sans)}.number-pad button:hover{border-color:var(--ink);background:var(--blue-wash);box-shadow:var(--shadow-border-hover)}.number-pad button:active:not(:disabled){transform:translateY(1px);box-shadow:0 0 0 1px #00000014,inset 0 1px 2px #102a4314}.puzzle-number-pad button:disabled{opacity:.62;background:color-mix(in srgb, var(--surface) 82%, var(--line));color:var(--muted);cursor:not-allowed}.puzzle-number-pad button.digit-complete{opacity:.52;background:#ffffff94}.number-key-value,.number-key-complete-icon{transition:opacity .18s cubic-bezier(.2,0,0,1),filter .18s cubic-bezier(.2,0,0,1),transform .18s cubic-bezier(.2,0,0,1)}.number-key-complete-icon{opacity:0;filter:blur(4px);width:18px;position:absolute;top:11px;transform:translateY(2px)}.number-key.digit-complete .number-key-value{opacity:0;filter:blur(4px);transform:translateY(-2px)}.number-key.digit-complete .number-key-complete-icon{opacity:1;filter:blur();transform:translateY(0)}.puzzle-number-pad[data-mode=notes] .number-key{background:var(--blue-wash);border-color:#aebfcd}.puzzle-number-pad[data-mode=notes] .number-key>span{font-size:.9em}.puzzle-number-pad[data-mode=notes] .number-key>.puzzle-shortcut-badge{font-size:.48rem}.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{color:var(--muted);margin-top:1px;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{background:var(--paper);border:1px solid #cec8bc;border-radius:10px;flex-direction:column;align-self:start;height:min(790px,100dvh - 134px);min-height:min(560px,100dvh - 134px);padding:0;display:flex;position:sticky;top:16px;overflow:hidden;box-shadow:0 14px 38px #102a4314}.guided-practice-complete{background:var(--paper);border:1px solid #c8d5c3;border-radius:10px;flex-direction:column;justify-content:center;align-self:start;align-items:flex-start;min-height:420px;padding:38px 30px;display:flex;position:sticky;top:16px;box-shadow:0 14px 38px #102a4314}.guided-practice-complete>svg{color:#4f8a63;width:42px;height:42px;margin-bottom:24px}.guided-practice-complete h2{margin:8px 0 14px;font-size:1.65rem;line-height:1.08}.guided-practice-complete p{color:var(--muted);margin:0 0 28px;line-height:1.6}.guided-practice-actions{flex-direction:column;align-items:stretch;gap:8px;width:100%;display:flex}.guided-practice-actions .button{text-align:center;justify-content:center;width:100%}.coach-chat-header{border-bottom:1px solid var(--line);background:#fffdf8f5;flex:none;align-items:center;gap:11px;min-height:82px;padding:13px 15px;display:flex}.coach-status{flex:none}.coach-status .puzzle-goal{border:0;border-bottom:1px solid var(--line);background:#fffdf8b8;border-radius:0;width:100%;margin:0;padding:9px 14px}.coach-status .puzzle-goal.complete{background:#edf5e9}.coach-support-action{border-bottom:1px solid var(--line);background:#edf5e994;flex:none;padding:10px 12px}.coach-support-stack{gap:10px;display:grid}.unified-coach-controls{gap:8px;display:grid}.unified-coach-primary-actions{flex-direction:column;gap:7px;display:flex}.unified-coach-secondary-actions{justify-content:flex-end;align-items:center;gap:10px;display:flex}.unified-coach-stop-help{border:1px solid var(--line);background:var(--surface);min-height:28px;color:var(--sage-dark);font:750 .58rem/1 var(--sans);cursor:pointer;border-radius:999px;padding:5px 9px}.unified-coach-stop-help:hover:not(:disabled),.unified-coach-stop-help:focus-visible{border-color:var(--ink);color:var(--ink)}.unified-coach-stop-help:focus-visible{outline-offset:2px;outline:3px solid #2d679340}.unified-coach-stop-help:disabled{opacity:.48;cursor:default}.unified-coach-help-now{min-width:0;color:#fff;font-family:var(--sans);text-align:left;cursor:pointer;border:1px solid var(--line);background:var(--surface);width:100%;min-height:62px;box-shadow:var(--shadow-border);border-color:var(--ink);background:var(--ink-fill);border-radius:8px;flex:auto;grid-template-columns:29px minmax(0,1fr) auto;align-items:center;gap:7px;padding:8px 9px;display:grid}.unified-coach-action-icon{background:#5b7f631f;border-radius:50%;place-items:center;width:29px;height:29px;display:grid}.unified-coach-help-now .unified-coach-action-icon{background:#ffffff21}.unified-coach-action-icon svg,.unified-coach-help-now>svg{width:15px}.unified-coach-help-now .unified-coach-action-copy{gap:2px;min-width:0;display:grid}.unified-coach-controls strong{font-size:.7rem;line-height:1.15}.unified-coach-controls small{color:var(--muted);font-size:.54rem;line-height:1.25}.unified-coach-help-now small{color:#ffffffbd}.unified-coach-help-now:hover:not(:disabled),.unified-coach-help-now:focus-visible{background:#1a3b58}.unified-coach-help-now:focus-visible{outline-offset:2px;outline:3px solid #2d679340}.unified-coach-help-now:disabled{opacity:.48;cursor:default}@media (width<=780px){.unified-coach-experience .mobile-coach-sheet .coach-support-action{display:block}.unified-coach-experience .mobile-coach-sheet .coach-next-action{font-size:.72rem;line-height:1.35}.unified-coach-experience .mobile-coach-sheet .unified-coach-help-now.is-continuation{display:none}.unified-coach-experience .mobile-coach-sheet .unified-coach-controls{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}.unified-coach-experience .mobile-coach-sheet .unified-coach-primary-actions,.unified-coach-experience .mobile-coach-sheet .unified-coach-secondary-actions{display:contents}.unified-coach-experience .mobile-coach-sheet .unified-coach-help-now,.unified-coach-experience .mobile-coach-sheet .unified-coach-stop-help{width:100%;min-width:0;min-height:68px}.unified-coach-experience .mobile-coach-sheet .unified-coach-stop-help{border:1px solid var(--line);background:var(--surface);color:var(--ink);font-family:var(--sans);text-align:left;box-shadow:var(--shadow-border);border-radius:8px;place-items:center;padding:8px 9px;font-size:.7rem;display:grid}.unified-coach-experience .mobile-coach-sheet .unified-coach-stop-help:hover:not(:disabled),.unified-coach-experience .mobile-coach-sheet .unified-coach-stop-help:focus-visible{border-color:var(--ink);background:var(--blue-wash);color:var(--ink)}}.coach-chat-avatar{background:var(--sage);border:1px solid #c8d5c3;border-radius:50%;flex:0 0 52px;width:52px;height:52px;position:relative;overflow:hidden}.coach-chat-avatar .mascot{width:62px;max-width:none;height:67px;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{color:var(--muted);align-items:center;gap:5px;font-size:.59rem;display:flex}.coach-chat-header small i{background:#4f8a63;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 3px #4f8a631f}.coach-panel[aria-disabled=true] .coach-chat-header small i{box-shadow:none;background:#9b988f}.coach-thread-shell{flex:1;min-height:0;position:relative}.coach-thread{scrollbar-color:#bbb7ad transparent;scrollbar-width:thin;background:linear-gradient(#f7f3eae8,#f7f3eae8),radial-gradient(circle at 1px 1px,#3f684f33 1px,#0000 1.2px) 0 0/18px 18px;height:100%;padding:18px 13px 22px;overflow-y:auto}.coach-new-turn{background:var(--paper);min-height:34px;color:var(--sage-dark);cursor:pointer;border:1px solid #9eb49f;border-radius:999px;align-items:center;gap:6px;padding:7px 11px;font-size:.61rem;font-weight:750;display:flex;position:absolute;bottom:12px;left:50%;transform:translate(-50%);box-shadow:0 5px 16px #102a4324}.coach-new-turn:hover{background:#f3f7ef}.coach-turn{align-items:flex-end;gap:7px;margin:0 0 12px;display:flex}.coach-turn.coach{animation:.26s cubic-bezier(.22,1,.36,1) both coach-turn-in}.coach-turn.learner{justify-content:flex-end}.coach-turn-avatar{background:var(--sage);border:1px solid #ccd5c7;border-radius:50%;flex:0 0 30px;width:30px;height:30px;overflow:hidden}.coach-turn-avatar .mascot{width:38px;max-width:none;height:42px;transform:translate(-4px,1px)}.coach-bubble-quote{width:14px;height:14px;color:var(--sage-dark);opacity:.78;stroke-width:1.8px;position:absolute;top:10px;left:11px}.coach-bubble{background:var(--surface);border:1px solid #102a431a;border-radius:13px 13px 13px 4px;min-width:0;max-width:88%;padding:11px 13px;position:relative;box-shadow:0 2px 7px #102a430f}.coach-turn.coach .coach-bubble{padding-left:32px}.coach-turn.learner .coach-bubble{background:#e8f0f6;border-color:#cad8e4;border-radius:13px 13px 4px}.coach-bubble p{color:var(--ink);white-space:pre-wrap;margin:0;font-size:.82rem;line-height:1.45}.coach-turn.coach .coach-bubble p{font-family:var(--serif);font-size:.88rem;line-height:1.4}.coach-clue-label{color:var(--sage-dark);letter-spacing:.11em;text-transform:uppercase;margin-bottom:5px;font-size:.49rem;font-weight:800;display:block}.coach-next-action{color:var(--ink-soft);border-top:1px solid #ece8df;margin-top:8px;padding-top:8px;font-size:.78rem;line-height:1.5;display:block}.coach-turn-actions{gap:6px;margin-top:10px;display:grid}.coach-mobile-turn-actions{display:none}.coach-turn-actions .button{text-align:left;justify-content:flex-start;min-height:38px;padding:7px 10px;font-size:.68rem;line-height:1.3}.coach-speech-action,.coach-rephrase-action{min-height:30px;color:var(--sage-dark);cursor:pointer;background:0 0;border:0;border-radius:999px;align-items:center;gap:5px;margin-top:8px;padding:4px 7px;font-size:.58rem;font-weight:750;display:inline-flex}.coach-speech-action:hover,.coach-speech-action:focus-visible,.coach-speech-action[aria-pressed=true],.coach-rephrase-action:hover,.coach-rephrase-action:focus-visible{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{color:var(--sage-dark);border-top:1px solid #ece8df;margin-top:9px;padding-top:8px;font-size:.65rem;font-weight:750}.coach-frequency-feedback{padding-inline:0;text-align:left;cursor:pointer;background:0 0;border-bottom:0;border-left:0;border-right:0;width:100%;padding-bottom:0}.coach-frequency-feedback:hover{color:var(--ink)}.coach-frequency-confirmation{display:block}.coach-turn.pending .coach-bubble{min-width:54px}.coach-typing{justify-content:center;align-items:center;gap:4px;min-height:18px;display:flex}.coach-typing i{background:#718078;border-radius:50%;width:6px;height:6px;animation:1.1s ease-in-out infinite coach-typing}.coach-typing i:nth-child(2){animation-delay:.12s}.coach-typing i:nth-child(3){animation-delay:.24s}.coach-chat-controls{border-top:1px solid var(--line);background:var(--paper);flex:none;padding:11px 12px 10px}.coach-quick-action{color:#23432f;cursor:pointer;width:100%;min-height:38px;transition:background-color .15s ease, transform .15s var(--ease-out-ui);background:#f3f7ef;border:1px solid #9eb49f;border-radius:999px;justify-content:center;align-items:center;gap:7px;padding:8px 10px;font-size:.75rem;font-weight:750;display:flex}@media (hover:hover) and (pointer:fine){.coach-quick-action:hover:not(:disabled){background:#e5efdf}}.coach-quick-action small{color:var(--sage-dark);border-left:1px solid #b9c9b6;padding-left:7px;font-size:.7rem}.coach-quick-action:disabled{color:#23432f;cursor:not-allowed;background:#edf0eb;border-color:#b7c1b4}@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{color:var(--muted);padding-bottom:8px;font-size:.75rem}.lesson-library-tabs{border-bottom:1px solid var(--line);grid-template-columns:repeat(5,minmax(0,1fr));width:min(100%,720px);margin:0 0 28px;display:grid}.lesson-library-tabs button{min-height:44px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;justify-content:center;align-items:center;gap:7px;padding:9px 14px;font-size:.72rem;font-weight:720;display:inline-flex}.lesson-library-tabs button:hover,.lesson-library-tabs button:focus-visible{color:var(--ink)}.lesson-library-tabs button:focus-visible{outline-offset:-3px;outline:3px solid #2d679333}.lesson-library-tabs [data-state=active]{border-bottom-color:var(--ink);color:var(--ink)}.lesson-library-tabs button span{background:var(--sage-soft);min-width:20px;height:20px;color:var(--sage-dark);font-variant-numeric:tabular-nums;border-radius:999px;place-items:center;padding-inline:5px;font-size:.56rem;line-height:1;display:inline-grid}.lesson-library-tab-panel:focus-visible{outline-offset:5px;outline:3px solid #2d67932e}.learning-list-empty{border-top:1px solid var(--ink);border-bottom:1px solid var(--line);align-content:center;justify-items:start;min-height:180px;padding:34px 24px;display:grid}.learning-list-empty h2{margin:0 0 7px;font-size:1.35rem}.learning-list-empty p{color:var(--muted);margin:0;font-size:.72rem}.learning-library-intro{max-width:720px;margin:0 0 24px}.learning-library-intro h2{margin:5px 0 7px;font-size:1.65rem}.learning-library-intro p{color:var(--muted);margin:0;font-size:.78rem}.learning-queue-list{gap:10px;display:grid}.learning-queue-card{border:1px solid var(--line);background:var(--paper);grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:14px;min-height:94px;padding:16px 18px;display:grid}.learning-queue-card-icon{background:var(--sage-soft);width:34px;height:34px;color:var(--sage-dark);border-radius:50%;place-items:center;display:grid}.learning-queue-card-icon svg{width:17px}.learning-queue-card h3{margin:3px 0;font-size:1.08rem}.learning-queue-card p{color:var(--muted);margin:0;font-size:.72rem}.learning-queue-card-actions{flex-direction:column;align-items:flex-end;gap:6px;display:flex}.learning-path-list{gap:28px;display:grid}.learning-path-module{border-top:1px solid var(--ink)}.learning-path-module-header{justify-content:space-between;align-items:flex-start;gap:20px;padding:18px 0;display:flex}.learning-path-module-header h2{margin:4px 0;font-size:1.32rem}.learning-path-module-header p{max-width:560px;color:var(--muted);margin:0;font-size:.72rem}.learning-path-module-actions{color:var(--muted);white-space:nowrap;flex-direction:column;align-items:flex-end;gap:8px;font-size:.65rem;display:flex}.learning-path-lessons{border-top:1px solid var(--line)}.learning-saved-row{border-bottom:1px solid var(--line);position:relative}.learning-saved-row .lesson-row{border-bottom:0;padding-right:150px}.learning-saved-row>.button{position:absolute;bottom:18px;right:16px}.practice-proof-bookmark-action{align-items:center;gap:5px;margin:5px 0 0 54px;font-size:.66rem;display:inline-flex}.practice-proof-bookmark-action svg{width:14px}@media (width<=780px){.lesson-library-tabs{grid-template-columns:repeat(5,minmax(94px,1fr));width:100%;overflow-x:auto}.learning-queue-card{grid-template-columns:32px minmax(0,1fr)}.learning-queue-card-actions{flex-flow:wrap;grid-column:2;align-items:flex-start}.learning-path-module-header{display:grid}.learning-path-module-actions{flex-flow:wrap;align-items:flex-start}.learning-saved-row .lesson-row{padding-bottom:62px;padding-right:16px}.learning-saved-row>.button{bottom:16px;left:16px;right:auto}}.lesson-list{border-top:1px solid var(--ink)}.lesson-row{content-visibility:auto;contain-intrinsic-size:128px;min-height:128px;padding:var(--space-5) var(--space-4);align-items:center;gap:var(--space-4);border-bottom:1px solid var(--line);grid-template-columns:72px minmax(0,1fr) minmax(230px,280px);transition:background-color .16s;display:grid}@media (hover:hover) and (pointer:fine){.lesson-row:hover{background:color-mix(in srgb, var(--sage-soft) 62%, var(--paper))}}.lesson-row-leading{justify-items:center;gap:5px;width:58px;display:grid}.lesson-row-icon{-o-object-fit:contain;object-fit:contain;width:56px;height:56px;transition:filter .16s,opacity .16s,transform .16s;display:block}.lesson-index{color:var(--saffron-ink);font-family:var(--serif);font-variant-numeric:tabular-nums;font-size:.62rem;line-height:1}.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;color:var(--muted);margin:0;font-size:.75rem}.lesson-row-meta{align-items:center;gap:var(--space-4);color:var(--muted);grid-template-columns:minmax(0,1fr) auto 18px;font-size:.65rem;display:grid}.lesson-row-meta>span:nth-child(2){white-space:nowrap}.lesson-row-meta svg{width:18px;color:var(--sage-dark)}.lesson-row.locked{background:#f4f1e9}.lesson-row.locked .lesson-row-icon{filter:saturate(.62);opacity:.72}.lesson-row.completed{background:#f1f5ed}.review-queue{background:#fff8e5;border:1px solid #dfc786;justify-content:space-between;align-items:center;gap:24px;margin-bottom:28px;padding:22px 24px;display:flex}.review-queue h2{margin:4px 0;font-size:1.35rem}.review-queue p{margin:0;font-size:.7rem}.review-queue>div:last-child{flex-wrap:wrap;justify-content:flex-end;gap:7px;display:flex}.advanced-preview{border-top:1px solid var(--line);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:30px;margin-top:44px;padding:34px 0;display:flex}.advanced-preview h2{margin-bottom:8px}.advanced-preview p{max-width:720px;margin:0;font-size:.82rem}.coaching-plan-cta{white-space:nowrap;flex:none}.lesson-header{color:var(--muted);justify-content:space-between;margin-bottom:8px;font-size:.72rem;display:flex}.lesson-layout{grid-template-columns:180px 1fr;gap:40px;display:grid}.lesson-steps{align-self:start;position:sticky;top:35px}.lesson-steps>button{width:100%;min-height:42px;color:var(--muted);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;padding:0;font-size:.75rem;display:flex}.lesson-steps>button i{border:1px solid var(--line);border-radius:50%;flex:0 0 23px;place-items:center;width:23px;height:23px;font-size:.62rem;font-style:normal;display:grid}.lesson-steps>button.active{color:var(--ink);font-weight:700}.lesson-steps>button.active i{background:var(--ink-fill);border-color:var(--ink);color:#fff}.lesson-steps>button:disabled{opacity:.35;cursor:not-allowed}.lesson-outcome{border:1px solid var(--line);border-radius:5px;align-items:flex-start;gap:10px;margin-top:30px;padding:17px;display:flex}.lesson-outcome svg{width:16px;color:var(--saffron);flex:none}.lesson-outcome p{flex-direction:column;gap:5px;margin:0;display:flex}.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{border:1px solid var(--line);border-radius:8px;min-height:650px;padding:44px;overflow:hidden}.lesson-content>h1{margin:0 0 34px;font-size:3.3rem}.lesson-step-navigation{justify-content:flex-start;margin-bottom:18px;display:flex}.model-stage>.lesson-step-navigation{grid-column:1/-1;margin-bottom:-22px}.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}.worked-example{grid-template-columns:1.2fr .8fr;gap:40px;display:grid}.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}.try-stage{grid-template-columns:1.2fr .8fr;gap:35px;display:grid}.try-board{padding-top:20px}.lesson-choice-grid{flex-direction:column;gap:9px;margin-top:26px;display:flex}.lesson-choice-grid button{border:1px solid var(--line);background:var(--surface);text-align:left;cursor:pointer;border-radius:5px;align-items:center;gap:12px;min-height:56px;padding:11px 14px;display:flex}.lesson-choice-grid button>span{background:var(--blue-wash);border-radius:50%;flex:none;place-items:center;width:27px;height:27px;font-size:.68rem;font-weight:800;display:grid}.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}.advanced-list{margin-top:0}.try-feedback{border:1px solid var(--line);text-align:center;background:#f8f5ed;border-radius:6px;flex-direction:column;justify-content:center;align-self:center;align-items:center;min-height:270px;padding:22px;display:flex}.try-feedback .mascot{width:125px;height:130px}.try-feedback p{flex-direction:column;display:flex}.try-feedback strong{color:var(--ink);font-family:var(--serif);font-size:1rem}.try-feedback span{font-size:.7rem}.lesson-complete{text-align:center;max-width:600px;margin:-10px auto 0}.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}.evidence-complete h2{text-wrap:balance;margin:0 0 24px;line-height:1.08}.evidence-complete>.eyebrow{margin-bottom:24px;display:block}.lesson-complete.evidence-complete>p{margin-bottom:40px}.lesson-completion-actions{flex-wrap:wrap;margin-top:32px}.return-promise{background:var(--sage-soft);max-width:560px;box-shadow:var(--shadow-border);color:var(--ink);text-align:left;transition:background-color .18s var(--ease-out-ui), box-shadow .18s var(--ease-out-ui);border:1px solid #0000;border-radius:16px;align-items:center;gap:13px;margin:20px auto 28px;padding:16px 18px;display:flex}.return-promise.reminder-saved{background:color-mix(in srgb, var(--sage-soft) 72%, white);box-shadow:0 0 0 1px color-mix(in srgb, var(--sage-dark) 18%, transparent), 0 3px 9px color-mix(in srgb, var(--sage-dark) 8%, transparent)}.return-promise>svg{color:var(--sage-dark);flex:none}.return-promise>span{flex:auto;gap:3px;min-width:0;display:grid}.return-promise strong,.return-promise small{display:block}.return-promise>button{border:1px solid var(--sage-dark);min-height:36px;color:var(--sage-dark);cursor:pointer;transition:background-color .16s var(--ease-out-ui), border-color .16s var(--ease-out-ui), color .16s var(--ease-out-ui);background:0 0;border-radius:999px;flex:none;padding:0 12px;font-size:.66rem;font-weight:800}.return-promise>button svg{width:14px}.return-promise>button.saved{border-color:color-mix(in srgb, var(--sage-dark) 22%, transparent);background:var(--surface);color:var(--ink);align-items:center;gap:5px;display:inline-flex}.return-promise>button:disabled{cursor:default;opacity:1}@media (width<=560px){.return-promise{flex-wrap:wrap;align-items:flex-start}.return-promise>button{margin-left:37px}}.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{justify-content:center;gap:8px;display:flex}.lesson-share-button{background:var(--sage-soft);color:var(--ink);border:1px solid #b9cdb4}.lesson-share-button:hover:not(:disabled){background:var(--sage);border-color:#93b18d}.lesson-share-button:disabled{cursor:wait;opacity:.78}.lesson-share-control{justify-items:center;gap:7px;display:grid}.lesson-share-button[aria-busy=true] svg{animation:.85s linear infinite lesson-share-spin}.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{box-shadow:none;border:0;border-radius:0}.lesson-content[data-poster-stage=true]{border:0;padding:0;overflow:visible}.lesson-content-header{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:30px;display:flex}.lesson-content-header h1{margin:4px 0 0;font-size:clamp(2.4rem,5vw,3.3rem)}.evidence-badge{border-left:3px solid var(--sage-dark);background:#f1f5ed;flex-direction:column;flex:none;min-width:132px;padding:11px 13px;display:flex}.evidence-badge span,.evidence-badge small{color:var(--muted);font-size:.58rem}.evidence-badge strong{text-transform:capitalize;font-family:var(--serif);margin-top:3px;font-size:.9rem}.evidence-badge.expanded{border-left:0;border-top:3px solid var(--sage-dark);text-align:left;max-width:390px;margin:0 auto;padding:11px 13px}.evidence-badge.expanded strong{margin-top:3px}.evidence-badge.expanded small{margin-top:8px}.pedagogy-overview{grid-template-columns:minmax(0,1fr);align-items:start;gap:32px;max-width:none;display:grid}.lesson-overview-detail{max-width:720px}.lesson-overview-prose{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%);padding:5px 10px 6px 24px}.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{isolation:isolate;background:radial-gradient(circle at 82% 59%, color-mix(in srgb, var(--sage) 70%, transparent) 0 15%, transparent 36%), var(--paper);width:100%;box-shadow:none;color:var(--ink);text-align:left;border:0;border-radius:20px;padding:24px 28px 22px;position:relative;overflow:hidden}.lesson-poster-copy{max-width:690px}.lesson-poster-copy h1,.lesson-complete .lesson-poster-copy h1{text-wrap:balance;max-width:12ch;margin:0;font-size:clamp(2.55rem,5.6vw,4.2rem);line-height:.96}.lesson-poster-copy p,.lesson-complete .lesson-poster-copy p{max-width:640px;color:var(--ink-soft);margin:14px 0 0;font-size:.82rem;line-height:1.55}.lesson-poster-distinction{border:1px solid color-mix(in srgb, var(--saffron-ink) 32%, transparent);background:color-mix(in srgb, var(--saffron) 14%, var(--paper));color:var(--saffron-ink);border-radius:999px;margin-top:15px;padding:6px 10px;font-size:.62rem;font-weight:800;display:inline-flex}.lesson-poster-distinction:before{content:"✦";margin-right:6px}.lesson-poster-visual{grid-template-columns:minmax(250px,370px) minmax(150px,1fr);align-items:end;gap:26px;min-height:300px;margin-top:10px;display:grid}.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{place-items:end center;min-height:270px;display:grid;position:relative}.lesson-poster-mascot .mascot,.lesson-complete .lesson-poster-mascot .mascot{z-index:2;-o-object-fit:contain;object-fit:contain;width:min(100%,188px);height:258px;filter:drop-shadow(0 12px 18px color-mix(in srgb, var(--ink) 13%, transparent));margin:0;position:relative}.lesson-poster-introduction .lesson-poster-mascot .mascot{transform:scaleX(-1)}.lesson-poster-glow{background:var(--sage-soft);border-radius:50%;width:230px;height:230px;position:absolute;bottom:15px;right:50%;transform:translate(50%)}.lesson-poster-spark{z-index:1;border-radius:50%;width:13px;height:13px;position:absolute}.lesson-poster-spark-one{background:var(--saffron);top:25px;right:10%}.lesson-poster-spark-two{background:var(--sage-dark);width:8px;height:8px;top:70px;left:3%}.lesson-poster-stats{border-top:1px solid var(--line);font-variant-numeric:tabular-nums;grid-template-columns:repeat(3,minmax(0,1fr));margin:18px 0 0;padding:16px 0 0;display:grid}.lesson-poster-stats>div{text-align:center;grid-template-rows:auto auto;min-width:0;padding:0 16px;display:grid}.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{overflow-wrap:anywhere;color:var(--muted);letter-spacing:.07em;text-transform:uppercase;grid-row:2;margin-top:3px;font-size:.55rem;font-weight:780}.lesson-poster-stats dd{overflow-wrap:anywhere;min-width:0;font-family:var(--serif);grid-row:1;margin:0;font-size:1.02rem;font-weight:600}.lesson-complete-poster{text-align:left;max-width:900px}.lesson-complete-poster .lesson-poster{margin:0 auto}.lesson-complete-poster .lesson-completion-note,.lesson-complete .lesson-completion-note{text-align:center;max-width:540px;margin:26px auto 0}.lesson-complete-poster .evidence-badge{margin-top:24px}.lesson-complete-poster .lesson-completion-actions{text-align:center;justify-content:center}.prerequisite-callout{background:#fff8e7;border:1px solid #e1cd96;grid-template-columns:20px 1fr auto;align-items:center;gap:9px;margin-top:14px;padding:12px;display:grid}.prerequisite-callout>svg{width:17px;color:var(--saffron-ink)}.prerequisite-callout p{flex-direction:column;margin:0;display:flex}.prerequisite-callout p strong{font-family:var(--serif);font-size:.72rem}.prerequisite-callout p span,.prerequisite-callout .text-link{font-size:.58rem}.overview-actions{flex-wrap:wrap;gap:7px;margin-top:32px;display:flex}.overview-actions .button{margin-top:0}.model-stage,.practice-workspace{grid-template-columns:minmax(320px,1.08fr) minmax(250px,.92fr);align-items:start;gap:36px;display:grid}.model-stage h2,.practice-heading h2{margin:7px 0 14px;line-height:1.08}.proof-narration{border-left:3px solid var(--saffron);background:#fff8e7;align-self:center;padding:28px}.proof-narration>span{color:var(--saffron-ink);text-transform:uppercase;letter-spacing:.1em;font-size:.58rem;font-weight:800}.proof-narration h3{font-family:var(--serif);margin:8px 0;font-size:1.3rem;line-height:1.35}.proof-narration p{font-size:.75rem}.proof-narration .worked-step-feedback{color:#984a3f;background:#fbece8;border:1px solid #d6a19a;border-left-width:4px;border-radius:4px;align-items:flex-start;gap:9px;margin:16px 0 0;padding:13px 14px;font-weight:700;line-height:1.5;display:flex}.proof-narration .worked-step-feedback svg{flex:none;width:18px;margin-top:1px}.proof-narration>.button{margin-top:18px}.lesson-board-figure{margin:15px 0 0}.lesson-board-frame{--lesson-axis-size:20px;grid-template-columns:var(--lesson-axis-size) minmax(0, 1fr);grid-template-rows:var(--lesson-axis-size) minmax(0, 1fr);width:min(100%,520px);display:grid}.lesson-board-column-labels,.lesson-board-row-labels{color:var(--muted);font-variant-numeric:tabular-nums;-webkit-user-select:none;user-select:none;font:700 .55rem/1 sans-serif}.lesson-board-column-labels{grid-column:2;grid-template-columns:repeat(9,1fr);display:grid}.lesson-board-row-labels{grid-row:2;grid-template-rows:repeat(9,1fr);display:grid}.lesson-board-column-labels span,.lesson-board-row-labels span{place-items:center;display:grid}.lesson-board{aspect-ratio:1;border:2px solid var(--ink);background:var(--surface);grid-area:2/2;grid-template-rows:repeat(9,minmax(0,1fr));grid-template-columns:repeat(9,1fr);width:100%;display:grid;box-shadow:0 12px 30px #102a4314}.lesson-board-row{display:contents}.lesson-board-cell{background:var(--surface);min-width:0;min-height:0;color:var(--board-value);font-family:var(--serif);border:1px solid #cfd6da;border-top:0;border-left:0;place-items:center;padding:0;font-size:clamp(.85rem,2vw,1.35rem);display:grid;position:relative}.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;outline:3px solid var(--saffron);outline-offset:-3px;background:#fff2c8}.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.given.temporary{z-index:3;color:#214f4c;background:#e9f3ef}.lesson-board-cell.given.temporary:after{aspect-ratio:1;content:"";pointer-events:none;border:2px dashed #2e6f6a;border-radius:50%;width:72%;position:absolute}.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 var(--board-selection-border)}.lesson-board-cell.highlighted,.rules-primer .highlighted{z-index:2;background:linear-gradient(145deg,#fff1bd 0%,#ffe29a 100%);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 var(--board-selection-border)}.lesson-board-cell.conclusion .lesson-candidates{padding:3px}.lesson-candidates i.candidate-sage,.lesson-candidates i.candidate-saffron{width:1.15em;height:1.15em;color:var(--ink);border-radius:50%;place-items:center;margin:auto;font-weight:800;display:grid}.lesson-candidates i.candidate-sage{background:#b9cfad}.lesson-candidates i.candidate-saffron{background:#f4c65e}.lesson-candidates i.candidate-crossed{color:#984a3f;opacity:.72;font-weight:850;-webkit-text-decoration:line-through #a75a4e;text-decoration:line-through #a75a4e;text-decoration-thickness:2px}.lesson-board-cell.selected{z-index:4;background:var(--board-selected);box-shadow:inset 0 0 0 3px var(--board-selection-border)}.lesson-board-cell.selected.correct{background:var(--sage);box-shadow:inset 0 0 0 3px var(--sage-dark)}.lesson-board-cell.selected.wrong{background:var(--board-error);box-shadow:inset 0 0 0 3px var(--coral)}.lesson-candidates{box-sizing:border-box;grid-template-rows:repeat(3,minmax(0,1fr));grid-template-columns:repeat(3,1fr);width:100%;height:100%;padding:2px;display:grid}.lesson-candidates i{color:var(--board-candidate);place-items:center;font:clamp(.35rem,.8vw,.56rem)/1 sans-serif;display:grid}.lesson-board.candidate-feedback .lesson-candidates i.candidate-selected{color:var(--ink);background:color-mix(in srgb, var(--saffron) 34%, transparent);text-decoration:line-through;text-decoration-thickness:2px}.lesson-board.candidate-feedback .lesson-candidates i.candidate-selected.candidate-correct{color:#315d3f;background:color-mix(in srgb, var(--sage) 72%, transparent);outline:2px solid color-mix(in srgb, var(--sage-dark) 72%, transparent)}.lesson-board.candidate-feedback .lesson-candidates i.candidate-selected.candidate-partial{color:#6f4c08;background:color-mix(in srgb, var(--saffron) 48%, transparent);outline:2px solid color-mix(in srgb, var(--saffron-dark) 72%, transparent)}.lesson-board.candidate-feedback .lesson-candidates i.candidate-selected.candidate-wrong{color:#984a3f;background:color-mix(in srgb, var(--coral) 24%, transparent);outline:2px solid color-mix(in srgb, var(--coral) 68%, transparent)}.lesson-board-figure figcaption{max-width:500px;color:var(--muted);margin:9px 0 0 20px;font-size:.65rem;line-height:1.5}.review-heading .mascot{width:92px;height:102px}.review-summary{border:1px solid var(--line);border-radius:8px;grid-template-columns:repeat(4,1fr) 125px;align-items:center;margin:16px 0;padding:22px 28px;display:grid}.review-summary>div:not(.progress-ring){border-left:1px solid var(--line);flex-direction:column;gap:6px;min-height:50px;padding-left:22px;display:flex}.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{background:var(--sage-soft);border:1px solid #b9cdb4;border-radius:8px;justify-content:space-between;align-items:center;gap:28px;margin:16px 0;padding:22px 28px;display:flex}.puzzle-share-strip h2{margin:3px 0 5px;font-size:1.45rem}.puzzle-share-strip p{max-width:620px;color:var(--muted);margin:0}.puzzle-share-control{justify-items:end;min-width:210px}.puzzle-share-time-option{text-align:left;justify-content:space-between;align-items:center;gap:18px;min-width:250px;display:flex}.puzzle-share-time-option>div{gap:2px;display:grid}.puzzle-share-time-option label{cursor:pointer}.puzzle-share-time-option strong{font-size:.76rem}.puzzle-share-time-option small{color:var(--muted);font-size:.65rem;line-height:1.35}.puzzle-share-time-option .app-switch{flex:none}.puzzle-share-button{white-space:nowrap}.review-grid{grid-template-columns:1fr 330px;gap:16px;display:grid}.review-mistakes,.technique-review{border:1px solid var(--line);border-radius:8px;padding:26px}.review-mistakes article{background:#fbf1ee;border:1px solid #efd4cf;border-radius:5px;grid-template-columns:27px 1fr 25px;gap:13px;margin-top:18px;padding:18px;display:grid}.review-mistakes article>i{background:var(--coral);color:#fff;border-radius:50%;place-items:center;width:24px;height:24px;font-size:.67rem;font-style:normal;display:grid}.review-mistakes h3{margin:0 0 5px;font-size:.96rem}.review-mistakes p{margin-bottom:10px;font-size:.69rem}.free-mistake-summary{border-left:3px solid var(--saffron);color:var(--ink);background:#fff9e9;margin:0 0 16px;padding:14px 16px;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){border-bottom:1px solid #eee9df;grid-template-columns:22px 1fr auto;align-items:center;padding:9px 0;font-size:.74rem;display:grid}.technique-review>div svg{color:#bcc1bd;width:16px}.technique-review>div svg.complete{color:var(--sage-dark)}.technique-review small{color:var(--muted);font-size:.59rem}.coach-summary{align-items:center;gap:10px;margin-top:22px;display:flex}.coach-summary .mascot{width:70px;height:75px}.coach-summary p{flex-direction:column;margin:0;display:flex}.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{background:var(--ink-fill);color:#fff;border-radius:8px;justify-content:space-between;align-items:center;gap:30px;margin-top:16px;padding:26px 30px;display:flex}.review-next .eyebrow{color:#b9ceb9}.review-next h2{margin-bottom:6px}.review-next p{color:#cad3da;margin:0;font-size:.76rem}.review-next>div:first-child{min-width:0}.review-next>div:last-child{flex:none;gap:8px;display:flex}.review-next .button-outline{color:#fff;border-color:#fff}.review-next .button-primary{background:var(--surface);color:var(--ink);box-shadow:none}.review-next .button{white-space:nowrap}.empty-progress{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:330px;display:flex}.empty-progress img{-o-object-fit:contain;object-fit:contain;border-radius:32px;width:170px;height:160px;margin-bottom:12px}.empty-progress p{max-width:330px;font-size:.75rem}.history-gate{background:#fff8e5;border:1px solid #d9c98d;border-radius:5px;flex-direction:row;align-items:center;gap:12px;margin-top:18px;padding:16px;display:flex}.history-gate>svg{color:#8a6715;flex:0 0 17px;width:17px}.history-gate p{flex-direction:column;flex:auto;min-width:0;margin:0;display:flex}.history-gate .button{flex:0 auto}.history-gate strong{color:var(--ink);font-family:var(--serif);font-size:.8rem}.history-gate span{color:var(--muted);font-size:.62rem}.upgrade-page{background:radial-gradient(circle at 50% 30%, #eef1e8, transparent 30%), var(--ivory);min-height:100vh}.upgrade-page:before{content:"";z-index:1000;height:var(--safe-area-top);background:var(--ivory);pointer-events:none;position:fixed;inset:0 0 auto}.upgrade-main{width:min(940px,100% - 40px);margin:0 auto;padding:40px 0 55px}.upgrade-heading{text-align:center;max-width:670px;margin:0 auto 38px}.upgrade-heading h1{margin-bottom:15px;font-size:clamp(2.7rem,5vw,4.2rem)}.upgrade-heading p{margin:0}.pricing-grid{grid-template-columns:1fr;max-width:620px;margin:0 auto;display:grid}.price-plan{border:1px solid var(--line);background:#fffdf8e0;border-radius:8px;flex-direction:column;min-height:0;padding:38px;display:flex;position:relative}.price-plan.featured{border-color:#d99917;box-shadow:0 18px 45px #6a4c0b1a}.price-owl{width:100px;height:120px;position:absolute;top:25px;right:25px}.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{color:var(--muted);font-family:sans-serif;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{flex-direction:column;gap:12px;margin:0 0 28px;padding:0;list-style:none;display:flex}.price-plan li{align-items:center;gap:9px;font-size:.76rem;display:flex}.price-plan li svg{width:15px;color:var(--sage-dark);stroke-width:3px}.price-plan>.button{margin-top:8px}.price-plan>.restore-purchases{min-height:44px;margin:14px auto 0}.plan-active-status{min-height:47px;color:var(--sage-dark);justify-content:center;align-items:center;gap:9px;margin-top:8px;padding:0 4px;font-size:.9rem;font-weight:720;display:flex}.plan-active-status svg{stroke-width:2.4px;flex:none}.plan-active-actions{gap:12px;display:grid}.plan-active-actions>.button{width:100%;min-height:46px}.checkout-status{text-align:center;background:#fff8e5;border:1px solid #dfcf9f;border-radius:4px;max-width:650px;margin:18px auto 0;padding:12px 15px;font-size:.74rem}.checkout-trust{color:var(--muted);justify-content:center;gap:35px;margin-top:25px;font-size:.65rem;display:flex}.checkout-trust span{align-items:center;gap:6px;display:flex}.checkout-trust svg{width:16px}.price-plan>.checkout-status{max-width:none;margin:16px 0 0}.upgrade-auth{border-top:1px solid var(--line);max-width:none;margin-top:2px;padding-top:18px}.upgrade-auth-switch{color:var(--muted);text-align:right;margin:0 0 14px;font-size:.7rem}.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{text-align:center;min-height:50px;margin-top:2px;padding-inline:18px}.upgrade-auth .password-recovery-note{text-align:center;margin-top:14px}.upgrade-free-path{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:24px;max-width:650px;margin:28px auto 0;padding-top:22px;display:flex}.upgrade-free-path p,.upgrade-free-path strong,.upgrade-free-path span{display:block}.upgrade-free-path p{margin:0}.upgrade-free-path strong{color:var(--ink);font-family:var(--serif);margin-bottom:3px;font-size:.86rem}.upgrade-free-path span{color:var(--muted);font-size:.69rem}.upgrade-free-path .text-link{flex:none}.native-purchase-terms{max-width:760px;margin:32px auto 0}.settings-page>:not(.app-page-header):not(.sr-only){width:min(100%,720px)}@media (width>=1100px){.page.app-page.settings-page{--app-page-max-width:1040px}}.account-page>:not(.app-page-header):not(.sr-only){width:min(100%,780px)}.notebook-callout{border:1px solid color-mix(in srgb, var(--sage-dark) 22%, var(--line));background:var(--sage-soft);color:var(--ink);transition:border-color .15s ease, background-color .15s ease, transform .15s var(--ease-out-ui);border-radius:10px;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;margin-top:16px;padding:18px 20px;display:grid}.notebook-callout-icon{background:var(--sage);width:42px;height:42px;color:var(--sage-dark);border-radius:50%;place-items:center;display:grid}.notebook-callout>svg{color:var(--sage-dark)}.notebook-callout .eyebrow{margin-bottom:3px}.notebook-callout h2{font-family:var(--serif);letter-spacing:-.015em;margin:0;font-size:1rem;line-height:1.25}.notebook-callout small{color:var(--muted);margin-top:4px;font-size:.7rem;line-height:1.4;display:block}.notebook-callout-compact{border-radius:9px;gap:10px;min-height:0;margin-top:12px;padding:10px 12px}.notebook-callout-compact .notebook-callout-icon{width:30px;height:30px}.notebook-callout-compact .notebook-callout-icon svg{width:17px;height:17px}.notebook-callout-compact .eyebrow,.notebook-callout-compact small{display:none}.notebook-callout-compact h2{font-family:var(--sans);font-size:.72rem;line-height:1.3}.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))}.notebook-callout:hover>svg{transform:translate(3px)}}.settings-section{border:1px solid var(--line);border-radius:8px;min-width:0;max-width:100%;margin-bottom:20px;padding:26px}.settings-section>h2{margin-bottom:18px}.settings-group{border-bottom:1px solid var(--line);padding:0 0 32px}.settings-group+.settings-group{padding-top:32px}.settings-group>h2{margin-bottom:8px;font-size:1.45rem}.email-reminder-settings{padding:var(--space-8) var(--space-6);background:linear-gradient(145deg, color-mix(in srgb, var(--sage-soft) 62%, var(--surface-raised)), var(--surface-raised) 72%);position:relative;overflow:hidden}.email-reminder-settings:after{background:color-mix(in srgb, var(--sage) 36%, transparent);content:"";pointer-events:none;border-radius:50%;width:230px;height:230px;position:absolute;top:-116px;right:-110px}.email-reminder-heading,.email-reminder-sign-in-note,.email-reminder-time,.email-reminder-status{z-index:1;position:relative}.email-reminder-heading{align-items:flex-start;gap:14px;display:flex}.email-reminder-icon{border:1px solid color-mix(in srgb, var(--sage-dark) 28%, var(--line));background:color-mix(in srgb, var(--sage-soft) 78%, var(--surface-raised));width:42px;height:42px;color:var(--sage-dark);box-shadow:inset 0 1px 0 color-mix(in srgb, var(--on-ink) 55%, transparent), var(--shadow-border);border-radius:13px;flex:0 0 42px;place-items:center;display:grid}.email-reminder-icon svg{width:20px;height:20px}.email-reminder-copy{min-width:0}.email-reminder-kicker{color:var(--sage-dark);margin:0 0 3px;font-size:.62rem;font-weight:750;line-height:1.2;display:block}.email-reminder-heading h2{color:var(--ink);margin:0 0 7px;font-size:1.45rem;line-height:1.12}.email-reminder-heading p{max-width:620px;color:var(--muted);margin:0;font-size:.75rem;line-height:1.45}.settings-note{color:var(--muted);margin:14px 0 0;font-size:.7rem;line-height:1.45}.email-reminder-sign-in-note{color:var(--ink-soft);flex-wrap:wrap;align-items:center;gap:6px;margin-top:18px;display:flex}.email-reminder-sign-in-link{min-height:44px;color:var(--sage-dark);text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb, currentColor 42%, transparent);text-decoration-color:color-mix(in srgb, currentColor 42%, transparent);text-underline-offset:.18em;transition:color .15s var(--ease-out-ui), text-decoration-color .15s var(--ease-out-ui);background:0 0;align-items:center;padding-inline:2px;font-weight:650;text-decoration-thickness:1px;display:inline-flex}.email-reminder-sign-in-link:hover{color:var(--ink);text-decoration-color:currentColor}.email-reminder-sign-in-link:focus-visible{outline:2px solid color-mix(in srgb, var(--sage-dark) 54%, transparent);outline-offset:3px}.email-reminder-time{border-top:1px dashed color-mix(in srgb, var(--line) 82%, transparent);grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px 12px;margin-top:12px;padding:12px 14px 0;display:grid}.email-reminder-time label{color:var(--ink);font-family:var(--serif);font-size:.82rem;font-weight:700}.email-reminder-time input,.email-reminder-time select{border:1px solid var(--line);background:var(--surface);width:112px;min-height:38px;color:var(--ink);font:inherit;transition:border-color .15s var(--ease-out-ui), box-shadow .15s var(--ease-out-ui);border-radius:10px;justify-self:start;padding:7px 9px;box-shadow:inset 0 1px #ffffff80}.email-reminder-time select{width:min(260px,100%)}.daily-reminder-channel{margin-top:20px;padding-top:14px}.email-reminder-time input:hover:not(:disabled),.email-reminder-time select:hover:not(:disabled){border-color:color-mix(in srgb, var(--sage-dark) 42%, var(--line))}.email-reminder-time input:focus-visible,.email-reminder-time select:focus-visible{border-color:var(--sage-dark);outline:2px solid color-mix(in srgb, var(--sage-dark) 32%, transparent);outline-offset:2px}.email-reminder-time input:disabled,.email-reminder-time select:disabled{cursor:wait;opacity:.62}.email-reminder-time small{color:var(--muted);grid-column:1/-1;font-size:.64rem;line-height:1.35}.email-reminder-status{color:var(--sage-dark)}@media (prefers-reduced-motion:reduce){.email-reminder-sign-in-link,.email-reminder-time input,.email-reminder-time select{transition:none}}.feedback-settings>div:first-child p{max-width:620px;color:var(--muted);margin:0;font-size:.75rem}.feedback-settings .coach-preference{border-top:0;padding-bottom:0}.coach-preference{border-top:1px solid #ebe6dd;padding:20px 0 22px}.coach-preference>strong,.coach-preference>span{display:block}.coach-preference>strong{font-family:var(--serif);font-size:.9rem}.coach-preference>span{color:var(--muted);margin-top:3px;font-size:.67rem}.segmented-control{border:1px solid var(--line);border-radius:5px;grid-template-columns:repeat(3,1fr);margin-top:12px;display:inline-grid;overflow:hidden}.segmented-control button{border:0;border-right:1px solid var(--line);background:var(--paper);text-transform:capitalize;cursor:pointer;min-height:36px;padding:0 14px;font-size:.72rem}.segmented-control button:last-child{border-right:0}.segmented-control button.active{background:var(--ink-fill);color:#fff}.setting-row{border-top:1px solid #ebe6dd;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px;min-height:76px;display:grid}.setting-row p{flex-direction:column;margin:0;display:flex}.setting-row strong{color:var(--ink);font-family:var(--serif);font-size:.9rem}.cognitive-support-settings .setting-row strong,.analytics-settings .setting-row strong{letter-spacing:-.015em;font-size:1rem;font-weight:600}.setting-row span{color:var(--muted);font-size:.67rem}.toggle{background:var(--toggle-off);cursor:pointer;border:0;border-radius:13px;width:42px;height:24px;padding:2px;transition:background .2s}.toggle i{background:var(--surface);border-radius:50%;width:20px;height:20px;transition:transform .2s;display:block;box-shadow:0 1px 3px #0000002e}.toggle.on{background:var(--sage-dark)}.toggle.on i{transform:translate(18px)}.appearance-settings>div:first-child p{max-width:620px;color:var(--muted);margin:0;font-size:.75rem}.appearance-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:20px;display:grid}.appearance-options>button{border:1px solid var(--line);background:var(--paper);min-width:0;min-height:92px;color:var(--ink);cursor:pointer;text-align:left;transition:border-color .15s ease, background-color .15s ease, transform .15s var(--ease-out-ui);border-radius:9px;grid-template-columns:24px minmax(0,1fr);align-items:start;gap:10px;padding:14px;display:grid;position:relative}.appearance-options>button:hover{border-color:color-mix(in srgb, var(--sage-dark) 48%, var(--line));background:var(--sage-soft)}.appearance-options>button:focus-visible{outline:3px solid color-mix(in srgb, var(--sage-dark) 30%, transparent);outline-offset:2px}.appearance-options>button.active{border-color:var(--sage-dark);background:var(--sage-soft);box-shadow:inset 0 0 0 1px var(--sage-dark)}.appearance-options svg{width:21px;color:var(--sage-dark)}.appearance-options span,.appearance-options strong,.appearance-options small{display:block}.appearance-options strong{font:700 .76rem/1.25 var(--serif)}.appearance-options small{color:var(--muted);margin-top:4px;font-size:.61rem;line-height:1.4}.appearance-options i{border:1px solid var(--line-strong);border-radius:50%;width:8px;height:8px;position:absolute;top:10px;right:10px}.appearance-options>button.active i{border-color:var(--sage-dark);background:var(--sage-dark);box-shadow:0 0 0 3px color-mix(in srgb, var(--sage-dark) 16%, transparent)}.local-data-settings>div{max-width:590px}.local-data-settings p{margin:0 0 12px;font-size:.75rem}@media (width<=1099px){.settings-page{flex-direction:column;display:flex}.settings-page>.appearance-settings{order:1}.settings-page>.language-settings{order:2}.settings-page>.email-reminder-settings{background:linear-gradient(145deg, color-mix(in srgb, var(--sage-soft) 62%, var(--surface-raised)), var(--surface-raised) 72%);border-color:color-mix(in srgb, var(--sage-dark) 22%, var(--line));order:3}.settings-page>.play-presets{order:4}.settings-page>.play-settings{order:5}.settings-page>.coach-settings{order:6}.settings-page>.feedback-settings{order:7}.settings-page>.cognitive-support-settings{order:8}.settings-page>.analytics-settings{order:9}.settings-page>.local-data-settings{order:10}.settings-page>.app-version-settings{order:11}}@media (width>=621px) and (width<=1099px){.settings-page .play-preset-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:18px}.settings-page .play-preset-options button{border-radius:10px;grid-template-rows:auto 1fr;grid-template-columns:28px minmax(0,1fr);align-content:center;align-items:start;gap:5px 10px;min-height:126px;padding:16px;display:grid}.settings-page .play-preset-options button svg{width:22px;height:22px;color:var(--sage-dark);grid-row:1/3}.settings-page .play-preset-options button strong,.settings-page .play-preset-options button span{min-width:0}.settings-page .play-preset-options button span{font-size:.68rem;line-height:1.35}}@media (width>=1100px){.settings-page{flex-direction:column;align-items:start;gap:0;display:flex}.settings-page>.app-page-header{grid-column:1/-1;margin-bottom:8px}.settings-page>:not(.app-page-header):not(.sr-only){width:100%}.settings-page>.settings-group{border:0;border-bottom:1px solid var(--line);min-width:0;box-shadow:none;background:0 0;border-radius:0;padding:24px 0}.settings-page>.settings-group+.settings-group{padding-top:24px}.settings-page>.appearance-settings{order:1}.settings-page>.language-settings{order:2}.settings-page>.email-reminder-settings{border:1px solid color-mix(in srgb, var(--sage-dark) 22%, var(--line));background:linear-gradient(145deg, color-mix(in srgb, var(--sage-soft) 62%, var(--surface-raised)), var(--surface-raised) 72%);border-radius:14px;order:3;margin-block:10px;padding:22px 24px}.settings-page>.play-presets{order:4;grid-column:1/-1}.settings-page>.play-settings{order:5}.settings-page>.coach-settings{order:6}.settings-page>.feedback-settings{order:7}.settings-page>.cognitive-support-settings{order:8}.settings-page>.analytics-settings{order:9}.settings-page>.local-data-settings{order:10}.settings-page>.app-version-settings{order:11}.settings-page>.language-settings,.settings-page>.appearance-settings{min-height:0}.settings-page .setting-language-row{align-items:center;min-height:108px;padding-top:12px}.settings-page .setting-language-row>p{max-width:24rem}.settings-page .play-preset-options{grid-template-columns:repeat(3,minmax(0,1fr))}.settings-page .play-preset-options button{min-height:116px}.settings-page>.play-settings,.settings-page>.coach-settings,.settings-page>.feedback-settings,.settings-page>.cognitive-support-settings,.settings-page>.analytics-settings,.settings-page>.local-data-settings{min-height:0}.settings-page .local-data-settings>div{max-width:none}}.account-summary{border:1px solid color-mix(in srgb, var(--sage-dark) 24%, var(--line));border-radius:var(--radius-surface);background:color-mix(in srgb, var(--sage-soft) 88%, var(--paper));box-shadow:inset 3px 0 var(--sage-dark), 0 1px 2px color-mix(in srgb, var(--ink) 5%, transparent), 0 8px 22px color-mix(in srgb, var(--ink) 4%, transparent);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px;margin-bottom:18px;padding:20px 22px;display:grid;position:relative}.account-summary-identity,.account-summary-state,.account-sync-state,.sync-status-line{align-items:center;display:flex}.account-summary-identity{gap:14px;min-width:0}.account-summary-identity>div{min-width:0}.account-avatar{background:color-mix(in srgb, var(--sage) 64%, white);width:44px;height:44px;color:var(--sage-dark);border-radius:50%;flex:none;place-items:center;display:grid}.account-avatar svg{width:23px;height:23px}.account-summary h2,.account-summary p{overflow-wrap:break-word;word-break:normal;margin:0}.account-summary h2{font-family:var(--sans);letter-spacing:-.015em;overflow-wrap:anywhere;font-size:1.08rem;font-weight:700;line-height:1.25}.account-summary p{color:var(--muted);margin-top:3px;font-size:.69rem}.account-summary-state{flex-direction:column;flex:none;align-items:flex-end;gap:7px}.account-plan-badge{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;align-items:center;gap:7px;font-size:.61rem;font-weight:800;display:inline-flex}.account-plan-badge:before{background:var(--muted);content:"";border-radius:50%;flex:none;width:7px;height:7px}.account-plan-badge.is-active{color:var(--sage-dark)}.account-plan-badge.is-active:before{background:var(--sage-dark);box-shadow:0 0 0 3px color-mix(in srgb, var(--sage-dark) 18%, transparent)}.account-sync-state{color:var(--sage-dark);gap:7px}.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{color:var(--muted);margin-top:1px;font-size:.58rem}.sync-status-line{color:var(--sage-dark);gap:7px}.sync-status-action{color:currentColor;text-underline-offset:2px;white-space:nowrap;margin-left:3px;font-size:.62rem;font-weight:800;text-decoration:underline}.sync-status-action:hover,.sync-status-action:focus-visible{color:var(--ink)}.sync-status-line.is-pending,.sync-status-line.is-sending,.sync-status-line.is-retry_wait{color:var(--muted)}.sync-status-line.is-blocked,.sync-status-line.is-conflict{color:var(--coral-dark,var(--ink))}.sync-status-line>svg{flex:none;width:17px;height:17px}.sync-status-line>span{flex:auto;min-width:0}.sync-status-line.is-sending>svg{animation:1.2s linear infinite sync-status-spin}@keyframes sync-status-spin{to{transform:rotate(1turn)}}.sync-status-line span,.sync-status-line strong,.sync-status-line small{display:block}.sync-status-line strong{font-size:.68rem;line-height:1.3}.sync-status-line small{color:var(--muted);margin-top:1px;font-size:.58rem}.storage-health-notice{z-index:70;min-height:42px;padding:9px max(18px, var(--safe-area-right)) 9px max(18px, var(--safe-area-left));border-bottom:1px solid color-mix(in srgb, var(--coral) 36%, var(--line));background:color-mix(in srgb, var(--coral-soft) 92%, var(--paper));color:var(--ink);text-align:center;justify-content:center;align-items:center;gap:9px;font-size:.75rem;font-weight:700;line-height:1.35;display:flex;position:sticky;top:0}.storage-health-notice svg{width:18px;height:18px;color:var(--coral-dark,var(--ink));flex:none}.account-settings-list{border-block:1px solid var(--line);margin-bottom:18px}.account-settings-shortcut{display:none}.account-setting-group{border-bottom:1px solid var(--line);transition:background-color var(--duration-fast) var(--ease-out-ui);margin-inline:8px}.account-setting-group:last-child{border-bottom:0}.account-setting-group:hover{background:color-mix(in srgb, var(--blue-wash) 42%, transparent)}.account-setting-group.is-active-plan{background:color-mix(in srgb, var(--sage-soft) 68%, var(--paper));box-shadow:inset 3px 0 var(--sage-dark)}.account-setting-group.is-active-plan:hover{background:color-mix(in srgb, var(--sage-soft) 82%, var(--paper))}.account-setting-trigger{width:100%;min-height:82px;color:inherit;font:inherit;cursor:pointer;text-align:left;background:0 0;border:0;grid-template-columns:34px minmax(0,1fr) minmax(90px,auto) 18px;align-items:center;gap:13px;padding:0 2px 0 8px;list-style:none;display:grid}.account-setting-trigger:focus-visible{outline-offset:4px;outline:3px solid #47725a2e}.account-setting-icon{background:var(--sage-soft);width:32px;height:32px;color:var(--sage-dark);border-radius:50%;place-items:center;display:grid}.account-setting-icon svg{width:17px;height:17px}.account-setting-copy,.account-setting-copy strong,.account-setting-copy small{min-width:0;display:block}.account-setting-copy{font-family:var(--sans)}.account-setting-copy strong{font-family:inherit;font-size:.92rem}.account-setting-copy small{color:var(--muted);margin-top:3px;font-family:inherit;font-size:.64rem;line-height:1.4}.account-setting-value{max-width:210px;color:var(--ink-soft);font-family:var(--sans);text-align:right;white-space:nowrap;justify-self:end;align-items:center;gap:6px;font-size:.67rem;font-weight:650;display:inline-flex}.account-setting-value:before{background:var(--sage-dark);content:"";border-radius:50%;flex:none;width:6px;height:6px;display:none}.account-setting-group.is-active-plan .account-setting-value{color:var(--sage-dark);font-weight:750}.account-setting-group.is-active-plan .account-setting-value:before{display:block}.account-setting-trigger>svg{width:17px;color:var(--muted);transition:color var(--duration-fast) var(--ease-out-ui), transform var(--duration-fast) var(--ease-out-ui);grid-column:4;justify-self:end}.account-setting-group:hover .account-setting-trigger>svg,.account-setting-trigger:focus-visible>svg{color:var(--ink-soft)}.account-setting-group:not([data-state=open]):hover .account-setting-trigger>svg{transform:translate(2px)}.account-setting-group[data-state=open] .account-setting-trigger>svg{transform:rotate(90deg)}.account-setting-content{padding:0 0 20px 55px;overflow:hidden}.account-setting-content[data-state=open]{animation:.18s ease-out app-accordion-down}.account-setting-content[data-state=closed]{animation:.14s ease-out app-accordion-up}.account-setting-content .account-data-block{padding-top:18px}.account-plan-actions{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.subscription-source-list{border-block:1px solid var(--line);width:100%;display:grid}.subscription-source{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;padding:15px 0;display:grid}.subscription-source+.subscription-source{border-top:1px solid var(--line)}.subscription-source>div{justify-items:start;gap:4px;display:grid}.subscription-source-status{color:var(--sage-dark);font-size:.7rem;font-weight:750}.subscription-source-status.is-grace_period,.subscription-source-status.is-payment_retry,.subscription-source-status.is-pending{color:#8a6300}.subscription-source-status.is-expired,.subscription-source-status.is-revoked{color:var(--coral-dark)}.subscription-source small{color:var(--muted);font-size:.7rem}.account-plan-offer{background:#fff8e4;border:1px solid #e4c36c;border-radius:9px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:24px;width:100%;padding:19px 20px;display:grid}.account-action-kicker{color:#825f08;align-items:center;gap:7px;font-size:.67rem;font-weight:800;display:flex}.account-action-kicker svg{width:16px;height:16px}.account-plan-offer p{max-width:470px;color:var(--ink);margin:6px 0 0;font-size:.72rem;line-height:1.5}.account-plan-offer .button{white-space:nowrap;flex:none}.account-plan-offer .button svg{width:17px;height:17px}.account-plan-actions .checkout-status{flex-basis:100%}.account-export-panel{border:1px solid var(--line);background:color-mix(in srgb, var(--paper) 84%, var(--sage-soft));border-radius:9px;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:14px;padding:18px 20px;display:grid}.account-export-icon{background:var(--sage-soft);width:38px;height:38px;color:var(--sage-dark);border-radius:50%;place-items:center;display:grid}.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{color:var(--muted);margin-top:4px;font-size:.67rem;line-height:1.45}.account-export-panel .button{white-space:nowrap;min-width:160px}.account-export-panel .button svg{width:17px;height:17px}.account-session-actions{justify-content:space-between;align-items:center;padding:2px 2px 22px;display:flex}.account-session-actions .text-button{align-items:center;gap:8px;display:inline-flex}.account-session-actions svg{width:17px;height:17px}.account-delete-trigger{color:color-mix(in srgb, var(--danger-text) 84%, var(--muted));transition:color var(--duration-fast) var(--ease-out-ui)}.account-delete-trigger:hover:not(:disabled),.account-delete-trigger:focus-visible{color:var(--danger-text)}@media (prefers-reduced-motion:reduce){.account-setting-group,.account-setting-trigger>svg,.account-delete-trigger{transition:none}}.account-delete-dialog{background:var(--paper);border:1px solid #dfb5ae;border-radius:14px;width:min(100%,500px);padding:30px;box-shadow:0 28px 80px #0d2d4440}.account-dialog-icon{color:#a1463b;background:#fff0ed;border-radius:50%;place-items:center;width:42px;height:42px;margin-bottom:16px;display:grid}.account-dialog-icon svg{width:21px}.account-delete-dialog h2{margin:0;font-size:1.4rem}.account-delete-dialog>p{color:var(--muted);margin:10px 0 20px;font-size:.74rem}.account-delete-form{gap:20px;display:grid}.account-delete-form .password-field{gap:7px;font-size:.74rem;font-weight:700;display:grid}.account-delete-form input{border:1px solid var(--line);background:var(--surface);width:100%;min-height:46px;font:inherit;border-radius:5px;padding:0 48px 0 12px}.account-dialog-actions{justify-content:flex-end;gap:10px;display:flex}.button-danger{color:#fff;background:#9b4439;border-color:#9b4439}.button-danger:hover:not(:disabled){background:#84372f;border-color:#84372f}.account-dialog-cancel{margin-top:16px}.account-page-status{max-width:none;margin:0 0 20px}.checkout-confirmation{background:#fff8e5;border:1px solid #d9c27d;border-radius:8px;justify-content:space-between;align-items:center;gap:24px;margin-bottom:20px;padding:22px 24px;display:flex}.checkout-confirmation.active{background:#f1f5ee;border-color:#adc2a9}.checkout-confirmation>div:first-child{align-items:flex-start;gap:12px;min-width:0;display:flex}.checkout-confirmation>div:first-child>svg{color:var(--sage-dark);flex:none}.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:none;align-items:center;gap:14px;display:flex}.purchase-celebration-backdrop{z-index:120;padding:max(24px, var(--safe-area-top)) 20px max(24px, var(--safe-area-bottom));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#1c251f94;place-items:center;animation:.32s ease-out both purchase-backdrop-arrive;display:grid;position:fixed;inset:0;overflow-y:auto}.purchase-celebration{z-index:121;width:min(100%,540px);max-height:calc(100dvh - max(48px, var(--safe-area-top) + 24px) - max(48px, var(--safe-area-bottom) + 24px));border:1px solid color-mix(in srgb, var(--saffron) 48%, var(--line));background:radial-gradient(circle at 50% 18%, color-mix(in srgb, var(--saffron) 20%, transparent), transparent 42%), var(--paper);text-align:center;animation:purchase-celebration-arrive .68s var(--ease-out-ui) both;border-radius:24px;padding:42px 48px 38px;position:fixed;top:50%;left:50%;overflow:hidden auto;transform:translate(-50%,-50%);box-shadow:0 28px 80px #101c1447}.purchase-celebration-mascot{place-items:center;width:150px;height:150px;margin:0 auto 16px;display:grid;position:relative}.purchase-celebration-mascot .mascot{z-index:1;width:126px;height:138px;animation:purchase-mascot-arrive .76s .12s var(--ease-out-ui) both;position:relative}.purchase-celebration-halo{background:color-mix(in srgb, var(--saffron) 25%, transparent);width:132px;height:132px;box-shadow:0 0 0 16px color-mix(in srgb, var(--saffron) 9%, transparent), 0 0 0 32px color-mix(in srgb, var(--saffron) 4%, transparent);border-radius:50%;animation:2.4s ease-in-out infinite purchase-halo-breathe;position:absolute}.purchase-celebration-check{z-index:2;border:4px solid var(--paper);background:var(--sage-dark);color:#fff;width:42px;height:42px;animation:purchase-check-arrive .52s .54s var(--ease-out-ui) both;border-radius:50%;place-items:center;display:grid;position:absolute;bottom:9px;right:2px}.purchase-celebration-check svg{stroke-width:3px;width:21px;height:21px}.purchase-celebration .eyebrow{color:var(--saffron-ink)}.purchase-celebration h2{font-family:var(--serif);letter-spacing:-.045em;margin:7px 0 11px;font-size:clamp(2rem,7vw,3.25rem);line-height:1}.purchase-celebration p{max-width:390px;color:var(--muted);margin:0 auto 24px;font-size:.86rem;line-height:1.6}.purchase-celebration .button{justify-content:center;min-width:190px}.purchase-celebration small{color:var(--muted);margin-top:12px;font-size:.64rem;display:block}.purchase-celebration-spark{color:var(--saffron-ink);opacity:.74;position:absolute}.purchase-celebration-spark svg{width:26px;height:26px}.purchase-celebration-spark-left{top:72px;left:62px;transform:rotate(-18deg)}.purchase-celebration-spark-right{top:118px;right:66px;transform:rotate(16deg)scale(.72)}.purchase-confetti{pointer-events:none;position:absolute;inset:0}.purchase-confetti i{--confetti-color:var(--saffron);top:-16px;left:calc(5% + (var(--piece) * 5.2%));background:var(--confetti-color);width:8px;height:13px;animation:purchase-confetti-fall 1.75s calc(var(--piece) * 45ms) ease-out both;border-radius:2px;position:absolute}.purchase-confetti i:nth-child(3n){--confetti-color:var(--sage-dark);border-radius:50%;width:7px;height:7px}.purchase-confetti i:nth-child(3n+2){--confetti-color:var(--coral)}.purchase-confetti i:first-child{--piece:0}.purchase-confetti i:nth-child(2){--piece:1}.purchase-confetti i:nth-child(3){--piece:2}.purchase-confetti i:nth-child(4){--piece:3}.purchase-confetti i:nth-child(5){--piece:4}.purchase-confetti i:nth-child(6){--piece:5}.purchase-confetti i:nth-child(7){--piece:6}.purchase-confetti i:nth-child(8){--piece:7}.purchase-confetti i:nth-child(9){--piece:8}.purchase-confetti i:nth-child(10){--piece:9}.purchase-confetti i:nth-child(11){--piece:10}.purchase-confetti i:nth-child(12){--piece:11}.purchase-confetti i:nth-child(13){--piece:12}.purchase-confetti i:nth-child(14){--piece:13}.purchase-confetti i:nth-child(15){--piece:14}.purchase-confetti i:nth-child(16){--piece:15}.purchase-confetti i:nth-child(17){--piece:16}.purchase-confetti i:nth-child(18){--piece:17}@keyframes purchase-backdrop-arrive{0%{opacity:0}}@keyframes purchase-celebration-arrive{0%{opacity:0;transform:translate(-50%,calc(24px - 50%))scale(.94)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}@keyframes purchase-mascot-arrive{0%{opacity:0;transform:translateY(14px)scale(.82)rotate(-4deg)}}@keyframes purchase-check-arrive{0%{opacity:0;transform:scale(.35)rotate(-18deg)}}@keyframes purchase-halo-breathe{50%{transform:scale(1.06)}}@keyframes purchase-confetti-fall{0%{opacity:0;transform:translateY(-8px)rotate(0)}12%{opacity:1}to{opacity:0;transform:translateY(400px)rotate(470deg)}}@media (width<=560px){.purchase-celebration-backdrop{padding-inline:14px}.purchase-celebration{border-radius:20px;padding:34px 24px 30px}.purchase-celebration-mascot{width:132px;height:132px}.purchase-celebration-mascot .mascot{width:112px;height:122px}.purchase-celebration-spark-left{top:58px;left:28px}.purchase-celebration-spark-right{top:106px;right:30px}}@media (prefers-reduced-motion:reduce){.purchase-celebration-backdrop,.purchase-celebration,.purchase-celebration-mascot .mascot,.purchase-celebration-check,.purchase-celebration-halo,.purchase-confetti i{animation:none}}html[data-feedback=off] .purchase-confetti,html[data-feedback=off] .purchase-celebration-spark{display:none}html[data-feedback=off] .purchase-celebration-mascot .mascot,html[data-feedback=off] .purchase-celebration-check,html[data-feedback=off] .purchase-celebration-halo{animation:none}.spinning{animation:1.2s linear infinite spin}.account-data-disclosure{padding:0;overflow:hidden}.account-data-disclosure>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:18px;min-height:88px;padding:22px 26px;list-style:none;display:flex}.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{color:var(--muted);margin-top:4px;font-size:.67rem}.account-data-disclosure>summary>svg{flex:none;transition:transform .16s}.account-data-disclosure[open]>summary>svg{transform:rotate(90deg)}.account-data-disclosure>summary:focus-visible{outline-offset:-3px;outline:3px solid #47725a2e}.account-data-content{border-top:1px solid var(--line);padding:0 26px}.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{color:var(--muted);margin:20px 0 0;font-size:.72rem}.subscription-delete-warning{background:#fff6f3;border:1px solid #e0b7af;border-radius:5px;margin:16px 0;padding:15px}.subscription-delete-warning p{margin:0 0 12px;font-size:.72rem}.subscription-delete-warning ul{gap:8px;margin:0 0 14px;padding:0;list-style:none;display:grid}.subscription-delete-warning li{justify-content:space-between;align-items:center;gap:12px;display:flex}.subscription-delete-acknowledgement{align-items:flex-start;gap:9px;font-size:.72rem;line-height:1.45;display:flex}.subscription-delete-acknowledgement input{margin-top:2px}.auth-panel{max-width:520px}.oauth-entry{margin-bottom:26px}.oauth-provider-buttons{gap:11px;display:grid}.auth-provider-button{background:var(--surface);color:#1f1f1f;width:100%;min-height:48px;font:600 .78rem/1.2 var(--sans);letter-spacing:0;cursor:pointer;border:1px solid #747775;border-radius:5px;justify-content:center;align-items:center;gap:12px;padding:0 18px;transition:border-color .15s,box-shadow .15s,background .15s,transform .15s;display:flex;position:relative}.auth-provider-button svg{width:20px;height:20px;position:absolute;left:17px}.auth-provider-button.apple{color:#fff;background:#000;border-color:#000}.auth-provider-button:hover:not(:disabled){box-shadow:0 2px 7px #0d2d4421}.auth-provider-button.google:hover:not(:disabled){background:#f8f9fa;border-color:#4b4f4d}.auth-provider-button.apple:hover:not(:disabled){background:#252525}.auth-provider-button:focus-visible{outline-offset:3px;outline:3px solid #47725a38}.auth-provider-button:disabled{opacity:.55;cursor:wait}.auth-divider{color:var(--muted);grid-template-columns:1fr auto 1fr;align-items:center;gap:13px;margin-top:24px;font-size:.67rem;display:grid}.auth-divider:before,.auth-divider:after{background:var(--line);content:"";height:1px}.auth-tabs{border-bottom:1px solid var(--line);grid-template-columns:repeat(2,1fr);margin-bottom:28px;display:grid}.auth-tabs button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;padding:12px}.auth-tabs button.active,.auth-tabs [data-state=active]{border-bottom-color:var(--ink);color:var(--ink);font-weight:700}.auth-panel form,.auth-tabpanel form{flex-direction:column;gap:18px;display:flex}.auth-panel label,.auth-panel .password-field{color:var(--ink);flex-direction:column;gap:7px;font-size:.75rem;font-weight:700;display:flex}.auth-panel .password-field>label{display:block}.auth-panel input{border:1px solid var(--line);background:var(--surface);width:100%;min-height:46px;color:var(--ink);font:inherit;border-radius:4px;padding:0 12px}.auth-panel input:focus{border-color:var(--sage-dark);outline:3px solid #47725a1f}.password-input{position:relative}.password-input input{padding-inline-end:48px}.password-visibility{width:36px;min-height:36px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:4px;place-items:center;padding:0;display:grid;position:absolute;top:50%;right:5px;transform:translateY(-50%)}.password-visibility:hover{background:var(--paper-deep);color:var(--ink)}.password-visibility:focus-visible{color:var(--ink);outline:3px solid #47725a2e}.password-visibility svg{width:17px;height:17px}.auth-panel small{color:var(--muted);font-weight:400}.password-panel{max-width:none}.password-panel form{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;display:grid}.password-panel form .button{justify-self:start}.signin-method-list{border:1px solid var(--line);border-radius:5px;overflow:hidden}.signin-method-row{background:#ffffff80;justify-content:space-between;align-items:center;gap:18px;min-height:68px;padding:13px 15px;display:flex}.signin-method-row+.signin-method-row{border-top:1px solid var(--line)}.signin-method-row>div{gap:3px;min-width:0;display:grid}.signin-method-row strong{font-size:.75rem}.signin-method-row>div span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.67rem;overflow:hidden}.signin-method-row .button,.signin-method-row .text-button{flex:none;min-height:38px}.signin-method-status{background:var(--sage-soft);color:var(--sage-dark);border-radius:999px;flex:none;padding:5px 8px;font-size:.62rem;font-weight:700}.provider-delete-actions{gap:11px;max-width:460px;margin-top:16px;display:grid}.provider-delete-actions>p{margin:0 0 2px}.oauth-callback-page{place-items:center;min-height:min(620px,100vh - 150px);display:grid}.oauth-callback-card{text-align:center;justify-items:center;gap:18px;width:min(100%,520px);padding:38px;display:grid}.oauth-callback-card>svg{width:34px;height:34px;color:var(--sage-dark)}.oauth-callback-card>div{gap:8px;display:grid}.oauth-callback-card h1,.oauth-callback-card p{margin:0}.oauth-callback-card p{color:var(--muted)}@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%{opacity:.65;transform:scale(.92)}}@media (width<=1000px){.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}.review-grid{grid-template-columns:1fr 280px}.review-next{flex-direction:column;align-items:stretch;gap:24px;padding:24px}.review-next>div:first-child{align-self:center}.review-next>div:last-child{flex-basis:auto;justify-content:flex-end;width:100%}.review-next .button{width:auto;min-width:196px}}@media (width>=781px) and (height<=850px){.puzzle-header{height:58px}.puzzle-layout{padding:10px 0}.board-workspace{--puzzle-board-size:min(100%, calc(100dvh - 260px))}.board-tools{margin-top:8px}.desktop-shortcut-help{display:none}.desktop-guidance-status .puzzle-guidance-status{grid-template-columns:28px minmax(0,1fr) auto;grid-template-areas:none;align-items:center;padding-block:6px}.desktop-guidance-status .puzzle-guidance-status-icon,.desktop-guidance-status .puzzle-guidance-status-copy,.desktop-guidance-status .puzzle-guidance-status-actions{grid-area:auto}.desktop-guidance-status .puzzle-guidance-status-icon{margin-top:0}.desktop-guidance-status .puzzle-guidance-status-actions{border-top:0;justify-items:end;gap:3px;margin-top:0;padding-top:0;display:grid}.desktop-guidance-status .puzzle-guidance-status-actions.guidance-primary-actions{flex-wrap:nowrap;justify-content:flex-end;align-items:center;display:flex}.number-pad{gap:4px;margin-top:7px}.number-pad button{min-height:44px}}@media (width<=780px){.mobile-only{display:grid!important}.board-tools .puzzle-number-pad .mobile-guidance-keypad-button{border-color:color-mix(in srgb, var(--sage-dark) 42%, var(--line));background:color-mix(in srgb, var(--sage-soft) 45%, var(--surface));min-width:42px;min-height:44px;color:var(--sage-dark);font-family:var(--sans);grid-template-rows:18px auto;grid-template-columns:1fr;place-items:center;gap:1px;padding:4px 2px;font-size:.5rem;font-weight:800;line-height:1;position:relative}.board-tools .puzzle-number-pad .mobile-guidance-keypad-button>svg:first-child{width:17px;height:17px}.board-tools .puzzle-number-pad .mobile-guidance-keypad-button.active{border-color:var(--active-control-border);background:var(--active-control-surface);color:var(--ink);box-shadow:var(--active-control-shadow);transform:translateY(1px)}.board-tools .puzzle-number-pad .mobile-guidance-keypad-button:hover:not(.active){border-color:var(--ink)}.board-tools .puzzle-number-pad .mobile-guidance-keypad-button:focus-visible{outline-offset:1px;outline:3px solid #2d679340}.mobile-guidance-keypad-check{background:#ffffff7a;border:1px solid;border-radius:4px;place-items:center;width:14px;height:14px;display:grid;position:absolute;top:3px;right:3px;box-shadow:inset 0 0 0 1px #fff3}.mobile-guidance-keypad-check svg{stroke-width:2.75px;width:10px;height:10px}.review-next{flex-direction:column;align-items:flex-start}.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))}.coach-quote{font-size:.78rem;bottom:8%;right:5%}.hero-actions{flex-direction:column;align-items:stretch;width:100%}.level-options{grid-template-columns:1fr}.level-options button{min-height:76px;padding:14px 20px}.level-options button.recommended,.level-options button.selected{min-height:104px}.level-options button:not(.selected) small{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.level-options strong{margin-top:18px;font-size:1.08rem}.level-options button>span:nth-child(2){gap:5px}.level-options button i{top:14px;right:17px}.onboarding-recommended{top:14px;left:50px}.app-shell{display:block}.sidebar{display:none}.scrim{z-index:20;opacity:0;pointer-events:none;transition:opacity .15s var(--ease-out-ui);background:#102a434d;border:0;display:block;position:fixed;inset:0}.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));z-index:15;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f7f3eaf2;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;display:grid;position:sticky;top:0}.header-title{min-width:0;font-family:var(--serif);text-overflow:ellipsis;white-space:nowrap;padding-left:8px;font-size:.9rem;overflow:hidden}.page{width:min(100% - 28px,680px);padding:35px 0 calc(60px + var(--safe-area-bottom))}.page-heading{flex-direction:column;align-items:flex-start;margin-bottom:26px}.page-heading h1{font-size:2.8rem}.home-primary{grid-template-columns:1fr}.today-body{grid-template-columns:170px 1fr}.progress-panel{grid-template-columns:1fr 130px;display:grid}.progress-panel>.eyebrow{grid-column:1/-1}.progress-ring{grid-area:2/2;width:120px;height:120px}.progress-stats{grid-area:2/1}.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{border-color:#0000;justify-content:center;width:44px;min-height:44px;padding:0}.puzzle-options-trigger>span{display:none}.puzzle-options-backdrop{z-index:89;pointer-events:none;background:#0c1f2c4d;display:block;position:fixed;inset:0}.puzzle-options-backdrop[data-state=open],.puzzle-options-backdrop[data-open]{pointer-events:auto}.puzzle-options-panel[data-app-dialog=dialog]{z-index:90;inset:auto var(--safe-area-right) 0 var(--safe-area-left);width:auto;max-height:min(78dvh,650px);padding-bottom:var(--safe-area-bottom);transform-origin:bottom;border-width:1px 0 0;border-radius:18px 18px 0 0;transition:opacity .22s,transform .22s,visibility 0s linear .22s;position:fixed;transform:translateY(100%);box-shadow:0 -18px 50px #0d2d4433}.puzzle-options-panel[data-state=open],.puzzle-options-panel[data-open]{transition:opacity .28s var(--ease-drawer), transform .28s var(--ease-drawer), visibility 0s linear 0s;transform:translateY(0)}.puzzle-bug-report-overlay{place-items:end center;padding:0}.puzzle-bug-report-dialog{inset:auto var(--safe-area-right) var(--keyboard-inset) var(--safe-area-left);width:auto;bottom:var(--keyboard-inset);max-height:min(760px, calc(var(--visual-viewport-height) - 16px));padding-bottom:max(var(--safe-area-bottom), 12px);border-width:1px 0 0;border-radius:18px 18px 0 0;transform:none}.puzzle-bug-report-heading,.puzzle-bug-report-body{padding-inline:16px}.mistake-count{display:none}.puzzle-layout{width:min(100% - 20px,620px);padding:8px 0 calc(10px + var(--safe-area-bottom));flex-direction:column;display:flex}.board-workspace{--puzzle-board-size:100%;flex-direction:column;display:flex}.desktop-guidance-tool-wrap,.desktop-guidance-status{display:none}.board-tools{order:5}.solution-mode-active{--solution-panel-height:min(42dvh, 360px)}.solution-mode-active .puzzle-layout{padding-bottom:calc(var(--solution-panel-height) + 18px + var(--safe-area-bottom))}.solution-mode-active .board-workspace{--puzzle-board-size:min(100%, calc(100dvh - var(--solution-panel-height) - 94px))}.solution-mode-active .board-tools{display:none}.auto-solve-panel{z-index:45;width:min(100%,620px);height:var(--solution-panel-height);border-width:1px 1px 0;border-radius:18px 18px 0 0;min-height:0;margin:0 auto;position:fixed;inset:auto 0 0;box-shadow:0 -18px 48px #102a432e}.auto-solve-panel-header{grid-template-columns:38px minmax(0,1fr) 34px;gap:9px;min-height:82px;padding:11px 12px 9px}.auto-solve-panel-icon{width:38px;height:38px}.auto-solve-panel-header p{max-width:42ch}.auto-solve-panel-body{padding:12px 14px calc(14px + var(--safe-area-bottom))}.auto-solve-panel .auto-solve-board-cue{margin-bottom:8px}.guided-solve-panel .auto-solve-panel-header{grid-template-columns:32px minmax(0,1fr) 34px;align-items:center;gap:8px;min-height:52px;padding:6px 12px 5px}.guided-solve-panel .auto-solve-panel-icon{width:32px;height:32px}.guided-solve-panel .auto-solve-panel-icon svg{width:17px}.guided-solve-panel .auto-solve-panel-header h2{font-family:var(--sans);margin:-3px 0 0;font-size:.82rem;font-weight:750;line-height:1}.guided-solve-panel .auto-solve-panel-header h2.auto-solve-panel-heading-accent{margin:0}.guided-solve-panel .auto-solve-panel-header>div{align-content:center;gap:0;display:grid}.guided-solve-panel .auto-solve-panel-header .eyebrow{margin-bottom:0;line-height:1}.guided-solve-panel .auto-solve-panel-header p{max-width:42ch;display:none}.guided-solve-panel .auto-solve-panel-body{padding:6px 14px calc(4px + var(--safe-area-bottom))}.guided-solve-panel .auto-solve-proof h3{margin:1px 0 6px;font-size:.9rem;line-height:1.25}.guided-solve-panel .auto-solve-board-cue{margin-bottom:5px;padding:5px 8px;font-size:.62rem;line-height:1.35}.guided-solve-panel .auto-solve-proof>.button-primary{justify-content:space-between;width:100%;min-height:40px;padding:9px 12px;font-size:.76rem}.guided-solve-panel .auto-solve-proof.is-oriented .auto-solve-proof-count{margin-bottom:5px;font-size:.64rem}.guided-solve-panel .auto-solve-proof.is-oriented .auto-solve-proof-instruction{display:block}.guided-solve-panel .auto-solve-proof-list{gap:4px}.guided-solve-panel .auto-solve-proof-list button{gap:7px;padding:7px 8px}.guided-solve-panel .auto-solve-proof-list strong{font-size:.67rem}.guided-solve-panel .auto-solve-proof-list small{-webkit-line-clamp:1;-webkit-box-orient:vertical;font-size:.6rem;line-height:1.3;display:-webkit-box;overflow:hidden}.guided-solve-panel .auto-solve-advanced-invite{margin-top:5px}.auto-solve-panel .auto-solve-walkthrough{margin-top:8px;padding:0}.mobile-coach-launcher{z-index:18;right:max(10px, var(--safe-area-right));bottom:0;left:max(10px, var(--safe-area-left));width:auto;padding-bottom:var(--safe-area-bottom);color:var(--ink);order:3;margin-top:0;display:block;position:fixed}.mobile-puzzle-goal{min-width:0;color:var(--muted);order:1;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:baseline;gap:7px;margin:0 0 4px;padding:4px 8px;font-size:clamp(.6rem,2.7vw,.72rem);line-height:1.2;display:grid}.mobile-puzzle-goal>span{color:var(--sage-dark);font-weight:800}.mobile-puzzle-goal strong{min-width:0;color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;font-weight:650;overflow:hidden}.mobile-puzzle-goal small{color:var(--ink-soft);font-size:inherit;font-variant-numeric:tabular-nums;white-space:nowrap;align-items:center;gap:4px;font-weight:750;display:inline-flex}.mobile-puzzle-goal.complete small{color:var(--sage-dark)}.mobile-puzzle-goal-guide{border:1px solid color-mix(in srgb, var(--sage-dark) 28%, var(--line));background:var(--sage-soft);width:28px;height:28px;color:var(--sage-dark);border-radius:50%;align-self:center;place-items:center;padding:0;display:grid}.mobile-puzzle-goal-guide svg{width:14px;height:14px}.mobile-coach-card{background:#fffdf8eb;border:1px solid #cbc8bc;border-bottom:0;border-radius:16px 16px 0 0;width:min(100%,620px);min-height:48px;margin-inline:auto;transition:border-color .16s,background-color .16s;position:relative;box-shadow:0 -10px 28px #102a431f}.mobile-coach-launcher.has-unread .mobile-coach-card{background:#f8faf4;border-color:#9eb49f}.mobile-coach-open{border-radius:inherit;width:100%;min-height:46px;color:inherit;text-align:left;cursor:pointer;transition:transform .16s var(--ease-out-ui);background:0 0;border:0;grid-template-columns:40px minmax(0,1fr) 18px;align-items:center;gap:8px;padding:9px;display:grid}.mobile-coach-open:active{transform:scale(.988)}.mobile-coach-launcher.has-context-action .mobile-coach-open{grid-template-columns:40px minmax(0,1fr);align-items:start;min-height:72px;padding:12px 110px 12px 12px}.mobile-coach-launcher.has-secondary-context-action .mobile-coach-open{min-height:92px;padding-right:110px}.mobile-coach-launcher.has-context-action .mobile-coach-chevron{display:none}.mobile-coach-context-actions{justify-content:center;align-items:center;width:92px;min-height:34px;padding:0;display:flex;position:absolute;bottom:10px;right:10px}.mobile-coach-context-action{border:1px solid var(--ink);background:var(--ink-fill);color:#fff;text-align:center;white-space:nowrap;cursor:pointer;border-radius:999px;justify-content:center;align-items:center;gap:3px;width:auto;min-width:64px;max-width:92px;min-height:34px;margin:0;padding:7px 9px;font-size:.62rem;font-weight:750;line-height:1.2;display:inline-flex;overflow:hidden;box-shadow:0 4px 12px #102a4329}.mobile-coach-context-action span{text-overflow:ellipsis;min-width:0;overflow:hidden}.mobile-coach-context-action svg{flex:none;width:13px;height:13px}.mobile-coach-context-action:active{transform:translateY(1px)}.mobile-coach-stop-action{z-index:2;border:1px solid var(--line);background:var(--surface);width:28px;height:28px;color:var(--sage-dark);cursor:pointer;border-radius:999px;place-items:center;padding:0;font-size:.58rem;font-weight:750;line-height:1.2;display:grid;position:absolute;top:8px;right:8px}.mobile-coach-stop-action svg{width:13px;height:13px}.mobile-coach-stop-action:hover,.mobile-coach-stop-action:focus-visible{border-color:var(--ink);color:var(--ink)}.mobile-coach-stop-action:focus-visible{outline-offset:2px;outline:3px solid #2d679340}.mobile-coach-stop-action:active{transform:translateY(1px)}.mobile-coach-identity{color:var(--sage-dark);letter-spacing:.08em;text-align:center;text-transform:uppercase;flex-direction:column;justify-content:center;align-self:stretch;align-items:center;gap:0;font-size:.54rem;font-weight:800;line-height:1.1;display:flex}.mobile-coach-identity>span:last-child{display:none}.mobile-coach-avatar{width:34px;height:34px;position:relative}.mobile-coach-avatar-frame{background:var(--sage);border:1px solid #bfd0bb;border-radius:50%;width:100%;height:100%;display:block;overflow:hidden}.mobile-coach-avatar .mascot{width:43px;max-width:none;height:47px;transform:translate(-4px,1px)}.mobile-coach-unread-dot{z-index:2;border:2px solid var(--paper);background:var(--saffron);border-radius:50%;width:10px;height:10px;position:absolute;top:1px;right:1px;box-shadow:0 1px 4px #75560c38}.mobile-coach-unread-ring{z-index:1;pointer-events:none;animation:mobile-coach-unread-pulse .72s var(--ease-out-ui) 2;border:2px solid #709376;border-radius:50%;position:absolute;inset:-1px}.mobile-coach-copy{min-width:0}.mobile-coach-active-mode{color:var(--sage-dark);letter-spacing:.06em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;margin-bottom:1px;font-size:.48rem;font-weight:800;line-height:1.1;display:block;overflow:hidden}.mobile-coach-launcher.has-active-mode .mobile-coach-card{background:#f4f8ef;border-color:#8da88f}.mobile-coach-launcher.has-active-mode .mobile-coach-card.has-guidance-status{box-shadow:none;background:0 0;border:0}.mobile-coach-guidance-status{width:100%;max-width:100%;margin-inline:auto;position:relative}.mobile-coach-guidance-status .puzzle-guidance-status{border-color:color-mix(in srgb, var(--sage-dark) 28%, var(--line));background:color-mix(in srgb, var(--sage-soft) 58%, var(--surface));border-bottom:0;border-radius:16px 16px 0 0;grid-template-columns:38px minmax(0,1fr);gap:3px 6px;margin:0;padding:6px 8px;position:relative;box-shadow:0 -10px 28px #102a431f}.mobile-coach-guidance-status .puzzle-guidance-status.is-learning-choice{padding-top:12px}.mobile-coach-guidance-status .puzzle-guidance-state-control{z-index:3;border:1px solid var(--line);background:var(--surface);width:28px;height:28px;color:var(--ink-soft);box-shadow:var(--shadow-border);cursor:pointer;border-radius:50%;place-items:center;padding:0;display:grid;position:absolute;top:7px;right:7px}.mobile-coach-guidance-status .puzzle-guidance-state-control svg{width:14px;height:14px}.mobile-coach-guidance-status .puzzle-guidance-status:has(.puzzle-guidance-state-control) .puzzle-guidance-status-copy{padding-right:34px}.mobile-coach-guidance-status .puzzle-guidance-status:has(>.guidance-objective-control) .puzzle-guidance-status-copy{padding-right:112px}.mobile-coach-guidance-status .guidance-objective-control{max-width:132px;font-size:.48rem;top:6px;right:7px}.mobile-coach-guidance-status .puzzle-guidance-status:has(.guidance-assist-back)>.guidance-objective-control{max-width:105px;right:40px}.mobile-coach-guidance-status .puzzle-guidance-status:has(.puzzle-guidance-state-control)>.guidance-objective-control{max-width:105px;right:40px}.mobile-coach-guidance-status .puzzle-guidance-status-icon{display:none}.mobile-coach-guidance-status .puzzle-guidance-status-copy,.mobile-coach-guidance-status .puzzle-guidance-status-actions,.mobile-coach-guidance-status .guidance-discovery-actions,.mobile-coach-guidance-status .guidance-alternatives{grid-column:2}.mobile-coach-guidance-status .puzzle-guidance-status-copy{grid-row:1}.mobile-coach-guidance-status .puzzle-guidance-status-copy small{display:none}.mobile-coach-guidance-status .puzzle-guidance-status-copy strong{font-size:.61rem;line-height:1.15}.mobile-coach-guidance-status .puzzle-guidance-status-copy>span{font-size:.51rem;line-height:1.2}.mobile-coach-guidance-status .puzzle-guidance-status-actions{justify-items:initial;flex-wrap:wrap;grid-row:2;gap:4px;display:flex}.mobile-coach-guidance-status .guidance-primary-actions{justify-content:flex-start}.mobile-coach-guidance-status .guidance-assist-back{width:28px;height:28px}.mobile-coach-guidance-status .guidance-primary-action{min-height:28px;padding:5px 9px;font-size:.55rem}.mobile-coach-guidance-status .guidance-secondary-action{min-height:28px;padding:5px 8px;font-size:.54rem}.guidance-action-label-full{display:none}.guidance-action-label-compact{display:inline}.mobile-coach-guidance-status .puzzle-guidance-status-actions .text-link{border:1px solid var(--line);background:var(--surface);min-height:26px;color:var(--ink);box-shadow:var(--shadow-border);border-radius:999px;justify-content:center;align-items:center;padding:4px 7px;font-size:.55rem;font-weight:750;line-height:1;text-decoration:none;display:inline-flex}.mobile-coach-guidance-status .guidance-discovery-actions{grid-row:3;gap:3px 9px;padding-top:4px}.mobile-coach-guidance-status .guidance-alternatives{grid-row:4}.mobile-coach-guidance-open{z-index:2;cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;width:44px;height:44px;padding:3px;display:grid;position:absolute;top:8px;left:7px}.mobile-coach-guidance-open:focus-visible{outline-offset:1px;outline:3px solid #2d67934d}.mobile-coach-guidance-open .mobile-coach-avatar{width:38px;height:38px}.mobile-coach-guidance-open .mobile-coach-avatar .mascot{width:48px;height:52px}.mobile-coach-copy>strong{font-family:var(--serif);overflow-wrap:break-word;text-overflow:clip;white-space:normal;font-size:.72rem;font-weight:400;line-height:1.2;display:block;overflow:visible}.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{z-index:50;opacity:0;visibility:hidden;pointer-events:none;background:#102a4357;border:0;transition:opacity .18s,visibility 0s linear .24s;display:block;position:fixed;inset:0}.mobile-coach-scrim[data-open],.mobile-coach-scrim[data-state=open]{opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s}.mobile-coach-sheet{right:var(--safe-area-right);bottom:var(--keyboard-inset);left:var(--safe-area-left);z-index:51;width:min(calc(100% - var(--safe-area-left) - var(--safe-area-right)), 620px);height:min(88dvh, 760px, calc(var(--visual-viewport-height) - 16px));max-height:calc(var(--visual-viewport-height) - var(--safe-area-top) - 16px);background:var(--paper);opacity:0;visibility:hidden;pointer-events:none;transition:transform .3s var(--ease-drawer), visibility 0s linear .3s;border:1px solid #c9c5b9;border-bottom:0;border-radius:18px 18px 0 0;flex-direction:column;margin:0 auto;display:flex;position:fixed;overflow:hidden;transform:translateY(calc(100% + 18px));box-shadow:0 -18px 48px #102a432e}.mobile-coach-sheet[data-open]{opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s;transform:translateY(0)}.mobile-coach-sheet-header{-moz-column-gap:8px;border-bottom:1px solid var(--line);background:#fffdf8fa;grid-template-rows:1fr;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:0 8px;min-height:72px;padding:9px 12px 8px;display:grid;position:relative}.mobile-coach-sheet-header:before{content:"";background:#d4d0c6;border-radius:999px;width:34px;height:3px;position:absolute;top:7px;left:50%;transform:translate(-50%)}.mobile-coach-sheet-avatar{background:var(--sage);border:1px solid #bfd0bb;border-radius:50%;grid-area:1/1;width:36px;height:36px;overflow:hidden}.mobile-coach-sheet-avatar .mascot{width:46px;max-width:none;height:52px;transform:translate(-5px,1px)}.mobile-coach-sheet-title{flex-direction:column;grid-area:1/2;min-width:0;display:flex}.mobile-coach-sheet-title .eyebrow{font-size:.42rem}.mobile-coach-sheet-title>strong{font-family:var(--serif);font-size:.82rem;line-height:1}.mobile-coach-sheet-header>button{border:1px solid var(--line-strong);background:var(--surface);min-height:36px;box-shadow:var(--shadow-border);color:var(--ink);cursor:pointer;border-radius:999px;grid-area:1/3;align-items:center;gap:3px;padding:0 10px;font-size:.62rem;font-weight:750;display:inline-flex}.mobile-coach-sheet-header>button:active{background:var(--sage-soft)}.mobile-coach-sheet-body{flex:1;min-height:0;display:flex}.puzzle-goal{width:100%}.coach-status{display:none}.notebook-callout{grid-template-columns:auto 1fr}.board-wrap{order:2;width:100%}.mobile-coach-sheet-body>.coach-panel.coach-chat{width:100%;height:100%;min-height:0;box-shadow:none;border:0;border-radius:0;position:static}.mobile-coach-sheet .coach-chat-header{display:none}.mobile-coach-sheet-body>.guided-practice-complete{width:100%;height:100%;min-height:0;box-shadow:none;border:0;border-radius:0;position:static}.mobile-coach-sheet .coach-thread-shell{flex:1 1 0;min-height:0;max-height:none;overflow:hidden}.mobile-coach-sheet .coach-chat-controls{z-index:2;padding-bottom:max(10px, env(safe-area-inset-bottom));position:relative}.mobile-coach-sheet .coach-turn-actions{display:none}.mobile-coach-sheet .coach-mobile-turn-actions{overscroll-behavior:contain;border:1px solid var(--line-strong);background:var(--paper);border-radius:14px;gap:6px;max-height:min(44dvh,320px);margin-bottom:8px;padding:8px;display:grid;overflow-y:auto;box-shadow:0 8px 24px #102a4329}.mobile-coach-sheet .coach-panel.has-mobile-response-actions .coach-generic-controls{display:none}.mobile-coach-sheet .coach-mobile-turn-actions .button{text-align:left;white-space:normal;overflow-wrap:anywhere;border-radius:10px;justify-content:flex-start;width:100%;min-height:44px;padding:9px 11px;font-size:.7rem;line-height:1.3}.mobile-coach-sheet .coach-mobile-turn-actions .button-ghost{border-color:var(--line-strong);background:var(--surface)}.lesson-list{border-top-color:var(--line)}.lesson-row{grid-template-columns:52px minmax(0,1fr) 24px;gap:10px}.lesson-row-leading{gap:0;width:46px}.lesson-row-icon{width:44px;height:44px}.lesson-index,.lesson-row-meta>span{display:none}.advanced-preview{flex-direction:column;align-items:flex-start}.lesson-layout{grid-template-columns:1fr;gap:18px}.lesson-steps{grid-template-columns:repeat(4,1fr);display:grid;position:static}.lesson-steps>.eyebrow,.lesson-outcome{display:none}.lesson-steps>button{flex-direction:column;justify-content:center;gap:5px}.lesson-content{min-height:590px;padding:26px}.lesson-content>h1{font-size:2.6rem}.worked-example,.try-stage{grid-template-columns:1fr}.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{flex-direction:column;align-items:flex-start;padding:20px}.puzzle-share-control{justify-items:stretch;width:100%}.puzzle-share-time-option{width:100%;min-width:0}.puzzle-share-button{justify-content:center;width:100%}.puzzle-share-control .lesson-share-status{text-align:center;max-width:none}.review-grid{grid-template-columns:1fr}.history-gate{flex-direction:column;align-items:stretch}.history-gate>svg{align-self:flex-start}.history-gate .button{width:100%}.pricing-grid{grid-template-columns:1fr}.checkout-trust{flex-direction:column;align-items:center;gap:14px}.upgrade-free-path,.checkout-confirmation{flex-direction:column;align-items:flex-start}.upgrade-free-path .text-link,.checkout-confirmation>.button{justify-content:center;width:100%}}@media (width>=700px) and (width<=780px) and (orientation:portrait){.board-tools .desktop-guidance-tool-wrap{display:flex}.board-tools .puzzle-number-pad .mobile-guidance-keypad-button{display:none!important}}@media (width<=780px) and (height<=700px){.puzzle-layout{padding-top:4px;padding-bottom:var(--safe-area-bottom)}.board-workspace{--puzzle-board-size:min(100%, calc(100dvh - 330px - var(--safe-area-top) - var(--safe-area-bottom)))}.board-wrap{width:var(--puzzle-board-size)}.mobile-puzzle-goal{margin-bottom:2px}.mobile-coach-launcher,.board-tools{margin-top:4px}}@media (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{font-size:16px}.account-summary{grid-template-columns:1fr;gap:17px}.account-summary-state{border-top:1px solid color-mix(in srgb, var(--sage-dark) 18%, transparent);align-items:flex-start;padding-top:14px}.account-setting-trigger{grid-template-columns:34px minmax(0,1fr) 18px;gap:13px;min-height:86px}.account-setting-value{text-align:left;grid-column:2;justify-self:start;max-width:none}.account-setting-trigger>svg{grid-area:1/3/span 2}.account-setting-content{padding-left:0}.account-plan-offer,.account-export-panel{grid-template-columns:1fr}.account-plan-offer{gap:16px}.account-plan-offer .button,.account-export-panel .button{justify-content:center;width:100%}.account-export-icon{display:none}.account-session-actions{flex-direction:column;align-items:flex-start;gap:8px}.account-dialog-backdrop{padding:14px 14px calc(14px + var(--safe-area-bottom));align-items:end}.account-delete-dialog{border-radius:14px 14px 8px 8px;padding:24px 20px}.account-dialog-actions{flex-direction:column-reverse}.account-dialog-actions .button{justify-content:center;width:100%}.signin-method-row{align-items:center}.signin-method-row .button,.signin-method-row .text-button{justify-content:center;width:auto}.oauth-callback-card{padding:28px 20px}.public-header .text-link{font-size:.72rem}.password-panel form{grid-template-columns:1fr}.account-data-disclosure>summary,.account-data-content{padding-inline:20px}.checkout-confirmation{padding:20px}.checkout-confirmation-actions{flex-direction:column;align-items:flex-start;width:100%}.checkout-confirmation-actions .button{justify-content:center;width:100%}.hero-actions{flex-direction:column;width:100%}.hero-actions .button{width:100%}.onboarding-main{padding-top:18px}.onboarding-intro{margin-bottom:22px}.onboarding-intro h1{margin-bottom:10px;font-size:2.2rem}.onboarding-intro p{font-size:.92rem;line-height:1.55}.onboarding-coach{align-items:flex-start}.today-body{grid-template-columns:1fr}.today-body .mini-board{width:185px}.today-panel,.resume-panel,.learning-path{padding:20px}.continue-lesson{grid-template-columns:75px minmax(0,1fr) auto;gap:15px;padding:18px}.puzzle-header{height:calc(54px + var(--safe-area-top))}.puzzle-header>.text-link{align-items:center;min-height:44px;font-size:.7rem;display:inline-flex}.puzzle-meta{gap:8px}.coach-chat-header{min-height:74px;padding:10px 12px}.segmented-control{width:100%}.segmented-control button{padding-inline:6px}.cell-value{font-size:1.45rem}.sudoku-cell.hinted:after{inset:3px}.number-pad{grid-template-columns:repeat(10,1fr);gap:3px}.number-pad button{aspect-ratio:auto;grid-column:span 2;min-height:48px;padding:0;font-size:1rem}.number-pad button:nth-child(6){grid-column:2/span 2}.board-tools{flex-direction:column;margin-top:6px;display:flex}.coach-support-action,.desktop-shortcut-help{display:none}.board-tools .puzzle-number-pad{order:-1;grid-template-columns:repeat(5,minmax(0,1fr));margin-top:0}.board-tools .puzzle-number-pad button,.board-tools .puzzle-number-pad button:nth-child(6){grid-column:auto}.puzzle-guidance-status{order:1;grid-template-columns:25px minmax(0,1fr);align-items:start;gap:7px;margin-top:4px;padding:6px 8px}.puzzle-guidance-status-icon{width:25px;height:25px}.puzzle-guidance-status-copy>span{display:block}.puzzle-guidance-status-copy strong{white-space:normal;font-size:.61rem}.puzzle-guidance-status-actions{justify-content:flex-start;justify-items:initial;flex-wrap:wrap;grid-area:2/2/auto/-1;gap:8px;display:flex}.guidance-picker-panel{width:min(100%,620px);max-height:min(82dvh,720px);padding:14px max(14px, var(--safe-area-right)) calc(14px + var(--safe-area-bottom)) max(14px, var(--safe-area-left));border-radius:18px 18px 0 0;margin:0 auto;inset:auto 0 0;transform:none}.guidance-picker-list{grid-template-columns:1fr}.input-mode-tools .mobile-input-mode .notes-symbol{font-size:.92rem;line-height:1}.edit-tools{gap:2px;margin-top:4px}.input-mode-tools{border:1px solid var(--line);background:var(--surface);border-radius:6px;flex:2;gap:0;min-width:0;display:flex;overflow:hidden}.input-mode-tools .tool-button-wrap,.input-mode-tools .mobile-input-mode{flex:1;min-width:0}.input-mode-tools .tool-button-wrap{border-radius:0}.input-mode-tools .mobile-input-mode{border:0;border-left:1px solid var(--line);color:var(--ink);font-family:var(--sans);background:0 0;border-radius:0;gap:2px;display:flex}.input-mode-tools .input-mode-button{white-space:normal;flex-direction:column;gap:2px;width:100%;min-width:0;padding:4px 3px;font-size:.58rem;font-weight:750;line-height:1.1;position:relative}.input-mode-tools .input-mode-button.active{background:var(--active-control-surface);box-shadow:var(--active-control-shadow);color:var(--ink);z-index:1}.input-mode-tools .input-mode-button.active,.input-mode-tools .input-mode-button[aria-pressed=true]{transform:none}.input-mode-tools .tool-button-wrap:first-child .input-mode-button.active{border-radius:4px 0 0 4px}.input-mode-tools .desktop-note-tool-wrap .input-mode-button.active,.input-mode-tools>.mobile-input-mode.active{border-radius:0 4px 4px 0}.input-mode-tools .input-mode-button:hover:not(.active):not(:disabled){color:var(--ink);background:0 0}.input-mode-tools .input-mode-button-label{text-align:center;text-wrap:balance;width:100%}.input-mode-tools .input-mode-button .input-mode-label-active,.input-mode-tools .input-mode-button.active .input-mode-label-active{display:none}.input-mode-tools .input-mode-button.active .input-mode-label-default{display:inline}.input-mode-tools .input-mode-active-check{background:var(--saffron);width:14px;height:14px;color:var(--accent-ink);box-shadow:0 0 0 1px color-mix(in srgb, var(--surface) 72%, transparent);border-radius:999px;padding:2px;position:absolute;top:4px;right:4px}.edit-tools .desktop-note-tool-wrap{display:none}.edit-tools button{flex-direction:column;flex:1;gap:2px;width:100%;min-width:0;min-height:44px;padding:4px 2px;font-size:.58rem;line-height:1.1}.puzzle-dialog-backdrop{height:100dvh;padding:14px 14px calc(14px + var(--safe-area-bottom));align-items:end}.puzzle-reset-dialog,.auto-solve-dialog{max-height:calc(100dvh - 28px - var(--safe-area-bottom));border-radius:14px 14px 0 0;padding:22px 18px;overflow-y:auto}.auto-solve-next{grid-template-columns:1fr;gap:16px}.auto-solve-board{width:min(100%,250px);margin-inline:auto}.edit-tools .tool-button-wrap{flex:1;min-width:0}.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{flex-direction:column;width:100%}.review-next .button{white-space:normal;width:100%;min-width:0}.price-plan{padding:20px}.price-owl{width:78px;height:94px;top:18px;right:18px}.price-plan>p{margin-bottom:16px}.price-plan ul{gap:6px;margin-bottom:12px}.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 (width<=480px){.public-header .brand{flex:none}.public-header .brand>span{display:none}}@keyframes reduced-fade-in{0%{opacity:0}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-property:color,background-color,border-color,opacity!important;transition-duration:.12s!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.mini-board-revealing .mini-board-value,.public-sudoku-cell.coach-highlighted:before,.public-sudoku-cell.coach-target:before,.public-sudoku-cell.coach-revealed .public-sudoku-value,.level-options button.selected>span:nth-child(2),.onboarding-action-label,.process-feedback-content,.practice-next-action,.pause-overlay{animation-name:reduced-fade-in!important;animation-duration:.12s!important;animation-delay:0s!important}.daily-picker-board-outgoing{animation-duration:.12s!important;animation-delay:0s!important}.sudoku-cell{--sleep-delay:0s!important}.button:active:not(:disabled),.icon-button:active:not(:disabled){transform:none}}.public-header-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:1rem;min-width:0;display:flex}.public-header>*,.public-header-actions .text-link{min-width:0}.public-header-actions .text-link{overflow-wrap:anywhere;text-align:right;max-width:100%}.language-picker{color:var(--ink,#17324d);justify-content:space-between;align-items:center;gap:.75rem;font-size:.76rem;font-weight:650;display:flex}.sidebar-preferences{gap:12px;margin-top:6px;padding:0 4px;display:grid}.sidebar-preferences.is-collapsed{place-items:center;gap:2px;padding:0}.sidebar-preferences>.language-picker,.sidebar-preferences>.theme-picker{flex-direction:column;align-items:stretch;gap:5px;min-height:34px}.sidebar-preferences>.language-picker .language-toggle,.sidebar-preferences>.theme-picker .theme-toggle{width:100%}.sidebar-preferences>.language-picker .language-toggle button,.sidebar-preferences>.theme-picker .theme-toggle button{min-height:28px}.sidebar>.language-picker{min-height:34px;margin-top:6px;padding:0 4px}.sidebar>.language-picker .language-toggle button{min-height:28px}.language-picker-label{color:var(--muted);letter-spacing:.01em;align-items:center;gap:.45rem;display:inline-flex}.language-picker.compact .language-picker-label{color:var(--ink-soft)}.theme-picker{color:var(--ink);justify-content:space-between;align-items:center;gap:.75rem;font-size:.76rem;font-weight:650;display:flex}.theme-picker-label{color:var(--muted);letter-spacing:.01em;align-items:center;gap:.45rem;display:inline-flex}.language-toggle,.theme-toggle{isolation:isolate;background:#fffdf8b8;border:1px solid #102a4324;border-radius:999px;grid-template-columns:repeat(2,1fr);width:94px;padding:3px;display:grid;position:relative;box-shadow:inset 0 1px 2px #102a430a,0 1px #fffc}.language-toggle:before,.theme-toggle:before{content:"";z-index:-1;border-radius:inherit;background:var(--ink-fill);width:calc(50% - 3px);transition:transform .18s cubic-bezier(.22,1,.36,1),background-color .18s;position:absolute;top:3px;bottom:3px;left:3px;box-shadow:0 2px 7px #102a432e}.language-toggle[data-locale=fr]:before,.theme-toggle[data-theme=dark]:before{transform:translate(100%)}.language-toggle button{min-width:0;min-height:30px;color:var(--muted);letter-spacing:.08em;cursor:pointer;transition:color .15s ease, transform .15s var(--ease-out-ui);background:0 0;border:0;border-radius:999px;padding:0 9px;font-size:.7rem;font-weight:750}.theme-toggle button{min-width:0;min-height:30px;color:var(--muted);cursor:pointer;transition:color .15s ease, transform .15s var(--ease-out-ui);background:0 0;border:0;border-radius:999px;place-items:center;padding:0;display:grid}.language-toggle button:active,.theme-toggle button:active{transform:scale(.97)}.language-toggle button.active,.theme-toggle button.active{color:var(--on-ink)}.language-toggle button:focus-visible,.theme-toggle button:focus-visible{outline:2px solid var(--saffron);outline-offset:1px}.language-picker.compact{gap:.5rem}.mobile-header>.language-picker.compact{justify-self:end;min-width:0}.language-picker.compact .language-toggle{width:86px}.language-picker.compact .language-toggle button{min-height:28px;padding-inline:7px}.search-guide-page{background:radial-gradient(circle at 84% 12%, #d8a5441f, transparent 25rem), var(--paper);min-height:100vh}.locale-smoke-page{background:radial-gradient(circle at 82% 18%, #d8a54429, transparent 29rem), var(--paper);min-height:100vh;overflow:hidden}.locale-smoke-header{z-index:2;max-width:1240px;margin:0 auto;position:relative}.locale-smoke-hero{grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr);align-items:center;gap:clamp(42px,7vw,108px);max-width:1240px;min-height:calc(100svh - 82px);margin:0 auto;padding:clamp(42px,6vw,86px) clamp(22px,5vw,64px) clamp(70px,8vw,112px);display:grid}.locale-smoke-hero-copy{z-index:1;animation:guide-rise .52s var(--ease-out-ui) both;position:relative}.locale-smoke-hero h1{max-width:11ch;color:var(--ink);font-family:var(--display);letter-spacing:-.05em;text-wrap:balance;margin:14px 0 24px;font-size:clamp(2.75rem,5.5vw,5.25rem);font-weight:670;line-height:.96}.locale-smoke-hero-copy>p{max-width:52ch;color:var(--ink-soft);margin:0 0 28px;font-size:clamp(1rem,1.5vw,1.16rem);line-height:1.68}.locale-smoke-note{color:var(--muted);margin-top:12px;font-size:.8rem;display:block}.locale-smoke-board-wrap{width:min(100%,560px);animation:locale-board-arrive .65s 80ms var(--ease-out-ui) both;justify-self:center;position:relative}.locale-smoke-board{aspect-ratio:1;border:3px solid var(--ink);background:var(--paper-bright,#fffdf8);border-radius:5px;grid-template-columns:repeat(9,1fr);display:grid;overflow:hidden;transform:rotate(1.2deg);box-shadow:0 34px 80px #102a4324}.locale-smoke-board span{border-right:1px solid color-mix(in srgb, var(--ink) 22%, transparent);border-bottom:1px solid color-mix(in srgb, var(--ink) 22%, transparent);color:var(--ink);font-family:var(--display);place-items:center;font-size:clamp(1rem,2.2vw,1.8rem);display:grid}.locale-smoke-board span:nth-child(3n){border-right-width:2px;border-right-color:var(--ink)}.locale-smoke-board span:nth-child(n+19):nth-child(-n+27),.locale-smoke-board span:nth-child(n+46):nth-child(-n+54){border-bottom-width:2px;border-bottom-color:var(--ink)}.locale-smoke-board .locale-smoke-focus{background:color-mix(in srgb, var(--saffron) 30%, var(--paper));box-shadow:inset 0 0 0 3px var(--saffron-ink);position:relative}.locale-smoke-clue-line{background:var(--saffron-ink);transform-origin:100%;width:34%;height:2px;position:absolute;bottom:11%;right:-8%;transform:rotate(-22deg)}.locale-smoke-mascot{filter:drop-shadow(0 16px 20px #102a432e);width:clamp(92px,12vw,142px);position:absolute;bottom:-9%;right:-12%}.locale-smoke-proof{border-top:1px solid #102a4324;grid-template-columns:minmax(0,.9fr) minmax(360px,1.1fr);gap:clamp(44px,8vw,120px);max-width:1120px;margin:0 auto;padding:clamp(82px,11vw,154px) clamp(22px,5vw,64px);display:grid}.locale-smoke-proof h2,.locale-smoke-disclosure h2,.locale-smoke-final h2{color:var(--ink);font-family:var(--display);letter-spacing:-.035em;text-wrap:balance;margin:12px 0 0;font-size:clamp(2rem,4vw,3.65rem);font-weight:650;line-height:1.06}.locale-smoke-proof ol{margin:0;padding:0;list-style:none}.locale-smoke-proof li{border-top:1px solid #102a4324;gap:14px;padding:22px 0;display:flex}.locale-smoke-proof li svg{color:var(--sage-dark);flex:none;margin-top:2px}.locale-smoke-proof li div{gap:6px;display:grid}.locale-smoke-proof li strong{color:var(--ink)}.locale-smoke-proof li span{color:var(--muted);line-height:1.6}.locale-smoke-disclosure{border-block:1px solid #102a4329;grid-template-columns:auto minmax(0,1fr);gap:18px;max-width:820px;margin:0 auto;padding:30px clamp(22px,4vw,42px);display:grid}.locale-smoke-disclosure>svg{color:var(--saffron-ink);margin-top:5px}.locale-smoke-disclosure h2{margin:0;font-size:clamp(1.35rem,2.5vw,1.85rem)}.locale-smoke-disclosure p{color:var(--muted);margin:10px 0 0;line-height:1.65}.locale-smoke-final{text-align:center;max-width:780px;margin:0 auto;padding:clamp(92px,13vw,174px) 22px}.locale-smoke-final h2{margin-inline:auto}.locale-smoke-final p{max-width:48ch;color:var(--muted);margin:20px auto 28px;line-height:1.65}.locale-smoke-final-mascot{filter:drop-shadow(0 12px 18px #102a4324);width:92px;margin-bottom:18px}@keyframes locale-board-arrive{0%{opacity:0;transform:translateY(18px)rotate(-1deg)}to{opacity:1;transform:translateY(0)rotate(0)}}@media (width<=860px){.locale-smoke-hero{grid-template-columns:1fr;min-height:auto;padding-top:38px}.locale-smoke-hero h1{max-width:13ch}.locale-smoke-board-wrap{width:min(88vw,500px);margin-top:20px}.locale-smoke-mascot{right:-4%}.locale-smoke-proof{grid-template-columns:1fr}}@media (width<=520px){.locale-smoke-header{padding-inline:18px}.locale-smoke-header .brand-domain{display:none}.locale-smoke-hero{padding-inline:18px;padding-bottom:82px}.locale-smoke-hero h1{font-size:clamp(2.65rem,13vw,3.75rem)}.locale-smoke-board-wrap{width:92%}.locale-smoke-mascot{width:94px;bottom:-13%;right:-10%}.locale-smoke-proof{padding-inline:18px}.locale-smoke-disclosure{margin-inline:18px}}@media (prefers-reduced-motion:reduce){.locale-smoke-hero-copy,.locale-smoke-board-wrap{animation:none}}.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:fit-content}.search-guide-intro{max-width:860px;animation:guide-rise .48s var(--ease-out-ui) both;margin-top:clamp(42px,7vw,88px)}.search-guide-intro h1{max-width:15ch;color:var(--ink);font-family:var(--display);letter-spacing:-.045em;text-wrap:balance;margin:12px 0 22px;font-size:clamp(2.55rem,6.2vw,5.4rem);font-weight:670;line-height:.98}.search-guide-intro>p{max-width:66ch;color:var(--ink-soft);margin:0;font-size:clamp(1rem,1.8vw,1.18rem);line-height:1.75}@media (width>=1000px){.search-guide-intro{max-width:none;padding-right:clamp(210px,23vw,330px);position:relative}.search-guide-intro:after{content:"";aspect-ratio:1;border:2px solid color-mix(in srgb, var(--ink) 72%, transparent);background:linear-gradient(90deg, transparent 32.7%, color-mix(in srgb, var(--ink) 46%, transparent) 33% 34%, transparent 34.3% 65.7%, color-mix(in srgb, var(--ink) 46%, transparent) 66% 67%, transparent 67.3%), linear-gradient(0deg, transparent 32.7%, color-mix(in srgb, var(--ink) 46%, transparent) 33% 34%, transparent 34.3% 65.7%, color-mix(in srgb, var(--ink) 46%, transparent) 66% 67%, transparent 67.3%), repeating-linear-gradient(90deg, color-mix(in srgb, var(--sage-soft) 84%, transparent) 0 1px, transparent 1px 11.1%), repeating-linear-gradient(0deg, color-mix(in srgb, var(--sage-soft) 84%, transparent) 0 1px, transparent 1px 11.1%), color-mix(in srgb, var(--paper) 78%, transparent);width:clamp(160px,18vw,250px);box-shadow:0 18px 42px color-mix(in srgb, var(--ink) 12%, transparent), inset 0 0 0 8px color-mix(in srgb, var(--sage-soft) 52%, transparent);pointer-events:none;border-radius:12px;position:absolute;top:4px;right:0;transform:rotate(3deg)}.search-guide-intro:before{content:"";z-index:1;border:3px solid var(--saffron);width:24px;height:24px;box-shadow:0 0 0 5px color-mix(in srgb, var(--saffron) 18%, transparent);pointer-events:none;border-radius:5px;position:absolute;top:24%;right:13%}}.search-guide-intro--activation{margin-top:clamp(24px,4vw,54px)}.search-guide-intro--activation h1{max-width:16ch;font-size:clamp(2.45rem,5.2vw,4.7rem)}.search-guide-intro--activation>p{line-height:1.6}.search-guide-intro--activation .search-guide-hero-action{margin-top:22px}.search-guide-hero-action{flex-wrap:wrap;align-items:center;gap:12px 18px;margin-top:28px;display:flex}.search-guide-hero-action>span{color:var(--muted);font-size:.84rem}.search-guide-hero-action ul{color:var(--ink-soft);flex-wrap:wrap;flex-basis:100%;gap:10px 18px;margin:2px 0 0;padding:0;font-size:.82rem;list-style:none;display:flex}.search-guide-hero-action li{align-items:center;gap:6px;display:inline-flex}.search-guide-hero-action li svg{color:var(--sage-dark)}.search-guide-proof{border-top:1px solid #102a4324;border-bottom:1px solid #102a4324;grid-template-columns:minmax(0,.85fr) minmax(380px,1.15fr);align-items:center;gap:clamp(40px,7vw,94px);margin-top:clamp(72px,10vw,140px);padding:clamp(48px,7vw,86px) 0;display:grid}.search-guide-proof-copy h2,.search-guide-coaching-preview h2,.search-guide-action h2,.search-guide-related h2{color:var(--ink);font-family:var(--display);letter-spacing:-.025em;text-wrap:balance;margin:12px 0 24px;font-size:clamp(1.8rem,3.5vw,3rem);font-weight:650;line-height:1.1}.search-guide-proof-copy ol{gap:0;margin:34px 0 0;padding:0;list-style:none;display:grid}.search-guide-proof-copy li{border-top:1px solid #102a431f;gap:7px;padding:22px 0;display:grid}.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{justify-items:center;gap:18px;display:grid}.search-guide-board .lesson-board-figure{width:min(100%,540px)}.search-guide-board .button{min-width:min(100%,260px)}.search-guide-answer{border:1px solid color-mix(in srgb, var(--sage-dark) 26%, var(--line));border-left:4px solid var(--sage-dark);background:linear-gradient(135deg, color-mix(in srgb, var(--sage) 16%, var(--paper)), color-mix(in srgb, var(--paper) 88%, var(--sage) 12%));width:min(100%,540px);max-width:540px;box-shadow:0 14px 32px color-mix(in srgb, var(--ink) 8%, transparent);color:var(--sage-dark);animation:guide-rise .28s var(--ease-out-ui) both;border-radius:16px;align-items:flex-start;gap:13px;margin:0;padding:18px 20px 18px 18px;font-size:.94rem;font-weight:650;line-height:1.6;display:flex}.search-guide-answer-icon{background:var(--sage-dark);width:28px;height:28px;color:var(--paper);border-radius:50%;flex:0 0 28px;place-items:center;margin-top:1px;display:grid}.search-guide-answer-icon svg{flex:none}.search-guide-coaching-preview{background:linear-gradient(145deg,#dce8d785,#fffdf8d6);border:1px solid #102a4329;border-radius:8px;grid-template-columns:auto minmax(0,1fr);gap:clamp(22px,4vw,40px);max-width:900px;margin:clamp(72px,10vw,140px) auto 0;padding:clamp(34px,6vw,64px);display:grid;box-shadow:0 20px 58px #102a430f}.search-guide-preview-mark{background:var(--ink-fill);width:52px;height:52px;color:var(--paper);border-radius:50%;place-items:center;display:grid}.search-guide-coaching-preview h2{max-width:22ch}.search-guide-coaching-preview ul{gap:14px;margin:30px 0 0;padding:0;list-style:none;display:grid}.search-guide-coaching-preview li{color:var(--ink-soft);align-items:flex-start;gap:10px;line-height:1.6;display:flex}.search-guide-coaching-preview li svg{color:var(--sage-dark);flex:none;margin-top:3px}.search-guide-action{text-align:center;max-width:780px;margin:clamp(76px,11vw,150px) auto 0}.search-guide-action h2{margin-inline:auto}.search-guide-action>p{max-width:58ch;color:var(--muted);margin:0 auto 28px;line-height:1.7}.search-guide-action>p strong{color:var(--ink);font-weight:700}.search-guide-action-note{color:var(--muted);margin-top:12px;font-size:.78rem;display:block}.search-guide-action-mascot{width:clamp(76px,8vw,96px);height:auto;filter:drop-shadow(0 12px 18px color-mix(in srgb, var(--ink) 13%, transparent));margin:0 auto 18px;display:block}.search-guide-related{max-width:860px;margin:clamp(84px,12vw,160px) auto 0;display:grid}.search-guide-related h2{font-size:clamp(1.6rem,3vw,2.35rem)}.search-guide-related a{color:var(--ink);transition:color .16s ease, padding .18s var(--ease-out-ui);border-top:1px solid #102a4324;justify-content:space-between;align-items:center;gap:24px;padding:20px 0;font-weight:700;text-decoration:none;display:flex}@media (hover:hover) and (pointer:fine){.search-guide-related a:hover{color:var(--blue);padding-left:8px}}@keyframes guide-rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (width<=820px){.search-guide-proof{grid-template-columns:minmax(0,1fr)}.search-guide-proof-copy{max-width:650px}}@media (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{width:100%;padding:16px 16px 16px 14px;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{border-block:1px solid var(--line);min-height:108px;color:var(--ink);transition:color .15s ease, transform .15s var(--ease-out-ui);justify-content:space-between;align-items:center;gap:16px;margin-top:16px;padding:18px 4px;display:flex}.home-progress-summary>span{flex-direction:column;gap:5px;min-width:0;display:flex}.home-progress-summary h2{font-family:var(--serif);margin:0;font-size:1.25rem;line-height:1.2}.home-progress-summary>svg{color:var(--sage-dark);transition:transform .15s var(--ease-out-ui);flex:none}@media (hover:hover) and (pointer:fine){.home-progress-summary:hover{color:var(--sage-dark)}.home-progress-summary:hover>svg{transform:translate(3px)}}.progress-first-step{margin:0}.setting-language-row{border-top:1px solid #ebe6dd;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;min-height:76px;padding-top:12px;display:grid}.setting-language-row>p{color:var(--muted);margin:0;font-size:.7rem}.language-toggle button{min-height:44px}.upgrade-proof-preview{border-block:1px solid var(--line);gap:6px;margin:-4px 0 24px;padding:16px 0;display:grid}.upgrade-proof-preview strong{font-family:var(--serif);font-size:.88rem}.upgrade-proof-preview blockquote{color:var(--ink);font-family:var(--serif);margin:0;font-size:.82rem}.upgrade-proof-preview span{color:var(--muted);font-size:.67rem;line-height:1.45}.plan-cancel-note{color:var(--muted);justify-content:center;align-items:center;gap:6px;margin:12px 0 0;font-size:.67rem;display:flex}.upgrade-auth .oauth-entry{margin-bottom:12px}@media (width<=780px){.upgrade-page .public-header{height:calc(56px + var(--safe-area-top));padding-inline:max(14px, var(--safe-area-left)) max(14px, var(--safe-area-right))}.upgrade-page .public-header .brand-mark{width:34px;height:34px}.upgrade-page .public-header .brand,.upgrade-page .public-header .text-link{min-height:44px}.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{justify-content:space-between;padding:0 8px 35px}.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{justify-content:flex-start;width:auto;min-width:0;padding-inline:12px}.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{justify-content:center;min-height:40px;margin-block:12px}.sidebar-collapsed>.language-picker{justify-content:space-between;min-height:34px;padding:0 4px}.sidebar-collapsed>.language-picker .language-toggle{grid-template-columns:repeat(2,1fr);width:94px}.mobile-header{grid-template-columns:44px minmax(0,1fr) auto}.app-update-banner{grid-template-columns:34px minmax(0,1fr) auto;gap:9px;width:calc(100% - 28px);min-height:0;margin:10px 14px 0;padding:10px 9px 10px 11px}.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{justify-self:end;align-items:center;gap:4px;display:inline-flex}.mobile-header-action,.mobile-theme-picker{display:inline-flex}.mobile-theme-picker .theme-picker{margin:0}.mobile-theme-picker .theme-rail-button{width:40px;height:40px;box-shadow:none;background:0 0;border-color:#0000}.mobile-theme-picker .theme-rail-button:hover,.mobile-theme-picker .theme-rail-button:focus-visible{border-color:var(--line);background:var(--blue-wash)}.mobile-account-shortcut{width:40px;height:40px;color:var(--ink);border-radius:50%;place-items:center;display:grid}.mobile-account-shortcut:hover,.mobile-account-shortcut:focus-visible{background:var(--blue-wash)}.app-shell-immersive .mobile-header{display:none}.mobile-tabbar{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));-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffdf8f7;border-top:1px solid #102a4321;grid-template-columns:repeat(5,1fr);display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 28px #102a430f}.mobile-tabbar a{color:#65727b;text-align:center;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:3px;min-width:0;min-height:52px;padding:4px 2px;font-size:.58rem;font-weight:700;line-height:1.08;display:flex}.mobile-tabbar a.active{background:var(--sage-soft);color:var(--ink)}.mobile-tabbar a.active svg{color:var(--sage-dark);stroke-width:2.4px}.app-shell:not(.app-shell-immersive) .page{padding-bottom:calc(var(--mobile-tabbar-height) + 32px + var(--safe-area-bottom));scroll-padding-bottom:calc(var(--mobile-tabbar-height) + 24px + 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(var(--mobile-tabbar-height) + 32px + 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{grid-template-columns:minmax(0,1fr);align-items:end;gap:8px 14px;margin-bottom:16px;display:grid}.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{grid-template-columns:1fr;gap:12px;margin-bottom:16px;padding-inline:0}.practice-week-heading strong{font-size:.92rem}.practice-week-days{gap:4px}.practice-week-days>span{min-height:44px}.today-panel,.resume-panel{box-shadow:none;border-inline:0;border-radius:0;padding:18px 0 4px}.home-progress-summary{min-height:96px;padding:17px 4px}.continue-lesson{margin-top:16px}.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{height:min(70dvh, 640px, calc(var(--visual-viewport-height) - 16px));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],.mobile-coach-sheet.is-expanded{height:min(92dvh, 760px, calc(var(--visual-viewport-height) - 16px))}.mobile-coach-sheet[data-dragging],.mobile-coach-sheet.is-dragging{-webkit-user-select:none;user-select:none;transition:none}.mobile-coach-sheet-grabber{cursor:ns-resize;touch-action:none;background:#fffdf8fa;border:0;flex:0 0 28px;place-items:center;width:100%;min-height:28px;padding:0;display:grid}.mobile-coach-sheet-grabber>span{background:#c9c5ba;border-radius:999px;width:40px;height:4px}.mobile-coach-sheet-header{min-height:72px;padding-top:9px;padding-bottom:8px}.mobile-coach-sheet-header:before{content:none}.mobile-coach-sheet-body{overscroll-behavior:contain;overflow:hidden}.mobile-coach-sheet .coach-thread-shell,.mobile-coach-sheet .coach-thread{overscroll-behavior:contain}.lesson-header{align-items:center;min-height:36px;margin-bottom:8px}.lesson-layout{gap:8px}.lesson-steps{min-height:52px}.lesson-steps>button{min-height:50px}.lesson-content{border:0;border-radius:0;min-height:0;padding:14px 0 20px;overflow:visible}.lesson-content-header{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;margin-bottom:12px;display:grid}.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{flex-direction:column;gap:5px;margin-bottom:8px}.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{right:10px;bottom:max(8px, var(--safe-area-bottom));z-index:18;overscroll-behavior:contain;border:1px solid var(--line);background:color-mix(in srgb, var(--paper) 98.5%, transparent);width:min(100% - 20px,430px);max-height:min(46dvh,390px);box-shadow:0 -14px 38px color-mix(in srgb, var(--ink) 15%, transparent);border-radius:18px;margin:0 auto;padding:14px;position:fixed;left:10px;overflow:auto}.practice-stage .practice-response{width:auto;max-width:none;padding-bottom:calc(14px + var(--safe-area-bottom));border:0;border-top:1px solid var(--line);border-radius:0;margin:0;bottom:0;left:0;right:0}.practice-response .lesson-choice-grid{gap:7px}.practice-response .lesson-choice-grid button{min-height:50px}:is(.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{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.scanning-primer>header{margin-bottom:8px}.scanning-primer h2{margin:3px 0 5px;font-size:1.55rem}.scanning-primer header p{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.candidate-primer>header{margin-bottom:8px}.candidate-primer h2{margin:3px 0 5px;font-size:1.55rem}.candidate-primer header p{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.naked-primer>header{margin-bottom:8px}.naked-primer h2{margin:3px 0 5px;font-size:1.55rem}.naked-primer header p{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.hidden-primer>header{margin-bottom:8px}.hidden-primer h2{margin:3px 0 5px;font-size:1.55rem}.hidden-primer header p{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.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{z-index:auto;border:0;border-top:1px solid var(--line);width:100%;max-height:none;box-shadow:none;background:0 0;border-radius:0;justify-content:flex-start;margin:0;padding:16px 0 0;position:static;bottom:auto;left:auto;right:auto;overflow:visible}.upgrade-main{width:min(100% - 20px,620px);padding:8px 0 calc(36px + var(--safe-area-bottom))}.upgrade-heading{margin-bottom:10px}.upgrade-heading h1{margin-bottom:8px;font-size:clamp(1.85rem,8.8vw,2.45rem);line-height:.96}.upgrade-heading p{max-width:560px;margin-inline:auto;font-size:.7rem;line-height:1.45}.price-plan{border-radius:7px;padding:16px}.price-owl{width:58px;height:70px;top:13px;right:13px}.plan-name{font-size:1rem}.price-plan h2{margin-block:4px;font-size:1.55rem}.price-plan .store-price-pending{max-width:190px;margin-block:7px;font-size:1.08rem;line-height:1.12}.price-plan>p{margin-bottom:8px;padding-right:60px;font-size:.68rem;line-height:1.4}.price-plan ul{gap:2px;margin-bottom:8px}.price-plan li{gap:7px;font-size:.64rem;line-height:1.3}.price-plan li svg{width:13px;height:13px}.upgrade-proof-preview{gap:0;margin:0 0 8px;padding:6px 0}.upgrade-proof-preview strong{display:none}.upgrade-proof-preview blockquote{font-size:.68rem;line-height:1.3}.upgrade-proof-preview span{display:none}.upgrade-auth{margin-top:0;padding-top:9px}.upgrade-auth .oauth-entry{margin-bottom:5px}.oauth-provider-buttons{gap:7px}.auth-provider-button{min-height:44px;font-size:.7rem}.auth-provider-button svg{width:18px;height:18px;left:14px}.auth-divider{gap:10px;margin-top:11px;font-size:.6rem}.upgrade-auth-switch{margin-bottom:3px;font-size:.63rem}.upgrade-auth-switch .text-button{min-height:44px;font-size:.72rem}.upgrade-auth form{gap:6px}.upgrade-auth form>.button{min-height:48px;margin-top:1px;padding-block:8px;font-size:.74rem}.auth-panel label,.auth-panel .password-field{gap:4px;font-size:.68rem}.auth-panel input{min-height:44px}.upgrade-auth .password-visibility{width:44px;min-height:44px;right:0}.auth-panel small{font-size:.58rem;line-height:1.3}.plan-cancel-note{margin-top:7px;font-size:.61rem}.price-plan>.checkout-status{margin-top:9px;padding:9px 11px}.checkout-trust{margin-top:10px;font-size:.6rem}.plan-comparison{gap:20px;width:calc(100% + 12px);margin:36px -6px 16px}.plan-comparison h2{max-width:19rem;margin:6px 0 8px;font-size:1.75rem;line-height:1.05}.plan-comparison p{max-width:30rem;margin-bottom:0;font-size:.75rem;line-height:1.5}.plan-comparison-table{border-radius:12px;font-size:.72rem;box-shadow:0 12px 32px #102a430f}.plan-comparison-table tr{grid-template-columns:minmax(0,1.28fr) minmax(0,.9fr) minmax(0,1fr)}.plan-comparison-table tr>*{padding:12px 10px}.plan-comparison-table .plan-comparison-head>*{font-size:.68rem}.plan-comparison-table td{font-size:.7rem;line-height:1.42}.native-purchase-terms{margin-top:22px;font-size:.64rem;line-height:1.5}}@media (width<=520px){.app-update-banner{grid-template-columns:34px minmax(0,1fr)}.app-update-actions{grid-column:2;justify-content:flex-start}}@media (width<=380px){.upgrade-heading p,.upgrade-proof-preview{display:none}.upgrade-heading{margin-bottom:8px}}@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 (width<=640px){.public-header-actions .text-link{display:none}.language-picker.compact{gap:.35rem}.language-picker.compact .language-toggle button{min-height:36px}}@media (width<=780px){.home-page .streak{white-space:nowrap;padding-bottom:3px}.resume-panel{-moz-column-gap:18px;grid-template-rows:auto 1fr;grid-template-columns:clamp(140px,38vw,160px) minmax(0,1fr);align-items:start;column-gap:18px;display:grid}.resume-panel>.section-title{grid-column:2;gap:8px}.resume-panel>.section-title .difficulty{display:none}.resume-panel .mini-board{grid-area:1/1/3;align-self:start;width:100%}.resume-copy{grid-column:2;min-width:0}.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;gap:14px;padding:16px}.lesson-art{width:88px;height:88px}.continue-lesson h2{font-size:1.2rem}.continue-lesson p{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}}@media (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{top:var(--safe-area-top);z-index:16;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);gap:2px;min-height:44px;margin-bottom:4px;padding-top:2px;position:sticky}.pedagogy-layout>.lesson-steps>button{gap:2px;min-height:44px;font-size:.5rem}.pedagogy-layout>.lesson-steps>button i{flex-basis:21px;width:21px;height:21px;font-size:.55rem}.pedagogy-layout>.lesson-steps>button span{font-size:.5rem;line-height:1.15}.lesson-page .pedagogy-content{scroll-margin-top:calc(48px + var(--safe-area-top));padding-top:8px}.lesson-page .lesson-content-header{grid-template-columns:minmax(0,1fr) 92px;gap:6px;margin-bottom:8px}.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{grid-template-columns:minmax(0,1fr) auto;align-items:center;min-height:28px;margin-bottom:6px;padding:0 2px}.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{font-family:var(--sans);margin:0;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{background:0 0;border:0;min-width:0;padding:0}.lesson-page .lesson-content:is([data-stage=diagnostic],[data-stage=model],[data-stage=practice])>.lesson-content-header .evidence-badge strong{color:var(--sage-dark);font-family:var(--sans);margin:0;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{z-index:18;width:auto;max-height:min(38dvh,250px);padding:12px 12px calc(12px + var(--safe-area-bottom));overscroll-behavior:contain;border:0;border-top:1px solid var(--line);background:color-mix(in srgb, var(--paper) 98.5%, transparent);box-shadow:0 -10px 28px color-mix(in srgb, var(--ink) 13%, transparent);border-radius:0;margin:0;position:fixed;bottom:0;left:0;right:0;overflow:auto}.scanning-primer-action>strong{margin-bottom:0;font-size:.82rem;line-height:1.25;display:block}.scanning-primer-check-label{margin-bottom:4px;font-size:.5rem}.scanning-primer-action .rules-binary-choice{gap:8px;margin-top:10px}.scanning-primer-action .rules-binary-choice button{border-color:var(--line);background:var(--surface);border-radius:8px;min-height:44px}.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 .mini-board{width:min(184px,100%)}.resume-copy .button{width:auto;padding-inline:18px}.notebook-callout{grid-template-columns:38px minmax(0,1fr) auto;gap:10px;padding:14px}.notebook-callout-icon{width:38px;height:38px}.continue-lesson{grid-template-columns:76px minmax(0,1fr) auto;gap:10px;padding:14px}.lesson-art{width:76px;height:76px}}.public-resource-page{background:radial-gradient(circle at 88% 8%, #d8a5441c, transparent 28rem), linear-gradient(180deg, #fffdf8 0, var(--paper) 38rem);min-height:100vh}.resource-header{max-width:1240px;margin:0 auto}.public-resource-identity{align-items:center;gap:13px;display:flex}.public-resource-mark{width:fit-content;color:var(--ink);align-items:center;gap:8px;font-size:.72rem;font-weight:780;line-height:1;display:inline-flex}.public-resource-mark-grid{border:1px solid color-mix(in srgb, var(--ink) 74%, transparent);background:var(--surface);width:24px;height:24px;box-shadow:3px 3px 0 color-mix(in srgb, var(--sage-soft) 72%, transparent);border-radius:3px;grid-template-columns:repeat(3,1fr);gap:1px;padding:2px;display:grid;transform:rotate(-3deg)}.public-resource-mark-grid i{background:color-mix(in srgb, var(--sage-soft) 78%, var(--surface));display:block}.public-resource-mark-grid i.focus{background:var(--saffron);position:relative}.public-resource-mark-grid i.focus:after{content:"";border:1px solid color-mix(in srgb, var(--ink) 68%, transparent);position:absolute;inset:1px;transform:rotate(10deg)}.public-resource-mark.compact .public-resource-mark-grid{width:20px;height:20px}.public-resource-mark.compact .public-resource-mark-name{display:none}.resource-main{width:min(1160px,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;color:var(--ink);font-family:var(--display);letter-spacing:-.052em;text-wrap:balance;margin:14px 0 26px;font-size:clamp(3rem,7.2vw,6.6rem);font-weight:670;line-height:.94}.resource-hero>p{max-width:66ch;color:var(--ink-soft);margin:0;font-size:clamp(1.02rem,1.8vw,1.22rem);line-height:1.75}.technique-library-hero{grid-template-columns:minmax(0,.92fr) minmax(330px,.78fr);align-items:center;gap:clamp(42px,8vw,120px);max-width:none;min-height:clamp(430px,48vw,620px);display:grid;overflow:hidden}.technique-library-hero-copy{max-width:720px}.resource-hero-instrument{isolation:isolate;justify-self:end;width:min(100%,430px);padding:28px 24px;position:relative}.resource-hero-orbit{z-index:-1;border:1px solid color-mix(in srgb, var(--sage-dark) 34%, transparent);pointer-events:none;border-radius:50%;display:block;position:absolute}.resource-hero-orbit-wide{inset:2% -6% 3% 0;transform:rotate(-12deg)}.resource-hero-orbit-small{border-color:color-mix(in srgb, var(--saffron) 54%, transparent);inset:17% 14% 16% 15%;transform:rotate(24deg)}.resource-hero-board-card{border:1px solid color-mix(in srgb, var(--ink) 14%, var(--line));border-radius:var(--radius-feature);background:color-mix(in srgb, var(--paper) 91%, transparent);width:100%;box-shadow:0 28px 70px color-mix(in srgb, var(--ink) 14%, transparent), 0 0 0 10px color-mix(in srgb, var(--sage-soft) 52%, transparent);padding:22px;position:relative;transform:rotate(2.2deg)}.resource-hero-board-card .public-sudoku-grid{border-width:2px;width:100%}.resource-hero-board-card .public-sudoku-cell{border-color:color-mix(in srgb, var(--ink) 24%, transparent);font-size:clamp(.78rem,2vw,1.2rem)}.resource-hero-board-rule{z-index:2;background:var(--saffron);width:24%;height:3px;box-shadow:0 0 0 4px color-mix(in srgb, var(--saffron) 16%, transparent);border-radius:999px;position:absolute;left:12%}.resource-hero-board-rule-top{top:12px}.resource-hero-board-rule-bottom{background:var(--sage-dark);width:18%;box-shadow:0 0 0 4px color-mix(in srgb, var(--sage-dark) 14%, transparent);bottom:12px;left:auto;right:12%}.resource-hero-marker{background:var(--saffron);width:9px;height:9px;box-shadow:0 0 0 6px color-mix(in srgb, var(--saffron) 15%, transparent);border-radius:50%;position:absolute}.resource-hero-marker-one{top:7%;right:8%}.resource-hero-marker-two{background:var(--sage-dark);box-shadow:0 0 0 6px color-mix(in srgb, var(--sage-dark) 14%, transparent);bottom:11%;left:4%}.resource-count{width:fit-content;color:var(--muted);letter-spacing:.035em;border-top:1px solid #102a4342;margin-top:28px;padding-top:12px;font-size:.74rem;font-weight:720;display:block}.resource-method{border-block:1px solid #102a4326;grid-template-columns:minmax(0,.95fr) minmax(320px,.75fr);align-items:start;gap:clamp(44px,10vw,130px);margin-top:clamp(80px,12vw,160px);padding:clamp(40px,6vw,72px) 0;display:grid}.resource-method h2,.resource-practice h2,.resource-links h2,.embed-includes h2{color:var(--ink);font-family:var(--display);letter-spacing:-.03em;text-wrap:balance;margin:12px 0 0;font-size:clamp(2rem,4vw,3.4rem);font-weight:650;line-height:1.05}.resource-method>p{color:var(--muted);margin:3px 0 0;line-height:1.8}.technique-index-section{margin-top:clamp(76px,10vw,126px)}.technique-index-heading{grid-template-columns:minmax(0,.9fr) minmax(280px,.72fr);align-items:end;gap:clamp(30px,8vw,100px);display:grid}.technique-index-heading h2{color:var(--ink);font-family:var(--display);letter-spacing:-.03em;text-wrap:balance;margin:0;font-size:clamp(1.9rem,3.8vw,3.15rem);font-weight:650;line-height:1.05}.technique-index-heading .eyebrow+h2{margin-top:12px}.technique-index-heading>p{color:var(--muted);margin:0;line-height:1.7}.coaching-preview-index{background:linear-gradient(145deg,#dce8d775,#fffdf8c7);border:1px solid #102a4324;border-radius:8px;padding:clamp(34px,5vw,58px)}.technique-index{border-bottom:1px solid #102a4326;margin-top:44px}.technique-index-row{min-height:132px;color:var(--ink);transition:color .16s ease, padding .19s var(--ease-out-ui);border-top:1px solid #102a4326;grid-template-columns:58px minmax(0,1fr) auto;align-items:center;gap:24px;padding:26px 0;display:grid}.technique-index-number{color:var(--sage-dark);font-family:var(--serif);font-variant-numeric:tabular-nums;align-self:start;padding-top:4px;font-size:.82rem}.technique-index-copy{gap:8px;display:grid}.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);white-space:nowrap;font-size:.72rem;font-weight:750}.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{color:var(--blue);padding-inline:10px}}.resource-practice{text-align:center;max-width:760px;margin:clamp(90px,13vw,170px) auto 0}.resource-practice p{max-width:60ch;color:var(--muted);margin:22px auto 28px;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{color:var(--ink);border-top:1px solid #102a4326;grid-template-columns:minmax(170px,.4fr) minmax(0,1fr);gap:34px;padding:24px 0;display:grid}.resource-links>a span{color:var(--muted);line-height:1.6}.resource-footer{flex-wrap:wrap}.resource-actions{flex-wrap:wrap;gap:12px;margin-top:32px;display:flex}.import-hero{grid-template-columns:minmax(0,.96fr) minmax(360px,.78fr);align-items:center;gap:clamp(48px,8vw,110px);max-width:none;display:grid}.import-resource-page .resource-main{padding-top:clamp(30px,4vw,58px)}.import-hero h1{max-width:12ch;margin-bottom:20px;font-size:clamp(2.8rem,5.6vw,5.3rem)}.import-hero-copy>.button{margin-top:30px}.import-hero-visual{align-content:center;justify-items:center;min-height:560px;display:grid;position:relative}.import-image-card{background:var(--surface);border:1px solid #102a4326;border-radius:10px;width:min(100%,390px);padding:16px 18px 22px;transform:rotate(-2.2deg);box-shadow:0 28px 70px #102a4324}.import-image-card>span{color:var(--muted);align-items:center;gap:8px;margin-bottom:14px;font-size:.7rem;display:flex}.import-image-card .public-sudoku-grid{width:100%}.import-flow-arrow{color:var(--saffron);margin:-5px 0 -10px;transform:rotate(75deg)}.import-coach-card{width:min(88%,330px);color:var(--ink);background:var(--sage-pale);border-radius:9px;grid-template-columns:auto minmax(0,1fr);gap:7px 10px;margin-left:80px;padding:18px 20px;display:grid;transform:rotate(1.6deg);box-shadow:0 18px 44px #102a4321}.import-coach-card>svg{color:var(--sage-dark);grid-row:1/span 2}.import-coach-card strong{font-family:var(--serif)}.import-coach-card span{color:var(--muted);font-size:.74rem;line-height:1.45}.import-steps{border-block:1px solid #102a4326;grid-template-columns:repeat(3,minmax(0,1fr));margin:clamp(68px,10vw,120px) 0 0;padding:0;list-style:none;display:grid}.import-steps li{border-right:1px solid #102a4326;align-content:start;min-height:320px;padding:34px clamp(22px,3vw,38px) 40px;display:grid}.import-steps li:last-child{border-right:0}.import-steps li>span{color:var(--sage-dark);font-size:.72rem;font-weight:760}.import-steps li>svg{width:30px;height:30px;color:var(--blue);margin:55px 0 24px}.import-steps h3{color:var(--ink);font-family:var(--serif);margin:0 0 12px;font-size:1.4rem}.import-steps p{color:var(--muted);margin:0;font-size:.85rem;line-height:1.65}.import-proof{grid-template-columns:minmax(280px,.72fr) minmax(0,.95fr);align-items:center;gap:clamp(48px,9vw,120px);margin-top:clamp(90px,12vw,150px);display:grid}.import-proof-board{background:var(--surface);border:1px solid #102a4321;padding:clamp(20px,3vw,34px);position:relative;box-shadow:0 24px 70px #102a431a}.import-proof-badge{width:fit-content;color:var(--sage-dark);align-items:center;gap:8px;margin:20px auto 0;font-size:.75rem;font-weight:760;display:flex}.import-proof h2,.import-privacy h2{color:var(--ink);font-family:var(--display);letter-spacing:-.035em;text-wrap:balance;margin:12px 0 24px;font-size:clamp(2rem,4.2vw,3.55rem);line-height:1.04}.import-proof ul{gap:16px;margin:0;padding:0;list-style:none;display:grid}.import-proof li{color:var(--ink-soft);gap:11px;line-height:1.55;display:flex}.import-proof li svg{color:var(--sage-dark);flex:none;margin-top:3px}.import-privacy{background:#dce8d780;border-radius:12px;grid-template-columns:auto minmax(0,1fr);gap:24px;max-width:920px;margin:clamp(88px,12vw,150px) auto 0;padding:clamp(30px,5vw,54px);display:grid}.import-privacy>svg{color:var(--sage-dark)}.import-privacy h2{margin-top:0}.import-privacy p{max-width:64ch;color:var(--muted);margin:0;line-height:1.7}.import-final small{justify-content:center}.printable-hero{margin-bottom:72px}.printable-hero h1{max-width:14ch;font-size:clamp(2.8rem,6.5vw,5.8rem)}.printable-sheet{background:var(--surface);border:1px solid #102a4329;flex-direction:column;align-items:center;width:min(100%,840px);min-height:1080px;margin:0 auto 48px;padding:clamp(32px,6vw,70px);display:flex;box-shadow:0 22px 70px #102a4314}.printable-sheet-heading{justify-content:space-between;align-items:flex-end;gap:24px;width:100%;margin-bottom:46px;display:flex}.printable-sheet-heading h2{font-family:var(--serif);margin:7px 0 0;font-size:clamp(2rem,5vw,3.3rem);font-weight:560}.printable-sheet-heading>p{color:var(--muted);text-align:right;margin:0;font-size:.78rem;line-height:1.6}.public-sudoku-grid{aspect-ratio:1;border:3px solid var(--ink);background:var(--surface);grid-template-rows:repeat(9,minmax(0,1fr));grid-template-columns:repeat(9,minmax(0,1fr));width:min(100%,610px);display:grid}.public-sudoku-row{display:contents}.public-sudoku-cell{color:#2b5e83;font-family:var(--sans);font-variant-numeric:tabular-nums;border-bottom:1px solid #aeb8be;border-right:1px solid #aeb8be;place-items:center;font-size:clamp(1.05rem,3.3vw,1.85rem);display:grid}.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{border-top:1px solid #102a432b;width:min(100%,610px);margin-top:42px;padding-top:28px}.printable-instructions h3{font-family:var(--serif);margin:0 0 14px;font-size:1.08rem}.printable-instructions ol{color:var(--ink-soft);margin:0;padding-left:22px;font-size:.8rem;line-height:1.65}.printable-permission{width:min(100%,610px);color:var(--muted);margin:auto 0 0;padding-top:28px;font-size:.68rem;line-height:1.5}.embed-hero h1{max-width:14ch}.embed-workspace{border-block:1px solid #102a4326;grid-template-columns:minmax(390px,.9fr) minmax(0,1.1fr);gap:clamp(40px,7vw,86px);margin-top:clamp(70px,11vw,140px);padding-block:clamp(46px,7vw,78px);display:grid}.embed-preview,.embed-code-panel{min-width:0}.embed-preview iframe{background:var(--paper);border:1px solid #102a4326;border-radius:8px;width:100%;height:720px;margin-top:18px}.embed-code-panel pre{max-width:100%;color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere;background:#f5f7f6;border:1px solid #ccd4d7;border-radius:6px;margin:18px 0;padding:20px;font-size:.73rem;line-height:1.7;overflow:auto}.embed-code-panel>p{max-width:58ch;color:var(--muted);font-size:.74rem;line-height:1.6}.embed-language{gap:8px;margin-top:22px;display:flex}.printable-pack-builder .embed-language{flex-wrap:wrap;min-width:0}.printable-pack-builder .embed-language label{flex:190px;gap:6px;min-width:0;display:grid}.printable-pack-builder .embed-language select{width:100%;min-width:0}.embed-language button{min-height:42px;color:var(--ink-soft);cursor:pointer;background:0 0;border:1px solid #bbc6c8;border-radius:999px;padding:0 14px;font-weight:700}.embed-language button.active{border-color:var(--ink);background:var(--ink-fill);color:var(--paper)}.embed-includes{max-width:820px;margin:clamp(80px,12vw,150px) auto 0}.embed-includes ul{margin:32px 0 24px;padding:0;list-style:none;display:grid}.embed-includes li{color:var(--ink-soft);border-top:1px solid #102a4324;align-items:flex-start;gap:12px;padding:16px 0;display:flex}.embed-includes li svg{color:var(--sage-dark);flex:none;margin-top:2px}.daily-embed-page{width:min(100% - 32px,610px);color:var(--ink);margin:0 auto;padding:22px 0 18px}.daily-embed-heading{justify-content:space-between;align-items:end;gap:20px;margin-bottom:8px;display:flex}.daily-embed-heading h1{font-family:var(--serif);margin:3px 0 0;font-size:clamp(1.8rem,8vw,2.65rem);font-weight:560}.daily-embed-heading>p{color:var(--muted);text-align:right;margin:0 0 5px;font-size:.68rem}.daily-embed-instruction{color:var(--muted);margin:0 0 12px;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{grid-template-columns:repeat(9,minmax(0,1fr));gap:5px;margin-top:12px;display:grid}.daily-embed-pad button{background:var(--surface);min-width:0;min-height:44px;color:var(--ink);cursor:pointer;border:1px solid #c4cccd;border-radius:5px;font-size:1rem;font-weight:730}.daily-embed-pad .daily-embed-erase{min-height:38px;color:var(--muted);grid-column:1/-1;justify-content:center;align-items:center;gap:7px;font-size:.72rem;display:flex}.daily-embed-status{min-height:24px;color:var(--sage-dark);margin:8px 0 0;font-size:.72rem;font-weight:680;line-height:1.45}.daily-embed-status.mistake{color:#9c3f35}.daily-embed-attribution{color:var(--blue);text-align:right;font-size:.68rem;font-weight:720;display:block}@media (width<=820px){.resource-method,.technique-index-heading,.embed-workspace,.import-hero,.import-proof{grid-template-columns:minmax(0,1fr)}.technique-library-hero{grid-template-columns:minmax(0,1fr);gap:42px;min-height:0}.resource-hero-instrument{justify-self:center;width:min(78vw,430px)}.import-hero-visual{min-height:500px}.embed-preview{max-width:620px;margin:0 auto}}@media (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)}.technique-library-hero{gap:30px}.resource-hero-instrument{width:min(92vw,390px);padding-inline:14px}.resource-hero-board-card{border-radius:18px;padding:16px}.resource-method{gap:24px;margin-top:72px}.import-hero-visual{min-height:440px}.import-image-card{width:min(92%,360px)}.import-coach-card{margin-left:36px}.import-steps{grid-template-columns:1fr}.import-steps li{border-bottom:1px solid #102a4326;border-right:0;min-height:0}.import-steps li:last-child{border-bottom:0}.import-steps li>svg{margin-top:32px}.import-privacy,.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{grid-template-columns:34px minmax(0,1fr);gap:12px;min-height:0}.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{align-items:flex-start;margin-bottom:28px}.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{flex-direction:column;display:flex}.member-status{color:#6e4900;white-space:nowrap;background:#fff7df;border:1px solid #d99a1d;border-radius:999px;align-items:center;gap:8px;padding:9px 13px;font-size:.75rem;font-weight:800;display:inline-flex}.puzzle-hub-primary,.member-practice-card,.daily-archive-card,.coaching-privilege-preview,.puzzle-list-section{border:1px solid var(--line);background:var(--paper);border-radius:10px;box-shadow:0 16px 42px #102a430e}.puzzle-hub-primary{margin-bottom:18px;padding:24px}.puzzle-hub-primary.resume-panel{border-top:3px solid var(--sage-dark);display:block}.puzzle-hub-primary-body{grid-template-columns:172px minmax(0,1fr);align-items:center;gap:28px;display:grid}.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{color:var(--muted);margin:12px 0 16px;font-size:.75rem}.puzzle-hub-resume-copy .button{white-space:nowrap;padding-inline:16px}.daily-picker{grid-template-columns:180px minmax(0,1fr);align-items:center;gap:30px;padding:28px;display:grid}.daily-picker-board{background:var(--sage-soft);border-radius:8px;justify-self:center;width:min(100%,180px);padding:9px}.daily-picker-board-stage{position:relative}.daily-picker-board-outgoing{z-index:2;pointer-events:none;animation:.1s both daily-picker-board-exit;position:absolute;inset:0}@keyframes daily-picker-board-exit{to{opacity:0}}.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{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:15px 0 10px;display:grid}.difficulty-picker button{border:1px solid var(--line);background:var(--surface);min-height:54px;color:var(--ink-soft);cursor:pointer;text-align:left;transition:border-color .15s ease, background-color .15s ease, transform .15s var(--ease-out-ui);border-radius:5px;align-content:center;gap:2px;padding:8px 9px;display:grid}.difficulty-option-label{justify-content:space-between;align-items:center;gap:5px;min-width:0;display:flex}.difficulty-picker button strong{font-size:.7rem;font-weight:800}.difficulty-recommended-badge{border:1px solid color-mix(in srgb, var(--sage-dark) 34%, var(--line));background:var(--sage-soft);color:var(--sage-dark);letter-spacing:.01em;white-space:nowrap;border-radius:999px;flex:none;padding:1px 3px;font-size:.36rem;font-weight:750;line-height:1}.difficulty-picker button small{color:var(--muted);font-size:.56rem;font-weight:650}.difficulty-picker button.active{border-color:var(--ink);background:var(--ink-fill);color:#fff}.difficulty-picker button.active .difficulty-recommended-badge{color:#fff;background:#ffffff24;border-color:#fff6}.difficulty-picker button.active small{color:inherit}.difficulty-picker button:active{transform:scale(.97)}.daily-selection-trigger{border:1px solid color-mix(in srgb, var(--sage-dark) 28%, var(--line));background:color-mix(in srgb, var(--sage-soft) 62%, transparent);width:fit-content;min-height:42px;color:var(--ink-soft);cursor:pointer;text-align:left;transition:border-color .15s ease, background-color .15s ease, transform .15s var(--ease-out-ui);border-radius:999px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;margin:9px 0 0;padding:7px 10px;display:inline-grid}.daily-selection-trigger>svg:first-child{color:var(--sage-dark)}.daily-selection-trigger>span{gap:2px;min-width:0;display:grid}.daily-selection-trigger small{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:.54rem;font-weight:750;line-height:1}.daily-selection-trigger strong{text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;font-weight:800;line-height:1.1;overflow:hidden}.daily-selection-trigger>svg:last-child{color:var(--muted)}.daily-selection-trigger:hover,.daily-selection-trigger:focus-visible{border-color:var(--sage-dark);background:var(--sage-soft)}.daily-selection-trigger:active{transform:scale(.98)}.daily-focus-popover{width:min(280px,100vw - 24px)}.daily-focus-popover-title{color:var(--ink);font-size:.75rem;display:block}.daily-focus-options{gap:5px;margin-top:10px;display:grid}.daily-focus-option{border:1px solid var(--line);background:var(--surface);width:100%;min-height:38px;color:var(--ink-soft);cursor:pointer;text-align:left;border-radius:7px;justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;font-size:.68rem;font-weight:700;display:flex}.daily-focus-option:hover,.daily-focus-option:focus-visible,.daily-focus-option.active{border-color:var(--sage-dark);background:var(--sage-soft);color:var(--ink)}.daily-focus-option.active svg{color:var(--sage-dark)}.today-complete-card{background:var(--sage-soft);border-color:#cbdcc6;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px;display:grid}.today-complete-card>svg{color:var(--sage-dark)}.today-complete-card h2,.today-complete-card p{margin-bottom:0}.member-practice-card{border-color:var(--line);background:var(--paper);color:var(--ink);margin-top:18px;padding:30px;box-shadow:0 16px 42px #102a430e}.member-practice-heading{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.member-practice-heading .eyebrow,.member-practice-heading p{color:var(--muted)}.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(--sage-dark)}.member-practice-controls{gap:14px;margin-top:20px;display:grid}.member-practice-difficulty-picker{width:100%;margin:0}.member-practice-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.member-practice-actions .daily-selection-trigger{margin-top:0}.member-practice-actions .button{min-height:42px}.archive-controls label{color:inherit;gap:7px;font-size:.65rem;font-weight:750;display:grid}.archive-controls select,.archive-controls input{background:var(--surface);width:100%;min-height:43px;color:var(--ink);font:inherit;border:1px solid #c9d2da;border-radius:5px;padding:9px 11px}.daily-archive-card{padding:26px}.daily-archive-card h2{margin:5px 0 9px}.daily-archive-card-wide{border-top:2px solid var(--sage-dark);background:color-mix(in srgb, var(--surface) 88%, var(--sage-soft));grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);align-items:center;gap:28px;margin-top:16px;display:grid}.daily-archive-copy h2{max-width:14ch;margin:5px 0 0}.archive-controls{grid-template-columns:minmax(150px,1fr) minmax(120px,.7fr);gap:10px;margin:0 0 12px;display:grid}.daily-archive-actions{min-width:0}.coaching-privilege-preview{background:linear-gradient(120deg,#fffaf0,#fff4cf);border-color:#e2bd5c;order:1;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:30px;margin-top:18px;padding:28px 30px;display:grid}.coaching-privilege-preview h2{margin:5px 0 8px}.coaching-privilege-preview p{margin:0;font-size:.78rem}.coaching-privilege-preview ul{gap:10px;margin:0;padding:0;font-size:.73rem;font-weight:700;list-style:none;display:grid}.coaching-privilege-preview li{align-items:center;gap:8px;display:flex}.coaching-privilege-preview li svg{color:#97660b;flex:none}.puzzle-list-section{margin-top:16px;padding:24px 26px}.puzzle-activity-section{box-shadow:none;background:0 0;border-inline:0;border-radius:0}.puzzle-list-section.is-empty{padding:19px 26px}.puzzle-list-section.is-empty .section-title{align-items:center}.puzzle-session-list{background:#e4dfd5;border:1px solid #e4dfd5;border-radius:6px;gap:1px;margin-top:15px;display:grid;overflow:hidden}.puzzle-session-list>a{background:var(--surface);justify-content:space-between;align-items:center;gap:16px;min-height:62px;padding:12px 15px;transition:background-color .15s;display:flex}.puzzle-session-list>a:hover{background:var(--sage-soft)}.puzzle-session-list span{gap:4px;display:grid}.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-session-status{color:var(--sage-dark);font-variant-numeric:tabular-nums;font-weight:700}.puzzle-session-status.is-complete{color:var(--ink)}.puzzle-hub-notebook{margin-top:16px}@media (width<=1000px){.member-practice-controls{grid-template-columns:minmax(0,1fr)}.member-practice-controls .button{grid-column:1/-1;justify-self:start}.coaching-privilege-preview{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px 24px}.coaching-privilege-preview .button{grid-column:auto;justify-self:start}}@media (width<=860px){.daily-picker{grid-template-columns:160px minmax(0,1fr);gap:24px}.member-practice-controls{grid-template-columns:minmax(0,1fr)}.member-practice-controls .button{grid-column:1/-1;justify-self:start}.coaching-privilege-preview{grid-template-columns:minmax(0,1fr) auto}.coaching-privilege-preview .button{justify-self:start}}@media (width<=680px){.weekly-challenge-teaser{grid-template-columns:auto minmax(0,1fr);gap:11px;padding:14px}.puzzle-more-action-list{grid-template-columns:minmax(0,1fr)}.weekly-challenge-teaser-art{width:60px;height:60px}.weekly-challenge-teaser-copy h2{font-size:.9rem}.weekly-challenge-teaser-copy p{font-size:.65rem}.weekly-challenge-teaser-action{grid-column:2;justify-self:start}.member-status{margin-top:5px}.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}}@media (width<=389px){.puzzle-hub-primary-body{grid-template-columns:minmax(0,1fr)}.puzzle-hub-primary-body .mini-board{justify-self:center;width:min(100%,172px)}}.progress-learning-intro .streak{flex:none}.progress-overview,.progress-techniques,.progress-history{border:1px solid var(--line);background:var(--paper);border-radius:8px}.progress-overview{grid-template-columns:minmax(0,1fr) 280px;gap:34px;margin-bottom:16px;padding:26px 28px;display:grid}.progress-overview.progress-learning-next{grid-template-columns:minmax(0,1fr)}.progress-overview-heading{justify-content:space-between;align-items:flex-end;gap:20px;display:flex}.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{background:var(--sage);border-radius:999px;height:8px;margin:19px 0;overflow:hidden}.lesson-progress-track>span{border-radius:inherit;background:var(--saffron);height:100%;display:block}.resume-memory-bridge,.support-next-action,.support-boundary,.lesson-resume-bridge{border:1px solid var(--line,#d7d5ca);background:var(--surface-soft,#f4f5ee);border-radius:.75rem;gap:.35rem;padding:.9rem 1rem;display:grid}.resume-memory-bridge span,.resume-memory-bridge small,.support-next-action span,.support-boundary span,.lesson-resume-bridge span{color:var(--ink-muted,#5d665f)}.cognitive-support-settings{border-color:#8ba18f}.feature-flag-row{align-items:center}.support-profile-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin-top:1rem;display:grid}.support-profile-options>button{text-align:left;border:1px solid var(--line,#d7d5ca);background:0 0;border-radius:.75rem;gap:.35rem;min-height:7rem;padding:1rem;display:grid}.support-profile-options>button.active{border-color:var(--navy,#172f4d);box-shadow:inset 0 0 0 1px var(--navy,#172f4d);background:var(--surface-soft,#f4f5ee)}.support-session-options,.support-break-options{margin-top:.75rem}.support-custom-status{color:var(--ink-muted,#5d665f);gap:.2rem;margin:.75rem 0 0;display:grid}.support-next-action{grid-template-columns:minmax(0,1fr) minmax(15rem,.8fr);align-items:center;margin-bottom:.75rem}.support-next-action>div,.support-next-action label{gap:.25rem;display:grid}.support-next-action input{border:1px solid var(--line,#d7d5ca);background:var(--surface,#fff);border-radius:.55rem;min-height:2.65rem;padding:.6rem .75rem}.support-boundary{grid-template-columns:auto minmax(0,1fr) auto auto auto;align-items:center;margin-bottom:.75rem}.support-boundary>div{gap:.2rem;display:grid}.lesson-resume-bridge{grid-column:1/-1;margin-bottom:1rem}.cognitive-focus .puzzle-layout{grid-template-columns:minmax(0,1fr)}.cognitive-focus .puzzle-layout>aside,.cognitive-focus .mobile-coach-launcher,.cognitive-focus .mobile-coach-surface,.cognitive-focus .edit-tools>:nth-child(2),.cognitive-focus .edit-tools>:nth-child(4){display:none}@media (width<=760px){.support-profile-options,.support-next-action,.support-boundary{grid-template-columns:1fr}}.progress-next-lesson{background:var(--sage-soft);min-height:54px;color:var(--ink);border-radius:5px;justify-content:space-between;align-items:center;gap:18px;padding:10px 13px;transition:background-color .15s,transform .15s;display:flex}.progress-next-lesson span{gap:2px;display:grid}.progress-next-lesson small{color:var(--sage-dark);text-transform:uppercase;font-size:.61rem;font-weight:800}.progress-next-lesson strong{font-size:.76rem}.progress-next-lesson:hover{background:var(--sage)}.progress-next-lesson:focus-visible{outline:3px solid var(--saffron);outline-offset:2px}.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-learning-map{--technique-map-leading-width:48px;--technique-map-footprint-width:minmax(190px, 240px);--technique-map-column-gap:var(--space-3);border-top:1px solid var(--line);margin-top:18px}.recent-technique-progress{background:var(--sage-soft);box-shadow:var(--shadow-border);color:var(--ink);animation:learning-evidence-arrive .42s var(--ease-out-ui) both;border-radius:9px;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:10px;margin:14px 0 4px;padding:13px 15px;display:grid}.recent-technique-progress>svg{width:18px;color:var(--saffron-ink)}.recent-technique-progress>span{gap:2px;display:grid}.recent-technique-progress strong{font-family:var(--serif);font-size:.78rem}.recent-technique-progress small{color:var(--muted);font-size:.59rem;line-height:1.4}.technique-map-legend{grid-template-columns:var(--technique-map-leading-width) minmax(0, 1fr) var(--technique-map-footprint-width) auto;-moz-column-gap:var(--technique-map-column-gap);column-gap:var(--technique-map-column-gap);padding-block:var(--space-3) var(--space-2);color:var(--muted);text-align:center;font-size:.52rem;line-height:1.25;display:grid}.technique-map-legend-labels{gap:var(--space-1);grid-column:3;grid-template-columns:repeat(4,minmax(0,1fr));min-width:0;display:grid}.technique-evidence-method{max-width:610px;color:var(--muted);margin:0 0 8px;font-size:.57rem;line-height:1.45}.technique-evidence-method strong{color:var(--sage-dark);font-weight:750}.technique-map-level+.technique-map-level{margin-top:18px}.technique-map-level h3{color:var(--sage-dark);font-family:var(--sans);letter-spacing:.13em;text-transform:uppercase;justify-content:space-between;align-items:baseline;gap:12px;margin:0;padding:10px 0 7px;font-size:.57rem;display:flex}.technique-map-level h3 small{color:var(--muted);font-family:var(--sans);letter-spacing:.04em;text-transform:none;font-size:.5rem;font-weight:600}.technique-map-row{grid-template-columns:var(--technique-map-leading-width) minmax(0, 1fr) var(--technique-map-footprint-width) auto;-moz-column-gap:var(--technique-map-column-gap);align-items:center;column-gap:var(--technique-map-column-gap);border-top:1px solid var(--line);min-height:56px;color:var(--ink);text-decoration:none;display:grid}.technique-map-record{border:0}.technique-map-record>summary{cursor:pointer;list-style:none}.technique-map-record>summary::-webkit-details-marker{display:none}.technique-map-record>summary:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px;border-radius:4px}.technique-map-record[open]{background:color-mix(in srgb, var(--sage-soft) 48%, transparent);box-shadow:inset 2px 0 0 color-mix(in srgb, var(--sage-dark) 42%, transparent)}.technique-map-record[open] .technique-map-chevron{transform:rotate(180deg)}.technique-map-row:hover .technique-map-name strong,.technique-map-row:focus-visible .technique-map-name strong{color:var(--sage-dark)}.technique-map-name{gap:2px;display:grid}.technique-map-name strong{font-family:var(--serif);font-size:.76rem}.technique-map-name small{color:var(--muted);font-size:.55rem}.technique-map-stages{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;display:grid}.technique-map-stages i{color:#c8ccc8;place-items:center;display:grid;position:relative}.technique-map-stages i:not(:last-child):after{content:"";background:var(--line);width:calc(100% - 20px);height:1px;position:absolute;left:calc(50% + 10px)}.technique-map-stages i.complete{color:var(--sage-dark)}.technique-map-stages i.just-earned{animation:learning-stage-earned .52s var(--ease-out-ui) both}.technique-map-stages svg,.technique-map-row>svg{width:16px}.technique-map-row>svg{color:var(--muted)}.technique-map-record-cue{min-height:40px;color:var(--sage-dark);letter-spacing:.015em;white-space:nowrap;justify-content:flex-end;align-items:center;gap:5px;font-size:.52rem;font-weight:750;display:inline-flex}.technique-map-record-cue-close,.technique-map-record[open] .technique-map-record-cue-open{display:none}.technique-map-record[open] .technique-map-record-cue-close{display:inline}.technique-map-record-cue svg{width:15px;color:var(--muted)}.technique-map-chevron{transition:transform .18s var(--ease-out-ui)}.technique-evidence-panel{animation:technique-evidence-reveal .18s var(--ease-out-ui) both;padding:2px 34px 18px 18px}.technique-evidence-explanation{color:var(--muted);margin:0 0 14px;font-size:.64rem;line-height:1.5}.technique-evidence-stats{border-block:1px solid var(--line);grid-template-columns:repeat(4,minmax(0,1fr));margin:0;display:grid}.technique-evidence-stats>div{min-width:0;padding:12px 13px}.technique-evidence-stats>div+div{border-left:1px solid var(--line)}.technique-evidence-stats dt{color:var(--muted);letter-spacing:.025em;font-size:.52rem;font-weight:700}.technique-evidence-stats dd{gap:2px;margin:3px 0 0;display:grid}.technique-evidence-stats dd strong{color:var(--ink);font-family:var(--serif);font-size:1.08rem;line-height:1}.technique-evidence-stats dd small{min-height:2.8em;color:var(--muted);font-size:.48rem;line-height:1.35}.technique-evidence-footer{grid-template-columns:minmax(110px,.55fr) minmax(180px,1fr) auto;align-items:end;gap:18px;padding-top:13px;display:grid}.technique-evidence-footer>span,.technique-evidence-footer>p{gap:2px;margin:0;display:grid}.technique-evidence-footer small{color:var(--muted);font-size:.49rem}.technique-evidence-footer strong{font-size:.62rem;line-height:1.35}.technique-evidence-footer .text-link{white-space:nowrap}@keyframes technique-evidence-reveal{0%{opacity:0;transform:translateY(-3px)}}@keyframes learning-evidence-arrive{0%{opacity:0;transform:translateY(5px)}}@keyframes learning-stage-earned{0%{opacity:.2;transform:translateY(2px)}55%{color:var(--saffron-ink)}}.mini-board>span.evidence{background:#edf5e9}.mini-board>span.blocker{z-index:1;color:var(--coral-dark);background:#fbe7df;font-weight:800;position:relative}.mini-board>span.target{z-index:1;box-shadow:inset 0 0 0 2px var(--saffron);background:#fff3c9;position:relative}.mini-board>span.preview b{color:var(--sage-dark);font:inherit}.mini-board-candidates{width:100%;height:100%;color:var(--muted);font:500 clamp(.23rem, .6vw, .42rem) / 1 var(--sans);grid-template-rows:repeat(3,1fr);grid-template-columns:repeat(3,1fr);padding:1px;display:grid}.mini-board-candidates i{place-items:center;font-style:normal;display:grid;position:relative}.mini-board-candidates i.emphasized{color:var(--sage-dark);font-weight:800}.mini-board-candidates i.crossed{color:var(--coral-dark)}.mini-board-candidates i.crossed:after{content:"";background:currentColor;width:72%;height:1px;position:absolute;transform:rotate(-35deg)}.technique-moment{z-index:4;width:var(--puzzle-board-size);background:var(--paper);min-height:62px;animation:technique-moment-arrive .36s var(--ease-out-ui) both;border:1px solid #a8c0a8;border-radius:11px;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:9px;margin:10px auto 0;padding:10px 42px 10px 12px;display:grid;position:relative;box-shadow:0 16px 42px #102a4333}.technique-moment>svg{color:var(--sage-dark)}.technique-moment>span{gap:1px;min-width:0;display:grid}.technique-moment small{color:var(--muted);font-size:.52rem}.technique-moment strong{font-family:var(--serif);text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}.technique-moment>button:not(.technique-moment-close){background:var(--sage-soft);min-height:34px;color:var(--sage-dark);cursor:pointer;border:1px solid #9eb89f;border-radius:999px;padding:0 10px;font-size:.59rem;font-weight:800}.technique-moment-close{width:30px;height:30px;color:var(--muted);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;display:grid;position:absolute;top:6px;right:6px}.technique-moment-close svg{width:15px}.technique-teaching-dialog{border:1px solid var(--line);background:var(--paper);border-radius:14px;width:min(100%,720px);padding:28px;box-shadow:0 28px 80px #0d2d4440}.technique-teaching-dialog h2{margin:6px 0 8px;font-size:1.6rem}.technique-teaching-dialog>p{color:var(--muted);margin:0;font-size:.74rem}.technique-teaching-evidence{border-top:1px solid var(--line);grid-template-columns:minmax(210px,.75fr) minmax(260px,1fr);align-items:center;gap:30px;margin-top:22px;padding-top:22px;display:grid}.technique-teaching-evidence .mini-board{justify-self:center;width:100%;max-width:300px}.technique-teaching-evidence ol{counter-reset:teaching-step;gap:15px;margin:0;padding:0;list-style:none;display:grid}.technique-teaching-evidence li{counter-increment:teaching-step;gap:3px;padding-left:34px;display:grid;position:relative}.technique-teaching-evidence li:before{content:counter(teaching-step);background:var(--sage-soft);width:23px;height:23px;color:var(--sage-dark);border-radius:50%;place-items:center;font-size:.61rem;font-weight:800;display:grid;position:absolute;top:0;left:0}.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{justify-content:flex-end;gap:10px;margin-top:24px;display:flex}@keyframes technique-moment-arrive{0%{opacity:0;transform:translateY(10px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@media (width<=760px){.technique-moment{width:min(420px,100vw - 24px);position:relative}.technique-teaching-backdrop{align-items:end}.technique-teaching-dialog{max-height:calc(100dvh - 28px - var(--safe-area-bottom));border-radius:14px 14px 0 0;padding:22px 18px;overflow-y:auto}.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-learning-map{--technique-map-leading-width:40px;--technique-map-footprint-width:minmax(170px, 210px);--technique-map-column-gap:var(--space-2)}.technique-evidence-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.technique-evidence-stats>div:nth-child(3){border-left:0}.technique-evidence-stats>div:nth-child(n+3){border-top:1px solid var(--line)}.technique-evidence-footer{grid-template-columns:repeat(2,minmax(0,1fr))}.technique-evidence-footer .text-link{grid-column:1/-1;justify-self:start}}@media (width<=460px){.technique-moment{grid-template-columns:24px minmax(0,1fr) auto;padding-left:10px}.technique-moment>button:not(.technique-moment-close){padding-inline:8px}.technique-map-legend{grid-template-columns:var(--technique-map-leading-width) minmax(0, 1fr);-moz-column-gap:var(--space-2);column-gap:var(--space-2);padding-block:var(--space-2)}.technique-map-legend-labels{grid-column:2}.technique-map-row{padding-block:var(--space-2);grid-template-columns:var(--technique-map-leading-width) minmax(0, 1fr) auto;row-gap:var(--space-2)}.technique-map-footprint{grid-area:2/2/auto/-1}.technique-map-record-cue,.technique-map-row>svg{grid-area:1/3}.technique-map-name strong{font-size:.7rem}.technique-map-name small{font-size:.51rem}.technique-map-record-cue{gap:3px;font-size:.47rem}.technique-evidence-method{font-size:.52rem}.technique-evidence-panel{padding:2px 12px 16px}.technique-evidence-stats>div{padding:11px 9px}.technique-evidence-footer{gap:12px}}.progress-history-list{margin-top:17px}.progress-history-list article{border-top:1px solid var(--line);grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:13px;min-height:66px;display:grid}.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{color:var(--muted);margin:0;font-size:.65rem}.progress-history-empty{border-top:1px solid var(--line);grid-template-columns:150px minmax(0,1fr);justify-content:center;align-items:center;gap:32px;min-height:184px;margin-top:15px;padding:16px 24px;display:grid}.progress-history-empty img{-o-object-fit:contain;object-fit:contain;border-radius:28px;width:150px;height:142px}.progress-history-empty>div{justify-self:start}.progress-history-empty p{max-width:390px;color:var(--muted);margin-bottom:16px;font-size:.75rem}@media (width<=760px){.progress-learning-intro .streak{padding-bottom:0}.progress-overview{grid-template-columns:minmax(0,1fr);gap:20px;padding:22px 20px}.progress-techniques,.progress-history{padding:22px 20px}.progress-history-empty{grid-template-columns:105px minmax(0,1fr);gap:20px;min-height:160px;padding-inline:4px}.progress-history-empty img{border-radius:22px;width:105px;height:105px}}@media (width<=420px){.progress-overview-heading h2,.progress-overview-heading>strong{font-size:1.3rem}.progress-techniques .section-title{flex-direction:column;align-items:flex-start;gap:10px}.progress-history-empty{text-align:center;grid-template-columns:minmax(0,1fr);padding-top:20px}.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 (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{margin-top:10px;padding:0;font-size:.66rem;display:block}.review-queue{flex-direction:column;align-items:stretch;gap:12px;margin-bottom:16px;padding:16px}.review-queue h2{font-size:1.2rem}.review-queue>div:last-child{justify-content:flex-start;width:100%}.review-queue .button{width:100%;min-height:44px}.lesson-row{grid-template-columns:48px minmax(0,1fr) 22px;gap:8px;min-height:108px;padding:14px 4px}.lesson-row-leading{width:44px}.lesson-row-icon{width:42px;height:42px}.lesson-row-copy h2{margin:4px 0;font-size:1.2rem}.lesson-row-copy p{font-size:.69rem;line-height:1.45}.advanced-preview{gap:14px;margin-top:16px;padding:20px 0}.advanced-preview h2{margin:5px 0 6px;font-size:1.4rem}.advanced-preview p{font-size:.74rem}.progress-overview,.progress-techniques,.progress-history{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-techniques .section-title h2,.progress-history .section-title h2{margin-top:4px;font-size:1.3rem}.progress-history-empty{text-align:left;grid-template-columns:84px minmax(0,1fr);gap:16px;min-height:142px;margin-top:12px;padding:14px 0 0}.progress-history-empty img{border-radius:18px;width:84px;height:84px}.progress-history-empty>div{justify-self:start}.progress-history-empty p{margin-bottom:12px;font-size:.7rem}.progress-history-empty .button{min-height:44px}}@media (width<=340px){.progress-history-empty{text-align:center;grid-template-columns:minmax(0,1fr)}.progress-history-empty img,.progress-history-empty>div{justify-self:center}}@media (width<=389px){.puzzle-hub-primary-body{grid-template-columns:minmax(0,1fr)}.puzzle-hub-primary-body .mini-board{justify-self:center;width:min(100%,172px)}}.lesson-proof-metric{min-width:0}.lesson-proof-metric b{font-style:normal;display:block}.lesson-proof-metric.is-resolved b{animation:.26s ease-out both lesson-proof-resolve}.hidden-digit-lens .hidden-place-count.is-resolved b{color:var(--sage-dark)}.hidden-digit-lens .hidden-candidate-count{border-top:1px solid #375b452e;margin-top:9px;padding-top:9px}.hidden-digit-lens .hidden-candidate-count b{color:#8b6423}.hidden-pair-evidence-stack{gap:13px;min-width:0;display:grid}.hidden-pair-balance{animation:.22s ease-out both lesson-evidence-arrive}.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{grid-template-columns:repeat(2,auto);align-items:end;gap:12px;display:grid}.lesson-coverage-counts p{text-align:right;gap:2px;margin:0;display:grid}.lesson-coverage-counts small{color:#718085;letter-spacing:.07em;text-transform:uppercase;font-size:.42rem;font-weight:850}.lesson-coverage-counts strong{color:#183f53;font-size:.63rem;animation:.22s ease-out both lesson-proof-resolve}.swordfish-net-heading{grid-template-columns:minmax(0,1fr) auto}.xwing-coverage-counts{background:#f8fbfaa3;border:1px solid #28586b3d;padding:7px 8px}.xwing-coverage-counts p{text-align:left}.lesson-outcome-merge-copy{gap:2px;min-width:0;display:grid}.lesson-outcome-merge-copy>strong{text-transform:none}.lesson-outcome-merge-copy>em{color:#5e6e68;text-transform:none;font-size:.47rem;font-style:normal;font-weight:750}.lesson-outcome-merge.is-proved,.lesson-outcome-merge.is-commit{animation:.24s ease-out both lesson-proof-resolve}.xywing-merge .lesson-outcome-merge-copy,.xyzwing-kernel .lesson-outcome-merge-copy{text-align:center;place-items: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 (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{-webkit-print-color-adjust:exact;print-color-adjust:exact;background:#fff!important}.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);box-shadow:none;-webkit-print-color-adjust:exact;print-color-adjust:exact;-moz-column-break-after:page;break-after:page;page-break-after:always;border:0;margin:0;padding:8mm;background:#fff!important}.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{-webkit-print-color-adjust:exact;print-color-adjust:exact;font-size:17pt}.printable-instructions{margin-top:8mm;padding-top:5mm}.printable-permission{padding-top:5mm}.puzzle-page{min-height:0;background:#fff!important}.puzzle-page>:not(.puzzle-print-view){display:none!important}.puzzle-page>.puzzle-print-view{-webkit-print-color-adjust:exact;print-color-adjust:exact;flex-direction:column;align-items:center;width:100%;min-height:calc(100vh - 28mm);padding-top:8mm;color:#111!important;background:#fff!important;display:flex!important}.puzzle-print-heading{width:min(170mm,100%);margin-bottom:10mm}.puzzle-print-heading .eyebrow{color:#536a70!important}.puzzle-print-heading h1{font-family:var(--serif);margin:2mm 0 0;font-size:24pt;font-weight:560;line-height:1.05;color:#111!important}.puzzle-print-view .public-sudoku-grid{width:min(170mm,100%);box-shadow:none;border:2pt solid #111;background:#fff!important}.puzzle-print-view .public-sudoku-cell{-webkit-print-color-adjust:exact;print-color-adjust:exact;border-color:#7c878b;font-size:18pt;color:#2d6793!important}.puzzle-print-view .public-sudoku-cell.given{font-weight:780;color:#111!important}.puzzle-print-view .public-sudoku-cell.box-right,.puzzle-print-view .public-sudoku-cell.box-bottom{border-color:#111}}@media (width<=780px){.app-shell-focused .mobile-header{grid-template-columns:44px minmax(0,1fr)}.account-settings-shortcut{border-block:1px solid var(--line);min-height:76px;color:var(--ink);grid-template-columns:38px minmax(0,1fr) 18px;align-items:center;gap:11px;margin-bottom:22px;padding:10px 0;display:grid}.account-settings-shortcut>svg{width:18px;color:var(--muted)}.app-shell-focused .mobile-header-actions{display:none}.mobile-header-back{place-items:center;display:grid}.app-shell-focused .page,.app-shell-focused .page.app-page{padding-bottom:calc(24px + var(--safe-area-bottom))}.custom-puzzle-page{--app-page-inline-gutter:14px;--app-page-padding-top:18px}.page.app-page.custom-puzzle-page>.app-page-header{display:none}.custom-puzzle-layout{grid-template-columns:minmax(0,1fr);grid-template-areas:"form""preview""actions";gap:0}.custom-puzzle-page:not(.is-reviewing) .custom-puzzle-preview{display:none}.entry-method-heading{grid-template-columns:28px minmax(0,1fr);gap:10px}.photo-import-heading h2{margin:0 0 5px;font-size:clamp(1.55rem,7vw,1.85rem);line-height:1.08}.photo-import-heading p{font-size:.82rem;line-height:1.45}.photo-input-actions{grid-template-columns:minmax(0,1fr);gap:8px;margin:18px 0 10px;display:grid}.custom-puzzle-form label.photo-input-button{width:100%;min-height:48px}.scanner-trust{font-size:.72rem}.scanner-trust-strip{grid-template-columns:minmax(0,1fr);gap:5px;display:grid}.scanner-trust-strip span{width:fit-content}.mobile-manual-entry-trigger{width:100%;min-height:48px;margin-top:18px;display:inline-flex}.manual-entry-panel,.custom-puzzle-page.is-manual-entry .photo-import-section{display:none}.custom-puzzle-page.is-manual-entry .manual-entry-panel{display:block}.mobile-manual-entry-back{min-height:44px;margin-bottom:4px;display:inline-flex}.manual-entry-panel .custom-puzzle-divider{display:none}.manual-entry-panel .manual-entry-heading h2{margin:0 0 6px;font-size:clamp(1.55rem,7vw,1.85rem)}.manual-entry-panel .manual-entry-heading p{font-size:.82rem;line-height:1.45}.custom-grid-label-row{margin-top:18px}.custom-grid-label-row span{font-size:.7rem}.custom-puzzle-form textarea{letter-spacing:.06em;border-radius:12px;min-height:126px;max-height:34dvh;padding:13px;font-size:.9rem;line-height:1.45}.custom-puzzle-page.is-reviewing{--app-page-inline-gutter:6px;--app-page-padding-top:9px}.custom-puzzle-page.is-reviewing .custom-puzzle-form{display:none}.custom-puzzle-preview{width:100%;max-width:none}.recognized-grid-heading{scroll-margin-top:calc(68px + var(--safe-area-top));margin:0 6px 10px}.recognized-grid-heading:focus{outline:0}.recognized-grid-heading .eyebrow{margin-bottom:7px;font-size:.62rem}.recognized-grid-heading>p{display:none}.recognized-grid-status{min-height:44px;padding:8px 10px;font-size:.78rem}.recognized-grid-status-copy small{font-size:.7rem}.recognized-grid-review-actions{grid-template-columns:minmax(0,1fr);gap:6px;display:grid}.recognized-grid-photo-actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.recognized-grid-edit-toggle,.recognized-grid-photo-action{white-space:normal;justify-content:center;width:100%;min-height:44px}.cell-photo-review{grid-template-columns:72px minmax(0,1fr);margin:0 6px 8px;padding:9px}.cell-photo-review-copy h3{font-size:.9rem}.cell-photo-review-copy p,.cell-photo-review-copy small{font-size:.72rem}.recognized-grid-heading .photo-scan-status{margin-top:0;font-size:.8rem}.recognized-grid-heading .photo-scan-progress{gap:8px;margin-top:8px}.photo-scan-steps li{font-size:.67rem}.recognized-grid-tools{min-height:44px;margin:8px 6px 0}.recognized-grid-tools button{min-height:44px;padding:8px 12px}.recognized-grid-tool-help{display:none}.recognized-grid-tools.is-painting .recognized-grid-tool-help{display:inline}.recognized-grid-keypad{gap:6px;margin:8px 6px 0}.recognized-grid-keypad button{min-height:44px;padding:6px}.custom-puzzle-actions{width:auto;max-width:none;margin:10px 6px 0}.custom-puzzle-action-bar{grid-template-columns:minmax(0,1fr);display:grid}.custom-puzzle-action-bar>.button{width:100%;min-height:50px}.custom-puzzle-import-action{grid-column:auto;justify-self:stretch}.custom-puzzle-assurance{grid-template-columns:34px minmax(0,1fr);padding:12px}.scanner-contribution-backdrop{padding:max(10px, var(--safe-area-top)) 10px max(10px, var(--safe-area-bottom));place-items:end center;overflow:hidden}.scanner-contribution-dialog{top:auto;right:max(10px, var(--safe-area-right));bottom:max(10px, var(--safe-area-bottom));left:max(10px, var(--safe-area-left));width:auto;height:min(88dvh,760px);max-height:calc(100vh - max(20px, var(--safe-area-top) + var(--safe-area-bottom)));max-height:calc(100dvh - max(20px, var(--safe-area-top) + var(--safe-area-bottom)));touch-action:pan-y;border-radius:16px;min-height:0;padding:18px;position:fixed;transform:none}.scanner-contribution-preview img{max-height:26dvh}.scanner-contribution-options{grid-template-columns:minmax(0,1fr)}.scanner-contribution-options>label{min-height:70px}.scanner-contribution-dialog-actions .button{width:100%}}@media (prefers-reduced-motion:reduce){.sudoku-cell,.candidate-grid i,.number-pad button,.number-key-value,.number-key-complete-icon,.return-promise,.return-promise>button{transition:none}.sudoku-cell.placement-success:before,.sudoku-cell.placement-success .cell-value,.cell-success-mark,.recent-technique-progress,.technique-map-stages i.just-earned{animation:none}}html[data-theme=dark] .language-toggle,html[data-theme=dark] .theme-toggle{border-color:var(--line);background:var(--surface);box-shadow:inset 0 1px 2px #0000003d}html[data-theme=dark] .coach-chat-header,html[data-theme=dark] .coach-status .puzzle-goal{background:color-mix(in srgb, var(--paper) 92%, transparent)}html[data-theme=dark] .coach-support-action{background:color-mix(in srgb, var(--sage) 44%, var(--paper))}html[data-theme=dark] .coach-quick-action{border-color:color-mix(in srgb, var(--sage-dark) 62%, var(--line));background:var(--sage-soft);color:var(--ink)}html[data-theme=dark] .coach-quick-action:hover:not(:disabled){background:color-mix(in srgb, var(--sage) 72%, var(--paper))}html[data-theme=dark] .coach-quick-action:disabled{border-color:var(--line);background:var(--surface-soft);color:var(--muted)}html[data-theme=dark] .coach-next-action,html[data-theme=dark] .coach-frequency-feedback,html[data-theme=dark] .coach-frequency-confirmation{border-color:var(--line)}html[data-theme=dark] .lesson-board,html[data-theme=dark] .lesson-board-cell{background:var(--board-cell)}html[data-theme=dark] .lesson-board-cell{border-color:var(--board-line)}html[data-theme=dark] .lesson-board-cell.related{background:var(--board-related)}html[data-theme=dark] .lesson-board-cell.pattern,html[data-theme=dark] .rules-primer .pattern{background:var(--board-guide)}html[data-theme=dark] .lesson-board-cell.given.temporary{background:color-mix(in srgb, var(--sage) 18%, var(--board-cell));color:var(--ink)}html[data-theme=dark] .lesson-board-cell.given.temporary:after{border-color:var(--sage-dark)}html[data-theme=dark] .lesson-board-cell.highlighted,html[data-theme=dark] .rules-primer .highlighted{background:linear-gradient(145deg,#59471f,#6b5422);box-shadow:inset 0 0 0 1.5px #f2b842c2,inset 0 1px #ffffff14}html[data-theme=dark] .lesson-board.selectable .lesson-board-cell:hover,html[data-theme=dark] .lesson-board.selectable .lesson-board-cell:focus-visible{background:var(--board-target)}html[data-theme=dark] .lesson-board-cell.selected{background:var(--board-selected)}html[data-theme=dark] .proof-narration,html[data-theme=dark] .prerequisite-callout{background:color-mix(in srgb, var(--saffron) 12%, var(--paper))}html[data-theme=dark] .proof-narration .worked-step-feedback{background:color-mix(in srgb, var(--coral) 14%, var(--paper));color:var(--coral-dark)}@media (width<=620px){.appearance-options{grid-template-columns:1fr}.appearance-options>button{grid-template-columns:24px minmax(0,1fr);align-items:center;min-height:72px}}@media (width<=390px){.mobile-header{height:calc(50px + var(--safe-area-top));padding-inline:max(10px, var(--safe-area-left)) max(10px, var(--safe-area-right));grid-template-columns:38px minmax(0,1fr) auto}.mobile-header .brand-mark{border-radius:9px;width:34px;height:34px}.mobile-account-shortcut,.mobile-theme-picker .theme-rail-button{width:38px;height:38px}.header-title{padding-left:8px;font-size:.82rem}.app-shell:not(.app-shell-immersive) .page.app-page{--app-page-inline-gutter:12px;--app-page-padding-top:14px;--app-page-padding-bottom:calc(var(--mobile-tabbar-height) + 28px + var(--safe-area-bottom))}.page.app-page>.app-page-header{gap:5px;margin-bottom:12px}.page.app-page>.app-page-header .eyebrow{letter-spacing:.15em;margin-bottom:4px;font-size:.56rem}.page.app-page>.app-page-header h1{max-width:340px;margin-bottom:4px;font-size:clamp(1.75rem,8.6vw,2rem);line-height:.98}.page.app-page>.app-page-header p{max-width:340px;font-size:.72rem;line-height:1.3}.mobile-tabbar{min-height:calc(58px + var(--safe-area-bottom));padding-top:3px}.mobile-tabbar a{border-radius:9px;gap:2px;min-height:50px;font-size:.52rem}.mobile-tabbar a svg{width:18px;height:18px}.home-page>.app-page-header{grid-template-columns:minmax(0,1fr) auto;align-items:center}.home-page>.app-page-header .app-page-header-aside{grid-area:1/2}.home-page .streak{border:1px solid var(--line);background:var(--sage-soft);border-radius:999px;min-height:30px;padding:4px 8px;font-size:.62rem}.home-primary{gap:10px}.puzzle-hub-primary,.puzzle-hub-primary.resume-panel,.home-page .resume-panel{border:1px solid var(--line);border-top:3px solid var(--sage-dark);border-radius:12px;margin-bottom:10px;padding:12px;box-shadow:0 10px 24px #102a4312}.resume-panel,.puzzle-hub-primary-body{display:grid}.resume-panel .puzzle-hub-primary-body,.puzzle-hub-primary-body{grid-template-columns:122px minmax(0,1fr);align-items:center;gap:12px}.resume-panel .mini-board,.puzzle-hub-primary-body .mini-board{grid-area:auto/1;justify-self:start;width:122px}.puzzle-hub-resume-copy h2{margin:3px 0 6px;font-size:1.05rem;line-height:1.05}.puzzle-hub-resume-copy .eyebrow{font-size:.5rem}.puzzle-hub-resume-copy .difficulty{padding:4px 6px;font-size:.5rem}.puzzle-hub-resume-copy .resume-status{display:none}.puzzle-hub-resume-copy .button,.resume-copy .button{justify-content:center;width:100%;min-height:40px;margin-top:9px;padding-inline:9px;font-size:.68rem}.practice-week-strip{gap:7px;margin:2px 0 12px;padding:7px 0 10px}.practice-week-heading strong{font-family:var(--sans);font-size:.68rem;font-weight:800}.practice-week-heading>small{font-size:.55rem}.practice-week-days{gap:3px}.practice-week-days>span{border-radius:7px;gap:1px;min-height:34px}.practice-week-days small{font-size:.45rem}.practice-week-days i{font-size:.6rem}.puzzles-hub-page>.app-page-header h1{max-width:310px}.coaching-privilege-preview{border-radius:12px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;min-height:0;margin-top:8px;padding:12px}.coaching-privilege-preview h2{margin:3px 0 0;font-size:1rem;line-height:1.08}.coaching-privilege-preview p,.coaching-privilege-preview ul{display:none}.coaching-privilege-preview .button{min-height:40px;padding-inline:10px;font-size:.64rem}.coaching-privilege-preview .button svg{width:14px}.lessons-page .library-count{margin-top:2px;font-size:.58rem}.lesson-catalog-details>summary{align-items:center;min-height:44px;margin:5px 0 10px;font-size:.72rem;display:flex}.lessons-page .lesson-row{grid-template-columns:38px minmax(0,1fr) 18px;gap:9px;min-height:76px;padding:9px 4px}.lessons-page .lesson-row-leading{width:36px}.lessons-page .lesson-row-icon{width:34px;height:34px}.lessons-page .lesson-row-copy>span{letter-spacing:.11em;font-size:.47rem}.lessons-page .lesson-row-copy h2{margin:3px 0 0;font-size:.94rem;line-height:1.08}.lessons-page .lesson-row-copy p{display:none}.lessons-page .lesson-row-meta svg{width:15px}.lessons-page .advanced-preview{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;min-height:0;margin-top:10px;padding:12px 4px;display:grid}.lessons-page .advanced-preview h2{margin:3px 0 0;font-size:.96rem;line-height:1.08}.lessons-page .advanced-preview p{display:none}.lessons-page .advanced-preview .button{min-height:40px;padding-inline:10px;font-size:.62rem}.lessons-page .advanced-preview .button svg{width:14px}.page.app-page.progress-page>.app-page-header{margin-bottom:10px}.page.app-page.progress-page>.progress-first-step{min-height:0;padding:var(--space-3);align-items:center;gap:var(--space-3);border:1px solid var(--line);background:var(--paper);box-shadow:none;text-align:left;border-radius:12px;grid-template-columns:64px minmax(0,1fr);margin:0 0 16px;display:grid}.page.app-page.progress-page>.progress-first-step>img{border-radius:12px;grid-area:1/1/span 2;width:64px;height:64px;margin:0}.progress-techniques,.progress-history,.progress-overview{box-shadow:none;border-inline:0;border-radius:0;padding:12px 10px}.progress-techniques{margin:0;padding-top:4px}.progress-techniques .section-title{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px;margin-bottom:4px;display:grid}.progress-techniques .section-title h2{margin-top:3px;font-size:1.12rem}.progress-techniques .section-title .text-link{min-height:36px;font-size:.62rem}.technique-learning-map{margin-top:8px}.technique-map-legend{gap:3px;min-height:28px;padding-block:5px;font-size:.43rem}.technique-map-level+.technique-map-level{margin-top:8px}.technique-map-level h3{padding:7px 0 5px;font-size:.5rem}.technique-map-row{gap:6px;min-height:48px;padding:5px 0}.technique-map-name strong{font-size:.66rem}.technique-map-name small{font-size:.48rem}.technique-map-stages{gap:3px}.technique-map-stages svg,.technique-map-row>svg{width:14px}.technique-map-stages i:not(:last-child):after{width:calc(100% - 16px);left:calc(50% + 8px)}.settings-page>.app-page-header{margin-bottom:8px}.settings-page>.app-page-header h1{font-size:1.68rem}.settings-page>.app-page-header p{display:none}.settings-group{padding-bottom:16px}.settings-group+.settings-group{padding-top:16px}.settings-group>h2,.settings-group>div:first-child>h2{font-family:var(--sans);margin:0 0 4px;font-size:.78rem;font-weight:800}.email-reminder-settings{border:1px solid color-mix(in srgb, var(--sage-dark) 22%, var(--line));box-shadow:var(--shadow-border);border-radius:16px;margin-bottom:2px;padding:14px 12px 13px}.email-reminder-settings:after{width:154px;height:154px;top:-72px;right:-74px}.email-reminder-heading{gap:10px}.email-reminder-icon{border-radius:11px;flex-basis:36px;width:36px;height:36px}.email-reminder-icon svg{width:17px;height:17px}.email-reminder-kicker{margin-bottom:2px;font-size:.55rem}.email-reminder-heading h2{font:800 .98rem/1.12 var(--sans);margin-bottom:5px}.email-reminder-heading p{font-size:.68rem;line-height:1.35}.email-reminder-settings>.settings-note{margin-top:13px;font-size:.64rem;line-height:1.35}.email-reminder-sign-in-note{gap:5px;margin-top:14px}.email-reminder-sign-in-link{min-height:44px;padding-inline:2px;font-size:.68rem}.email-reminder-time{gap:7px 10px;margin-top:10px;padding:10px 10px 0}.email-reminder-time label{font:750 .7rem/1.2 var(--sans)}.email-reminder-time input{border-radius:9px;width:104px;min-height:34px;padding:4px 7px;font-size:.68rem}.email-reminder-time select{border-radius:9px;min-height:34px;padding:4px 7px;font-size:.68rem}.email-reminder-time small{font-size:.58rem;line-height:1.3}.email-reminder-status{font-size:.64rem}.appearance-settings>div:first-child p,.feedback-settings>div:first-child p,.play-presets>div:first-child p,.play-presets>small{display:none}.appearance-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:9px}.appearance-options>button{text-align:center;grid-template-columns:1fr;align-content:center;justify-items:center;gap:3px;min-height:64px;padding:8px 5px}.appearance-options svg{width:18px;height:18px}.appearance-options strong{font:750 .56rem/1.15 var(--sans)}.appearance-options small{display:none}.appearance-options i{width:6px;height:6px;top:6px;right:6px}.setting-row{gap:12px;min-height:58px}.setting-row strong{font-family:var(--sans);font-size:.7rem;font-weight:780}.setting-row span{margin-top:2px;font-size:.55rem;line-height:1.25}.toggle{flex:none;width:40px;height:24px}.cognitive-support-settings>small{color:var(--muted);margin-top:6px;font-size:.52rem;display:block}.feedback-settings .coach-preference,.coach-preference{padding:10px 0 0}.coach-preference>strong{font-family:var(--sans);font-size:.7rem;font-weight:780}.coach-preference>span{font-size:.54rem}.segmented-control,.support-session-options,.support-break-options{width:100%;margin-top:7px}.segmented-control button{min-height:42px;padding-inline:5px;font-size:.6rem}.support-profile-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:8px}.support-profile-options>button{text-align:center;align-content:center;min-height:64px;padding:8px 6px}.support-profile-options>button strong{font-size:.6rem}.support-profile-options>button span{display:none}.play-preset-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:8px}.play-preset-options button{text-align:center;border-radius:9px;justify-content:center;align-items:center;gap:4px;min-height:68px;padding:8px 5px}.play-preset-options button svg{width:18px;height:18px}.play-preset-options button strong{font-size:.58rem;line-height:1.15}.play-preset-options button span{display:none}.setting-language-row{grid-template-columns:minmax(0,1fr) auto;gap:10px;min-height:58px;padding-top:6px}.setting-language-row>p{margin:0;font-size:.58rem;line-height:1.25}.setting-language-row .language-picker{width:auto}.setting-language-row .language-toggle{width:104px}.local-data-settings>div{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.local-data-settings p{margin:0;font-size:.56rem;line-height:1.3}.local-data-settings .text-button{white-space:nowrap;min-height:42px;padding-inline:8px;font-size:.6rem}}html[data-theme=dark] body,html[data-theme=dark] .app-shell,html[data-theme=dark] .puzzle-page{background:var(--paper)}html[data-theme=dark] .public-sudoku-cell.coach-highlighted{background:color-mix(in srgb, var(--sage) 52%, var(--board-cell))}html[data-theme=dark] .public-sudoku-cell.coach-target,html[data-theme=dark] .public-sudoku-cell.coach-target:before{background:color-mix(in srgb, var(--saffron) 36%, var(--board-cell))}html[data-theme=dark] .nav-link:hover,html[data-theme=dark] .sidebar-sign-out:hover:not(:disabled){background:#ffffff0f}html[data-theme=dark] .nav-link{color:var(--muted)}html[data-theme=dark] .nav-link.active{color:var(--on-ink);box-shadow:0 5px 18px #00000052}html[data-theme=dark] .sidebar-upgrade{color:var(--saffron-ink);border-color:#8a712d}html[data-theme=dark] .language-rail-button,html[data-theme=dark] .theme-rail-button{border-color:var(--line);background:color-mix(in srgb, var(--paper) 82%, transparent)}html[data-theme=dark] .language-rail-button:hover,html[data-theme=dark] .theme-rail-button:hover{background:var(--surface)}html[data-theme=dark] .mobile-header,html[data-theme=dark] .mobile-tabbar{background:color-mix(in srgb, var(--ivory) 94%, transparent)}html[data-theme=dark] .mobile-tabbar a{color:var(--muted)}html[data-theme=dark] .app-update-icon{background:color-mix(in srgb, var(--surface) 72%, transparent)}html[data-theme=dark] .price-plan{background:color-mix(in srgb, var(--paper) 90%, transparent)}html[data-theme=dark] .upgrade-page{background:radial-gradient(circle at 50% 30%, var(--sage-soft), transparent 30%), var(--ivory)}html[data-theme=dark] .coach-preference,html[data-theme=dark] .setting-row,html[data-theme=dark] .setting-language-row,html[data-theme=dark] .puzzle-option-row,html[data-theme=dark] .puzzle-options-section.compact{border-color:var(--line)}html[data-theme=dark] .toggle i{background:#f7fafc}html[data-theme=dark] .puzzle-options-settings-link:hover,html[data-theme=dark] .puzzle-options-settings-link:focus-visible,html[data-theme=dark] .puzzle-options-support-button:hover,html[data-theme=dark] .puzzle-options-support-button:focus-visible,html[data-theme=dark] .puzzle-options-danger button:hover:not(:disabled),html[data-theme=dark] .puzzle-options-danger button:focus-visible,html[data-theme=dark] .lesson-row:hover{background:var(--surface-soft)}html[data-theme=dark] .puzzle-goal,html[data-theme=dark] .coach-chat-header,html[data-theme=dark] .coach-status .puzzle-goal,html[data-theme=dark] .recovery-upgrade-note{background:color-mix(in srgb, var(--paper) 88%, transparent)}html[data-theme=dark] .puzzle-goal.complete,html[data-theme=dark] .coach-status .puzzle-goal.complete,html[data-theme=dark] .lesson-row.completed{background:color-mix(in srgb, var(--sage) 68%, var(--paper))}html[data-theme=dark] .lesson-row.locked{background:color-mix(in srgb, var(--paper-deep) 58%, var(--paper))}html[data-theme=dark] .coach-thread{background:linear-gradient(color-mix(in srgb, var(--ivory) 91%, transparent), color-mix(in srgb, var(--ivory) 91%, transparent)), radial-gradient(circle at 1px 1px, #91c2a129 1px, transparent 1.2px);scrollbar-color:var(--line-strong) transparent;background-size:auto,18px 18px}html[data-theme=dark] .coach-turn.learner .coach-bubble{border-color:var(--line-strong);background:var(--blue-wash);color:var(--ink)}html[data-theme=dark] .number-pad button,html[data-theme=dark] .puzzle-number-pad button.digit-complete{background:var(--surface)}html[data-theme=dark] .puzzle-number-pad[data-mode=notes] .number-key,html[data-theme=dark] .number-pad button:hover,html[data-theme=dark] .number-pad button.selected-answer{background:var(--blue-wash)}html[data-theme=dark] .puzzle-shortcut-badge,html[data-theme=dark] .desktop-shortcut-help kbd{border-color:var(--line-strong);background:color-mix(in srgb, var(--ivory) 94%, transparent)}html[data-theme=dark] .desktop-shortcut-help,html[data-theme=dark] .edit-tools button:not(.active):not([aria-pressed=true]){color:var(--muted)}html[data-theme=dark] .pause-overlay{background:color-mix(in srgb, var(--ivory) 96%, transparent)}html[data-theme=dark] .sudoku-cell.needs-review,html[data-theme=dark] .solution-instruction-board .sudoku-cell.solve-temporary{background:var(--board-guide)}html[data-theme=dark] .solution-instruction-board .sudoku-cell.solve-evidence,html[data-theme=dark] .solution-instruction-board .sudoku-cell.solve-preview{background:var(--board-match)}html[data-theme=dark] .solution-instruction-board .sudoku-cell.solve-blocker,html[data-theme=dark] .solution-instruction-board .sudoku-cell.solve-elimination-target,html[data-theme=dark] .solution-instruction-board .sudoku-cell.solve-contradiction{background:var(--board-error)}html[data-theme=dark] .solution-instruction-board .sudoku-cell.solve-target{background:var(--board-target)}html[data-theme=dark] .lesson-choice-grid button{background:var(--board-cell)}html[data-theme=dark] .lesson-choice-grid button.correct{background:var(--sage)}html[data-theme=dark] .lesson-choice-grid button.wrong{background:var(--board-error)}html[data-theme=dark] .puzzle-dialog-icon,html[data-theme=dark] .review-queue,html[data-theme=dark] .checkout-status{background:color-mix(in srgb, var(--saffron) 14%, var(--paper))}html[data-theme=dark] .puzzle-dialog-icon.success{background:var(--sage-soft)}html[data-theme=dark] .puzzle-dialog-icon.danger{background:color-mix(in srgb, var(--coral) 16%, var(--paper))}html[data-theme=dark] .coaching-privilege-preview{border-color:color-mix(in srgb, var(--saffron) 48%, var(--line));background:linear-gradient(120deg, color-mix(in srgb, var(--saffron) 7%, var(--surface-raised)), color-mix(in srgb, var(--saffron) 12%, var(--paper)));box-shadow:0 16px 42px #00000038}html[data-theme=dark] .coaching-privilege-preview li svg{color:var(--saffron-ink)}html[data-theme=dark] .member-status{border-color:color-mix(in srgb, var(--saffron) 52%, var(--line));background:color-mix(in srgb, var(--saffron) 12%, var(--surface-raised));color:var(--saffron-ink)}html[data-theme=dark] .account-plan-offer,html[data-theme=dark] .checkout-confirmation{border-color:color-mix(in srgb, var(--saffron) 42%, var(--line));background:color-mix(in srgb, var(--saffron) 8%, var(--surface-raised))}html[data-theme=dark] .account-action-kicker{color:var(--saffron-ink)}html[data-theme=dark] .signin-method-row{background:var(--surface-raised)}html[data-theme=dark] .checkout-confirmation.active{border-color:color-mix(in srgb, var(--sage-dark) 38%, var(--line));background:var(--sage-soft)}html[data-theme=dark] .subscription-delete-warning,html[data-theme=dark] .account-dialog-icon{border-color:color-mix(in srgb, var(--coral) 38%, var(--line));background:var(--board-error);color:var(--coral-dark)}html[data-theme=dark] .account-avatar{background:var(--sage-soft)}html[data-theme=dark] .level-options button{border-color:var(--line);background:var(--surface);color:var(--ink)}html[data-theme=dark] .level-options button.selected{border-color:var(--sage-dark);background:var(--sage-soft);box-shadow:0 10px 30px #0003}html[data-theme=dark] .custom-puzzle-form label.photo-input-button.button-secondary,html[data-theme=dark] .mobile-manual-entry-trigger{border-color:var(--line-strong);background:var(--surface-raised);color:var(--ink)}html[data-theme=dark] .mobile-coach-card{border-color:var(--line);background:var(--surface-raised);box-shadow:0 5px 18px #0003}html[data-theme=dark] .mobile-coach-launcher.has-active-mode .mobile-coach-card{border-color:var(--line);background:var(--surface-raised);color:var(--ink)}html[data-theme=dark] .mobile-coach-launcher.has-active-mode .mobile-coach-card.has-guidance-status{box-shadow:none;background:0 0;border:0}html[data-theme=dark] .mobile-coach-launcher.has-active-mode .mobile-coach-active-mode{color:var(--sage-dark)}html[data-theme=dark] .mobile-coach-launcher.has-unread .mobile-coach-card{border-color:color-mix(in srgb, var(--sage-dark) 58%, var(--line));background:color-mix(in srgb, var(--sage-soft) 62%, var(--surface-raised))}html[data-theme=dark] .mobile-coach-sheet{border-color:var(--line);background:var(--paper);box-shadow:0 -18px 48px #00000057}html[data-theme=dark] .mobile-coach-sheet-header,html[data-theme=dark] .mobile-coach-sheet-grabber{background:var(--surface-raised)}html[data-theme=dark] .mobile-coach-sheet-grabber>span,html[data-theme=dark] .mobile-coach-sheet-header:before{background:var(--line-strong)}html[data-theme=dark] .public-resource-page{background:radial-gradient(circle at 88% 8%, #d8a54417, transparent 28rem), linear-gradient(180deg, var(--ivory) 0, var(--paper) 38rem)}html[data-theme=dark] .import-privacy{background:color-mix(in srgb, var(--sage-soft) 68%, var(--surface-raised))}html[data-theme=dark] .embed-code-panel pre{border-color:var(--line);background:var(--surface-raised);color:var(--ink)}html[data-theme=dark] .embed-language button{border-color:var(--line-strong)}html[data-theme=dark] .embed-language button.active{border-color:var(--sage-dark);background:var(--ink-fill);color:var(--on-ink)}html[data-theme=dark] .public-sudoku-cell.answer{color:#8fc3e8}html[data-theme=dark] .auth-provider-button.google{color:#1f1f1f;background:#f8f9fa;border-color:#747775}html[data-theme=dark] .auth-provider-button.google:hover:not(:disabled){background:#fff;border-color:#aeb4b1}html[data-theme=dark] .auto-solve-panel{border-color:var(--line);background:var(--paper);box-shadow:0 14px 38px #00000047}html[data-theme=dark] .auto-solve-panel-header{background:color-mix(in srgb, var(--paper) 96%, transparent)}html[data-theme=dark] .auto-solve-panel-icon,html[data-theme=dark] .puzzle-recovery-panel .auto-solve-panel-icon.success{background:var(--sage-soft)}html[data-theme=dark] .recovery-upgrade-note>svg{color:var(--saffron)}html[data-theme=dark] .auto-solve-panel-body{background:linear-gradient(color-mix(in srgb, var(--ivory) 91%, transparent), color-mix(in srgb, var(--ivory) 91%, transparent)), radial-gradient(circle at 1px 1px, #91c2a129 1px, transparent 1.2px);background-size:auto,18px 18px}html[data-theme=dark] .auto-solve-panel .button-ghost,html[data-theme=dark] .auto-solve-panel .button-secondary,html[data-theme=dark] .auto-solve-confirm-dialog .button-ghost,html[data-theme=dark] .puzzle-recovery-panel .button-ghost{border-color:var(--line-strong);background:var(--surface)}html[data-theme=dark] .auto-solve-note-review{border-color:color-mix(in srgb, var(--saffron) 34%, var(--line));background:color-mix(in srgb, var(--saffron) 10%, var(--surface-raised))}html[data-theme=dark] .auto-solve-note-review p{color:var(--muted)}html[data-theme=dark] .auto-solve-note-review.is-idle>.button,html[data-theme=dark] .auto-solve-note-unit-choices .button{border-color:var(--line-strong);background:var(--surface);box-shadow:none;color:var(--ink)}html[data-theme=dark] .auto-solve-proof-list button:hover,html[data-theme=dark] .auto-solve-note-review.is-idle>.button:hover,html[data-theme=dark] .auto-solve-note-unit-choices .button:hover{border-color:color-mix(in srgb, var(--sage-dark) 48%, var(--line));background:var(--surface-soft)}html[data-theme=dark] .auto-solve-walkthrough{background:0 0;border-color:#0000}html[data-theme=dark] .auto-solve-advanced-invite{border-color:var(--line);background:var(--surface-raised)}html[data-theme=dark] .auto-solve-advanced-choices button:hover:not(:disabled){border-color:color-mix(in srgb, var(--sage-dark) 48%, var(--line));background:var(--surface-soft)}html[data-theme=dark] .auto-solve-advanced-choices button[aria-pressed=true]{border-color:var(--sage-dark);background:var(--sage-soft)}html[data-theme=dark] .auto-solve-advanced-feedback{background:color-mix(in srgb, var(--coral) 14%, var(--surface-raised))}html[data-theme=dark] .auto-solve-advanced-feedback.is-correct{background:color-mix(in srgb, var(--sage) 22%, var(--surface-raised))}html[data-theme=dark] .auto-solve-advanced-feedback.is-unknown{border-left-color:var(--saffron);background:color-mix(in srgb, var(--saffron) 14%, var(--surface-raised))}html[data-theme=dark] .button-secondary{border-color:var(--line-strong);background:var(--surface);color:var(--ink);box-shadow:none}html[data-theme=dark] .button-secondary:hover:not(:disabled){border-color:color-mix(in srgb, var(--sage-dark) 48%, var(--line));background:var(--surface-soft)}html[data-theme=dark] .lesson-page [class*=-primer-workspace],html[data-theme=dark] .lesson-page [class*=-primer-stage],html[data-theme=dark] .lesson-page [class*=-visual],html[data-theme=dark] .lesson-page .rules-visual,html[data-theme=dark] .lesson-page .scanning-visual,html[data-theme=dark] .lesson-page .candidate-primer-visual,html[data-theme=dark] .lesson-page .routine-primer-board{border-color:var(--line);background:var(--surface-raised)}html[data-theme=dark] .lesson-page .routine-method-strip,html[data-theme=dark] .lesson-page .routine-scan-status,html[data-theme=dark] .lesson-page .routine-primer-workspace{border-color:var(--line);background:var(--surface)}html[data-theme=dark] .lesson-page .chain-proof-tape,html[data-theme=dark] .lesson-page .chain-proof-node,html[data-theme=dark] .lesson-page .forcing-source-card,html[data-theme=dark] .lesson-page .forcing-branch-sheet,html[data-theme=dark] .lesson-page .forcing-branch-sheet>header,html[data-theme=dark] .lesson-page .forcing-comparison-tray{border-color:var(--line);background:var(--surface-soft);color:var(--ink)}html[data-theme=dark] .lesson-page .chain-proof-node.revealed,html[data-theme=dark] .lesson-page .forcing-branch-sheet.is-survives,html[data-theme=dark] .lesson-page .forcing-comparison-tray.is-commit{border-color:color-mix(in srgb, var(--sage-dark) 44%, var(--line));background:color-mix(in srgb, var(--sage) 20%, var(--surface-raised))}html[data-theme=dark] .lesson-page .evidence-badge,html[data-theme=dark] .lesson-page .try-feedback,html[data-theme=dark] .cell-task-callout,html[data-theme=dark] .process-feedback{border-color:var(--line);background:var(--surface-soft);color:var(--ink)}html[data-theme=dark] .lesson-page .evidence-badge{border-left-color:var(--sage-dark)}html[data-theme=dark] .lesson-page [class*=choice-grid] button,html[data-theme=dark] .lesson-page [class*=choice-grid] button>span{border-color:var(--line);background:var(--surface);color:var(--ink)}html[data-theme=dark] .lesson-page [class*=choice-grid] button:hover:not(:disabled),html[data-theme=dark] .lesson-page [class*=choice-grid] button:focus-visible{border-color:color-mix(in srgb, var(--sage-dark) 48%, var(--line));background:var(--surface-soft)}html[data-theme=dark] .lesson-page [class*=choice-grid] button.correct,html[data-theme=dark] .lesson-page [class*=primer-action]>p.correct,html[data-theme=dark] .process-feedback.correct{border-color:color-mix(in srgb, var(--sage-dark) 48%, var(--line));background:color-mix(in srgb, var(--sage) 22%, var(--surface-raised))}html[data-theme=dark] .lesson-page [class*=choice-grid] button.wrong,html[data-theme=dark] .lesson-page [class*=primer-action]>p.wrong,html[data-theme=dark] .process-feedback.wrong{border-color:color-mix(in srgb, var(--coral) 44%, var(--line));background:color-mix(in srgb, var(--coral) 14%, var(--surface-raised))}html[data-theme=dark] .lesson-page [class*=primer-action]>p.partial,html[data-theme=dark] .process-feedback.partial{border-color:color-mix(in srgb, var(--saffron-dark) 54%, var(--line));background:color-mix(in srgb, var(--saffron) 16%, var(--surface-raised))}html[data-theme=dark] .lesson-page button.selected:not(.wrong):not(.correct),html[data-theme=dark] .lesson-page .lesson-unit-cell.is-empty,html[data-theme=dark] .lesson-page .lesson-unit-cell.is-rules-check-active,html[data-theme=dark] .lesson-page .lesson-unit-cell.is-target{background:color-mix(in srgb, var(--saffron) 24%, var(--surface))}html[data-theme=dark] .lesson-page button.selected.correct,html[data-theme=dark] .lesson-page .lesson-unit-cell.is-rules-check-match{background:color-mix(in srgb, var(--sage) 28%, var(--surface))}html[data-theme=dark] .lesson-page button.selected.wrong,html[data-theme=dark] .lesson-page .lesson-board-cell.selected.wrong{background:color-mix(in srgb, var(--coral) 20%, var(--surface))}html[data-theme=dark] .lesson-hint,html[data-theme=dark] .free-mistake-summary,html[data-theme=dark] .history-gate{border-color:color-mix(in srgb, var(--saffron) 38%, var(--line));background:color-mix(in srgb, var(--saffron) 10%, var(--surface-raised));color:var(--ink)}html[data-theme=dark] .review-mistakes article{border-color:color-mix(in srgb, var(--coral) 36%, var(--line));background:color-mix(in srgb, var(--coral) 12%, var(--surface-raised))}html[data-theme=dark] .puzzle-session-list{border-color:var(--line);background:var(--line)}html[data-theme=dark] .mini-board>span.evidence{background:var(--board-match)}html[data-theme=dark] .mini-board>span.blocker{background:var(--board-error)}html[data-theme=dark] .mini-board>span.target{background:var(--board-target)}html[data-theme=dark] .candidate-grid i.same-value-candidate{background:var(--board-match);color:var(--ink)}html[data-theme=dark] .solve-candidate-grid i.emphasized,html[data-theme=dark] .puzzle-completion-seal{color:var(--accent-ink)}@media (width>=391px) and (width<=620px){.appearance-options{grid-template-columns:1fr}.appearance-options>button{grid-template-columns:24px minmax(0,1fr);align-items:center;min-height:72px}}@keyframes mobile-surface-arrive{0%{opacity:0;filter:blur(2px);transform:translateY(6px)}to{opacity:1;filter:blur();transform:translateY(0)}}@media (width<=780px){.mobile-header{background:color-mix(in srgb, var(--ivory) 96%, transparent);box-shadow:0 1px 0 color-mix(in srgb, var(--line) 70%, transparent)}.header-title{font-size:1.02rem;font-weight:600}.mobile-tabbar a{gap:4px;font-size:.61rem}.mobile-tabbar a svg{width:19px;height:19px}.app-shell:not(.app-shell-immersive) .page.app-page{--app-page-padding-top:20px;--app-page-padding-bottom:calc(90px + var(--safe-area-bottom))}.page.app-page>.app-page-header{gap:10px;margin-bottom:22px}.page.app-page>.app-page-header .eyebrow{letter-spacing:.15em;margin-bottom:7px;font-size:.66rem}.page.app-page>.app-page-header h1{letter-spacing:-.045em;max-width:22ch;margin-bottom:9px;font-size:clamp(2.2rem,10vw,2.7rem);line-height:.97}.page.app-page>.app-page-header p{max-width:42ch;font-size:.91rem;line-height:1.48}.home-page,.puzzles-hub-page{animation:mobile-surface-arrive .32s var(--ease-out-ui) both}.puzzle-hub-primary,.member-practice-card,.coaching-privilege-preview{box-shadow:var(--shadow-border);border-radius:16px}.daily-picker{border-top:4px solid var(--sage-dark);padding:24px;display:block}.daily-picker-board{display:none}.daily-picker-copy h2{margin:7px 0 13px;font-size:clamp(1.85rem,8.8vw,2.35rem);line-height:1.02}.daily-picker-copy>p{margin-bottom:16px;font-size:.92rem;line-height:1.5}.difficulty-picker{gap:6px;margin:18px 0 12px}.difficulty-picker button{border-radius:9px;min-height:60px;padding:9px 10px}.difficulty-picker button strong{font-size:.76rem}.difficulty-picker button small{font-size:.63rem;line-height:1.25}.daily-selection-trigger{min-height:44px;margin-top:14px;padding-inline:11px}.daily-picker-actions{gap:10px;margin-top:18px}.daily-picker-actions>.button{min-height:52px;padding-inline:18px}.quick-practice-link{border-radius:12px;gap:12px;width:100%;min-height:72px;padding:12px 14px}.quick-practice-link strong{font-size:.8rem}.quick-practice-link small{font-size:.7rem;line-height:1.4}.practice-week-strip{gap:14px;margin:8px 0 18px;padding:12px 0 14px}.practice-week-heading strong{font-size:.94rem}.practice-week-heading>small{font-size:.64rem}.practice-week-days{gap:5px}.practice-week-days>span{border-radius:9px;min-height:48px}.practice-week-days small{font-size:.56rem}.practice-week-days i{font-size:.72rem}.coaching-privilege-preview{gap:14px;min-height:108px;margin-top:14px;padding:18px}.coaching-privilege-preview h2{margin:4px 0 0;font-size:1.45rem;line-height:1.05}.coaching-privilege-preview .button{min-height:46px;padding-inline:14px;font-size:.72rem}.member-practice-card{margin-top:16px;padding:24px}.member-practice-heading h2{font-size:2rem;line-height:1.02}.notebook-callout{border-radius:14px;margin-top:18px;padding:18px}.notebook-callout h2{font-size:1.06rem}.notebook-callout small{font-size:.75rem}.continue-lesson{box-shadow:var(--shadow-border);border-radius:14px;grid-template-columns:92px minmax(0,1fr) auto;gap:14px;margin-top:18px;padding:16px}.lesson-art{width:92px;height:92px}.continue-lesson h2{font-size:1.28rem}.continue-lesson p{font-size:.8rem;line-height:1.4}.button:active:not(:disabled),.difficulty-picker button:active,.quick-practice-link:active,.notebook-callout:active,.continue-lesson:active{transform:scale(.985)}}@media (width<=390px){.page.app-page>.app-page-header h1{max-width:22ch;font-size:clamp(2.15rem,10vw,2.55rem)}.daily-picker{padding:22px}.difficulty-picker button{padding-inline:8px}.member-practice-card{padding:20px}.coaching-privilege-preview{padding:16px}}@media (prefers-reduced-motion:reduce){.home-page,.puzzles-hub-page,.app-select-content,.app-select-backdrop{animation:none}.app-select-trigger svg{transition:none}}.home-header-status{justify-items:start;gap:8px;display:grid}.home-header-status .member-status{margin-top:0}.app-select-field{min-width:0;color:inherit;gap:7px;font-size:.65rem;font-weight:750;display:grid}.app-select-label{color:inherit;font-size:inherit;font-weight:inherit}.app-select-trigger{background:var(--surface);width:100%;min-height:44px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;border:1px solid #c9d2da;border-radius:8px;justify-content:space-between;align-items:center;gap:10px;padding:9px 10px 9px 12px;transition:border-color .15s,box-shadow .15s,background-color .15s;display:flex}.app-select-trigger:hover{border-color:color-mix(in srgb, var(--ink-soft) 48%, var(--line));background:color-mix(in srgb, var(--surface) 88%, var(--sage-pale))}.app-select-trigger:focus-visible,.app-select-trigger[data-state=open]{border-color:var(--sage-dark);box-shadow:0 0 0 3px color-mix(in srgb, var(--sage) 24%, transparent);outline:none}.app-select-trigger svg{flex:none;transition:transform .15s}.app-select-trigger[data-state=open] svg{transform:rotate(180deg)}.app-select-backdrop{display:none}.app-select-content{z-index:90;min-width:max(208px, var(--radix-select-trigger-width));max-height:var(--radix-select-content-available-height);background:var(--surface);color:var(--ink);transform-origin:var(--radix-select-content-transform-origin);animation:app-select-pop-in .14s var(--ease-out-ui);border-radius:10px;overflow:hidden;box-shadow:0 0 0 1px #102a431a,0 8px 20px #102a431f,0 18px 46px #102a4314}.app-select-sheet-header{display:none}.app-select-viewport{padding:6px}.app-select-option{cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:6px;outline:none;align-items:center;min-height:42px;padding:9px 36px 9px 11px;font-size:.72rem;font-weight:720;display:flex;position:relative}.app-select-option[data-highlighted]{background:var(--sage-soft);color:var(--sage-dark)}.app-select-option[data-state=checked]{color:var(--sage-dark);font-weight:800}.app-select-option-indicator{place-items:center;display:grid;position:absolute;right:10px}.app-select-scroll-button{min-height:30px;color:var(--muted);place-items:center;display:grid}@keyframes app-select-pop-in{0%{opacity:0;transform:translateY(-3px)scale(.98)}}.archive-date-control{grid-template-columns:36px minmax(0,1fr) 36px;gap:5px;min-width:0;display:grid}.archive-date-control button{background:var(--surface);min-height:43px;color:var(--ink);cursor:pointer;border:1px solid #c9d2da;border-radius:5px;place-items:center;padding:0;display:grid}.archive-date-control button:disabled{cursor:default;opacity:.42}.archive-date-control input{min-width:0}@media (width<=780px){.home-header-status{gap:5px}.home-header-status .member-status{gap:6px;padding:7px 10px;font-size:.65rem}.home-header-status .member-status svg{width:15px;height:15px}.home-header-status .streak{padding-bottom:0}.member-practice-card{border-radius:14px;margin-top:14px;padding:16px}.member-practice-heading{grid-template-columns:minmax(0,1fr) auto;gap:8px;display:grid}.member-practice-heading .eyebrow{letter-spacing:.12em;font-size:.59rem}.member-practice-heading h2{max-width:14ch;margin:4px 0;font-size:clamp(1.35rem,6.6vw,1.7rem);line-height:1}.member-practice-heading p{max-width:34ch;font-size:.68rem;line-height:1.35}.member-practice-heading>svg{width:20px;height:20px}.member-practice-controls{grid-template-columns:minmax(0,1fr);gap:8px;margin-top:15px}.member-practice-difficulty-picker{gap:6px}.member-practice-actions{flex-direction:column;align-items:stretch}.member-practice-actions .daily-selection-trigger,.member-practice-actions .button{justify-self:stretch;width:100%;min-height:46px;font-size:.75rem}.difficulty-technique-expectation{max-width:38ch;color:var(--muted);margin:9px 0 0;font-size:.63rem;line-height:1.3}.daily-archive-card{border-radius:14px;padding:16px}.daily-archive-card-wide{grid-template-columns:minmax(0,1fr);gap:18px}.daily-archive-card h2{margin:4px 0 7px;font-size:1.48rem;line-height:1.04}.daily-archive-actions>.button{min-height:44px;padding-inline:13px;font-size:.71rem}.daily-archive-card h2{max-width:20ch}.archive-controls{grid-template-columns:minmax(0,1.35fr) minmax(110px,.85fr);gap:8px;margin:13px 0 12px}.archive-controls label,.archive-controls .app-select-field{gap:6px;font-size:.61rem}.archive-date-control{grid-template-columns:30px minmax(0,1fr) 30px;gap:4px}.archive-date-control button,.archive-controls .app-select-trigger{min-height:42px}.archive-date-control input{padding-inline:7px;font-size:.67rem}.app-select-trigger{border-radius:8px;font-size:.7rem;font-weight:750}.app-select-backdrop{z-index:89;background:color-mix(in srgb, var(--ink) 42%, transparent);animation:.16s ease-out app-select-backdrop-in;display:block;position:fixed;inset:0}[data-radix-popper-content-wrapper]:has(.app-select-content){justify-content:center;z-index:90!important;width:100%!important;min-width:100%!important;display:flex!important;position:fixed!important;inset:auto 0 0!important;transform:none!important}.app-select-content{width:min(100%,520px);max-height:min(72dvh,520px);padding:14px 14px calc(14px + var(--safe-area-bottom));border:1px solid color-mix(in srgb, var(--line) 80%, transparent);background:var(--paper);box-shadow:0 -18px 44px color-mix(in srgb, var(--ink) 22%, transparent);transform-origin:bottom;animation:app-select-sheet-in .18s var(--ease-out-ui);border-bottom:0;border-radius:22px 22px 0 0}.app-select-sheet-header{border-bottom:1px solid var(--line);min-height:38px;color:var(--ink);justify-content:space-between;align-items:center;gap:12px;padding:0 2px 10px;font-size:.78rem;display:flex}.app-select-close{border:1px solid var(--line);background:var(--surface);width:40px;height:40px;color:var(--ink);cursor:pointer;border-radius:50%;place-items:center;display:grid}.app-select-viewport{padding:10px 0 0}.app-select-option{border-radius:11px;min-height:52px;padding:10px 12px;font-size:.78rem;font-weight:750}.app-select-option[data-state=checked]{background:color-mix(in srgb, var(--sage-soft) 78%, var(--paper));color:var(--sage-dark)}.app-select-option-indicator{right:12px}@keyframes app-select-backdrop-in{0%{opacity:0}}@keyframes app-select-sheet-in{0%{opacity:0;transform:translateY(18px)}}}@media (width<=390px){.member-practice-card,.daily-archive-card{padding:14px}.member-practice-heading h2{font-size:1.32rem}}html[data-theme=dark] .lesson-page .lesson-steps>button:disabled{opacity:.72}html[data-theme=dark] .lesson-page .lesson-board-cell:not(.pattern):not(.related):not(.selected){background:var(--board-cell)}html[data-theme=dark] .lesson-page .lesson-board-cell.given.temporary{background:color-mix(in srgb, var(--sage) 18%, var(--board-cell))}html[data-theme=dark] .lesson-page .lesson-board-cell.highlighted{background:linear-gradient(145deg,#59471f,#6b5422)}html[data-theme=dark] .lesson-candidates i:not(.candidate-sage):not(.candidate-saffron):not(.candidate-selected):not(.candidate-selectable){color:var(--board-candidate)}html[data-theme=dark] .lesson-candidates i.candidate-sage{color:#d8ecdc;background:#365743}html[data-theme=dark] .lesson-candidates i.candidate-saffron{color:#ffe2a0;background:#665022}html[data-theme=dark] .lesson-candidates i.candidate-crossed{color:var(--coral);opacity:.9;-webkit-text-decoration-color:var(--coral);text-decoration-color:var(--coral)}html[data-theme=dark] .lesson-candidates i.candidate-selectable{color:var(--board-candidate)}html[data-theme=dark] .lesson-candidates i.candidate-selected{color:var(--ink)}html[data-theme=dark] .lesson-candidates i.candidate-selected.candidate-correct{color:#d8ecdc}html[data-theme=dark] .lesson-candidates i.candidate-selected.candidate-partial{color:#ffe2a0}html[data-theme=dark] .lesson-candidates i.candidate-selected.candidate-wrong{color:var(--coral)}html[data-theme=dark] .lesson-page .locked-primer-progress i{border-color:var(--line-strong);background:var(--surface);color:var(--muted)}html[data-theme=dark] .lesson-page .locked-primer-progress i.filled{border-color:var(--sage-dark);background:color-mix(in srgb, var(--sage) 34%, var(--surface));color:var(--ink)}html[data-theme=dark] .lesson-page .locked-primer-stage{background:linear-gradient(90deg, color-mix(in srgb, var(--sage) 24%, var(--surface-raised)) 0 264px, transparent 264px), var(--surface-raised)}html[data-theme=dark] .lesson-page .locked-route-label{border-color:color-mix(in srgb, var(--sage-dark) 48%, var(--line));background:color-mix(in srgb, var(--sage) 12%, var(--surface));color:var(--sage-dark)}html[data-theme=dark] .lesson-page .locked-proof-map.is-broken .locked-route-label{border-color:color-mix(in srgb, var(--coral) 48%, var(--line));background:color-mix(in srgb, var(--coral) 12%, var(--surface));color:var(--coral-dark)}html[data-theme=dark] .lesson-page .locked-map-part>div{border-color:var(--line);background:var(--surface);color:var(--muted)}html[data-theme=dark] .lesson-page .locked-map-part>div.active{border-color:color-mix(in srgb, var(--sage-dark) 64%, var(--line));background:color-mix(in srgb, var(--sage) 30%, var(--surface-raised));color:var(--ink);box-shadow:inset 3px 0 0 var(--sage-dark)}html[data-theme=dark] .lesson-page .locked-map-part>svg{color:var(--muted)}html[data-theme=dark] .lesson-page .locked-map-part>svg.broken-route{color:var(--coral-dark)}html[data-theme=dark] .lesson-page .locked-primer-stage .lesson-board{border-color:color-mix(in srgb, var(--ink) 84%, var(--line))}html[data-theme=dark] .lesson-page .locked-primer-stage .lesson-board-cell.box-right,html[data-theme=dark] .lesson-page .locked-primer-stage .lesson-board-cell.box-bottom{border-color:color-mix(in srgb, var(--ink) 54%, var(--board-line))}html[data-theme=dark] .lesson-page .locked-primer-stage .lesson-board-cell.highlighted{background:linear-gradient(145deg, color-mix(in srgb, var(--saffron) 30%, var(--board-cell)), color-mix(in srgb, var(--saffron) 22%, var(--board-cell)));box-shadow:inset 0 0 0 1.5px color-mix(in srgb, var(--saffron) 78%, transparent)}html[data-theme=dark] .lesson-page .locked-primer-action-copy>p.correct{color:#bfe7c9}html[data-theme=dark] .lesson-page .locked-primer-action-copy>p.wrong{color:var(--coral-dark)}html[data-theme=dark] .lesson-page .coloring-primer-stage,html[data-theme=dark] .lesson-page .coloring-primer-action{border-color:var(--line)}html[data-theme=dark] .lesson-page .coloring-primer-progress i{border-color:var(--line-strong);background:var(--surface);color:var(--muted)}html[data-theme=dark] .lesson-page .coloring-primer-progress i.filled{border-color:var(--sage-dark);background:var(--ink-fill);color:var(--on-ink)}html[data-theme=dark] .lesson-page .coloring-primer-action-copy>p.correct{color:#a8d5b6}html[data-theme=dark] .lesson-page .coloring-primer-action-copy>p.wrong{color:var(--coral)}html[data-theme=dark] .lesson-page .coloring-choice-grid button.correct{border-color:color-mix(in srgb, var(--sage-dark) 58%, var(--line));background:color-mix(in srgb, var(--sage) 26%, var(--surface-raised));color:#bfe7c9}html[data-theme=dark] .lesson-page .coloring-choice-grid button.wrong{border-color:color-mix(in srgb, var(--coral) 54%, var(--line));background:color-mix(in srgb, var(--coral) 16%, var(--surface-raised));color:var(--coral-dark)}html[data-theme=dark] .lesson-page .coloring-primer-check-button:disabled{border-color:var(--line);background:var(--surface-soft);color:var(--muted);opacity:1}html[data-theme=dark] .lesson-page{--lesson-dark-success-surface:color-mix(in srgb, var(--sage) 24%, var(--surface-raised));--lesson-dark-success-border:color-mix(in srgb, var(--sage-dark) 58%, var(--line));--lesson-dark-success-ink:#c6e9cf;--lesson-dark-warning-surface:color-mix(in srgb, var(--saffron) 16%, var(--surface-raised));--lesson-dark-warning-border:color-mix(in srgb, var(--saffron) 68%, var(--line));--lesson-dark-warning-ink:#ffe3a2;--lesson-dark-danger-surface:color-mix(in srgb, var(--coral) 15%, var(--surface-raised));--lesson-dark-danger-border:color-mix(in srgb, var(--coral) 54%, var(--line));--lesson-dark-danger-ink:#ffb0a7;--lesson-dark-info-surface:color-mix(in srgb, var(--blue-wash) 28%, var(--surface));--lesson-dark-info-ink:#b9d9e9}html[data-theme=dark] .lesson-page [class*=-primer-action]:not([class*=-action-copy]),html[data-theme=dark] .lesson-page [class*=-primer-action-copy]{border-color:var(--line);background:var(--surface);color:var(--ink)}html[data-theme=dark] .lesson-page [class*=-primer-action-copy]>p.correct{color:var(--lesson-dark-success-ink)}html[data-theme=dark] .lesson-page [class*=-primer-action-copy]>p.wrong{color:var(--lesson-dark-danger-ink)}html[data-theme=dark] .lesson-page [class*=-primer-action-copy]>p.partial{color:var(--lesson-dark-warning-ink)}html[data-theme=dark] .lesson-page [class*=-primer-action-copy]>p svg{color:currentColor}html[data-theme=dark] .lesson-page :is(.naked-primer-progress,.hidden-primer-progress,.pair-primer-progress,.hidden-pair-primer-progress,.xwing-primer-progress,.swordfish-primer-progress,.xywing-primer-progress,.xyzwing-primer-progress,.unique-rectangle-primer-progress,.chains-primer-progress,.forcing-primer-progress) i{border-color:var(--line-strong);background:var(--surface);color:var(--muted)}html[data-theme=dark] .lesson-page :is(.naked-primer-progress,.hidden-primer-progress,.pair-primer-progress,.hidden-pair-primer-progress,.xwing-primer-progress,.swordfish-primer-progress,.xywing-primer-progress,.xyzwing-primer-progress,.unique-rectangle-primer-progress,.chains-primer-progress,.forcing-primer-progress) i.filled{border-color:var(--sage-dark);background:color-mix(in srgb, var(--sage) 34%, var(--surface));color:var(--ink)}html[data-theme=dark] .lesson-page [class*=-primer-stage] .lesson-board-cell:not(.pattern):not(.related):not(.selected):not(.conclusion){background:var(--board-cell)}html[data-theme=dark] .lesson-page [class*=-primer-stage] .lesson-board-cell.related:not(.pattern):not(.selected){background:var(--board-related)}html[data-theme=dark] .lesson-page .naked-thought-strip,html[data-theme=dark] .lesson-page .hidden-scan-thought,html[data-theme=dark] .lesson-page .hidden-digit-lens{border-color:var(--line);background:var(--surface);color:var(--muted)}html[data-theme=dark] .lesson-page .naked-thought-strip>strong,html[data-theme=dark] .lesson-page .hidden-scan-thought>strong,html[data-theme=dark] .lesson-page .hidden-digit-lens>strong,html[data-theme=dark] .lesson-page .hidden-digit-lens b{color:var(--ink)}html[data-theme=dark] .lesson-page .naked-thought-strip i{border-color:var(--line-strong);background:var(--surface-soft);color:var(--ink-soft)}html[data-theme=dark] .lesson-page .naked-thought-strip i.active,html[data-theme=dark] .lesson-page .hidden-digit-picker button.correct{border-color:var(--lesson-dark-warning-border);background:var(--lesson-dark-warning-surface);color:var(--lesson-dark-warning-ink)}html[data-theme=dark] .lesson-page .naked-thought-strip i.checked:not(.active){border-color:var(--lesson-dark-success-border);background:var(--lesson-dark-success-surface);color:var(--lesson-dark-success-ink)}html[data-theme=dark] .lesson-page .hidden-digit-lens{border-right-color:var(--line)}html[data-theme=dark] .lesson-page .hidden-digit-lens>span,html[data-theme=dark] .lesson-page .hidden-digit-lens small,html[data-theme=dark] .lesson-page .hidden-digit-lens em{color:var(--muted)}html[data-theme=dark] .lesson-page .hidden-digit-lens>strong{border-color:color-mix(in srgb, var(--sage-dark) 50%, var(--line));background:var(--surface-soft);color:var(--ink)}html[data-theme=dark] .lesson-page .hidden-digit-lens.resolved>strong{border-color:var(--sage-dark);background:var(--lesson-dark-success-surface);color:var(--lesson-dark-success-ink)}html[data-theme=dark] .lesson-page .hidden-digit-picker button{border-bottom-color:var(--line-strong);color:var(--ink)}html[data-theme=dark] .lesson-page .hidden-digit-picker button.wrong{border-color:var(--lesson-dark-danger-border);background:var(--lesson-dark-danger-surface);color:var(--lesson-dark-danger-ink)}html[data-theme=dark] .lesson-page .naked-elimination-picker button{border-color:var(--line-strong);background:var(--surface);color:var(--ink-soft)}html[data-theme=dark] .lesson-page .naked-elimination-picker button.selected{border-color:var(--lesson-dark-warning-border);background:var(--lesson-dark-warning-surface);color:var(--lesson-dark-warning-ink)}html[data-theme=dark] .lesson-page .naked-elimination-picker button.wrong{border-color:var(--lesson-dark-danger-border);background:var(--lesson-dark-danger-surface);color:var(--lesson-dark-danger-ink)}html[data-theme=dark] .lesson-page .pair-balance>span,html[data-theme=dark] .lesson-page .pair-balance>div small,html[data-theme=dark] .lesson-page .hidden-pair-route-map>span,html[data-theme=dark] .lesson-page .hidden-pair-route-map>div small{color:var(--muted)}html[data-theme=dark] .lesson-page .pair-balance>div,html[data-theme=dark] .lesson-page .hidden-pair-route-map>div{border-color:var(--line);background:var(--surface);color:var(--ink)}html[data-theme=dark] .lesson-page .pair-balance>svg,html[data-theme=dark] .lesson-page .pair-balance>em,html[data-theme=dark] .lesson-page .hidden-pair-route-map>em{border-color:var(--line-strong);color:var(--muted)}html[data-theme=dark] .lesson-page .pair-balance.is-balanced>div,html[data-theme=dark] .lesson-page .hidden-pair-route-map .route-first.revealed,html[data-theme=dark] .lesson-page .hidden-pair-route-map.is-matched>em{border-color:var(--lesson-dark-success-border);background:var(--lesson-dark-success-surface);color:var(--lesson-dark-success-ink)}html[data-theme=dark] .lesson-page .pair-balance.is-balanced>svg,html[data-theme=dark] .lesson-page .pair-balance.is-balanced>em{border-color:var(--lesson-dark-success-border);color:var(--lesson-dark-success-ink)}html[data-theme=dark] .lesson-page .pair-balance.is-broken>div:last-of-type,html[data-theme=dark] .lesson-page .hidden-pair-route-map.is-broken .route-first.revealed,html[data-theme=dark] .lesson-page .hidden-pair-route-map.is-broken>em{border-color:var(--lesson-dark-danger-border);background:var(--lesson-dark-danger-surface);color:var(--lesson-dark-danger-ink)}html[data-theme=dark] .lesson-page .pair-balance.is-broken>svg,html[data-theme=dark] .lesson-page .pair-balance.is-broken>em{border-color:var(--lesson-dark-danger-border);color:var(--lesson-dark-danger-ink)}html[data-theme=dark] .lesson-page .hidden-pair-route-map .route-second.revealed{border-left-color:var(--lesson-dark-warning-border);background:var(--lesson-dark-warning-surface);color:var(--lesson-dark-warning-ink)}html[data-theme=dark] .lesson-page .candidate-removal-picker button{border-color:var(--line);background:var(--surface);color:var(--ink)}html[data-theme=dark] .lesson-page .candidate-removal-picker button small{color:var(--muted)}html[data-theme=dark] .lesson-page .candidate-removal-picker button strong{background:var(--lesson-dark-warning-surface);color:var(--lesson-dark-warning-ink)}html[data-theme=dark] .lesson-page .candidate-removal-picker button svg{color:var(--lesson-dark-warning-ink)}html[data-theme=dark] .lesson-page .candidate-removal-picker button.selected,html[data-theme=dark] .lesson-page .candidate-removal-picker button.selected.partial{border-color:var(--lesson-dark-warning-border);background:var(--lesson-dark-warning-surface)}html[data-theme=dark] .lesson-page .candidate-removal-picker button.selected.correct{border-color:var(--lesson-dark-success-border);background:var(--lesson-dark-success-surface)}html[data-theme=dark] .lesson-page .candidate-removal-picker button.selected.correct strong{background:color-mix(in srgb, var(--sage-dark) 34%, var(--surface));color:var(--lesson-dark-success-ink)}html[data-theme=dark] .lesson-page .candidate-removal-picker button.selected.partial strong{background:color-mix(in srgb, var(--saffron) 34%, var(--surface));color:var(--lesson-dark-warning-ink)}html[data-theme=dark] .lesson-page .candidate-removal-picker button.selected.wrong{border-color:var(--lesson-dark-danger-border);background:var(--lesson-dark-danger-surface)}html[data-theme=dark] .lesson-page .candidate-removal-picker button.selected.wrong strong{background:color-mix(in srgb, var(--coral) 34%, var(--surface));color:var(--lesson-dark-danger-ink)}html[data-theme=dark] .lesson-page .xwing-blueprint>span,html[data-theme=dark] .lesson-page .xwing-blueprint-frame .column-label,html[data-theme=dark] .lesson-page .xwing-blueprint-frame .row-label,html[data-theme=dark] .lesson-page .xwing-proof-walkthrough>span,html[data-theme=dark] .lesson-page .xwing-blueprint-lines small,html[data-theme=dark] .lesson-page .swordfish-net-heading>span,html[data-theme=dark] .lesson-page .swordfish-net-heading small{color:var(--muted)}html[data-theme=dark] .lesson-page .xwing-blueprint-frame .cover-line,html[data-theme=dark] .lesson-page .xwing-blueprint-frame .base-line,html[data-theme=dark] .lesson-page .xwing-blueprint-frame .diagonal{background:var(--line-strong)}html[data-theme=dark] .lesson-page .xwing-blueprint-frame .base-a,html[data-theme=dark] .lesson-page .xwing-blueprint-frame .cover-line,html[data-theme=dark] .lesson-page .xwing-blueprint.is-proved .cover-line{background:var(--sage-dark)}html[data-theme=dark] .lesson-page .xwing-blueprint-frame .base-b,html[data-theme=dark] .lesson-page .xwing-blueprint.is-matched .base-b,html[data-theme=dark] .lesson-page .xwing-blueprint.is-proved .base-b{background:var(--saffron)}html[data-theme=dark] .lesson-page .xwing-blueprint-frame .corner{border-color:var(--line-strong);background:var(--surface);color:var(--muted)}html[data-theme=dark] .lesson-page .xwing-blueprint.is-matched .corner,html[data-theme=dark] .lesson-page .xwing-blueprint.is-proved .corner{border-color:var(--sage-dark);background:var(--lesson-dark-success-surface);color:var(--lesson-dark-success-ink)}html[data-theme=dark] .lesson-page .xwing-blueprint.is-broken .bottom-left,html[data-theme=dark] .lesson-page .xwing-blueprint.is-broken .bottom-right{border-color:var(--lesson-dark-danger-border);background:var(--lesson-dark-danger-surface);color:var(--lesson-dark-danger-ink)}html[data-theme=dark] .lesson-page .xwing-proof-walkthrough p,html[data-theme=dark] .lesson-page .xwing-blueprint-lines p{border-color:var(--line);background:var(--surface);color:var(--ink)}html[data-theme=dark] .lesson-page .xwing-proof-walkthrough p b{background:var(--lesson-dark-info-surface);color:var(--lesson-dark-info-ink)}html[data-theme=dark] .lesson-page .xwing-proof-walkthrough>em,html[data-theme=dark] .lesson-page .xwing-blueprint>em.revealed{border-left-color:var(--sage-dark);border-color:var(--line);background:var(--lesson-dark-info-surface);color:var(--lesson-dark-info-ink)}html[data-theme=dark] .lesson-page .xwing-blueprint-lines p.revealed{border-left-color:var(--saffron);background:var(--lesson-dark-warning-surface)}html[data-theme=dark] .lesson-page .xwing-blueprint>em{border-color:var(--line-strong);color:var(--muted)}html[data-theme=dark] .lesson-page .xwing-blueprint.is-broken>em.revealed{border-color:var(--lesson-dark-danger-border);background:var(--lesson-dark-danger-surface);color:var(--lesson-dark-danger-ink)}html[data-theme=dark] .lesson-page .swordfish-net-heading strong{color:var(--ink)}html[data-theme=dark] .lesson-page .swordfish-net-table{border-color:var(--line);background:linear-gradient(color-mix(in srgb, var(--line) 34%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in srgb, var(--line) 34%, transparent) 1px, transparent 1px), var(--surface)}html[data-theme=dark] .lesson-page .swordfish-net-table>b{color:var(--muted)}html[data-theme=dark] .lesson-page .swordfish-net-table>b.revealed{color:var(--ink)}html[data-theme=dark] .lesson-page .swordfish-net-table>b.extra-cover{color:var(--lesson-dark-danger-ink)}html[data-theme=dark] .lesson-page .swordfish-net-table>i{border-inline-color:color-mix(in srgb, var(--line) 48%, transparent)}html[data-theme=dark] .lesson-page .swordfish-net-table>i.active,html[data-theme=dark] .lesson-page .swordfish-net.is-balanced .swordfish-net-table>i.active,html[data-theme=dark] .lesson-page .swordfish-net.is-proved .swordfish-net-table>i.active{border-color:var(--sage-dark);background:var(--lesson-dark-success-surface);color:var(--lesson-dark-success-ink);box-shadow:0 0 0 5px color-mix(in srgb, var(--sage-dark) 16%, transparent)}html[data-theme=dark] .lesson-page .swordfish-net-table>i.active.extra-cover,html[data-theme=dark] .lesson-page .swordfish-net.is-broken .swordfish-net-table>i.active.extra-cover{border-color:var(--lesson-dark-danger-border);background:var(--lesson-dark-danger-surface);color:var(--lesson-dark-danger-ink);box-shadow:0 0 0 5px color-mix(in srgb, var(--coral) 16%, transparent)}html[data-theme=dark] .lesson-page .swordfish-net>em{border-color:var(--line-strong);color:var(--muted)}html[data-theme=dark] .lesson-page .swordfish-net.is-balanced>em,html[data-theme=dark] .lesson-page .swordfish-net.is-proved>em{border-color:var(--lesson-dark-success-border);background:var(--lesson-dark-success-surface);color:var(--lesson-dark-success-ink)}html[data-theme=dark] .lesson-page .swordfish-net.is-broken>em{border-color:var(--lesson-dark-danger-border);background:var(--lesson-dark-danger-surface);color:var(--lesson-dark-danger-ink)}html[data-theme=dark] .lesson-page .xywing-fork,html[data-theme=dark] .lesson-page .xyzwing-lens{border-color:var(--line);color:var(--ink)}html[data-theme=dark] .lesson-page .xywing-fork-heading>span,html[data-theme=dark] .lesson-page .xyzwing-lens-heading>span{color:var(--sage-dark)}html[data-theme=dark] .lesson-page .xywing-fork-heading em,html[data-theme=dark] .lesson-page .xyzwing-lens-heading em{border-color:var(--line-strong);background:var(--surface);color:var(--muted)}html[data-theme=dark] .lesson-page .xywing-fork.is-proved .xywing-fork-heading em,html[data-theme=dark] .lesson-page .xyzwing-lens.is-proved .xyzwing-lens-heading em{border-color:var(--lesson-dark-success-border);background:var(--lesson-dark-success-surface);color:var(--lesson-dark-success-ink)}html[data-theme=dark] .lesson-page .xywing-fork.is-broken .xywing-fork-heading em,html[data-theme=dark] .lesson-page .xyzwing-lens.is-broken .xyzwing-lens-heading em{border-color:var(--lesson-dark-danger-border);background:var(--lesson-dark-danger-surface);color:var(--lesson-dark-danger-ink)}html[data-theme=dark] .lesson-page .xywing-pivot-node,html[data-theme=dark] .lesson-page .xywing-wing-node,html[data-theme=dark] .lesson-page .xywing-merge,html[data-theme=dark] .lesson-page .xyzwing-source,html[data-theme=dark] .lesson-page .xyzwing-kernel,html[data-theme=dark] .lesson-page .xyzwing-outcomes span,html[data-theme=dark] .lesson-page .xyzwing-target-gate,html[data-theme=dark] .lesson-page .xyzwing-sightline-list>div{border-color:var(--line);background:var(--surface);color:var(--ink)}html[data-theme=dark] .lesson-page .xywing-pivot-node small,html[data-theme=dark] .lesson-page .xywing-wing-node small,html[data-theme=dark] .lesson-page .xywing-route>span,html[data-theme=dark] .lesson-page .xywing-merge span,html[data-theme=dark] .lesson-page .xywing-merge small,html[data-theme=dark] .lesson-page .xyzwing-source small,html[data-theme=dark] .lesson-page .xyzwing-kernel small,html[data-theme=dark] .lesson-page .xyzwing-target-gate>span,html[data-theme=dark] .lesson-page .xyzwing-target-gate>small,html[data-theme=dark] .lesson-page .xyzwing-sightline-list small{color:var(--muted)}html[data-theme=dark] .lesson-page .xywing-pivot-node strong,html[data-theme=dark] .lesson-page .xywing-wing-node strong,html[data-theme=dark] .lesson-page .xywing-merge strong,html[data-theme=dark] .lesson-page .xyzwing-source strong,html[data-theme=dark] .lesson-page .xyzwing-kernel strong,html[data-theme=dark] .lesson-page .xyzwing-target-gate>strong,html[data-theme=dark] .lesson-page .xyzwing-sightline-list b{color:var(--ink)}html[data-theme=dark] .lesson-page .xywing-pivot-node>span i,html[data-theme=dark] .lesson-page .xywing-wing-node>span i,html[data-theme=dark] .lesson-page .xyzwing-source>span i,html[data-theme=dark] .lesson-page .xyzwing-source>span i.shared{background:var(--lesson-dark-warning-surface);color:var(--lesson-dark-warning-ink);box-shadow:none}html[data-theme=dark] .lesson-page .xywing-wing-node>span i:last-child,html[data-theme=dark] .lesson-page .xyzwing-source>span i.shared{background:var(--lesson-dark-success-surface);color:var(--lesson-dark-success-ink)}html[data-theme=dark] .lesson-page .xywing-route.active{background:var(--lesson-dark-warning-surface);box-shadow:inset 0 0 0 1px var(--lesson-dark-warning-border)}html[data-theme=dark] .lesson-page .xywing-route-line i{border-color:var(--lesson-dark-warning-border);background:var(--lesson-dark-warning-surface);color:var(--lesson-dark-warning-ink)}html[data-theme=dark] .lesson-page .xywing-route.revealed .xywing-wing-node,html[data-theme=dark] .lesson-page .xywing-merge.revealed,html[data-theme=dark] .lesson-page .xyzwing-kernel.revealed,html[data-theme=dark] .lesson-page .xyzwing-target-gate.revealed,html[data-theme=dark] .lesson-page .xyzwing-sightline-list>div.connected{border-color:var(--lesson-dark-success-border);background:var(--lesson-dark-success-surface)}html[data-theme=dark] .lesson-page .xywing-route>b,html[data-theme=dark] .lesson-page .xywing-merge.revealed strong,html[data-theme=dark] .lesson-page .xyzwing-kernel.revealed strong,html[data-theme=dark] .lesson-page .xyzwing-outcomes b,html[data-theme=dark] .lesson-page .xyzwing-sightline-list>div.connected i{color:var(--lesson-dark-success-ink)}html[data-theme=dark] .lesson-page .xywing-route.broken .xywing-wing-node,html[data-theme=dark] .lesson-page .xywing-route.broken .xywing-route-line i,html[data-theme=dark] .lesson-page .xywing-route.broken>b,html[data-theme=dark] .lesson-page .xywing-fork.is-broken .xywing-merge,html[data-theme=dark] .lesson-page .xyzwing-lens.is-broken .xyzwing-target-gate.revealed,html[data-theme=dark] .lesson-page .xyzwing-sightline-list>div.missing{border-color:var(--lesson-dark-danger-border);background:var(--lesson-dark-danger-surface);color:var(--lesson-dark-danger-ink)}html[data-theme=dark] .lesson-page .xyzwing-outcomes span{border-color:var(--line);background:var(--surface)}html[data-theme=dark] .lesson-page .xyzwing-sightline-list i,html[data-theme=dark] .lesson-page .xyzwing-sightline-list>div.connected i,html[data-theme=dark] .lesson-page .xyzwing-sightline-list>div.missing i{border-color:var(--line-strong);background:var(--surface-soft);color:var(--muted)}html[data-theme=dark] .lesson-page .xyzwing-sightline-list>div.connected i{border-color:var(--sage-dark);color:var(--lesson-dark-success-ink)}html[data-theme=dark] .lesson-page .xyzwing-sightline-list>div.missing i{border-color:var(--lesson-dark-danger-border);color:var(--lesson-dark-danger-ink)}html[data-theme=dark] .lesson-page .xyzwing-demonstration-result{color:var(--lesson-dark-success-ink)}html[data-theme=dark] .lesson-page .unique-circuit{border-color:var(--line)}html[data-theme=dark] .lesson-page .unique-circuit-heading>span{color:var(--ink)}html[data-theme=dark] .lesson-page .unique-circuit-heading em,html[data-theme=dark] .lesson-page .unique-circuit-facts,html[data-theme=dark] .lesson-page .unique-circuit-facts>span{border-color:var(--line)}html[data-theme=dark] .lesson-page .unique-circuit-heading em,html[data-theme=dark] .lesson-page .unique-circuit-facts small,html[data-theme=dark] .lesson-page .unique-corner small,html[data-theme=dark] .lesson-page .unique-swap-proof>div>span,html[data-theme=dark] .lesson-page .unique-breaker>span,html[data-theme=dark] .lesson-page .unique-breaker p{color:var(--muted)}html[data-theme=dark] .lesson-page .unique-circuit-facts strong,html[data-theme=dark] .lesson-page .unique-corner strong,html[data-theme=dark] .lesson-page .unique-swap-proof i,html[data-theme=dark] .lesson-page .unique-breaker>strong{color:var(--ink)}html[data-theme=dark] .lesson-page .unique-circuit-facts span.valid strong,html[data-theme=dark] .lesson-page .unique-circuit.is-resolved .unique-circuit-heading em,html[data-theme=dark] .lesson-page .unique-breaker.resolved p{color:var(--lesson-dark-success-ink)}html[data-theme=dark] .lesson-page .unique-circuit.is-resolved .unique-circuit-heading em,html[data-theme=dark] .lesson-page .unique-breaker.resolved{border-color:var(--lesson-dark-success-border);background:var(--lesson-dark-success-surface)}html[data-theme=dark] .lesson-page .unique-circuit.is-danger .unique-circuit-heading em,html[data-theme=dark] .lesson-page .unique-circuit.is-broken .unique-circuit-heading em,html[data-theme=dark] .lesson-page .unique-circuit-facts span.invalid,html[data-theme=dark] .lesson-page .unique-breaker{border-color:var(--lesson-dark-danger-border);background:var(--lesson-dark-danger-surface)}html[data-theme=dark] .lesson-page .unique-circuit.is-danger .unique-circuit-heading em,html[data-theme=dark] .lesson-page .unique-circuit.is-broken .unique-circuit-heading em,html[data-theme=dark] .lesson-page .unique-circuit-facts span.invalid strong,html[data-theme=dark] .lesson-page .unique-breaker p{color:var(--lesson-dark-danger-ink)}html[data-theme=dark] .lesson-page .unique-circuit-corners:before,html[data-theme=dark] .lesson-page .unique-circuit-corners:after,html[data-theme=dark] .lesson-page .unique-circuit-corners>b{background:color-mix(in srgb, var(--line-strong) 70%, transparent)}html[data-theme=dark] .lesson-page .unique-corner,html[data-theme=dark] .lesson-page .unique-swap-proof>div{border-color:var(--line);background:var(--surface)}html[data-theme=dark] .lesson-page .unique-corner.revealed{border-color:var(--sage-dark);box-shadow:none}html[data-theme=dark] .lesson-page .unique-corner>span i,html[data-theme=dark] .lesson-page .unique-corner>span i.extra{background:var(--lesson-dark-warning-surface);color:var(--lesson-dark-warning-ink);box-shadow:none}html[data-theme=dark] .lesson-page .unique-corner>span i.extra{background:var(--lesson-dark-success-surface);color:var(--lesson-dark-success-ink)}html[data-theme=dark] .lesson-page .chains-primer-progress i.filled{border-color:var(--lesson-dark-danger-border);background:color-mix(in srgb, var(--coral) 28%, var(--surface));color:var(--lesson-dark-danger-ink)}html[data-theme=dark] .lesson-page .chain-proof-tape-heading>span,html[data-theme=dark] .lesson-page .chain-proof-assumption span,html[data-theme=dark] .lesson-page .chain-proof-node.revealed,html[data-theme=dark] .lesson-page .chain-proof-links>div.revealed,html[data-theme=dark] .lesson-page .chain-proof-conclusion>i{color:var(--ink)}html[data-theme=dark] .lesson-page .chain-proof-tape-heading em,html[data-theme=dark] .lesson-page .chain-proof-assumption strong,html[data-theme=dark] .lesson-page .chain-proof-links b,html[data-theme=dark] .lesson-page .chain-proof-conclusion strong{color:var(--lesson-dark-danger-ink)}html[data-theme=dark] .lesson-page .chain-proof-assumption,html[data-theme=dark] .lesson-page .chain-proof-node,html[data-theme=dark] .lesson-page .chain-proof-links>div,html[data-theme=dark] .lesson-page .chain-proof-conclusion{border-color:var(--line);background:var(--surface)}html[data-theme=dark] .lesson-page .chain-proof-assumption small,html[data-theme=dark] .lesson-page .chain-proof-node,html[data-theme=dark] .lesson-page .chain-proof-node small,html[data-theme=dark] .lesson-page .chain-proof-links>div,html[data-theme=dark] .lesson-page .chain-proof-links small,html[data-theme=dark] .lesson-page .chain-proof-conclusion small{color:var(--muted)}html[data-theme=dark] .lesson-page .chain-proof-nodes:before,html[data-theme=dark] .lesson-page .chain-proof-links>div{border-left-color:var(--line-strong)}html[data-theme=dark] .lesson-page .chain-proof-node.revealed{border-color:var(--sage-dark);background:var(--lesson-dark-success-surface)}html[data-theme=dark] .lesson-page .chain-proof-node i{border-color:var(--line-strong);background:var(--surface-soft);color:var(--muted)}html[data-theme=dark] .lesson-page .chain-proof-node i.blocked{background:linear-gradient(135deg, transparent 46%, var(--coral) 47%, var(--coral) 53%, transparent 54%), var(--lesson-dark-danger-surface);color:var(--lesson-dark-danger-ink)}html[data-theme=dark] .lesson-page .chain-proof-node i.forced{border-color:var(--sage-dark);background:var(--ink-fill);color:var(--on-ink)}html[data-theme=dark] .lesson-page .chain-proof-conclusion{border-color:var(--lesson-dark-danger-border);background:var(--lesson-dark-danger-surface)}html[data-theme=dark] .lesson-page .forcing-primer h2,html[data-theme=dark] .lesson-page .forcing-primer header p,html[data-theme=dark] .lesson-page .forcing-branch-lab-heading>span,html[data-theme=dark] .lesson-page .forcing-branch-rule,html[data-theme=dark] .lesson-page .forcing-branch-sheet li.visible,html[data-theme=dark] .lesson-page .forcing-comparison-tray strong,html[data-theme=dark] .lesson-page .forcing-primer-action-copy>strong{color:var(--ink)}html[data-theme=dark] .lesson-page .forcing-primer-progress i.filled{border-color:var(--lesson-dark-warning-border);background:color-mix(in srgb, var(--saffron) 30%, var(--surface));color:var(--lesson-dark-warning-ink)}html[data-theme=dark] .lesson-page .forcing-branch-lab,html[data-theme=dark] .lesson-page .forcing-branch-rule,html[data-theme=dark] .lesson-page .forcing-branch-waiting,html[data-theme=dark] .lesson-page .forcing-branch-sheet,html[data-theme=dark] .lesson-page .forcing-comparison-tray{border-color:var(--line);background:var(--surface);color:var(--ink);box-shadow:none}html[data-theme=dark] .lesson-page .forcing-branch-lab:after{border-color:color-mix(in srgb, var(--saffron) 20%, transparent)}html[data-theme=dark] .lesson-page .forcing-branch-lab-heading,html[data-theme=dark] .lesson-page .forcing-branch-waiting>header,html[data-theme=dark] .lesson-page .forcing-branch-sheet>header{border-color:var(--line);background:var(--surface-soft)}html[data-theme=dark] .lesson-page .forcing-branch-lab-heading svg,html[data-theme=dark] .lesson-page .forcing-source-card>svg,html[data-theme=dark] .lesson-page .forcing-comparison-tray>svg{color:var(--saffron)}html[data-theme=dark] .lesson-page .forcing-branch-lab-heading em,html[data-theme=dark] .lesson-page .forcing-source-card small,html[data-theme=dark] .lesson-page .forcing-branch-rule span,html[data-theme=dark] .lesson-page .forcing-branch-waiting,html[data-theme=dark] .lesson-page .forcing-branch-waiting>header span,html[data-theme=dark] .lesson-page .forcing-branch-sheet>header span,html[data-theme=dark] .lesson-page .forcing-branch-sheet li,html[data-theme=dark] .lesson-page .forcing-branch-sheet>footer,html[data-theme=dark] .lesson-page .forcing-comparison-tray,html[data-theme=dark] .lesson-page .forcing-comparison-tray small{color:var(--muted)}html[data-theme=dark] .lesson-page .forcing-source-card,html[data-theme=dark] .lesson-page .forcing-branch-rule{background:var(--surface-soft)}html[data-theme=dark] .lesson-page .forcing-source-card strong,html[data-theme=dark] .lesson-page .forcing-branch-rule strong,html[data-theme=dark] .lesson-page .forcing-branch-waiting>header strong,html[data-theme=dark] .lesson-page .forcing-branch-sheet>header strong{color:var(--ink)}html[data-theme=dark] .lesson-page .forcing-source-card i{border-color:var(--lesson-dark-warning-border);background:var(--lesson-dark-warning-surface);color:var(--lesson-dark-warning-ink)}html[data-theme=dark] .lesson-page .forcing-branch-sheet.is-testing{border-color:var(--lesson-dark-warning-border)}html[data-theme=dark] .lesson-page .forcing-branch-sheet.is-contradiction{border-color:var(--lesson-dark-danger-border);background:var(--lesson-dark-danger-surface)}html[data-theme=dark] .lesson-page .forcing-branch-sheet.is-survives,html[data-theme=dark] .lesson-page .forcing-comparison-tray.is-commit{border-color:var(--lesson-dark-success-border);background:var(--lesson-dark-success-surface)}html[data-theme=dark] .lesson-page .forcing-branch-sheet.is-contradiction>footer,html[data-theme=dark] .lesson-page .forcing-branch-sheet.is-survives>footer,html[data-theme=dark] .lesson-page .forcing-comparison-tray.is-commit>svg:last-child{color:currentColor}html[data-theme=dark] .lesson-page .forcing-branch-sheet.is-contradiction>footer{color:var(--lesson-dark-danger-ink)}html[data-theme=dark] .lesson-page .forcing-branch-sheet.is-survives>footer,html[data-theme=dark] .lesson-page .forcing-comparison-tray.is-commit>svg:last-child{color:var(--lesson-dark-success-ink)}@media (width>=781px){.page.app-page>.progress-first-step{width:min(100%,640px);max-width:none;min-height:208px;margin:0 0 var(--space-8);padding:var(--space-6) var(--space-8);align-items:center;gap:var(--space-8);border:1px solid var(--line);border-radius:var(--radius-surface);background:var(--paper);box-shadow:var(--shadow-border);text-align:left;grid-template-columns:160px minmax(0,1fr);display:grid}.page.app-page>.progress-first-step>img{border-radius:var(--radius-feature);grid-column:1;width:160px;height:160px;margin:0}.puzzle-list-section,.progress-techniques,.progress-history,.daily-archive-card{box-shadow:none;background:0 0;border-inline:0;border-radius:0}.puzzle-list-section{border-block:1px solid var(--line);padding-inline:0}.progress-techniques,.progress-history{border-block-color:var(--line)}}.price-plan.featured{border-top:4px solid var(--saffron-ink);border-radius:var(--radius-surface)}.price-plan:has(.plan-active-status){border-color:color-mix(in srgb, var(--sage-dark) 42%, var(--line));border-top-color:var(--sage-dark);background:color-mix(in srgb, var(--sage-soft) 32%, var(--paper));box-shadow:0 20px 55px color-mix(in srgb, var(--sage-dark) 12%, transparent)}.price-plan:has(.plan-active-status) .price-owl{opacity:.62}.plan-active-status{border-block:1px solid color-mix(in srgb, var(--sage-dark) 26%, var(--line));border-radius:var(--radius-control);background:color-mix(in srgb, var(--sage-soft) 72%, transparent);text-align:left;justify-content:flex-start;min-height:0;margin-top:14px;padding:12px 14px;font-size:.78rem}.plan-cancel-note,.checkout-trust,.account-plan-badge,.member-status,.streak,.timer{font-variant-numeric:tabular-nums}@media (width<=780px){.mobile-tabbar a span{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.mobile-tabbar a{min-height:50px}.puzzle-more-actions,.puzzle-more-options{margin-bottom:12px}.puzzle-more-options{margin-top:12px}.puzzle-more-actions-heading,.puzzle-more-options>summary{min-height:48px;padding-block:12px;font-size:.72rem}.puzzle-more-action{gap:9px;min-height:54px;padding:10px}.puzzle-more-action small{font-size:.61rem}.puzzle-activity-section{border-block:1px solid var(--line);margin-top:12px;padding:16px 0 0}.puzzle-activity-section .section-title h2{font-size:1.35rem;line-height:1.05}.daily-picker .difficulty-picker{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.daily-picker .difficulty-picker button{min-width:0;min-height:56px;padding-inline:10px}.daily-picker .difficulty-picker button strong{white-space:normal;overflow-wrap:normal;min-width:0;font-size:.76rem;line-height:1.05}.daily-picker .difficulty-picker button small{font-size:.56rem}.puzzles-hub-page .coaching-privilege-preview{grid-template-columns:minmax(0,1fr) auto;gap:10px;min-height:0;margin-top:12px;padding:14px}.puzzles-hub-page .coaching-privilege-preview h2{max-width:17ch;margin:2px 0 0;font-size:1rem;line-height:1.08}.puzzles-hub-page .coaching-privilege-preview p{display:none}.puzzles-hub-page .coaching-privilege-preview .button{min-height:40px;padding-inline:10px;font-size:.64rem}.puzzle-layout{scroll-padding-bottom:calc(18px + var(--safe-area-bottom))}.puzzle-goal{gap:8px;min-height:46px;padding:8px 10px}.mobile-coach-launcher{min-height:48px}.board-tools .puzzle-number-pad{gap:4px}.board-tools .puzzle-number-pad button{min-width:42px;min-height:44px}.board-tools .edit-tools button,.board-tools .input-mode-tools .mobile-input-mode{min-height:42px}}@media (width<=780px) and (height<=760px){.board-workspace{--puzzle-board-size:min(100%, calc(100dvh - 350px - var(--safe-area-top) - var(--safe-area-bottom)))}.puzzle-layout{width:min(100% - 16px,620px);padding-top:4px;padding-bottom:var(--safe-area-bottom)}.board-wrap{width:var(--puzzle-board-size)}.puzzle-goal{margin-bottom:1px}.mobile-coach-launcher,.board-tools{margin-top:3px}.mobile-coach-open{min-height:42px}.mobile-coach-launcher.has-context-action .mobile-coach-open{min-height:64px}.mobile-coach-context-actions{margin-bottom:4px}.board-tools .puzzle-number-pad button{min-height:44px}}@media (width<=520px) and (height<=760px){.edit-tools button,.input-mode-tools .input-mode-button{white-space:nowrap;font-size:.46rem;line-height:1}}@media (width<=780px){.puzzle-board-column,.puzzle-controls-column{display:contents}}@media (width<=780px) and (orientation:landscape){.puzzle-header{height:calc(58px + var(--safe-area-top))}.puzzle-header>.text-link{min-height:42px;font-size:.72rem}.puzzle-header .difficulty{padding:5px 8px}.puzzle-layout{width:min(100% - 16px,620px)}.board-workspace{--puzzle-board-size:min(100%, calc(100dvh - 100px));grid-template-columns:minmax(0, var(--puzzle-board-size)) minmax(0, 1fr);-moz-column-gap:12px;align-items:start;column-gap:12px;display:grid}.board-workspace>:not(.puzzle-board-column):not(.puzzle-controls-column):not(.mobile-puzzle-goal){order:0;grid-column:1/-1}.board-workspace>.mobile-puzzle-goal{order:1;grid-column:1/-1}.puzzle-board-column{order:2;grid-column:1;min-width:0}.puzzle-board-column .board-wrap{width:var(--puzzle-board-size);margin-inline:0}.puzzle-controls-column{flex-direction:column;order:2;grid-column:2;align-items:stretch;min-width:0;display:flex}.puzzle-controls-column .mobile-coach-launcher,.puzzle-controls-column .board-tools{width:100%}.puzzle-controls-column .mobile-coach-launcher{width:auto;margin-top:0}.puzzle-controls-column .board-tools{-moz-column-gap:8px;grid-template-columns:minmax(140px,.9fr) minmax(0,1.1fr);align-items:start;column-gap:8px;margin-top:6px;display:grid}.puzzle-controls-column .desktop-shortcut-help{display:none}.puzzle-controls-column .edit-tools{grid-area:1/2;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px;display:grid}.puzzle-controls-column .edit-tools>.tool-button-wrap,.puzzle-controls-column .edit-tools>.input-mode-tools>.tool-button-wrap{width:100%}.puzzle-controls-column .edit-tools>.tool-button-wrap:first-child{grid-area:1/1}.puzzle-controls-column .edit-tools>.tool-button-wrap:nth-child(2){grid-area:1/2}.puzzle-controls-column .edit-tools>.tool-button-wrap:nth-child(3){grid-area:2/1/auto/-1}.puzzle-controls-column .edit-tools>.input-mode-tools>.tool-button-wrap:first-child{grid-area:3/1}.puzzle-controls-column .edit-tools>.input-mode-tools>.desktop-note-tool-wrap{grid-area:3/2}.puzzle-controls-column .edit-tools button{white-space:normal;justify-content:flex-start;width:100%;min-width:0;min-height:34px;padding:4px 7px;font-size:.58rem;line-height:1.1}.puzzle-controls-column .board-tools .puzzle-number-pad{grid-area:1/1/span 3;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;width:100%;margin-top:0}.puzzle-controls-column .board-tools .puzzle-number-pad button{aspect-ratio:auto;min-width:0}.puzzle-controls-column .board-tools .puzzle-number-pad .mobile-guidance-keypad-button{grid-column:1/-1;grid-template-rows:1fr;grid-template-columns:17px auto 10px;justify-content:center;gap:5px;min-height:44px;padding-inline:8px}.puzzle-controls-column .mobile-guidance-keypad-button .mobile-guidance-keypad-check{position:static}.puzzle-controls-column .board-tools .puzzle-guidance-status{grid-area:4/1/auto/-1;grid-template-rows:auto auto;grid-template-columns:25px minmax(0,1fr);align-items:start;gap:3px 6px;margin-top:6px;padding:6px 8px}.puzzle-controls-column .board-tools .puzzle-guidance-status-icon{grid-row:1/span 2;width:25px;height:25px}.puzzle-controls-column .board-tools .puzzle-guidance-status-copy small{font-size:.47rem;line-height:1.1}.puzzle-controls-column .board-tools .puzzle-guidance-status-copy strong,.puzzle-controls-column .board-tools .puzzle-guidance-status-copy>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.puzzle-controls-column .board-tools .puzzle-guidance-status-copy strong{font-size:.62rem;line-height:1.15}.puzzle-controls-column .board-tools .puzzle-guidance-status-copy>span{font-size:.54rem;line-height:1.15}.puzzle-controls-column .board-tools .puzzle-guidance-status:has(>.guidance-objective-control) .puzzle-guidance-status-copy{padding-right:112px}.puzzle-controls-column .board-tools .guidance-objective-control{max-width:132px;font-size:.48rem;top:6px;right:7px}.puzzle-controls-column .board-tools .puzzle-guidance-status:has(.guidance-assist-back)>.guidance-objective-control{max-width:105px;right:40px}.puzzle-controls-column .board-tools .puzzle-guidance-status:has(.puzzle-guidance-state-control)>.guidance-objective-control{max-width:105px;right:40px}.puzzle-controls-column .board-tools .puzzle-guidance-status-actions{justify-content:flex-start;justify-items:initial;flex-wrap:wrap;grid-area:2/2;gap:3px 8px;display:flex}.puzzle-controls-column .board-tools .puzzle-guidance-status-actions .text-link{white-space:nowrap;padding:0;font-size:.5rem;line-height:1.1}.mobile-coach-sheet{height:calc(100dvh - var(--safe-area-top) - 8px);max-height:calc(100dvh - var(--safe-area-top) - 8px)}.mobile-coach-sheet-header{-moz-column-gap:8px;grid-template-rows:1fr;grid-template-columns:40px minmax(0,1fr) auto;gap:0 8px;min-height:64px;padding:8px 12px}.mobile-coach-sheet-avatar{grid-row:1;width:38px;height:38px}.mobile-coach-sheet-avatar .mascot{width:48px;height:53px;transform:translate(-5px,1px)}.mobile-coach-sheet-title{grid-area:1/2}.mobile-coach-sheet-title .eyebrow{font-size:.43rem}.mobile-coach-sheet-title>strong{font-size:.82rem}.mobile-coach-sheet-header>button{grid-area:1/3;min-height:36px;padding-inline:10px;font-size:.6rem}.mobile-coach-sheet-body>.coach-panel.coach-chat{grid-template-rows:minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr) minmax(235px,.7fr);display:grid}.mobile-coach-sheet .coach-thread-shell{grid-area:1/1;min-width:0;min-height:0}.mobile-coach-sheet .coach-chat-controls{border-top:0;border-left:1px solid var(--line);grid-area:1/2/-1;min-width:0;min-height:0;overflow-y:auto}.lesson-content[data-stage=diagnostic] .practice-response,.lesson-content[data-stage=practice] .practice-response{width:auto;max-width:none;max-height:none;box-shadow:none;background:0 0;border:0;border-radius:0;margin:12px 0 0;padding:0;position:static;inset:auto;overflow:visible}.lesson-content[data-stage=diagnostic],.lesson-content[data-stage=practice]{padding-bottom:20px}}html[data-theme=dark] .resource-hero-board-card{border-color:var(--line);background:color-mix(in srgb, var(--paper) 88%, transparent);box-shadow:0 28px 70px #00000047, 0 0 0 10px color-mix(in srgb, var(--sage-soft) 42%, transparent)}html[data-theme=dark] .resource-hero-board-card .public-sudoku-cell{border-color:var(--board-line)}html[data-theme=dark] .search-guide-intro:after{border-color:color-mix(in srgb, var(--ink) 72%, transparent);background:linear-gradient(90deg, transparent 32.7%, color-mix(in srgb, var(--ink) 46%, transparent) 33% 34%, transparent 34.3% 65.7%, color-mix(in srgb, var(--ink) 46%, transparent) 66% 67%, transparent 67.3%), linear-gradient(0deg, transparent 32.7%, color-mix(in srgb, var(--ink) 46%, transparent) 33% 34%, transparent 34.3% 65.7%, color-mix(in srgb, var(--ink) 46%, transparent) 66% 67%, transparent 67.3%), repeating-linear-gradient(90deg, color-mix(in srgb, var(--sage-soft) 84%, transparent) 0 1px, transparent 1px 11.1%), repeating-linear-gradient(0deg, color-mix(in srgb, var(--sage-soft) 84%, transparent) 0 1px, transparent 1px 11.1%), color-mix(in srgb, var(--paper) 78%, transparent)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.practice-hub-hero{grid-template-columns:minmax(300px,.72fr) minmax(0,1.28fr);align-items:center;gap:clamp(34px,5vw,72px);max-width:none;min-height:min(680px,100svh - 120px);display:grid}.practice-hub-hero-copy{max-width:520px;animation:practice-hub-enter .48s var(--ease-out-ui) both}.practice-hub-hero-copy h1{max-width:10ch;margin-block:12px 20px;font-size:clamp(3.2rem,4.7vw,4.6rem);line-height:.92}.practice-hub-hero-copy .resource-actions{margin-top:26px}.practice-hub-hero-note{color:var(--muted);letter-spacing:.01em;margin-top:16px;font-size:.74rem;display:block}.practice-hub-hero-visual{min-width:0;animation:practice-hub-enter .54s 90ms var(--ease-out-ui) both;position:relative}.practice-hub-demo{border:1px solid color-mix(in srgb, var(--ink) 15%, var(--line));border-radius:var(--radius-feature);background:linear-gradient(145deg, color-mix(in srgb, var(--paper) 96%, transparent), var(--surface)), var(--surface);box-shadow:0 30px 74px color-mix(in srgb, var(--ink) 12%, transparent), 0 0 0 8px color-mix(in srgb, var(--sage-soft) 48%, transparent);padding:clamp(18px,2.4vw,28px)}.practice-hub-demo-heading{grid-template-columns:minmax(0,.7fr) minmax(0,1fr);align-items:end;gap:5px 28px;display:grid}.practice-hub-demo-heading .eyebrow{grid-column:1/-1}.practice-hub-demo-heading h2{color:var(--ink);font-family:var(--serif);margin:0;font-size:clamp(1.35rem,2.1vw,1.9rem);line-height:1.02}.practice-hub-demo-heading p{color:var(--muted);margin:0;font-size:.78rem;line-height:1.48}.practice-hub-demo-progress{border-block:1px solid color-mix(in srgb, var(--ink) 14%, transparent);grid-template-columns:repeat(4,minmax(0,1fr));margin:18px 0 0;padding:0;list-style:none;display:grid}.practice-hub-demo-progress li{border-right:1px solid color-mix(in srgb, var(--ink) 12%, transparent);opacity:.42;align-content:center;gap:3px;min-width:0;min-height:54px;padding:9px 9px 8px;transition:opacity .18s,background .18s;display:grid}.practice-hub-demo-progress li:last-child{border-right:0}.practice-hub-demo-progress li.complete,.practice-hub-demo-progress li.active{opacity:1}.practice-hub-demo-progress li.active{background:color-mix(in srgb, var(--sage-soft) 56%, transparent)}.practice-hub-demo-progress span{color:var(--sage-dark);font:720 .6rem/1 var(--serif);font-variant-numeric:tabular-nums}.practice-hub-demo-progress strong{color:var(--ink-soft);text-overflow:ellipsis;font-size:.58rem;font-weight:690;line-height:1.18;overflow:hidden}.practice-hub-demo-workspace{grid-template-columns:minmax(220px,.9fr) minmax(210px,1fr);align-items:center;gap:clamp(18px,2.5vw,30px);margin-top:18px;display:grid}.practice-hub-demo-board{background:color-mix(in srgb, var(--sage-soft) 34%, var(--paper));border-radius:16px;min-width:0;padding:10px}.practice-hub-demo-board .lesson-board-figure{margin:0}.practice-hub-demo-board .lesson-board-frame{--lesson-axis-size:14px;width:100%}.practice-hub-demo-board .lesson-board{box-shadow:0 10px 24px color-mix(in srgb, var(--ink) 10%, transparent)}.practice-hub-demo-board .lesson-board-cell{transition:background .22s var(--ease-out-ui), box-shadow .22s var(--ease-out-ui)}.practice-hub-demo-controls{min-width:0}.practice-hub-demo-question{color:var(--ink);font-family:var(--serif);margin:0;font-size:1rem;line-height:1.25}.practice-hub-demo-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:12px;display:grid}.practice-hub-demo-option{border:1px solid color-mix(in srgb, var(--ink) 16%, transparent);background:color-mix(in srgb, var(--paper) 84%, transparent);min-height:42px;color:var(--ink-soft);font:inherit;text-align:left;cursor:pointer;transition:border-color .15s ease, background .15s ease, transform .15s var(--ease-out-ui);border-radius:10px;gap:5px;padding:9px 10px;display:grid}.practice-hub-demo-option:focus-visible,.practice-hub-links>a:focus-visible,.practice-hub-boundary-links a:focus-visible{outline:3px solid var(--saffron);outline-offset:3px}.practice-hub-demo-option span{font-size:.7rem;font-weight:760;line-height:1.15}.practice-hub-demo-option .practice-hub-demo-option-title{align-items:center;gap:7px;display:flex}.practice-hub-demo-option-title svg{color:var(--sage-dark);flex:none}.practice-hub-demo-option small{color:var(--muted);font-size:.58rem;line-height:1.3}.practice-hub-demo-option.selected{border-color:var(--sage-dark);background:color-mix(in srgb, var(--sage-soft) 64%, var(--paper))}.practice-hub-demo-option.wrong{border-color:var(--coral);background:color-mix(in srgb, var(--coral) 10%, var(--paper))}.practice-hub-demo-feedback{min-height:40px;color:var(--muted);border-left:2px solid #0000;align-items:flex-start;gap:8px;margin-top:10px;padding:8px 10px;font-size:.67rem;line-height:1.4;display:flex}.practice-hub-demo-feedback.visible{border-color:var(--sage-dark);color:var(--ink-soft);animation:practice-hub-feedback .22s var(--ease-out-ui) both}.practice-hub-demo-feedback.mistake{border-color:var(--coral)}.practice-hub-demo-feedback svg{color:var(--sage-dark);flex:none}.practice-hub-demo-feedback.mistake svg{color:var(--coral)}.practice-hub-demo-next{justify-content:center;width:100%;min-height:40px;padding:9px 12px;font-size:.68rem}.practice-hub-demo-replay{cursor:pointer;background:0 0;border:0;min-height:40px;padding:0}.practice-hub-demo-boundary{color:var(--muted);margin:9px 0 0;font-size:.62rem;line-height:1.4}@media (hover:hover) and (pointer:fine){.practice-hub-demo-option:hover{border-color:var(--sage-dark)}}@keyframes practice-hub-enter{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes practice-hub-feedback{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.practice-hub-stage-number{color:var(--sage-dark);font-family:var(--serif);font-variant-numeric:tabular-nums;font-size:.76rem}.resource-practice-secondary{margin-top:20px;display:block}.practice-hub-loop-copy{grid-template-columns:112px minmax(0,1fr);align-items:center;gap:24px;min-width:0;display:grid}.practice-hub-loop-copy>p{color:var(--muted);margin:0;line-height:1.8}.practice-hub-loop-illustration{aspect-ratio:1;border:1px dashed color-mix(in srgb, var(--sage-dark) 52%, transparent);background:radial-gradient(circle, color-mix(in srgb, var(--sage-soft) 72%, transparent) 0 35%, transparent 36%), color-mix(in srgb, var(--paper) 72%, transparent);border-radius:50%;place-items:center;width:112px;display:grid;position:relative}.practice-hub-loop-illustration:before,.practice-hub-loop-illustration:after{content:"";border:1px solid color-mix(in srgb, var(--saffron) 40%, transparent);border-radius:50%;position:absolute}.practice-hub-loop-illustration:before{inset:15px}.practice-hub-loop-illustration:after{border-color:color-mix(in srgb, var(--sage-dark) 35%, transparent);inset:28px}.practice-hub-loop-illustration>svg{z-index:2;width:30px;height:30px;color:var(--sage-dark)}.practice-hub-loop-node{z-index:3;border:2px solid var(--paper);background:var(--saffron);width:9px;height:9px;box-shadow:0 0 0 3px color-mix(in srgb, var(--saffron) 18%, transparent);border-radius:50%;position:absolute}.practice-hub-loop-node-a{top:7px;left:50%;transform:translate(-50%)}.practice-hub-loop-node-b{top:50%;right:7px;transform:translateY(-50%)}.practice-hub-loop-node-c{bottom:7px;left:50%;transform:translate(-50%)}.practice-hub-loop-node-d{top:50%;left:7px;transform:translateY(-50%)}.practice-hub-stage-list{border-block:1px solid #102a4326;grid-template-columns:repeat(4,minmax(0,1fr));margin:clamp(56px,8vw,96px) 0 0;padding:0;list-style:none;display:grid}.practice-hub-stage-list li{border-right:1px solid #102a4326;align-content:start;gap:10px;min-height:210px;padding:28px 24px 30px 0;display:grid}.practice-hub-stage-list li+li{padding-left:24px}.practice-hub-stage-list li:last-child{border-right:0}.practice-hub-stage-topline{justify-content:space-between;align-items:flex-start;min-height:54px;display:flex}.practice-hub-stage-icon{border:1px solid color-mix(in srgb, var(--sage-dark) 24%, transparent);background:color-mix(in srgb, var(--sage-soft) 72%, var(--paper));width:48px;height:48px;color:var(--sage-dark);box-shadow:inset 0 1px 0 color-mix(in srgb, var(--paper) 74%, transparent);border-radius:50%;place-items:center;display:grid}.practice-hub-stage-list li:nth-child(2n) .practice-hub-stage-icon{border-color:color-mix(in srgb, var(--saffron) 32%, transparent);background:color-mix(in srgb, var(--saffron) 12%, var(--paper));color:var(--saffron-ink)}.practice-hub-stage-list h3,.practice-hub-signal-grid h3,.practice-hub-method-proof h3{color:var(--ink);font-family:var(--serif);margin:0;font-size:clamp(1.16rem,2vw,1.48rem);line-height:1.15}.practice-hub-stage-list p,.practice-hub-signal-grid p,.practice-hub-method-proof p,.practice-hub-boundary p{color:var(--muted);margin:0;line-height:1.7}.practice-hub-method-section,.practice-hub-boundary{border-block:1px solid #102a4326;margin-top:clamp(92px,13vw,168px);padding:clamp(42px,7vw,78px) 0}.practice-hub-section-heading{max-width:760px}.practice-hub-section-heading h2{max-width:18ch;color:var(--ink);font-family:var(--display);letter-spacing:-.04em;text-wrap:balance;margin:12px 0 22px;font-size:clamp(2.3rem,5vw,4.35rem);font-weight:650;line-height:.98}.practice-hub-section-heading>p{max-width:68ch;color:var(--muted);margin:0;line-height:1.75}.practice-hub-signal-intro{font-family:var(--serif);font-size:1.08rem;color:var(--ink-soft)!important;margin-top:16px!important}.practice-hub-signal-grid{border-top:1px solid #102a4326;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:58px;display:grid}.practice-hub-signal-grid article{border-right:1px solid #102a4326;grid-template-rows:126px minmax(0,1fr);gap:24px;min-height:330px;padding:26px 24px 28px 0;display:grid}.practice-hub-signal-grid article+article{padding-left:24px}.practice-hub-signal-grid article:last-child{border-right:0}.practice-hub-signal-copy{grid-template-columns:34px minmax(0,1fr);align-content:start;gap:9px 12px;display:grid}.practice-hub-signal-icon{background:color-mix(in srgb, var(--sage-soft) 72%, transparent);width:34px;height:34px;color:var(--sage-dark);border-radius:50%;grid-row:1/span 2;place-items:center;display:grid}.practice-hub-signal-copy h3,.practice-hub-signal-copy p{grid-column:2}.practice-signal-illustration{background-color:color-mix(in srgb, var(--sage-soft) 34%, transparent);width:100%;height:126px;transition:transform .22s var(--ease-out-ui);border-radius:4px;display:block;position:relative;overflow:hidden}.practice-signal-illustration[data-family=intersection]{background-image:linear-gradient(color-mix(in srgb, var(--ink) 16%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in srgb, var(--ink) 16%, transparent) 1px, transparent 1px);background-size:33.333% 33.333%}.practice-signal-axis{background:color-mix(in srgb, var(--saffron) 20%, transparent);display:block;position:absolute}.practice-signal-axis-row{height:33.333%;inset:33.333% 0}.practice-signal-axis-column{width:33.333%;inset:0 33.333%}.practice-signal-dot,.practice-signal-map-node{z-index:2;border:2px solid var(--paper);background:var(--sage-dark);width:10px;height:10px;box-shadow:0 0 0 3px color-mix(in srgb, var(--sage-dark) 16%, transparent);border-radius:50%;position:absolute}.practice-signal-dot-a{top:45%;left:13%}.practice-signal-dot-b{top:45%;left:47%}.practice-signal-dot-c{top:12%;left:47%}.practice-signal-set{z-index:2;border:1px solid color-mix(in srgb, var(--ink) 24%, transparent);background:color-mix(in srgb, var(--paper) 86%, transparent);border-radius:6px;justify-content:space-evenly;align-items:center;width:46px;height:54px;display:flex;position:absolute;top:36px}.practice-signal-set-a{left:22%}.practice-signal-set-b{right:22%}.practice-signal-set b,.practice-signal-link-node b{background:var(--saffron);border-radius:50%;width:8px;height:8px;display:block}.practice-signal-set b:last-child,.practice-signal-link-node b:last-child{background:var(--sage-dark)}.practice-signal-pair-line{border-top:1px dashed color-mix(in srgb, var(--sage-dark) 52%, transparent);height:1px;position:absolute;top:63px;left:39%;right:39%}.practice-signal-map-line,.practice-signal-link-line{transform-origin:0;background:color-mix(in srgb, var(--sage-dark) 52%, transparent);height:1px;display:block;position:absolute}.practice-signal-map-line-a{width:62%;top:36%;left:18%}.practice-signal-map-line-b{width:62%;top:70%;left:18%}.practice-signal-map-node-a,.practice-signal-map-node-b{top:calc(36% - 5px)}.practice-signal-map-node-c,.practice-signal-map-node-d{top:calc(70% - 5px)}.practice-signal-map-node-a,.practice-signal-map-node-c{left:18%}.practice-signal-map-node-b,.practice-signal-map-node-d{right:18%}.practice-signal-link-line-a,.practice-signal-link-line-b{width:42%;top:72%;left:50%}.practice-signal-link-line-a{transform:rotate(-136deg)}.practice-signal-link-line-b{transform:rotate(-44deg)}.practice-signal-link-node{z-index:2;border:1px solid color-mix(in srgb, var(--ink) 24%, transparent);background:color-mix(in srgb, var(--paper) 88%, transparent);border-radius:999px;justify-content:space-evenly;align-items:center;width:42px;height:30px;display:flex;position:absolute}.practice-signal-link-node-a{top:14%;left:calc(50% - 21px)}.practice-signal-link-node-b{bottom:12%;left:11%}.practice-signal-link-node-c{bottom:12%;right:11%}@supports (animation-timeline:view()){.practice-hub-signal-grid article{animation:linear both practice-signal-reveal;animation-timeline:view();animation-range:entry 8% cover 28%}.practice-hub-signal-grid article:nth-child(2){animation-range:entry 12% cover 32%}.practice-hub-signal-grid article:nth-child(3){animation-range:entry 16% cover 36%}.practice-hub-signal-grid article:nth-child(4){animation-range:entry 20% cover 40%}}@keyframes practice-signal-reveal{0%{opacity:.3;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.practice-hub-method-proof{border-top:2px solid var(--sage-dark);max-width:850px;margin-top:62px;padding:30px 0 0}.practice-hub-method-proof>.eyebrow{color:var(--ink);font-family:var(--serif);font-size:1.3rem;line-height:1.3;display:block}.practice-hub-method-proof>p:first-of-type{color:var(--ink-soft);margin-top:14px}.practice-hub-method-proof h3{margin-top:30px}.practice-hub-method-proof ol{color:var(--ink-soft);margin:20px 0 0;padding-left:1.25rem}.practice-hub-method-proof li{padding:7px 0 7px 6px;line-height:1.6}.practice-hub-summary{font-family:var(--serif);font-size:1.08rem;color:var(--ink)!important;margin-top:20px!important}.practice-hub-actions{flex-wrap:wrap;align-items:center;gap:20px 28px;margin-top:38px;display:flex}.practice-hub-actions .text-link{align-items:center;gap:8px;display:inline-flex}.practice-hub-boundary{border-block:0;grid-template-columns:minmax(0,.8fr) minmax(360px,1fr);align-items:start;gap:clamp(44px,9vw,120px);display:grid}.practice-hub-boundary-links{border-top:1px solid #102a4326;display:grid}.practice-hub-boundary-links a{color:var(--ink);transition:padding .19s var(--ease-out-ui), color .16s ease;border-bottom:1px solid #102a4326;grid-template-columns:48px minmax(0,1fr);align-items:start;gap:16px;padding:24px 0;display:grid}.practice-hub-boundary-icon{background:color-mix(in srgb, var(--sage-soft) 72%, transparent);width:44px;height:44px;color:var(--sage-dark);border-radius:50%;place-items:center;display:grid}.practice-hub-boundary-icon svg{width:20px;height:20px}.practice-hub-boundary-copy{gap:8px;min-width:0;display:grid}.practice-hub-boundary-links strong{font-family:var(--serif);font-size:1.35rem;line-height:1.15}.practice-hub-boundary-links span{color:var(--muted);line-height:1.65}.practice-hub-boundary-links em{color:var(--blue);font-size:.72rem;font-style:normal;font-weight:750}@media (hover:hover) and (pointer:fine){.practice-hub-boundary-links a:hover{color:var(--blue);padding-inline:10px}}.practice-hub-links{max-width:980px;margin-top:clamp(80px,12vw,150px)}.practice-hub-links>a{transition:padding .18s var(--ease-out-ui), color .15s ease;grid-template-columns:52px minmax(0,1fr) 28px;align-items:center;gap:20px}.practice-hub-link-icon{background:color-mix(in srgb, var(--sage-soft) 72%, transparent);border-radius:50%;place-items:center;width:48px;height:48px;display:grid;color:var(--sage-dark)!important}.practice-hub-link-icon svg{width:21px;height:21px}.practice-hub-link-copy{grid-template-columns:minmax(180px,.42fr) minmax(0,1fr);align-items:center;gap:30px;min-width:0;display:grid}.practice-hub-link-copy strong{color:var(--ink);font-family:var(--serif);font-size:1.12rem}.practice-hub-link-arrow{width:19px;color:var(--sage-dark);transition:transform .16s var(--ease-out-ui)}@media (hover:hover) and (pointer:fine){.practice-hub-links>a:hover{color:var(--blue);padding-inline:8px}.practice-hub-links>a:hover .practice-hub-link-arrow{transform:translate(4px)}}@media (width<=1050px){.practice-hub-hero{grid-template-columns:minmax(0,1fr);min-height:0}.practice-hub-hero-copy{max-width:680px}.practice-hub-hero-copy h1{max-width:12ch}.practice-hub-hero-visual{width:min(100%,720px)}}@media (width<=820px){.practice-hub-hero,.practice-hub-boundary{grid-template-columns:minmax(0,1fr)}.practice-hub-stage-list,.practice-hub-signal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.practice-hub-stage-list li:nth-child(2),.practice-hub-signal-grid article:nth-child(2){border-right:0}.practice-hub-stage-list li:nth-child(n+3),.practice-hub-signal-grid article:nth-child(n+3){border-top:1px solid #102a4326}.practice-hub-stage-list li:nth-child(3),.practice-hub-signal-grid article:nth-child(3){padding-left:0}}@media (width<=640px){.practice-hub-main{padding-top:28px}.practice-hub-hero{gap:18px;min-height:0}.practice-hub-hero h1{max-width:11ch;margin-block:10px 16px;font-size:clamp(2.65rem,13vw,3.65rem)}.practice-hub-hero-copy>p{font-size:.94rem;line-height:1.55}.practice-hub-hero-visual{width:100%}.practice-hub-hero-copy .resource-actions{gap:10px 14px;margin-top:20px}.practice-hub-hero-copy .button{min-height:42px;padding:10px 14px;font-size:.72rem}.practice-hub-hero-copy .button-outline{color:var(--blue);background:0 0;border-color:#0000;padding-inline:2px}.practice-hub-hero-note{margin-top:10px;font-size:.66rem}.practice-hub-stage-list,.practice-hub-signal-grid{grid-template-columns:minmax(0,1fr)}.practice-hub-stage-list li,.practice-hub-stage-list li+li,.practice-hub-signal-grid article,.practice-hub-signal-grid article+article{border-top:1px solid #102a4326;border-right:0;min-height:0;padding:24px 0}.practice-hub-stage-list li:first-child,.practice-hub-signal-grid article:first-child{border-top:0}.practice-hub-section-heading h2{font-size:clamp(2.25rem,11vw,3.65rem)}.practice-hub-method-section,.practice-hub-boundary{margin-top:82px}.practice-hub-demo{box-shadow:0 20px 50px color-mix(in srgb, var(--ink) 10%, transparent), 0 0 0 5px color-mix(in srgb, var(--sage-soft) 44%, transparent);border-radius:18px;padding:10px 14px 14px}.practice-hub-demo-heading{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.practice-hub-demo-progress{margin-top:0}.practice-hub-demo-progress li{min-height:28px;padding:7px 8px}.practice-hub-demo-progress strong{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.practice-hub-demo-workspace{grid-template-columns:minmax(0,1fr);gap:16px;margin-top:10px}.practice-hub-demo-board{justify-self:center;width:min(52vw,196px);padding:7px}.practice-hub-demo-controls{border-top:1px solid color-mix(in srgb, var(--ink) 12%, transparent);padding-top:14px}.practice-hub-demo-options{grid-template-columns:repeat(2,minmax(0,1fr))}.practice-hub-demo-option{min-height:44px}.practice-hub-loop-copy{grid-template-columns:92px minmax(0,1fr);gap:18px}.practice-hub-loop-illustration{width:92px}.practice-hub-stage-icon{width:44px;height:44px}.practice-hub-signal-grid article,.practice-hub-signal-grid article+article{grid-template-rows:112px minmax(0,1fr);gap:20px}.practice-signal-illustration{height:112px}.practice-hub-links>a{grid-template-columns:46px minmax(0,1fr) 22px;gap:14px}.practice-hub-link-icon{width:44px;height:44px}.practice-hub-link-copy{grid-template-columns:minmax(0,1fr);gap:5px}.practice-hub-boundary-links a{grid-template-columns:44px minmax(0,1fr);gap:13px}}@media (prefers-reduced-motion:reduce){.practice-hub-hero-copy,.practice-hub-hero-visual,.practice-hub-demo-feedback.visible{animation:none}.practice-hub-demo-option,.practice-hub-demo-board .lesson-board-cell,.practice-signal-illustration,.practice-hub-link-arrow{transition:none}.practice-hub-signal-grid article{animation:none}}.page.app-page>.compact-page-header{align-items:center;gap:18px;margin-bottom:20px}.page.app-page>.compact-page-header .eyebrow{margin-bottom:5px}.page.app-page>.compact-page-header h1{margin:0 0 7px;font-size:clamp(2rem,3.2vw,2.9rem);line-height:1}.page.app-page>.compact-page-header p{max-width:36rem;font-size:.86rem;line-height:1.4}@media (width<=640px){.page.app-page.account-page>.app-page-header{margin-bottom:12px}.page.app-page.account-page>.app-page-header .eyebrow{margin-bottom:4px;font-size:.58rem}.page.app-page.account-page>.app-page-header h1{max-width:22rem;margin-bottom:0;font-size:clamp(1.55rem,7.5vw,1.85rem);line-height:1.02}.account-page .auth-tabs{margin-bottom:18px}.account-page .auth-tabs button{min-height:44px;padding:8px 10px;font-size:.76rem;line-height:1.2}.account-page .password-recovery-note{margin-top:14px;font-size:.68rem;line-height:1.45}.account-page .password-recovery-note .text-link{border:1px solid var(--ink);background:var(--surface);width:fit-content;min-height:40px;color:var(--ink);border-radius:8px;align-items:center;margin-top:9px;padding:7px 11px;font-size:.68rem;line-height:1.15;text-decoration:none;display:inline-flex}.page.app-page.puzzles-hub-page>.app-page-header{display:none}.puzzle-activity-section .section-title .text-link,.progress-history-list .text-link{font-size:.62rem;line-height:1.25}.puzzle-activity-section .section-title .text-link svg,.progress-history-list .text-link svg{width:13px;height:13px}.lesson-library-tabs{width:100%;margin-bottom:18px}.lesson-library-tabs button{min-width:0;padding-inline:6px;font-size:.64rem}.page.app-page.home-page>.app-page-header p{font-size:.76rem;line-height:1.35}.home-page .daily-picker-copy>p{margin-bottom:13px;font-size:.76rem;line-height:1.4}.home-page .notebook-callout-compact{border-radius:12px;gap:9px;min-height:58px;margin-top:10px;padding:9px 12px}.home-page .notebook-callout-compact .notebook-callout-icon{width:32px;height:32px}.home-page .notebook-callout-compact h2{letter-spacing:0;font-size:.78rem;line-height:1.25}.home-page .notebook-callout-compact>svg{width:18px;height:18px}.home-page .continue-lesson{border-radius:12px;grid-template-columns:72px minmax(0,1fr) 18px;gap:12px;margin-top:10px;padding:12px}.home-page .continue-lesson .lesson-art{width:72px;height:72px}.home-page .continue-lesson .lesson-art img{border-radius:20px}.home-page .continue-lesson .eyebrow{letter-spacing:.11em;margin-bottom:4px;font-size:.58rem;line-height:1.3}.home-page .continue-lesson h2{margin-bottom:3px;font-size:1.08rem;line-height:1.08}.home-page .continue-lesson p{font-size:.7rem;line-height:1.35}.home-page .continue-lesson-chevron{width:18px;height:18px}.page.app-page>.compact-page-header{gap:5px;margin-bottom:12px}.page.app-page>.compact-page-header h1{margin-bottom:0;font-size:clamp(1.8rem,8.2vw,2.2rem);line-height:1}.page.app-page>.compact-page-header p{display:none}.page.app-page>.compact-page-header .app-page-header-aside{margin-top:1px}.page.app-page>.compact-page-header .library-count{padding:0;font-size:.6rem}.page.app-page>.review-heading{margin-bottom:10px}.page.app-page>.review-heading .eyebrow{margin-bottom:3px;font-size:.58rem}.page.app-page>.review-heading h1{max-width:20rem;margin-bottom:5px;font-size:clamp(1.65rem,8vw,1.95rem);line-height:1.02}.page.app-page>.review-heading p{max-width:34rem;font-size:.76rem;line-height:1.35}.review-summary{gap:9px 14px;margin:10px 0;padding:13px 14px}.review-summary>div:not(.progress-ring){gap:2px;min-height:34px}.review-summary span{font-size:.58rem;line-height:1.25}.review-summary strong{font-size:1rem;line-height:1.1}.puzzle-share-strip{gap:12px;margin:10px 0;padding:14px}.puzzle-share-strip .eyebrow{font-size:.58rem}.puzzle-share-strip h2{margin:2px 0 3px;font-size:1.2rem;line-height:1.08}.puzzle-share-strip p{font-size:.72rem;line-height:1.4}.puzzle-share-control{gap:6px}.puzzle-share-time-option{gap:12px}.puzzle-share-time-option strong{font-size:.7rem}.puzzle-share-time-option small{font-size:.58rem}.puzzle-share-control .button{min-height:44px;padding:8px 12px;font-size:.72rem;line-height:1.15}.review-grid{gap:10px}.review-mistakes,.technique-review{padding:15px}.review-mistakes .section-title h2{margin-top:3px;font-size:1.2rem;line-height:1.08}.review-mistakes>p{margin:6px 0 0;font-size:.7rem;line-height:1.4}.technique-review>.eyebrow{margin-bottom:8px}.technique-review>div:not(.coach-summary){padding:7px 0;font-size:.68rem}.coach-summary{margin-top:12px}.coach-summary .mascot{width:52px;height:56px}.review-next{gap:12px;margin-top:10px;padding:16px}.review-next .eyebrow{font-size:.58rem}.review-next h2{margin:3px 0 4px;font-size:1.25rem;line-height:1.08}.review-next p{font-size:.7rem;line-height:1.4}.review-next>div:last-child{gap:7px}.review-next .button{min-height:44px;padding:8px 12px;font-size:.72rem;line-height:1.15}}.review-page>.review-summary,.review-page>.review-mistakes,.review-page>.technique-review,.review-page>.review-next{box-shadow:var(--shadow-border)}.review-page .review-next .button,.review-page .puzzle-share-control .button,.review-page .history-gate .button{transition:transform var(--duration-fast) var(--ease-out-ui), background-color var(--duration-fast) var(--ease-out-ui), border-color var(--duration-fast) var(--ease-out-ui), color var(--duration-fast) var(--ease-out-ui)}.review-page .review-next .button:active:not(:disabled),.review-page .puzzle-share-control .button:active:not(:disabled),.review-page .history-gate .button:active:not(:disabled){transform:scale(.98)}@media (width<=640px){.page.app-page.review-page{--review-mobile-gap:10px}.page.app-page.review-page>.review-heading{margin-bottom:var(--review-mobile-gap);gap:0}.page.app-page.review-page>.review-heading .eyebrow{letter-spacing:.14em;margin-bottom:4px;font-size:.57rem}.page.app-page.review-page>.review-heading h1{max-width:21rem;font-family:var(--sans);letter-spacing:-.045em;margin-bottom:5px;font-size:clamp(1.72rem,8.2vw,2.05rem);font-weight:800;line-height:1.02}.page.app-page.review-page>.review-heading p{max-width:34rem;color:var(--muted);font-size:.72rem;line-height:1.35}.page.app-page.review-page>.review-summary{margin:0 0 var(--review-mobile-gap);background:var(--paper);border-radius:16px;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;padding:0;display:grid;overflow:hidden}.page.app-page.review-page>.review-summary>div:not(.progress-ring){border:0;border-bottom:1px solid var(--line);justify-content:center;gap:4px;min-height:56px;padding:11px 13px}.page.app-page.review-page>.review-summary>div:not(.progress-ring):nth-child(odd){border-right:1px solid var(--line)}.page.app-page.review-page>.review-summary>div:not(.progress-ring):last-child{border-right:0;grid-column:1/-1}.page.app-page.review-page>.review-summary span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.55rem;font-weight:750;line-height:1.15}.page.app-page.review-page>.review-summary strong{font-family:var(--sans);font-size:.96rem;font-weight:800;line-height:1.05}.page.app-page.review-page>.review-summary .progress-ring.small{background:var(--sage-soft);border-radius:0;grid-column:1/-1;width:100%;height:42px;margin:0}.page.app-page.review-page>.review-summary .progress-ring.small:after{display:none}.page.app-page.review-page>.review-summary .progress-ring.small>div{flex-direction:row;gap:5px}.page.app-page.review-page>.review-summary .progress-ring.small strong{font-size:.9rem}.page.app-page.review-page>.review-summary .progress-ring.small span{font-size:.55rem}.page.app-page.review-page>.puzzle-share-strip{margin:0 0 var(--review-mobile-gap);box-shadow:var(--shadow-border);border-radius:16px;grid-template-columns:minmax(0,1fr);gap:9px;padding:13px;display:grid}.page.app-page.review-page>.puzzle-share-strip .eyebrow{margin-bottom:3px;font-size:.56rem}.page.app-page.review-page>.puzzle-share-strip h2{font-family:var(--sans);letter-spacing:-.02em;margin:0;font-size:1rem;font-weight:800;line-height:1.15}.page.app-page.review-page>.puzzle-share-strip p{display:none}.page.app-page.review-page .puzzle-share-control{justify-items:stretch;gap:7px;width:100%;min-width:0;display:grid}.page.app-page.review-page .puzzle-share-time-option{border-bottom:1px solid color-mix(in srgb, var(--sage-dark) 20%, var(--line));gap:10px;width:100%;min-width:0;min-height:30px;padding-bottom:7px}.page.app-page.review-page .puzzle-share-time-option small{display:none}.page.app-page.review-page .puzzle-share-time-option strong{font-family:var(--sans);font-size:.68rem;font-weight:750}.page.app-page.review-page .puzzle-share-control .button{border-radius:10px;justify-content:center;width:100%;min-height:42px;padding:8px 11px;font-size:.7rem;line-height:1.15}.page.app-page.review-page .puzzle-share-control .lesson-share-status{text-align:center;max-width:none}.page.app-page.review-page>.review-grid{gap:var(--review-mobile-gap)}.page.app-page.review-page .review-mistakes,.page.app-page.review-page .technique-review{background:var(--paper);border-radius:16px;padding:14px}.page.app-page.review-page .review-mistakes .section-title h2{font-family:var(--sans);letter-spacing:-.025em;margin-top:3px;font-size:1.08rem;font-weight:800;line-height:1.08}.page.app-page.review-page .review-mistakes>p{margin:7px 0 0;font-size:.69rem;line-height:1.35}.page.app-page.review-page .free-mistake-summary{margin:10px 0 0;padding:10px 11px;font-size:.68rem;line-height:1.35}.page.app-page.review-page .history-gate{border-radius:11px;gap:8px;margin-top:10px;padding:11px}.page.app-page.review-page .history-gate strong{font-family:var(--sans);font-size:.72rem;line-height:1.2}.page.app-page.review-page .history-gate span{margin-top:3px;font-size:.59rem;line-height:1.35}.page.app-page.review-page .history-gate .button{min-height:40px;padding:8px 10px;font-size:.68rem}.page.app-page.review-page .technique-review>.eyebrow{margin-bottom:7px;font-size:.56rem}.page.app-page.review-page .technique-review>div:not(.coach-summary){min-height:40px;font-family:var(--sans);grid-template-columns:20px minmax(0,1fr) auto;gap:7px;padding:7px 0;font-size:.69rem}.page.app-page.review-page .technique-review>div:not(.coach-summary) small{font-size:.55rem}.page.app-page.review-page .coach-summary{border-top:1px solid var(--line);gap:8px;margin-top:9px;padding-top:10px}.page.app-page.review-page .coach-summary .mascot{width:42px;height:46px}.page.app-page.review-page .coach-summary strong{font-family:var(--sans);font-size:.7rem;font-weight:800}.page.app-page.review-page .coach-summary span{margin-top:2px;font-size:.61rem;line-height:1.3}.page.app-page.review-page>.review-next{margin-top:var(--review-mobile-gap);border-radius:16px;gap:11px;padding:15px}.page.app-page.review-page .review-next .eyebrow{font-size:.56rem}.page.app-page.review-page .review-next h2{font-family:var(--sans);letter-spacing:-.025em;margin:3px 0 0;font-size:1.2rem;font-weight:800;line-height:1.08}.page.app-page.review-page .review-next p{display:none}.page.app-page.review-page .review-next>div:last-child{grid-template-columns:minmax(0,1fr);gap:7px;width:100%;display:grid}.page.app-page.review-page .review-next .button{border-radius:10px;justify-content:center;width:100%;min-height:42px;padding:8px 11px;font-size:.7rem;line-height:1.15}.page.app-page.review-page>.return-promise{width:100%;max-width:none;margin:var(--review-mobile-gap) 0 0;border-radius:14px;gap:8px;padding:10px 11px}.page.app-page.review-page>.return-promise strong{font-size:.68rem;line-height:1.2}.page.app-page.review-page>.return-promise small{font-size:.6rem;line-height:1.3}.page.app-page.review-page>.return-promise>button{min-height:32px;margin-left:29px;padding-inline:10px;font-size:.61rem}}@media (width<=640px) and (prefers-reduced-motion:no-preference){@keyframes review-section-arrive{0%{opacity:0;filter:blur(2px);transform:translateY(5px)}to{opacity:1;filter:blur();transform:translateY(0)}}.page.app-page.review-page>.review-heading{animation:review-section-arrive .28s var(--ease-out-ui) both}.page.app-page.review-page>.review-summary{animation:review-section-arrive .28s var(--ease-out-ui) 35ms both}.page.app-page.review-page>.puzzle-share-strip,.page.app-page.review-page>.review-grid,.page.app-page.review-page>.review-next{animation:review-section-arrive .28s var(--ease-out-ui) 70ms both}}@media (width<=780px){.desktop-coach-workspace{display:none!important}.mobile-coach-guidance-status .mobile-coach-guidance-open{width:100%;height:auto;min-height:58px;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:0;grid-template-columns:38px minmax(0,1fr) 18px;align-items:center;gap:9px;padding:8px 10px;display:grid;position:static}.mobile-coach-guidance-status .mobile-coach-guidance-open:hover,.mobile-coach-guidance-status .mobile-coach-guidance-open:focus-visible{background:color-mix(in srgb, var(--sage-soft) 72%, transparent)}.mobile-coach-guidance-status .mobile-coach-avatar{width:36px;height:36px}.mobile-coach-guidance-summary{min-width:0}.mobile-coach-guidance-summary .puzzle-guidance-summary-copy{gap:2px}.mobile-coach-guidance-summary .puzzle-guidance-summary-copy small{font-size:.5rem}.mobile-coach-guidance-summary .puzzle-guidance-summary-copy strong{font-size:.63rem}.mobile-coach-launcher.has-guidance-step .mobile-coach-card.has-guidance-status{border:1px solid color-mix(in srgb, var(--sage-dark) 38%, var(--line));background:color-mix(in srgb, var(--sage-soft) 38%, var(--surface));border-bottom:0;border-radius:0;box-shadow:0 -10px 28px #102a431f}.mobile-guidance-inline-step{width:100%;color:var(--ink);gap:4px;padding:10px;display:grid;position:relative}.mobile-guidance-inline-step>strong{min-width:0;font-family:var(--serif);padding-right:38px;font-size:.82rem;line-height:1.15}.mobile-guidance-inline-step>span{color:var(--muted);padding-right:38px;font-size:.64rem;line-height:1.35}.mobile-guidance-inline-step>.mobile-guidance-inline-next{color:var(--ink-soft);font-weight:700}.mobile-guidance-inline-back{z-index:1;border:1px solid color-mix(in srgb, var(--sage-dark) 34%, var(--line));background:var(--surface);width:30px;height:30px;color:var(--ink-soft);cursor:pointer;border-radius:8px;place-items:center;padding:0;display:grid;position:absolute;top:8px;right:8px}.mobile-guidance-inline-back svg{width:16px;height:16px}.mobile-guidance-inline-meta{justify-content:space-between;align-items:center;gap:8px;min-width:0;margin-top:2px;display:flex}.mobile-guidance-inline-meta small{background:var(--sage-soft);color:var(--sage-dark);border-radius:999px;padding:3px 7px;font-size:.54rem;font-weight:800;line-height:1}.mobile-guidance-inline-meta button{min-height:26px;color:var(--ink-soft);cursor:pointer;background:0 0;border:0;align-items:center;gap:3px;padding:3px 4px;font-size:.56rem;font-weight:750;display:inline-flex}.mobile-guidance-inline-meta button svg{width:13px;height:13px}.mobile-guidance-inline-primary{border:1px solid var(--ink);background:var(--ink-fill);color:#fff;cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:7px;width:100%;min-height:40px;margin-top:2px;padding:8px 12px;font-size:.68rem;font-weight:800;display:inline-flex}.mobile-guidance-inline-primary svg{width:16px;height:16px}.mobile-guidance-inline-back:focus-visible,.mobile-guidance-inline-meta button:focus-visible,.mobile-guidance-inline-primary:focus-visible{outline-offset:2px;outline:3px solid #2d679347}.mobile-coach-workspace-content{overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch;flex:auto;width:100%;min-width:0;min-height:0;overflow:hidden auto}.guidance-mobile-workspace{padding:4px 12px calc(18px + var(--safe-area-bottom))}.guidance-mobile-workspace .puzzle-guidance-status{box-shadow:none;background:0 0;border:0;border-radius:0;grid-template-columns:minmax(0,1fr);align-content:start;align-items:start;gap:10px;margin:0;padding:4px 0 14px;display:grid}.guidance-mobile-workspace .guidance-objective-control{border-radius:8px;grid-area:auto/1/auto/-1;justify-content:flex-start;width:100%;max-width:none;min-height:40px;padding:8px 10px;font-size:.62rem;position:static}.guidance-mobile-workspace .guidance-objective-control span{flex:1}.guidance-mobile-workspace .puzzle-guidance-status:has(>.guidance-objective-control) .puzzle-guidance-status-copy{padding-right:0}.guidance-mobile-workspace .puzzle-guidance-status-icon{display:none}.guidance-mobile-workspace .puzzle-guidance-status-copy{grid-area:auto/1;gap:4px}.guidance-mobile-workspace .puzzle-guidance-status-copy strong{font-family:var(--serif);text-overflow:initial;white-space:normal;font-size:.92rem;line-height:1.25;overflow:visible}.guidance-mobile-workspace .puzzle-guidance-status-copy>span{font-size:.68rem;line-height:1.45}.guidance-mobile-workspace .puzzle-guidance-status-actions,.guidance-mobile-workspace .guidance-discovery-actions,.guidance-mobile-workspace .guidance-alternatives{grid-area:auto/1/auto/-1;width:100%}.guidance-mobile-workspace .puzzle-guidance-status-actions,.guidance-mobile-workspace .guidance-primary-actions{grid-template-columns:1fr;gap:7px;display:grid}.guidance-mobile-workspace .guidance-primary-action,.guidance-mobile-workspace .guidance-secondary-action{border-radius:8px;width:100%;min-height:42px;padding:9px 11px;font-size:.68rem}.guidance-mobile-workspace .guidance-action-label-full{display:inline}.guidance-mobile-workspace .guidance-action-label-compact{display:none}.guidance-mobile-workspace .guidance-discovery-actions{gap:7px;padding-top:10px;display:grid}.guidance-mobile-workspace .guidance-discovery-action{border:1px solid color-mix(in srgb, var(--sage-dark) 34%, var(--line));background:var(--surface);width:100%;min-height:42px;box-shadow:var(--shadow-border);border-radius:8px;justify-content:flex-start;padding:9px 11px;font-size:.66rem}.guidance-mobile-workspace .guidance-discovery-action:hover,.guidance-mobile-workspace .guidance-discovery-action:focus-visible{border-color:var(--sage-dark);background:var(--sage-soft)}.guidance-mobile-workspace .puzzle-guidance-state-control{display:inline-flex;top:2px;right:2px}.guidance-mobile-workspace .puzzle-guidance-close{border:1px solid var(--line);width:100%;height:auto;min-height:42px;color:var(--muted);box-shadow:none;background:0 0;border-radius:8px;order:99;grid-column:1/-1;justify-content:center;align-items:center;gap:7px;padding:9px 11px;font-size:.64rem;font-weight:700;display:inline-flex;position:static}.guidance-mobile-workspace .puzzle-guidance-close:hover,.guidance-mobile-workspace .puzzle-guidance-close:focus-visible{border-color:var(--ink-soft);background:var(--surface);color:var(--ink)}.guidance-mobile-workspace .puzzle-guidance-close-label{display:inline}.guidance-mobile-workspace .puzzle-guidance-status:has(.puzzle-guidance-close) .puzzle-guidance-status-copy{padding-right:0}.coach-continuation-content{min-height:330px;padding:12px 4px 24px}}.app-switch.app-switch{width:var(--control-comfortable-target);height:var(--control-min-target);background:0 0;border-radius:22px;padding:0;transition:none}.app-switch.app-switch[data-state=checked] .app-switch-thumb{transform:translate(20px)}.board-tools .puzzle-number-pad button{min-height:var(--control-min-target);background:var(--control-face);font-variant-numeric:tabular-nums;transition-property:background-color,border-color,box-shadow,opacity,transform;transition-duration:var(--motion-duration-press);transition-timing-function:var(--ease-out-ui)}.board-tools .puzzle-number-pad button:hover:not(:disabled){background:var(--control-face-hover)}.board-tools .puzzle-number-pad button:active:not(:disabled),.board-tools .puzzle-number-pad button.number-locked{background:var(--control-face-pressed);box-shadow:var(--active-control-shadow);transform:translateY(1px)}.board-tools .puzzle-number-pad button:disabled{background:var(--control-face-disabled)}.board-tools .puzzle-number-pad[data-mode=notes] button{border-color:var(--control-note-border);background-color:var(--control-note-face);box-shadow:var(--active-control-shadow);background-image:none}.board-tools .puzzle-number-pad[data-mode=notes] button:hover:not(:disabled),.board-tools .puzzle-number-pad[data-mode=notes] button.number-locked{background-color:var(--control-note-face);box-shadow:var(--active-control-shadow)}.board-tools .input-mode-button.active{border-color:var(--active-control-border);background:var(--active-control-surface);box-shadow:var(--active-control-shadow)}.sudoku-cell.action-feedback-cell{z-index:4;animation:action-feedback-cell var(--motion-duration-feedback) var(--ease-out-ui) both}.sudoku-cell.action-feedback-placement-accepted{--action-feedback-color:var(--feedback-placement)}.sudoku-cell.action-feedback-placement-assisted{--action-feedback-color:var(--feedback-assisted)}.sudoku-cell.action-feedback-placement-independent{--action-feedback-color:var(--feedback-independent)}.sudoku-cell.action-feedback-placement-rejected{--action-feedback-color:var(--feedback-rejected)}.sudoku-cell.action-feedback-cell,.sudoku-cell.action-feedback-history-cell,.sudoku-cell.action-feedback-candidate-cell{outline:2px solid var(--action-feedback-color,var(--feedback-history));outline-offset:-4px}.sudoku-cell.action-feedback-placement-rejected{outline-style:double}.sudoku-cell.action-feedback-history-cell{--action-feedback-color:var(--feedback-history);animation:action-feedback-history var(--motion-duration-feedback) var(--ease-out-ui) both;outline-style:dashed}.sudoku-cell.action-feedback-history-redo{outline-style:solid}.sudoku-cell.action-feedback-candidate-cell{--action-feedback-color:var(--feedback-candidate);animation:action-feedback-candidate var(--motion-duration-feedback) var(--ease-out-ui) both;outline-style:dotted}.candidate-grid i.candidate-removing{opacity:1;color:var(--feedback-candidate);filter:blur();animation:candidate-note-removing var(--motion-duration-feedback) var(--ease-out-ui) both;text-decoration:line-through;transform:translateY(0)}@keyframes action-feedback-cell{0%{opacity:.78}38%{opacity:1}to{opacity:.92}}@keyframes action-feedback-history{0%{opacity:.72}45%{opacity:1}to{opacity:.86}}@keyframes action-feedback-candidate{0%{outline-color:#0000}45%{outline-color:var(--feedback-candidate)}to{outline-color:var(--feedback-candidate)}}@keyframes candidate-note-removing{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-2px)}}html[data-feedback=off] .sudoku-cell.action-feedback-cell,html[data-feedback=off] .sudoku-cell.action-feedback-history-cell,html[data-feedback=off] .sudoku-cell.action-feedback-candidate-cell,html[data-feedback=off] .candidate-grid i.candidate-removing{animation:none}@media (prefers-reduced-motion:reduce){.board-tools .puzzle-number-pad button{transition:none}.board-tools .puzzle-number-pad button:active:not(:disabled),.board-tools .puzzle-number-pad button.number-locked{transform:none}.sudoku-cell.action-feedback-cell,.sudoku-cell.action-feedback-history-cell,.sudoku-cell.action-feedback-candidate-cell,.candidate-grid i.candidate-removing{transition:none;animation:none}.candidate-grid i.candidate-removing{opacity:1;filter:none;transform:none}}@media (width<=780px){.mobile-coach-sheet{bottom:calc(var(--keyboard-inset) + var(--safe-area-bottom));height:min(70dvh, 640px, calc(var(--visual-viewport-height) - var(--safe-area-top) - var(--safe-area-bottom) - 16px));max-height:calc(var(--visual-viewport-height) - var(--safe-area-top) - var(--safe-area-bottom) - 16px)}.mobile-coach-sheet[data-detent=expanded],.mobile-coach-sheet.is-expanded{height:min(92dvh, 760px, calc(var(--visual-viewport-height) - var(--safe-area-top) - var(--safe-area-bottom) - 16px))}html[data-keyboard-open=true] .mobile-coach-sheet{border-radius:14px 14px 0 0}}@media (width<=780px) and (orientation:landscape){.mobile-coach-sheet,.mobile-coach-sheet[data-detent=expanded],.mobile-coach-sheet.is-expanded{height:min(100dvh, calc(var(--visual-viewport-height) - var(--safe-area-top) - var(--safe-area-bottom) - 8px));max-height:calc(var(--visual-viewport-height) - var(--safe-area-top) - var(--safe-area-bottom) - 8px)}}.puzzle-options-trigger{min-height:var(--control-min-target)}@media (width>=781px) and (height<=850px){.board-workspace{--puzzle-board-size:min(100%, max(320px, calc(100dvh - 260px)))}}@media (width<=780px){.puzzle-header{grid-template-columns:auto minmax(0,1fr) auto}.puzzle-meta{min-width:0}.puzzle-layout{box-sizing:border-box;width:min(100%,640px);padding-inline:max(8px, var(--safe-area-left)) max(8px, var(--safe-area-right));padding-bottom:calc(68px + var(--safe-area-bottom))}.puzzle-controls-column .mobile-coach-launcher{width:100%;padding-bottom:0;position:static;inset:auto}.puzzle-controls-column .mobile-coach-card{border-bottom:1px solid #cbc8bc;border-radius:16px}.board-tools .puzzle-number-pad button,.board-tools .edit-tools button,.board-tools .input-mode-tools .mobile-input-mode,.puzzle-header>.text-link{min-height:var(--control-min-target)}}@media (width<=780px) and (height<=760px){.board-workspace{--puzzle-board-size:min(100%, max(286px, calc(100dvh - 282px - var(--safe-area-top) - var(--safe-area-bottom))))}.edit-tools button,.input-mode-tools .input-mode-button{white-space:normal;font-size:.58rem;line-height:1.1}}@media (width<=780px) and (orientation:landscape){.puzzle-layout{width:min(100%,640px);padding-bottom:max(8px, var(--safe-area-bottom))}.board-workspace{--puzzle-board-size:min(100%, calc(100dvh - 100px))}.puzzle-controls-column .mobile-coach-launcher{width:100%;padding-bottom:0;position:static;inset:auto}.puzzle-controls-column .edit-tools button{min-height:var(--control-min-target)}.puzzle-controls-column .board-tools .puzzle-guidance-status-copy strong,.puzzle-controls-column .board-tools .puzzle-guidance-status-copy>span{white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}}@media (width<=360px){.puzzle-header>.text-link{width:var(--control-min-target);justify-content:center;padding:0;font-size:0;overflow:hidden}.puzzle-header .difficulty{display:none}}.candidate-grid:not(.solve-candidate-grid) i{filter:none;transition:opacity .12s var(--ease-out-ui), transform .12s var(--ease-out-ui)}.candidate-grid:not(.solve-candidate-grid) i.candidate-visible,.candidate-grid i.candidate-removing{filter:none}.entry-planner-panel{gap:12px;width:min(100%,960px);display:grid}.entry-next-step{border:1px solid color-mix(in srgb, var(--sage-dark) 30%, var(--line));border-top:3px solid var(--sage-dark);border-radius:var(--radius-feature);background:radial-gradient(circle at 92% 12%, color-mix(in srgb, var(--sage-pale) 78%, transparent), transparent 38%), var(--paper);min-width:0;box-shadow:var(--shadow-border), 0 18px 48px #102a4314;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:clamp(22px,4vw,52px);padding:clamp(22px,4vw,38px);display:grid}.entry-next-step-copy{min-width:0}.entry-next-step-copy .eyebrow{margin-bottom:7px}.entry-next-step-copy h2{max-width:680px;font-family:var(--serif);text-wrap:balance;margin:0;font-size:clamp(1.7rem,3.4vw,2.55rem);line-height:1.08}.entry-next-step-copy p{max-width:650px;color:var(--ink-soft);margin:11px 0 14px;line-height:1.55}.entry-next-step-copy small{color:var(--muted);font-size:.76rem;font-weight:720}.entry-next-step-link{white-space:nowrap;align-self:center}.entry-plan-adjustments{border:1px solid var(--line);border-radius:var(--radius-control);background:color-mix(in srgb, var(--paper) 88%, var(--sage-soft));box-shadow:var(--shadow-border);overflow:hidden}.entry-plan-adjustments>summary{min-height:66px;color:var(--ink);cursor:pointer;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 16px;list-style:none;display:grid}.entry-plan-adjustments>summary::-webkit-details-marker{display:none}.entry-plan-adjustments>summary:focus-visible{outline:3px solid color-mix(in srgb, var(--sage) 42%, transparent);outline-offset:-3px}.entry-plan-adjustments>summary>svg:first-child{color:var(--sage-dark)}.entry-plan-adjustments>summary>span{gap:3px;min-width:0;display:grid}.entry-plan-adjustments>summary strong,.entry-plan-adjustments>summary small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.entry-plan-adjustments>summary strong{font-size:.88rem}.entry-plan-adjustments>summary small{color:var(--muted);font-size:.7rem;line-height:1.35}.entry-plan-chevron{color:var(--muted);transition:transform .16s var(--ease-out-ui)}.entry-plan-adjustments[open] .entry-plan-chevron{transform:rotate(180deg)}.entry-planner-controls{border-top:1px solid var(--line);gap:18px;padding:clamp(14px,2.5vw,24px);display:grid}.entry-intent-options{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;display:grid}.entry-intent-option{border:1px solid var(--line);border-radius:var(--radius-control);background:var(--paper);min-width:0;min-height:104px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;align-content:start;gap:6px;padding:14px;display:grid}.entry-intent-option:hover{border-color:color-mix(in srgb, var(--sage-dark) 55%, var(--line))}.entry-intent-option.selected{border-color:var(--sage-dark);background:var(--sage-soft);box-shadow:inset 0 0 0 1px var(--sage-dark)}.entry-intent-option:focus-visible,.entry-time-option:focus-visible{outline:3px solid color-mix(in srgb, var(--sage) 42%, transparent);outline-offset:2px}.entry-intent-option strong{font-size:.78rem;line-height:1.3}.entry-intent-option span{color:var(--muted);font-size:.68rem;line-height:1.42}.entry-time-options{grid-template-columns:minmax(160px,.7fr) minmax(0,1.6fr);align-items:center;gap:9px 18px;display:grid}.entry-time-label{color:var(--ink);align-items:center;gap:7px;font-size:.76rem;font-weight:780;display:inline-flex}.entry-time-label svg{color:var(--sage-dark)}.entry-time-options-list{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;display:grid}.entry-time-option{border:1px solid var(--line);background:var(--paper);min-height:42px;color:var(--ink);font:inherit;cursor:pointer;border-radius:999px;padding:8px 10px;font-size:.7rem;font-weight:740}.entry-time-option.selected{border-color:var(--sage-dark);background:var(--sage-soft);box-shadow:inset 0 0 0 1px var(--sage-dark)}.entry-time-copy{color:var(--muted);grid-column:2;font-size:.68rem;line-height:1.4}.custom-puzzle-independent-action{grid-area:1/1;justify-self:start}.custom-puzzle-action-bar .custom-puzzle-import-action{grid-area:1/2}.custom-puzzle-action-bar .scanner-contribution-trigger{grid-area:2/1/auto/-1;justify-self:start}@media (width<=900px){.entry-intent-options{grid-template-columns:repeat(2,minmax(0,1fr))}.entry-time-options{grid-template-columns:1fr}.entry-time-copy{grid-column:1}}@media (width<=780px){.entry-planner-panel{gap:9px}.entry-next-step{border-radius:14px;grid-template-columns:1fr;gap:18px;padding:20px}.entry-next-step-copy h2{font-size:clamp(1.55rem,8vw,2rem)}.entry-next-step-copy p{margin-block:9px 12px;font-size:.82rem}.entry-next-step-link{width:100%}.entry-plan-adjustments>summary{min-height:60px;padding-inline:13px}.entry-time-options-list{grid-template-columns:repeat(2,minmax(0,1fr))}.custom-puzzle-independent-action,.custom-puzzle-action-bar .custom-puzzle-import-action,.custom-puzzle-action-bar .scanner-contribution-trigger{grid-area:auto;justify-self:stretch}}@media (width<=540px){.entry-intent-options{grid-template-columns:1fr}.entry-intent-option{min-height:0}}@media (prefers-reduced-motion:reduce){.entry-plan-chevron{transition:none}}.semantic-board{--semantic-board-line:var(--color-board-line-strong);--semantic-board-evidence:var(--color-board-evidence);--semantic-board-target:var(--color-board-target-border);--semantic-board-link:var(--color-board-recovery);--semantic-board-goal:var(--color-board-goal);--semantic-board-danger:var(--color-board-danger);--semantic-board-recovery:var(--color-board-recovery);--semantic-board-candidate:var(--color-board-candidate);position:relative}.semantic-board-row{display:contents}.semantic-board-cell{isolation:isolate;position:relative}.semantic-cell-overlays{z-index:1;pointer-events:none;position:absolute;inset:0}.semantic-cell-overlays>span{pointer-events:none;display:block;position:absolute}.semantic-cell-content{z-index:2;display:contents;position:relative}.semantic-board-cell.semantic-content-given .semantic-cell-value,.semantic-board-cell.semantic-content-answer .semantic-cell-value{color:var(--color-text);font-family:var(--font-display);font-weight:650}.semantic-board-cell.semantic-content-learner .semantic-cell-value,.semantic-board-cell.semantic-content-recovery .semantic-cell-value{color:var(--color-board-value);font-family:var(--font-display)}.semantic-board-cell.semantic-content-temporary .semantic-cell-value,.semantic-board-cell.semantic-content-preview .semantic-cell-value{color:var(--semantic-board-recovery);font-family:var(--font-display);font-style:italic}.semantic-board.semantic-numeral-clear .semantic-board-cell.semantic-content-learner .semantic-cell-value,.semantic-board.semantic-numeral-clear .semantic-board-cell.semantic-content-learner .cell-value,.semantic-board.semantic-numeral-clear .semantic-board-cell.semantic-content-recovery .semantic-cell-value,.semantic-board.semantic-numeral-clear .semantic-board-cell.semantic-content-recovery .cell-value,.semantic-board.semantic-numeral-clear .semantic-board-cell.semantic-content-temporary .semantic-cell-value,.semantic-board.semantic-numeral-clear .semantic-board-cell.semantic-content-temporary .cell-value,.semantic-board.semantic-numeral-clear .semantic-board-cell.semantic-content-preview .semantic-cell-value,.semantic-board.semantic-numeral-clear .semantic-board-cell.semantic-content-preview .cell-value{font-family:var(--font-sans);font-size:1em;font-weight:620;line-height:1}.semantic-board-cell.semantic-box-right{border-right-color:var(--semantic-board-line)}.semantic-board-cell.semantic-box-bottom{border-bottom-color:var(--semantic-board-line)}.semantic-board-cell.semantic-cue-peer{background:color-mix(in srgb, var(--color-board-related) 74%, var(--color-board-cell))}.semantic-board-cell.semantic-cue-same-value{background:color-mix(in srgb, var(--color-board-match) 84%, var(--color-board-cell))}.semantic-board-cell.semantic-cue-evidence{background:color-mix(in srgb, var(--color-info-soft) 66%, var(--color-board-cell))}.semantic-board-cell.semantic-cue-blocker,.semantic-board-cell.semantic-cue-conflict,.semantic-board-cell.semantic-cue-contradiction,.semantic-board-cell.semantic-cue-recovery{background:color-mix(in srgb, var(--color-board-error) 76%, var(--color-board-cell))}.semantic-board-cell.semantic-cue-target,.semantic-board-cell.semantic-cue-target-area,.semantic-board-cell.semantic-cue-goal,.semantic-board-cell.semantic-cue-pattern,.semantic-board-cell.semantic-cue-highlighted{background:color-mix(in srgb, var(--color-board-target) 64%, var(--color-board-cell))}.semantic-cell-overlays>.semantic-cue-peer{z-index:3;border:1px dotted var(--color-board-related);inset:0}.semantic-cell-overlays>.semantic-cue-same-value{z-index:4;border:2px double var(--color-board-match);inset:2px}.semantic-cell-overlays>.semantic-cue-pattern{z-index:5;border:2px dashed var(--semantic-board-evidence);inset:1px}.semantic-cell-overlays>.semantic-cue-highlighted{z-index:5;border:1px dotted var(--semantic-board-evidence);inset:3px}.semantic-cell-overlays>.semantic-cue-preview,.semantic-cell-overlays>.semantic-cue-temporary{z-index:5;border:1px dashed var(--semantic-board-recovery);inset:2px}.semantic-cue-selection,.semantic-cue-target-area,.semantic-cue-target,.semantic-cue-goal,.semantic-cue-evidence,.semantic-cue-review,.semantic-cue-success,.semantic-cue-blocker,.semantic-cue-elimination,.semantic-cue-contradiction,.semantic-cue-conflict,.semantic-cue-recovery{border-radius:5px}.semantic-cell-overlays>.semantic-cue-selection{z-index:11;border:3px solid var(--color-board-selection-border);inset:1px}.sudoku-cell .semantic-cell-overlays>.semantic-cue-selection,.sudoku-cell.selected .semantic-cell-overlays>.semantic-cue-peer,.sudoku-cell.selected .semantic-cell-overlays>.semantic-cue-same-value{display:none}.semantic-cell-overlays>.semantic-cue-target{z-index:10;border:3px solid var(--semantic-board-target);box-shadow:0 0 0 2px color-mix(in srgb, var(--semantic-board-target) 28%, transparent);inset:5px}.sudoku-cell.guide-target .semantic-cell-overlays>.semantic-cue-peer,.sudoku-cell.guide-target .semantic-cell-overlays>.semantic-cue-target,.sudoku-cell.guide-target .semantic-cell-overlays>.semantic-cue-goal{display:none}.semantic-cell-overlays>.semantic-cue-target-area{z-index:9;border:2px dotted var(--semantic-board-target);inset:6px}.semantic-cell-overlays>.semantic-cue-goal{z-index:9;border:2px dashed var(--semantic-board-goal);inset:8px}.semantic-cell-overlays>.semantic-cue-evidence{z-index:7;border:2px solid var(--semantic-board-evidence);inset:4px}.semantic-cell-overlays>.semantic-cue-review{z-index:8;border:2px dotted var(--semantic-board-target);inset:7px}.semantic-cell-overlays>.semantic-cue-success{z-index:12;border:3px solid var(--semantic-board-goal);box-shadow:0 0 0 4px color-mix(in srgb, var(--semantic-board-goal) 18%, transparent);inset:2px}.semantic-cell-overlays>.semantic-cue-correct{z-index:12;border:2px solid var(--semantic-board-goal);inset:3px}.semantic-cell-overlays>.semantic-cue-wrong{z-index:13;border:2px dashed var(--semantic-board-danger);inset:4px}.semantic-cell-overlays>.semantic-cue-blocker,.semantic-cell-overlays>.semantic-cue-elimination,.semantic-cell-overlays>.semantic-cue-contradiction,.semantic-cell-overlays>.semantic-cue-conflict,.semantic-cell-overlays>.semantic-cue-recovery{z-index:13;border:3px solid var(--semantic-board-danger);inset:2px}.semantic-cell-overlays>.semantic-cue-blocker:after,.semantic-cell-overlays>.semantic-cue-elimination:after,.semantic-cell-overlays>.semantic-cue-contradiction:after,.semantic-cell-overlays>.semantic-cue-conflict:after{content:"!";background:var(--color-board-cell);width:1.1em;height:1.1em;color:var(--semantic-board-danger);font:800 .62rem/1 var(--font-sans);border:1px solid;border-radius:50%;place-items:center;display:grid;position:absolute;top:-.25rem;right:-.2rem}.semantic-cell-overlays>.semantic-cue-recovery{border-style:dashed;border-color:var(--semantic-board-recovery)}.semantic-cell-overlays>.semantic-cue-recovery:after{content:"?";background:var(--color-board-cell);width:1.1em;height:1.1em;color:var(--semantic-board-recovery);font:800 .62rem/1 var(--font-sans);border:1px solid;border-radius:50%;place-items:center;display:grid;position:absolute;bottom:-.25rem;right:-.2rem}.semantic-cell-overlays>.semantic-cue-revealed{z-index:6;border:2px solid var(--semantic-board-goal);inset:3px}.semantic-candidate-grid{z-index:2;grid-template-rows:repeat(3,minmax(0,1fr));grid-template-columns:repeat(3,minmax(0,1fr));width:100%;min-width:0;height:100%;min-height:0;padding:3px;display:grid;position:relative}.semantic-candidate{min-width:0;min-height:0;color:var(--semantic-board-candidate);font:normal clamp(.4rem, .8vw, .64rem)/1 var(--font-sans);font-variant-numeric:tabular-nums;place-items:center;display:grid}.semantic-candidate.semantic-cue-evidence,.semantic-candidate.semantic-cue-target-area,.semantic-candidate.semantic-cue-target,.semantic-candidate.semantic-cue-correct{border:1px solid var(--semantic-board-evidence);color:var(--color-text);border-radius:50%;font-weight:800}.semantic-candidate.semantic-cue-target-area{border-style:dotted;border-color:var(--semantic-board-target);color:var(--semantic-board-target)}.semantic-candidate.semantic-cue-blocker,.semantic-candidate.semantic-cue-conflict,.semantic-candidate.semantic-cue-wrong,.semantic-candidate.semantic-cue-elimination{border:1px solid var(--semantic-board-danger);color:var(--semantic-board-danger);border-radius:50%;text-decoration:line-through;text-decoration-thickness:2px}.semantic-candidate.semantic-cue-temporary{border:1px dashed var(--semantic-board-recovery);border-radius:50%}.semantic-candidate.semantic-cue-review{outline:1px dotted var(--semantic-board-target);outline-offset:-1px}.proof-link-overlay{z-index:6;pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.proof-link{color:var(--semantic-board-link);opacity:.92}.proof-link line{fill:none;stroke:currentColor;stroke-linecap:round;stroke-width:.035px}.proof-link-weak line{stroke-dasharray:.12 .08}.proof-link-endpoint{fill:var(--color-board-cell);stroke:currentColor;stroke-width:.04px}.proof-link-weak .proof-link-endpoint{fill:#0000}.proof-link text{fill:currentColor;font:700 .18px var(--font-sans);paint-order:stroke;stroke:var(--color-board-cell);stroke-width:.06px;stroke-linejoin:round}@media (prefers-contrast:more){.semantic-board-cell{border-color:var(--color-text)}.semantic-cell-overlays>.semantic-cue-selection,.semantic-cell-overlays>.semantic-cue-target,.semantic-cell-overlays>.semantic-cue-target-area,.semantic-cell-overlays>.semantic-cue-evidence,.semantic-cell-overlays>.semantic-cue-success,.semantic-cell-overlays>.semantic-cue-blocker,.semantic-cell-overlays>.semantic-cue-conflict,.semantic-cell-overlays>.semantic-cue-recovery{border-width:3px}}@media (forced-colors:active){.semantic-board-cell{forced-color-adjust:none;color:canvastext;background:canvas;border-color:canvastext}.semantic-cell-overlays>span{box-shadow:none!important;background:0 0!important;border-color:currentColor!important}.semantic-cell-overlays>.semantic-cue-selection{color:highlight}.semantic-cell-overlays>.semantic-cue-target,.semantic-cell-overlays>.semantic-cue-target-area,.semantic-cell-overlays>.semantic-cue-evidence,.semantic-cell-overlays>.semantic-cue-success{color:linktext}.semantic-cell-overlays>.semantic-cue-blocker,.semantic-cell-overlays>.semantic-cue-conflict,.semantic-cell-overlays>.semantic-cue-recovery{color:mark}.proof-link line,.proof-link-endpoint{stroke:currentColor!important}.semantic-cell-overlays>span:after{color:canvastext;background:canvas}}@media print{.semantic-board{color:#000;background:#fff;box-shadow:none!important}.semantic-board-cell{color:#000!important;background:#fff!important;border-color:#000!important}.semantic-cell-overlays>span{box-shadow:none!important;background:0 0!important;border-color:#000!important}.semantic-cell-overlays>.semantic-cue-blocker:after,.semantic-cell-overlays>.semantic-cue-conflict:after,.semantic-cell-overlays>.semantic-cue-recovery:after{color:#000;background:#fff}.semantic-candidate{color:#000!important}}.proof-geometry-mark{-o-object-fit:contain;object-fit:contain;flex:none;display:block}.practice-calendar .proof:before,.practice-calendar-marks .proof{background:var(--sage-deep)}.practice-calendar-legend .proof:before{border-radius:50%}.proof-footprint-badge{min-width:0;color:var(--text-secondary);align-items:center;gap:.5rem;display:inline-flex}.proof-footprint-swatch{border:2px solid var(--accent-border);background:var(--accent-surface);border-radius:.2rem;flex:none;width:.65rem;height:.65rem;transform:rotate(45deg)}.proof-footprint-swatch.is-cell{border-radius:50%;transform:none}.proof-footprint-swatch.is-unit{border-radius:.15rem;width:1rem;transform:none}.proof-footprint-swatch.is-crossing{border-radius:50% .2rem}.proof-footprint-swatch.is-pattern{clip-path:polygon(50% 0,100% 34%,82% 100%,18% 100%,0 34%);border-radius:.1rem;transform:none}.proof-footprint-swatch.is-grid{border-style:dashed;border-radius:50%;transform:none}.proof-footprint-copy{gap:.08rem;min-width:0;display:grid}.proof-footprint-copy strong,.proof-footprint-copy small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.proof-footprint-copy strong{color:var(--text-primary);font-size:.75rem;font-weight:650}.proof-footprint-copy small{color:var(--text-muted);font-size:.68rem}.proof-footprint-badge:not(.is-compact) .proof-footprint-copy strong,.proof-footprint-badge:not(.is-compact) .proof-footprint-copy small{white-space:normal}.proof-footprint-badge.is-compact .proof-footprint-copy small{font-size:.64rem}.evidence-stage-trail{align-items:flex-start;gap:0;margin:0;padding:0;list-style:none;display:flex}.evidence-stage-node{min-width:7.2rem;color:var(--text-muted);flex:1 1 0;align-items:center;gap:.45rem;display:flex;position:relative}.evidence-stage-node:not(:last-child):after{content:"";background:var(--border-subtle);height:2px;position:absolute;top:.47rem;left:1rem;right:0}.evidence-stage-glyph{z-index:1;border:2px solid var(--border-strong);background:var(--surface);border-radius:50%;flex:none;width:.95rem;height:.95rem;display:block}.evidence-stage-node.is-recorded .evidence-stage-glyph{border-color:var(--success-border);background:var(--sage);box-shadow:inset 0 0 0 3px var(--surface)}.evidence-stage-node.is-current .evidence-stage-glyph{border-color:var(--accent-border);background:var(--accent-surface);box-shadow:0 0 0 4px color-mix(in srgb, var(--saffron) 20%, transparent)}.evidence-stage-node.is-current.is-recorded .evidence-stage-glyph{background:var(--saffron)}.evidence-stage-label{z-index:1;background:var(--surface);padding-right:.5rem;font-size:.72rem;line-height:1.25;position:relative}.evidence-stage-trail.is-compact .evidence-stage-node{justify-content:center;min-width:1.5rem}.evidence-stage-trail.is-compact .evidence-stage-node:not(:last-child):after{left:.95rem}.evidence-stage-trail.is-compact .evidence-stage-glyph{width:.8rem;height:.8rem}.technique-map-row .proof-geometry-mark{width:2.35rem;height:2.35rem}.technique-map-leading{flex:0 0 2.6rem;place-items:center;width:2.6rem;display:grid}.technique-map-footprint{gap:.35rem;min-width:9rem;margin-left:auto;display:grid}.technique-map-footprint .proof-footprint-badge{margin-left:0}.lesson-row .proof-geometry-mark{width:3.25rem;height:3.25rem}.lesson-row-meta .proof-footprint-badge{max-width:none}.lesson-row-meta .proof-footprint-copy strong,.lesson-row-meta .proof-footprint-copy small{text-overflow:clip;white-space:normal;overflow:visible}.lesson-checkpoint-footprint{border-block:1px solid var(--border-subtle);margin:.7rem 0 .45rem;padding:.55rem .4rem}.lesson-poster-proof-footprint{gap:.45rem;margin-top:1rem;display:grid}.lesson-poster-proof-footprint .proof-footprint-badge{align-items:flex-start}.learning-trajectory-list{gap:.9rem;display:grid}.learning-trajectories{gap:1rem;margin:1.5rem 0;display:grid}.learning-trajectories .section-title p{max-width:42rem;color:var(--text-muted);margin:.45rem 0 0}.learning-trajectory-card{border:1px solid var(--border-subtle);border-radius:var(--radius-surface);background:var(--surface);grid-template-columns:minmax(0,1fr) auto;gap:.9rem 1.2rem;padding:1rem;display:grid}.learning-trajectory-card header{align-items:center;gap:.7rem;display:flex}.learning-trajectory-card header h3{font-family:var(--font-display);margin:0;font-size:1.2rem}.learning-trajectory-card header p{color:var(--text-muted);margin:.25rem 0 0;font-size:.78rem}.learning-trajectory-card .evidence-stage-trail{grid-column:1/-1}.learning-trajectory-card .trajectory-next{max-width:16rem;color:var(--text-secondary);text-align:right;align-self:center;font-size:.8rem}.learning-trajectory-milestones{grid-column:1/-1;gap:.45rem;margin:0;padding:0;list-style:none;display:grid}.learning-trajectory-milestones li{align-items:center;gap:.5rem;min-width:0;display:flex}.learning-trajectory-milestones li>span:nth-child(2){gap:.1rem;min-width:0;display:grid}.learning-trajectory-milestones strong{font-size:.76rem;font-weight:650}.learning-trajectory-milestones small{color:var(--text-muted);font-size:.7rem}.learning-trajectory-milestones .text-link{min-height:1.8rem;margin-left:auto}.trajectory-milestone-dot{background:var(--sage-deep);border-radius:50%;flex:none;width:.55rem;height:.55rem}.learning-trajectory-empty{border:1px dashed var(--border-subtle);border-radius:var(--radius-surface);color:var(--text-muted);margin:0;padding:1rem}@media (width<=640px){.evidence-stage-node{min-width:0}.lesson-row .proof-geometry-mark{width:2.5rem;height:2.5rem}.technique-map-footprint{min-width:0}.evidence-stage-label{display:none}.learning-trajectory-card{grid-template-columns:1fr}.learning-trajectory-card .trajectory-next{text-align:left;max-width:none}}@media (width<=460px){.lesson-row .proof-geometry-mark{width:2.25rem;height:2.25rem}.technique-map-leading{flex-basis:2.2rem;width:2.2rem}.technique-map-footprint .proof-footprint-copy strong{font-size:.65rem}}@media (prefers-reduced-motion:reduce){.evidence-stage-glyph{transition:none}}
