@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:400;src:url(./manrope-cyrillic-400-normal-BMzJvInZ.woff2) format("woff2"),url(./manrope-cyrillic-400-normal-Dvx59UGC.woff) format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:500;src:url(./manrope-cyrillic-500-normal-B1OEZity.woff2) format("woff2"),url(./manrope-cyrillic-500-normal-CNwnNrRC.woff) format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:600;src:url(./manrope-cyrillic-600-normal-DvRl3Mj-.woff2) format("woff2"),url(./manrope-cyrillic-600-normal-It4mZcQk.woff) format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:700;src:url(./manrope-cyrillic-700-normal-Dw_fZAg2.woff2) format("woff2"),url(./manrope-cyrillic-700-normal-7JNVKxyl.woff) format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:800;src:url(./manrope-cyrillic-800-normal-AvdZ5mAV.woff2) format("woff2"),url(./manrope-cyrillic-800-normal-BuEMjQU-.woff) format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:400;src:url(./manrope-latin-400-normal-PaqtzbVb.woff2) format("woff2"),url(./manrope-latin-400-normal-8tf8FM3T.woff) format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:500;src:url(./manrope-latin-500-normal-BYYD-dBL.woff2) format("woff2"),url(./manrope-latin-500-normal-DMZssgOp.woff) format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:600;src:url(./manrope-latin-600-normal-4f0koTD-.woff2) format("woff2"),url(./manrope-latin-600-normal-BqgrALkZ.woff) format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:700;src:url(./manrope-latin-700-normal-BZp_XxE4.woff2) format("woff2"),url(./manrope-latin-700-normal-DGRFkw-m.woff) format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:800;src:url(./manrope-latin-800-normal-BfWYOv1c.woff2) format("woff2"),url(./manrope-latin-800-normal-uHUdIJgA.woff) format("woff")}.tour-layer{--tour-dim: rgb(18 30 24 / .62);--tour-vw: calc(100vw / var(--tour-zoom, 1));--tour-glide: .52s cubic-bezier(.3, 1.14, .4, 1);position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;touch-action:pinch-zoom}[data-theme=dark] .tour-layer{--tour-dim: rgb(4 8 6 / .74)}.tour-hole{position:fixed;border-radius:18px;box-shadow:0 0 0 200vmax var(--tour-dim);pointer-events:none;transition:top var(--tour-glide),left var(--tour-glide),width var(--tour-glide),height var(--tour-glide)}.tour-hole.on:after{content:"";position:absolute;top:-3px;right:-3px;bottom:-3px;left:-3px;border-radius:21px;border:2px solid var(--gold);animation:tour-glow 2.6s ease-in-out infinite}@keyframes tour-glow{0%,to{opacity:.55;box-shadow:0 0 #e3c56559}50%{opacity:1;box-shadow:0 0 0 8px #e3c56500}}.tour-card{position:fixed;top:0;left:0;display:flex;align-items:flex-end;gap:4px;width:min(440px,calc(var(--tour-vw) - 24px))}.tour-bars{flex:0 0 96px;width:96px;margin-bottom:-6px;padding:0;border:0;background:none;cursor:pointer;filter:drop-shadow(0 6px 10px rgb(0 0 0 / .22));transform-origin:100% 100%;transition:transform var(--tour-glide)}.tour-hop{display:block;transform-origin:50% 100%}@media(min-width:560px){.tour-card[data-side=center] .tour-bars{transform:scale(1.36)}}.tour-bubble{position:relative;flex:1;transform-origin:0 82%;min-width:0;padding:16px 18px;border-radius:20px;background:var(--surface);color:var(--ink);border:1px solid var(--border);box-shadow:0 18px 44px #0000003d}.tour-bubble:before{content:"";position:absolute;left:-7px;bottom:26px;width:14px;height:14px;background:var(--surface);border-left:1px solid var(--border);border-bottom:1px solid var(--border);transform:rotate(45deg)}.tour-head{display:flex;align-items:center;justify-content:space-between;min-height:44px;margin:-4px -6px 4px 0}.tour-body{overflow:hidden}.tour-count{font-size:12px;font-weight:700;letter-spacing:.6px;color:var(--muted)}.tour-skip{display:inline-flex;align-items:center;gap:4px;min-height:44px;padding:0 8px;border-radius:10px;font-size:13px;color:var(--muted);transition:color var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-out)}.tour-skip:hover{color:var(--ink);background:var(--soft)}.tour-os{font-size:15px;font-weight:800;color:var(--accent);margin-bottom:2px}.tour-bubble h2{font-size:19px;line-height:1.3;letter-spacing:-.4px;font-weight:800;margin-bottom:6px}.tour-bubble p:not(.tour-os){font-size:14px;line-height:1.55;color:var(--muted)}.tour-foot{display:flex;align-items:center;gap:8px;margin-top:14px}.tour-foot .button{min-height:44px}.tour-dots{display:flex;gap:5px;margin-right:auto}.tour-dots>span{width:7px;height:7px;border-radius:50%;background:var(--border);transition:width var(--dur) var(--ease-out),background-color var(--dur) var(--ease-out)}.tour-dots>span.done{background:var(--accent-border)}.tour-dots>span.on{width:18px;border-radius:4px;background:var(--accent)}[data-mode=kids] .tour-bubble h2{font-size:21px}[data-mode=kids] .tour-bubble p:not(.tour-os){font-size:15px}@media(max-width:480px){.tour-bars{flex-basis:76px;width:76px}.tour-bubble{padding:14px 14px 14px 16px}.tour-bubble h2{font-size:17px}.tour-dots{display:none}.tour-foot{justify-content:flex-end}}@media(prefers-reduced-motion:reduce){.tour-hole,.tour-bars,.tour-dots>span{transition:none}.tour-hole.on:after{animation:none}}:root{--bg: #f7f8f5;--surface: #fff;--soft: #f0f2ed;--ink: #27382f;--muted: #5f6c62;--subtle: #617066;--border: #e5e8e0;--accent: #2b5744;--accent-hover: #1b4031;--on-accent: #fff;--accent-soft: #edf3e9;--accent-border: #c1d2b8;--word-bg: #f1f2e8;--word-border: #e0e4d0;--danger: #a83c36;--on-danger: #fff;--error-bg: #faf0ed;--error-border: #dfbab3;--gold: #e3c565;--shadow-lift: 0 8px 22px rgb(39 56 47 / .1);--ease-out: cubic-bezier(.2, .8, .2, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--dur-fast: .15s;--dur: .26s;--dur-slow: .45s;--fs-sm: 14px;--fs-md: 16px;--fs-lg: 18px;--fs-xl: 20px;--fs-2xl: 24px;--fs-3xl: 32px;--fs-4xl: 40px;--r-xs: 6px;--r-sm: 16px;--r-md: 20px;--r-lg: 24px;--r-xl: 32px;--r-pill: 99px;--t-press: 90ms;--t-quick: .16s;--t-base: .24s;--t-slow: .42s;--ease-in-out: ease-in-out;color-scheme:light}[data-theme=dark]{--bg: #141c18;--surface: #1b2520;--soft: #26322a;--ink: #e2e9df;--muted: #b1bcae;--subtle: #98a691;--border: #354237;--accent: #a9cfad;--accent-hover: #bdddbf;--on-accent: #183021;--accent-soft: #2a3a2d;--accent-border: #516b50;--word-bg: #252e24;--word-border: #3b4933;--danger: #efaaa0;--on-danger: #3b1f1a;--error-bg: #3b2824;--error-border: #80574d;--shadow-lift: 0 8px 22px rgb(0 0 0 / .38);--hills-filter: brightness(.6) contrast(1.25);color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Manrope,Arial,sans-serif;font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}a{color:inherit;text-decoration:none}button{color:inherit}h1,h2,h3,p{margin:0}button{background:none;border:0}img,svg{max-width:100%}img{display:block}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible,select:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0)}.skip-link{position:fixed;top:-80px;left:20px;z-index:100;background:var(--accent);color:var(--on-accent);border:0;border-radius:8px;font-weight:700;padding:12px}.skip-link:focus{top:10px}.muted{color:var(--muted)}.eyebrow,.tiny-label{font-size:13px;letter-spacing:1.6px;font-weight:800;color:var(--muted)}.eyebrow{font-size:13px;margin-bottom:12px}.button{display:inline-flex;align-items:center;justify-content:center;gap:11px;min-height:46px;border-radius:9px;background:var(--accent);color:var(--on-accent);font-weight:700;font-size:12px;padding:13px 21px;border:1px solid transparent;transition:background var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out);white-space:nowrap}.button:hover{background:var(--accent-hover);transform:translateY(-1px)}.button:active:not(:disabled){transform:scale(.97)}.button-light{background:#f5f5e9;color:#244b3e}.button-light:hover{background:#fff}.button-small{min-height:39px;padding:8px 17px;font-size:13px}.button-outline{background:var(--surface);border-color:var(--border);color:var(--ink)}.button-outline:hover{background:var(--soft)}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid var(--border);border-radius:10px;flex-shrink:0}.icon-button:hover{background:var(--soft)}.text-link{display:inline-flex;gap:7px;align-items:center;font-size:13px;font-weight:800;color:var(--accent);min-height:32px}.input{width:100%;height:48px;border:1px solid var(--border);border-radius:9px;background:var(--surface);color:var(--ink);padding:0 14px}.pill{display:inline-flex;align-items:center;padding:5px 10px;background:var(--soft);border:1px solid var(--border);border-radius:6px;font-size:13px;font-weight:600;color:var(--muted)}.brand{font-size:29px;font-weight:800;letter-spacing:-1.7px;display:flex;gap:10px;align-items:center;line-height:1}.brand-icon{display:flex;align-items:center;justify-content:center;width:39px;height:39px;background:var(--accent);border-radius:11px;color:var(--on-accent)}.brand-icon.is-3d{width:44px;height:44px;margin:-3px -2px -3px -3px;background:none;filter:drop-shadow(0 3px 4px rgb(16 40 30 / .22))}.brand-icon.is-3d>img{display:block;width:100%;height:100%}.brand-dot{color:var(--accent)}.app-shell{display:flex;min-height:100vh}.avatar{display:inline-flex;align-items:center;justify-content:center;background:var(--soft);border:1px solid var(--border);border-radius:13px}.avatar.small{width:38px;height:38px;font-size:23px}.main-shell{margin-left:228px;width:calc(100% - 228px)}.global-search{position:relative;width:min(420px,100%);min-width:0;margin-right:24px;z-index:30}.global-search-field{display:flex;align-items:center;gap:11px;min-height:44px;padding:0 12px 0 15px;border:1px solid var(--border);border-radius:13px;color:var(--muted);background:var(--bg);transition:border-color var(--dur-fast),box-shadow var(--dur-fast)}.global-search-field:focus-within{border-color:var(--accent-border);box-shadow:0 0 0 3px var(--accent-soft);background:var(--surface)}.global-search-field>svg{flex-shrink:0}.global-search-field input{width:100%;min-width:0;padding:10px 0;border:0;outline:none;color:var(--ink);background:transparent;font-size:13px}.global-search-field input::placeholder{color:var(--muted);opacity:1}.global-search-field input:focus-visible{outline:none}.global-search-clear{display:grid;place-items:center;flex-shrink:0;width:28px;height:32px;border-radius:8px;color:var(--muted)}.global-search-clear:hover{background:var(--soft)}.global-search-panel{position:absolute;top:calc(100% + 10px);left:0;width:100%;max-height:min(610px,65vh);overflow-y:auto;padding:7px;border:1px solid var(--border);border-radius:17px;background:var(--surface);box-shadow:var(--shadow-lift);animation:rise-in-xs .18s var(--ease-out) both}.global-search-heading{padding:9px 11px 6px;color:var(--muted);font-size:10px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase}.global-search-result{display:flex;align-items:center;gap:12px;min-height:60px;padding:9px 11px;border-radius:11px}.global-search-result:hover,.global-search-result[aria-selected=true]{background:var(--accent-soft)}.global-search-icon{display:grid;place-items:center;width:35px;height:35px;flex-shrink:0;border-radius:10px;color:var(--accent);background:var(--soft)}.global-search-copy{display:grid;gap:1px;min-width:0;flex:1}.global-search-copy strong{font-size:13px;overflow-wrap:anywhere}.global-search-copy small{font-size:12px;color:var(--muted)}.global-search-result>svg{color:var(--muted);flex-shrink:0}.global-search-empty{display:grid;justify-items:center;gap:8px;padding:25px 16px;text-align:center}.global-search-empty svg,.global-search-empty span{color:var(--muted)}.global-search-empty strong{font-size:14px}.global-search-empty span{font-size:12px}.global-search-hint{display:flex;justify-content:space-between;gap:10px;margin-top:6px;padding:10px 11px 4px;border-top:1px solid var(--border);color:var(--muted);font-size:10px}.status-dot{display:inline-block;width:5px;height:5px;background:var(--accent);border-radius:50%;margin-right:4px}.content-wrap{max-width:1490px;margin:auto;display:grid;grid-template-columns:minmax(0,1fr) 258px;gap:31px;padding:34px 38px 25px}main{min-width:0}.page-enter{animation:rise-in-xs var(--dur) var(--ease-out) backwards}.page-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.page-heading h1{font-size:29px;line-height:1.3;letter-spacing:-1.25px;font-weight:800;margin-bottom:10px}.page-heading .muted{font-size:13px}.summary-icon{display:flex;color:var(--accent);margin-right:2px}.section-title{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:17px}.section-title h2{font-size:17px;font-weight:800;letter-spacing:-.5px}.curriculum-heading{display:flex;align-items:center;justify-content:space-between;gap:8px 16px;flex-wrap:wrap;margin-bottom:16px}.curriculum-heading .section-title{margin:0}.curriculum-progress{font-size:13px;color:var(--muted)}.module-list{display:flex;flex-direction:column;gap:12px}.module{border:1px solid var(--border);border-radius:12px;background:var(--surface);overflow:hidden;transition:border-color var(--dur) var(--ease-out)}.module.expanded{border-color:var(--accent-border)}.module-header{display:flex;align-items:center;text-align:left;width:100%;gap:16px;padding:20px;transition:background-color var(--dur) var(--ease-out)}.module-number{width:42px;height:45px;border-radius:10px;background:var(--soft);color:var(--muted);font-size:15px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.expanded .module-number,.module-number.complete{background:var(--accent);color:var(--on-accent)}.module-kicker{font-size:12px;font-weight:800;letter-spacing:1.1px;color:var(--muted)}.expanded .module-kicker{color:var(--accent)}.module-header h3{font-size:14px;letter-spacing:-.3px;margin:3px 0}.module-header p{font-size:12px;color:var(--muted)}.module-header p>span{margin:0 7px}.module-end{margin-left:auto;color:var(--subtle)}.is-locked .module-header h3,.is-locked .module-number{color:var(--muted)}.lesson-list{border-top:1px solid var(--border);padding:1px 20px 8px 28px}.lesson-row{position:relative;display:flex;align-items:center;gap:15px;min-height:76px;border-bottom:1px solid var(--border)}.lesson-row:last-child{border:0}.lesson-node{position:relative;display:flex;align-items:center;justify-content:center;border-radius:50%;width:30px;height:30px;flex-shrink:0;background:var(--soft);color:var(--subtle);border:1px solid var(--border)}.lesson-row:not(:last-child):before{content:"";position:absolute;top:53px;bottom:-23px;left:15px;width:1px;background:var(--border)}.lesson-row.available .lesson-node{background:var(--accent);color:var(--on-accent);border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.lesson-row.completed .lesson-node{color:var(--accent);background:var(--accent-soft)}.lesson-row-copy{flex:1}.lesson-row-copy strong{font-size:13px;display:block;font-weight:700}.lesson-row-copy small{font-size:12px;color:var(--muted);display:block;margin-top:3px}.lesson-row.locked .lesson-row-copy strong{color:var(--muted)}.lesson-index{font-size:13px;color:var(--subtle);padding-right:14px}.discover-section{margin-top:31px}.discovery-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.discovery-card{position:relative;background:var(--surface);border:1px solid var(--border);border-radius:11px;overflow:hidden;transition:transform var(--dur) var(--ease-out),box-shadow var(--dur) var(--ease-out)}.discovery-card img{height:123px;width:100%;object-fit:cover}.discovery-card>div{padding:16px}.discovery-card h3{font-size:13px;letter-spacing:-.3px;margin:6px 0 8px}.discovery-card .tiny-label,.discovery-card .text-link{font-size:12px}.discovery-number{position:absolute;top:10px;right:12px;font-size:12px;background:#ffffffb0;border-radius:4px;padding:3px 7px;color:#234334}.closing-note{display:flex;align-items:center;gap:10px;padding:26px 0 7px;color:var(--muted);font-size:12px}.closing-note>svg:last-child{margin-left:auto;color:var(--subtle)}@media(min-height:720px){.right-rail{position:sticky;top:104px;align-self:start}}.rail-card{padding:20px;border:1px solid var(--border);border-radius:16px;background:var(--surface);margin-bottom:16px}.rail-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;color:var(--muted)}.rail-title h3{font-size:14px;letter-spacing:-.2px;color:var(--ink)}.height-line{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:10px;font-size:13px;color:var(--muted)}.height-line strong{font-size:14px;color:var(--ink)}.week-days{display:flex;justify-content:space-between}.week-days>div{display:flex;flex-direction:column;align-items:center;gap:8px;font-size:12px;color:var(--muted)}.day-dot{height:22px;width:22px;border:1px solid var(--border);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--on-accent);font-size:26px;line-height:1}.today .day-dot{border:2px solid var(--accent)}.rail-footnote{color:var(--muted);font-size:13px;line-height:1.5;margin-top:14px}.word-of-day{background:var(--word-bg);border-color:var(--word-border)}.word-of-day>.tiny-label{font-size:12px;letter-spacing:1.2px}.word-of-day .word-os{font-size:28px;letter-spacing:-.8px;display:block;font-weight:700;margin-top:12px;line-height:1.25;overflow-wrap:anywhere}.word-of-day>p{font-size:14px;color:var(--muted);margin-top:4px}.word-of-day .text-link{margin-top:10px;font-size:13px}.progress-track{height:5px;border-radius:4px;background:var(--soft);overflow:hidden}.progress-track>span{display:block;width:100%;height:100%;background:var(--accent);border-radius:4px;transition:transform .7s var(--ease-out);animation:fill-in .9s var(--ease-out) .15s backwards}@keyframes fill-in{0%{transform:translate(-100%)}}.local-note{display:flex;gap:8px;color:var(--subtle);font-size:12px;padding:4px 8px;line-height:1.5}.local-note>svg{flex-shrink:0}.app-footer{display:flex;justify-content:space-between;max-width:1490px;margin:auto;padding:15px 38px 25px;font-size:12px;color:var(--subtle)}.loading{min-height:70vh;display:grid;place-content:center;color:var(--muted)}.warning{padding:12px 20px;background:#fff2d2;color:#65410b}.search-box{display:flex;align-items:center;gap:12px;border:1px solid var(--border);background:var(--surface);border-radius:10px;padding:0 15px;min-height:48px;margin-bottom:22px;color:var(--muted)}.search-box input{border:0;background:transparent;color:var(--ink);min-width:0;flex:1;outline:none;padding:13px 0;font-size:12px}.search-box:focus-within{outline:2px solid var(--accent);outline-offset:2px}.search-box input:focus-visible{outline:0}.filter-tabs{display:flex;gap:5px;flex-wrap:wrap}.filter-tabs button{padding:10px 12px;border-radius:8px;color:var(--muted);font-size:13px;min-height:44px;text-transform:capitalize}.filter-tabs button.active{background:var(--accent);color:var(--on-accent)}.search-box.compact{margin:0;flex:1;min-width:160px;min-height:40px}.search-box.compact input{font-size:13px}.culture-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.culture-tile{text-align:left;overflow:hidden;background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:0;transition:transform var(--dur) var(--ease-out),box-shadow var(--dur) var(--ease-out)}.culture-photo{height:160px;position:relative}.culture-photo img{height:100%;width:100%;object-fit:cover}.read-marker{position:absolute;bottom:10px;left:10px;background:var(--surface);display:flex;align-items:center;gap:4px;border-radius:5px;padding:4px 7px;font-size:12px}.culture-tile-body{padding:20px}.culture-locked{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px;margin-top:20px;padding:16px 20px;background:var(--soft);border-radius:12px}.culture-locked>div{flex:1 1 180px;min-width:0}.culture-locked h2{font-size:15px;line-height:1.35}.culture-locked p{margin:2px 0 0;font-size:13px;color:var(--muted)}.culture-locked-art{display:flex;gap:4px;color:var(--muted);opacity:.55}.culture-count{color:var(--muted);font-size:14px;margin:0 0 16px}.culture-tile-body .tiny-label{font-size:12px}.culture-tile-body h2{font-size:17px;line-height:1.35;margin:8px 0}.culture-tile-body p{color:var(--muted);font-size:13px;margin:10px 0}.dialog{border:1px solid var(--border);padding:26px;border-radius:17px;background:var(--surface);color:var(--ink);width:min(580px,calc(100% - 28px));max-height:88dvh;box-shadow:0 24px 100px #0003}.dialog[open]{animation:dialog-in var(--dur) var(--ease-out)}.dialog::backdrop{background:#14231cd0;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.dialog[open]::backdrop{animation:fade-in var(--dur) var(--ease-out)}.dialog-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:23px}.dialog-head h2{font-size:22px;line-height:1.3;letter-spacing:-.7px}.dialog-image{height:220px;width:100%;object-fit:cover;border-radius:10px;margin-bottom:20px}.reading-text{font-size:16px;line-height:1.9;margin:19px 0 25px;white-space:pre-line}.settings-panel{background:var(--surface);padding:24px;border:1px solid var(--border);border-radius:12px;margin-bottom:20px}.data-actions{display:flex;gap:15px;flex-wrap:wrap;margin-top:20px}.danger-button{color:var(--danger);font-size:13px;font-weight:600;min-height:44px;display:inline-flex;gap:7px;align-items:center}.empty-state{text-align:center;padding:80px 20px}.empty-state>h1{margin:0 0 20px;font-size:var(--fs-3xl);line-height:1.2}.empty-state h2{font-size:23px}.empty-state .muted{max-width:380px;margin:12px auto 22px}.empty-icon{display:inline-flex;align-items:center;justify-content:center;width:62px;height:62px;border-radius:20px;background:var(--accent-soft);color:var(--accent);margin-bottom:18px}.intro{font-size:15px;color:var(--muted);line-height:1.9;max-width:390px;margin-bottom:27px}@media(min-width:1600px){.content-wrap{padding-top:45px;grid-template-columns:minmax(0,1fr) 285px;gap:40px}.page-heading h1{font-size:36px}.module-header h3{font-size:16px}.module-kicker{font-size:12px}.module-header p,.lesson-row-copy strong,.lesson-row-copy small{font-size:13px}.lesson-row{min-height:82px}}@media(max-width:1190px){.main-shell{margin-left:205px;width:calc(100% - 205px)}.content-wrap{grid-template-columns:minmax(0,1fr);max-width:870px;padding:30px}.right-rail{display:none}.module-header h3{font-size:15px}.module-kicker{font-size:12px}.module-header p,.lesson-row-copy strong,.lesson-row-copy small{font-size:13px}}@media(max-width:760px){.main-shell{margin:0;width:100%}.brand{font-size:26px}.brand-icon{width:34px;height:34px;border-radius:10px}.brand-icon.is-3d{width:39px;height:39px}.global-search-field input{font-size:16px}.global-search-clear{min-width:32px;min-height:44px}.global-search-hint span{display:none}.content-wrap{padding:27px 22px 20px;display:block}.page-heading{margin-bottom:22px}.page-heading h1{font-size:27px;letter-spacing:-1px}.page-heading .muted{font-size:13px;max-width:300px;line-height:1.8}.eyebrow{font-size:12px;letter-spacing:1.4px}.module-header{padding:17px 15px;gap:13px}.module-header h3{font-size:14px}.module-header p,.module-kicker{font-size:12px}.module-number{width:38px;height:42px;font-size:14px}.lesson-list{padding:0 14px 5px 20px}.lesson-row{gap:12px;min-height:80px}.lesson-row-copy strong,.lesson-row-copy small{font-size:12px}.lesson-row .button-small{padding:8px 11px}.section-title h2{font-size:16px}.section-title .text-link{font-size:12px}.discovery-grid{gap:12px}.discovery-card img{height:100px}.discovery-card>div{padding:13px}.discovery-card h3,.closing-note{font-size:12px}.app-footer{padding:10px 22px 100px;font-size:12px}.culture-grid{gap:12px}.culture-photo{height:120px}.culture-tile-body{padding:14px}.culture-tile-body h2{font-size:14px}.culture-tile-body p,.culture-tile-body .text-link{font-size:12px}.filter-tabs{gap:2px}.filter-tabs button{padding:10px;font-size:12px}.dialog{padding:20px}.dialog-head h2{font-size:21px}.dialog-image{height:180px}.reading-text{font-size:15px}.settings-panel{padding:19px}.intro{font-size:13px;margin-bottom:23px}.data-actions{gap:10px}}@keyframes fade-in{0%{opacity:0}}@keyframes rise-in{0%{opacity:0;transform:translateY(12px)}}@keyframes rise-in-sm{0%{opacity:0;transform:translateY(8px)}}@keyframes rise-in-xs{0%{opacity:0;transform:translateY(6px)}}@keyframes dialog-in{0%{opacity:0;transform:scale(.96)}}@keyframes soft-pop{50%{transform:scale(1.03)}}@keyframes glow-ring{0%{box-shadow:0 0 color-mix(in srgb,var(--accent) 45%,transparent)}to{box-shadow:0 0 0 10px transparent}}@keyframes shake-x{0%,to{transform:translate(0)}10%{transform:translate(-6px)}30%{transform:translate(6px)}50%{transform:translate(-5px)}70%{transform:translate(5px)}90%{transform:translate(-2px)}}@keyframes badge-pop{0%{opacity:0;transform:scale(.6)}}@keyframes pet-celebrate{0%,to{transform:translateY(0) scale(1);filter:drop-shadow(0 0 0 transparent)}35%{transform:translateY(-9px) scale(1.04);filter:drop-shadow(0 4px 12px color-mix(in srgb,var(--gold) 80%,transparent))}60%{transform:translateY(0) scale(.98)}}@keyframes confetti-burst{0%{opacity:1;transform:translate(-50%,-50%) rotate(0) scale(.6)}70%{opacity:1}to{opacity:0;transform:translate(calc(-50% + var(--dx)),calc(-50% + var(--dy) + 36px)) rotate(var(--rot)) scale(1)}}.confetti-host{position:relative}.confetti{position:absolute;top:0;right:0;bottom:0;left:0;overflow:visible;pointer-events:none;z-index:2}.confetti-piece{position:absolute;left:50%;top:50%;width:var(--w);height:var(--h);border-radius:var(--radius);background:var(--color);opacity:0;animation:confetti-burst var(--life, 1.2s) var(--ease-out) var(--delay) both}@media(hover:hover){.culture-tile:hover,.discovery-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lift)}.module-header:hover{background-color:color-mix(in srgb,var(--accent-soft) 55%,transparent)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.page-enter,.exercise-body,.answer-feedback,.dialog[open],.dialog[open]::backdrop,.pet-new{animation:fade-in var(--dur) ease-out backwards!important}.letter-tiles button,.pair,.answer-options button,.progress-track>span{transition:none!important}.button:hover,.button:active:not(:disabled),.answer-options button:active:not(:disabled),.letter-tiles button:active:not(:disabled),.letter-tiles button.used:disabled,.pair:active:not(:disabled),.culture-tile:hover,.discovery-card:hover{transform:none!important}.confetti{display:none}}html[data-mode=kids]{zoom:1.08}[data-mode=kids] .button,[data-mode=kids] .answer-options button,[data-mode=kids] .lesson-row,[data-mode=kids] .rail-card,[data-mode=kids] .settings-panel{border-radius:20px}[data-mode=kids] .button{min-height:54px;font-size:16px}[data-mode=kids] .local-note,[data-mode=kids] .rail-footnote,[data-mode=adult] .pet-card,[data-mode=adult] .closing-note,[data-mode=adult] .streak-pill,[data-mode=adult] .confetti{display:none}html[data-largefont=true]{zoom:1.12}[data-largefont=true] body{font-size:18px}[data-largefont=true] p,[data-largefont=true] .lesson-row-copy strong,[data-largefont=true] .nav-item{font-size:17px}[data-largefont=true] .tiny-label,[data-largefont=true] small{font-size:15px}[data-contrast=true]{--muted: var(--ink);--subtle: var(--ink);--border: var(--ink)}[data-colorblind=true]{--accent: #23578b;--accent-hover: #194674;--accent-soft: #e4edf5;--accent-border: #9cbbda}[data-theme=dark][data-colorblind=true]{--accent: #9cc2e8;--accent-hover: #b6d3f0;--accent-soft: #1f3040;--accent-border: #4a6c8c;--on-accent: #0f2236}.level-complete{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;padding:20px 22px;margin-bottom:20px;border-radius:18px;border:1px solid var(--accent-border);background:var(--accent-soft)}.level-complete h2{margin:2px 0 4px;font-size:20px}.level-complete .finish-medallion{width:72px;height:72px;margin:0}.level-complete-final{margin:0;font-weight:700}.quiz-picture{display:block;width:100%;max-height:min(300px,32dvh);object-fit:cover;border-radius:var(--r-md)}.quiz-excerpt{margin:0;padding:16px 20px;border-left:4px solid var(--accent);border-radius:var(--r-sm);background:var(--surface);font-size:var(--fs-lg);line-height:1.5}.answer-feedback .text-link{min-height:44px;font-size:var(--fs-sm)}.week-days>div.active .day-dot{animation:day-pop var(--dur-slow) var(--ease-spring) backwards;background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.week-days>div:nth-child(2) .day-dot{animation-delay:60ms}.week-days>div:nth-child(3) .day-dot{animation-delay:.12s}.week-days>div:nth-child(4) .day-dot{animation-delay:.18s}.week-days>div:nth-child(5) .day-dot{animation-delay:.24s}.week-days>div:nth-child(6) .day-dot{animation-delay:.3s}.week-days>div:nth-child(7) .day-dot{animation-delay:.36s}@keyframes day-pop{0%{transform:scale(.4);opacity:0}}.week-days>div.today.active .day-dot{background:var(--accent);color:var(--on-accent)}@media(max-width:760px){.level-complete{grid-template-columns:1fr;text-align:center;justify-items:center}}@media(max-width:420px){.hide-small{display:none}}.new-badges{width:100%;max-width:460px;margin:4px 0 18px}.new-badges ul{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:8px}.new-badges li{display:flex;align-items:center;gap:12px;padding:10px 14px;border:1px solid var(--accent-border);border-radius:14px;background:var(--accent-soft);text-align:left;animation:badge-in var(--dur-slow) var(--ease-spring) backwards}.new-badges li>span:last-child{display:flex;flex-direction:column}.new-badges small{color:var(--muted);font-size:13px}.new-badge-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;flex-shrink:0;border-radius:50%;background:var(--gold);color:#3b2f0b}.new-badges.is-lead{display:grid;gap:2px;margin:0}.new-badge-lead{display:flex;align-items:center;gap:14px;padding:12px 16px;border:1px solid var(--accent-border);border-radius:var(--r-md);background:var(--accent-soft);text-align:left;animation:badge-in var(--dur-slow) var(--ease-spring) .3s backwards}.new-badge-lead .new-badge-icon{width:64px;height:64px}.new-badge-lead>span:last-child{display:grid;gap:2px;min-width:0}.new-badge-lead strong{font-size:var(--fs-lg);line-height:1.25}.new-badges.is-lead small{font-size:var(--fs-sm);line-height:1.35}.new-badges-more{justify-self:center;display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border-radius:var(--r-pill);color:var(--accent);font-size:var(--fs-md);font-weight:800}.new-badges-more:focus-visible{outline:3px solid var(--accent);outline-offset:2px}@keyframes badge-in{0%{opacity:0;transform:scale(.8) translateY(8px)}}@media(prefers-reduced-motion:reduce){.new-badges li,.new-badge-lead{animation:fade-in var(--dur) ease-out backwards}}.themes .filter-tabs{margin-bottom:14px}.themes .filter-tabs button{text-transform:none}.mobile-brand .brand,.text-link{position:relative}.mobile-brand .brand:after,.text-link:after{content:"";position:absolute;inset:50% auto auto 50%;width:max(100%,44px);height:max(100%,44px);transform:translate(-50%,-50%)}.button-small,.lesson-row .button-small,.search-box input{min-height:44px}@media(max-width:760px){.search-box input,.search-box.compact input,.input,.class-input{font-size:16px}}.button{min-height:44px}.quests{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:20px 12px 12px;margin-bottom:40px}.today-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:0 12px;margin-bottom:8px}.today-head h2{font-size:17px;font-weight:800;letter-spacing:-.5px}.today-count{font-size:13px;color:var(--muted)}.today-note{padding:0 12px;margin-bottom:4px;font-size:13px;color:var(--muted)}.quest-list{list-style:none;margin:0;padding:0}.quest-row{display:flex;align-items:center;gap:12px;min-height:52px;padding:8px 12px;border-radius:12px;color:var(--ink);text-decoration:none;transition:background-color var(--dur-fast) ease}a.quest-row:hover{background:var(--soft)}.quest-row>svg{flex:none;color:var(--subtle)}.quest-copy{display:flex;flex:1;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:2px 16px;min-width:0}.quest-title{font-size:15px;font-weight:600}.quest-hint{font-size:13px;color:var(--muted)}.quest-list li.done .quest-title{color:var(--muted);font-weight:500}.quest-mark{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;border:2px solid var(--border);flex:none}.quest-list li.done .quest-mark{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.today-extras{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:8px;margin-top:8px}.today-extra{display:flex;align-items:center;gap:12px;min-height:64px;padding:10px 12px;border-radius:12px;background:var(--soft);color:var(--ink);text-decoration:none}a.today-extra{transition:background-color var(--dur-fast) ease}a.today-extra:hover{background:var(--accent-soft)}.today-extra-icon{display:flex;flex:none;color:var(--accent)}.today-extra-copy{display:grid;flex:1;min-width:0}.today-extra-copy strong{font-size:14px}.today-extra-copy>span{font-size:13px;color:var(--muted)}.chest-found{margin:10px 12px 4px;font-weight:700;color:var(--accent)}.backpack-grid{list-style:none;margin:16px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:12px}.backpack-grid li{display:grid;justify-items:center;gap:6px;padding:14px 8px;border:1px dashed var(--border);border-radius:12px;text-align:center;font-size:13px;color:var(--muted)}.backpack-grid li.found{border-style:solid;border-color:var(--accent-border);background:var(--accent-soft);color:var(--accent);font-weight:700}@media(max-width:760px){.quests{padding:16px 8px 8px;margin-bottom:32px}}.chest-icon{display:inline-flex}.culture-tile-wrap{display:flex}.culture-tile-wrap>.culture-tile{flex:1;min-width:0}::view-transition-old(root),::view-transition-new(root){animation:none;mix-blend-mode:normal}::view-transition-old(root){z-index:1}::view-transition-new(root){z-index:2}.theme-reveal *,.theme-reveal *:before,.theme-reveal *:after{animation-play-state:paused!important;transition:none!important}.mode-picker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.mode-card{position:relative;display:flex;flex-direction:column;gap:4px;align-items:flex-start;padding:14px;min-height:44px;text-align:left;border:1px solid var(--border);border-radius:14px;background:var(--surface);color:var(--ink);cursor:pointer;transition:border-color var(--dur) var(--ease-out),background-color var(--dur) var(--ease-out),transform var(--dur) var(--ease-spring)}.mode-card:hover{transform:translateY(-2px)}.mode-card.selected{border-color:var(--accent);background:var(--accent-soft)}.mode-card small{color:var(--muted);line-height:1.4}.mode-icon{display:grid;place-items:center;width:38px;height:38px;margin-bottom:6px;border-radius:11px;background:var(--accent-soft);color:var(--accent);transition:background-color var(--dur) var(--ease-out),color var(--dur) var(--ease-out)}.mode-card.selected .mode-icon{background:var(--accent);color:var(--on-accent)}.mode-check{position:absolute;top:12px;right:12px;color:var(--accent)}@media(max-width:640px){.mode-picker{grid-template-columns:1fr}}.lesson-guide{position:sticky;top:8px;display:flex;flex-direction:row-reverse;align-items:center;align-self:center;flex-shrink:0;gap:10px;width:calc(100% - 50px);max-width:590px;height:56px;margin:8px auto 0;pointer-events:none;z-index:4}.lesson-page>.lesson-guide{top:80px}.guide-art{display:grid;place-items:center;width:56px;height:56px;padding:0;flex-shrink:0;border-radius:50%;background:transparent;pointer-events:auto;touch-action:manipulation}.guide-art:hover{background-color:var(--accent-soft)}.guide-character{display:block;width:100%;height:100%;transform-origin:50% 85%}.guide-copy{min-width:0;max-width:300px}.lesson-guide.ok .guide-character{animation:guide-hop .7s var(--ease-out)}.lesson-guide.miss .guide-character{animation:guide-nod .8s ease-in-out}@keyframes guide-hop{35%{transform:translateY(-18px) scale(1.06)}60%{transform:translateY(0) scale(.97,1.03)}}@keyframes guide-nod{30%{transform:rotate(-6deg) translateY(2px)}65%{transform:rotate(3deg)}}.guide-bubble{display:block;padding:7px 11px;border-radius:12px 12px 3px;background:var(--surface);color:var(--muted);box-shadow:0 2px 8px #27382f0f;font-size:12px;font-weight:500;line-height:1.4;text-wrap:pretty;overflow-wrap:anywhere}.guide-bubble:empty{display:none}[data-mode=adult] .lesson-guide{display:none}@media(max-width:760px){.lesson-guide{width:100%;height:48px;margin-top:4px;gap:8px}.lesson-page>.lesson-guide{top:68px;width:calc(100% - 32px)}.guide-art{width:48px;height:48px}.guide-copy{max-width:240px}}@media print{body{background:#fff}.print-controls,.skip-link{display:none!important}}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.local-note a{color:inherit;text-decoration:underline;text-decoration-color:var(--border);text-underline-offset:3px}.local-note a:hover{color:var(--ink)}.onboarding .auth-submit,.onboarding form>.button{min-height:52px;border-radius:12px;font-size:15px}@media print{html.printing-slips body *{visibility:hidden}}.session-note{margin-bottom:18px}.consent-note{margin:0 0 14px;font-size:13px;color:var(--muted)}.consent-note a,.footer-legal a{color:inherit;text-decoration:underline;text-underline-offset:3px}.app-footer{flex-wrap:wrap;gap:6px 18px}.footer-legal{display:inline-flex;gap:14px}.lesson-page{min-height:100dvh;background:var(--bg);outline:none;display:flex;flex-direction:column}.lesson-top{position:sticky;top:0;z-index:5;min-height:76px;padding:14px max(20px,calc((100% - 700px)/2));display:flex;align-items:center;gap:16px;background:color-mix(in srgb,var(--bg) 88%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border)}.lesson-close{flex-shrink:0;width:46px;height:46px;border-radius:14px;color:var(--muted)}.lesson-top>.lesson-top-title{display:block;font-size:var(--fs-md);font-weight:700;color:var(--ink)}.lesson-count{font-size:var(--fs-md);font-weight:800;color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap}.lesson-count span{color:var(--muted);font-weight:600}.lesson-top .lesson-progress{flex:1;margin:0;padding:0;max-width:none;gap:14px}.lesson-top .lesson-progress>.progress-track{height:14px;border-radius:var(--r-pill);background:var(--soft);overflow:hidden}.lesson-top .lesson-progress>.progress-track>span{border-radius:var(--r-pill);min-width:14px}.review-chip{align-self:center;display:inline-flex;align-items:center;gap:8px;margin:8px auto 0;padding:6px 14px;border-radius:var(--r-pill);background:var(--soft);border:1px solid var(--border);color:var(--ink);font-size:var(--fs-sm);font-weight:700}@media(max-width:760px){.lesson-top{min-height:64px;padding:10px 16px;gap:12px}.lesson-close{width:42px;height:42px}}.exercise-body{--ctl-h: 64px;max-width:640px;margin:28px auto 40px;padding:0 25px;width:100%;animation:rise-in var(--t-base) var(--ease-out) backwards}.exercise-stage,.exercise-answers,.exercise-dock{display:contents}.exercise-type{display:inline-block;padding:6px 12px;border-radius:var(--r-pill);background:var(--accent-soft);color:var(--accent);font-size:var(--fs-sm);font-weight:800;letter-spacing:.1em}.exercise-body h1{font-size:28px;line-height:1.2;letter-spacing:-.03em;margin:14px 0 6px}.exercise-body>.muted{font-size:var(--fs-md)}.exercise-note{display:flex;align-items:center;gap:8px;margin:8px 0 0;padding:10px 14px;border-radius:var(--r-sm);background:var(--soft);color:var(--muted);font-size:var(--fs-sm)}.exercise-note svg{flex-shrink:0}@media(max-width:760px){.exercise-body{margin:22px auto 28px;padding:0 18px}.exercise-body h1{font-size:var(--fs-2xl)}}.prompt-word{margin:22px 0;padding:30px 22px;border-radius:var(--r-lg);border:2px solid var(--border);background:var(--surface);font-size:var(--fs-4xl);font-weight:800;letter-spacing:-.02em;line-height:1.15;text-align:center;overflow-wrap:anywhere}.new-word{margin:22px 0 24px;min-height:280px;padding:34px 24px 28px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:6px;border-radius:var(--r-xl);border:2px solid var(--border);background:#f9f8f2 url(../images/word-card-bg.jpg) bottom / 100% auto no-repeat;text-align:center}[data-theme=dark] .new-word{background:#162020 url(../images/word-card-bg-dark.jpg) bottom / 100% auto no-repeat}.new-word strong{font-size:var(--fs-4xl);font-weight:800;line-height:1.1;letter-spacing:-.03em;color:var(--ink);overflow-wrap:anywhere}.new-word-line{width:56px;height:5px;margin:14px 0 10px;border-radius:3px;background:var(--gold)}[data-theme=dark] .new-word-line{background:#91aea2}.new-word>span:not(.new-word-line){font-size:var(--fs-2xl);font-weight:600;color:var(--muted)}.new-word small{margin-top:22px;padding:5px 12px;border-radius:var(--r-pill);background:var(--soft);color:var(--subtle);font-size:var(--fs-sm);font-weight:700;letter-spacing:.12em}.ctl,.answer-options button{position:relative;display:flex;align-items:center;justify-content:center;gap:12px;box-sizing:border-box;min-height:var(--ctl-h);padding:12px 18px;border:2px solid var(--border);border-radius:var(--r-md);background:var(--surface);color:var(--ink);font:inherit;font-size:var(--fs-lg);font-weight:700;line-height:1.25;text-align:center;overflow-wrap:anywhere;touch-action:manipulation;transition:transform var(--t-press) var(--ease-out),background-color var(--t-quick) var(--ease-out),border-color var(--t-quick) var(--ease-out),color var(--t-quick) var(--ease-out),opacity var(--t-quick) var(--ease-out)}.ctl:after,.answer-options button:after{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;border-radius:inherit;background:var(--accent);opacity:0;pointer-events:none}@media(hover:hover){.ctl:hover:not(:disabled),.answer-options button:hover:not(:disabled){border-color:var(--accent-border);background:color-mix(in srgb,var(--accent) 7%,var(--surface))}}.ctl:active:not(:disabled),.answer-options button:active:not(:disabled){transform:scale(.97)}.ctl:focus-visible,.answer-options button:focus-visible,.answer-input:focus-visible,.hint-button:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.ctl.is-selected,.ctl[aria-pressed=true]:not(.matched):not(.memory-card),.chip.placed{border-color:var(--accent);background:var(--accent-soft);color:var(--ink)}.ctl:disabled:not(.correct):not(.wrong):not(.used):not(.matched),.answer-options button:disabled:not(.correct):not(.wrong){opacity:.5}.ctl.correct,.ctl.right,.answer-options button.correct{border-color:var(--accent);background:var(--accent-soft);color:var(--ink);opacity:1}.ctl.correct.picked,.answer-options button.correct.picked{background:var(--accent);color:var(--on-accent);animation:ctl-pop var(--t-base) var(--ease-spring)}.ctl.correct:not(.picked):after,.answer-options button.correct:not(.picked):after{animation:ctl-pulse .3s var(--ease-out)}.ctl.wrong,.answer-options button.wrong{border-color:var(--border);background:var(--soft);color:var(--ink);opacity:1}.ctl>svg,.answer-options button>svg{flex-shrink:0}@keyframes ctl-pop{50%{transform:scale(1.04)}}@keyframes ctl-pulse{0%{opacity:0;transform:scale(1)}35%{opacity:.28;transform:scale(1.03)}to{opacity:0;transform:scale(1)}}@keyframes ctl-settle{40%{transform:scale(.96)}}.answer-options{display:flex;flex-direction:column;gap:12px}.answer-options button{justify-content:flex-start;width:100%;text-align:left}.answer-options button>svg{margin-left:auto}.answer-options button>.key{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:34px;height:34px;border-radius:var(--r-sm);background:var(--soft);color:var(--muted);font-size:var(--fs-sm);font-weight:800}.answer-options button.correct.picked>.key{background:color-mix(in srgb,var(--on-accent) 24%,transparent);color:var(--on-accent)}@media(hover:none),(pointer:coarse){.answer-options button>.key{display:none}}.pair-columns{display:grid;grid-template-columns:1fr 1fr;gap:12px}.pair-columns>div{display:flex;flex-direction:column;gap:12px}.pair-col-label{font-size:var(--fs-sm);font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);text-align:center}.pair.matched,.pair.matched:disabled{border-color:var(--accent-border);background:var(--accent-soft);color:var(--accent);opacity:1}.pair.shake{animation:ctl-settle .28s var(--ease-out)}.pair-feedback{font-size:var(--fs-md);font-weight:600;text-align:center;color:var(--muted);margin:4px 0 0}.answer-input{display:block;box-sizing:border-box;width:100%;min-height:72px;padding:14px 20px;border:2px solid var(--border);border-radius:var(--r-md);background:var(--surface);color:var(--ink);font:inherit;font-size:var(--fs-2xl);font-weight:800;letter-spacing:.02em;text-align:center;transition:border-color var(--t-quick) var(--ease-out),box-shadow var(--t-quick) var(--ease-out)}.answer-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 16%,transparent)}.answer-input::placeholder{font-size:var(--fs-lg);font-weight:600;color:var(--subtle);letter-spacing:0}.answer-input.is-right{border-color:var(--accent);background:var(--accent-soft)}.answer-input.is-wrong{border-color:var(--border);background:var(--soft)}.letter-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(52px,1fr));gap:8px}.letter-tiles .ctl{padding:0;font-size:var(--fs-2xl)}.letter-tiles .ctl.used:disabled{opacity:1;transform:none;color:transparent;background:transparent;border-style:dashed}.letter-tiles .ctl[aria-label^=Стереть],.letter-tiles .ctl[aria-label^=Очистить]{background:var(--soft);color:var(--muted)}.game{display:flex;flex-direction:column;gap:12px}.game-ru{margin:0;font-size:var(--fs-2xl);font-weight:800;line-height:1.25;text-align:center;color:var(--ink)}.chip{min-width:64px;padding:0 20px}.assemble-line,.cloze-line,.tf-card,.bubble-q{border-radius:var(--r-lg);border:2px solid var(--border);background:var(--surface)}.assemble-line{display:flex;flex-wrap:wrap;gap:8px;align-content:flex-start;min-height:88px;padding:12px;border-style:dashed;background:var(--soft)}.assemble-empty{color:var(--muted);font-size:var(--fs-md);align-self:center}.assemble-bank{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.game-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.game-actions .button.lesson-cta{flex:1}.bubble-q{display:grid;gap:4px;max-width:100%;padding:20px 22px;border-bottom-left-radius:var(--r-xs);background:var(--accent-soft);border-color:var(--accent-border);text-align:left}.bubble-q strong{font-size:var(--fs-3xl);line-height:1.15;color:var(--accent)}.bubble-q span{font-size:var(--fs-md);color:var(--muted)}.bubble-replies{display:grid;gap:12px}.bubble-a{justify-content:flex-start;text-align:left;border-bottom-right-radius:var(--r-xs)}.bubble-a>svg{margin-left:auto}.cloze-line{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;align-content:center;gap:10px;font-size:var(--fs-3xl);font-weight:800;padding:18px 12px}.cloze-gap{min-width:78px;padding:0 12px;text-align:center;border-bottom:4px solid var(--accent-border);color:var(--accent)}.cloze-gap.right{border-color:var(--accent)}.cloze-gap.wrong{border-color:var(--border);color:var(--muted)}.cloze-options{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.memory-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.memory-card{min-height:84px;padding:6px;display:grid;place-items:center;border-color:var(--accent-border);background:var(--accent-soft);color:var(--accent);line-height:1.2}.memory-card.shown{background:var(--surface);color:var(--ink);border-color:var(--border);animation:ctl-pop var(--t-base) var(--ease-out)}.memory-card.matched{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.game-note{margin:0;text-align:center;color:var(--muted);font-size:var(--fs-sm)}.tf-card{display:grid;gap:6px;justify-items:center;align-content:center;text-align:center;padding:22px 16px}.tf-card strong{font-size:var(--fs-4xl);line-height:1.1;color:var(--ink)}.tf-card span{font-size:var(--fs-xl)}.tf-equals{color:var(--muted);font-weight:800}.tf-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.tf-button{padding-inline:10px;gap:8px;font-size:var(--fs-md);overflow-wrap:normal}@media(max-width:480px){.memory-grid{grid-template-columns:repeat(2,1fr)}.memory-card{min-height:72px}}.exercise-actions{margin-top:24px;display:flex;flex-direction:column-reverse;align-items:stretch;gap:14px}.exercise-actions>span:empty{display:none}.hint-button{align-self:center;display:inline-flex;align-items:center;gap:8px;min-height:52px;padding:0 20px;border-radius:var(--r-pill);border:2px solid var(--border);background:var(--surface);color:var(--ink);font-size:var(--fs-md);font-weight:700;transition:transform var(--t-press) var(--ease-out),border-color var(--t-quick) var(--ease-out)}.hint-button:hover:not(:disabled){border-color:var(--gold)}.hint-button:active:not(:disabled){transform:scale(.97)}.hint-button:not(:disabled) svg{color:#c9a43c}.hint-text{display:flex;align-items:center;gap:9px;margin-top:16px;padding:12px 16px;border-radius:var(--r-sm);background:color-mix(in srgb,var(--gold) 18%,var(--surface));color:var(--ink);font-size:var(--fs-md);font-weight:700}.button.lesson-cta{width:100%;min-height:64px;justify-content:center;gap:10px;border-radius:var(--r-md);font-size:var(--fs-lg);font-weight:800;border-color:transparent;box-shadow:0 4px color-mix(in srgb,var(--accent) 70%,#000);transition:transform var(--t-press) var(--ease-out),box-shadow var(--t-press) var(--ease-out),opacity var(--t-quick) ease}.button.lesson-cta:active:not(:disabled){transform:translateY(3px);box-shadow:0 1px color-mix(in srgb,var(--accent) 70%,#000)}.button.lesson-cta:disabled{opacity:.45;box-shadow:none}.button.lesson-cta:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.answer-feedback{--fb-bg: var(--accent-soft);--fb-border: var(--accent-border);--fb-strong: var(--accent);--fb-on: var(--on-accent);--sheet-delay: .16s;margin-top:24px;padding:12px 16px;border-radius:var(--r-lg);background:var(--fb-bg);border:1.5px solid var(--fb-border);box-shadow:var(--shadow-lift);display:grid;gap:10px;animation:sheet-rise var(--t-base) var(--ease-out) var(--sheet-delay) backwards}.answer-feedback.error{--fb-bg: var(--soft);--fb-border: var(--border);--fb-strong: var(--ink);--fb-on: var(--bg);--sheet-delay: .3s}@keyframes sheet-rise{0%{opacity:0;transform:translateY(24px)}}@media(min-width:761px){.answer-feedback{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px}.answer-feedback .feedback-head{flex:0 0 auto}.answer-feedback .feedback-answer{flex:1 1 200px}.answer-feedback .button.feedback-next{flex:0 0 auto;width:auto;margin-left:auto;padding-inline:24px}}.feedback-head{display:flex;align-items:center;gap:12px}.feedback-icon{flex-shrink:0;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--fb-strong);color:var(--fb-on);animation:badge-in var(--dur-slow) var(--ease-spring) 80ms backwards}.feedback-copy{min-width:0}.feedback-copy strong{display:block;font-size:var(--fs-xl);font-weight:800;line-height:1.2;color:var(--fb-strong)}.feedback-answer{display:flex;flex-direction:column;gap:2px;padding:8px 14px;border-radius:var(--r-sm);background:var(--surface);border:1px solid var(--fb-border)}.feedback-answer span{font-size:var(--fs-sm);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.feedback-answer b{font-size:var(--fs-lg);font-weight:800;color:var(--ink);overflow-wrap:anywhere}.button.feedback-next{width:100%;min-height:52px;justify-content:center;gap:10px;border-radius:var(--r-md);font-size:var(--fs-lg);font-weight:800;background:var(--fb-strong);color:var(--fb-on);border-color:transparent;box-shadow:0 4px color-mix(in srgb,var(--fb-strong) 70%,#000);scroll-margin-bottom:24px;transition:transform var(--t-press) var(--ease-out),box-shadow var(--t-press) var(--ease-out),filter var(--t-quick) ease}.button.feedback-next:hover{filter:brightness(1.06)}.button.feedback-next:active{transform:translateY(3px);box-shadow:0 1px color-mix(in srgb,var(--fb-strong) 70%,#000)}.button.feedback-next:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.button.feedback-next svg{transition:transform var(--t-base) var(--ease-out)}.button.feedback-next:hover svg{transform:translate(3px)}@media(prefers-reduced-motion:reduce){.feedback-icon{animation:none}}html[data-mode=kids]{--zoom: 1.08}html[data-largefont=true]{--zoom: 1.12}.app-shell:has(.play-page)>.sidebar,.app-shell:has(.play-page)>.bottom-nav,.app-shell:has(.play-page) .topbar,.app-shell:has(.play-page) .right-rail,.app-shell:has(.play-page) .app-footer{display:none}.app-shell:has(.play-page) .main-shell{margin:0;width:100%}.app-shell:has(.play-page) .content-wrap{display:block;max-width:none;margin:0;padding:0}.lesson-page.is-playing{position:relative;isolation:isolate;min-height:calc(100dvh / var(--zoom, 1))}.lesson-page.is-playing:after{content:"";position:fixed;left:0;right:0;bottom:0;height:min(22dvh,190px);z-index:-1;pointer-events:none;background:url(../images/welcome/felt-tall.webp) center bottom / cover no-repeat;-webkit-mask-image:linear-gradient(to top,#000 50%,transparent);mask-image:linear-gradient(to top,#000 50%,transparent)}@media(orientation:landscape){.lesson-page.is-playing:after{background-image:url(../images/welcome/felt-wide.webp);height:min(20dvh,170px)}}@media(max-height:740px){.lesson-page.is-playing:after{display:none}}[data-theme=dark] .lesson-page.is-playing:after{filter:var(--hills-filter)}.lesson-page.is-playing .lesson-top{background:var(--bg);-webkit-backdrop-filter:none;backdrop-filter:none;border-bottom:0}.lesson-page.is-playing .lesson-close{width:44px;height:44px;border-radius:var(--r-sm)}.lesson-page.is-playing .lesson-progress{display:flex;align-items:center;gap:12px;min-width:0}.lesson-pebbles{flex:1;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(8px,1fr);gap:4px;align-items:center;min-width:0;height:16px}.lesson-pebbles>span{position:relative;display:block;height:10px;border-radius:var(--r-pill);background:var(--border);overflow:hidden}.lesson-pebbles>span:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform var(--t-slow) var(--ease-out)}.lesson-pebbles>.is-done:after{transform:none}.lesson-pebbles>.is-current{transform:scaleY(1.5);animation:pebble-pop var(--t-slow) var(--ease-spring)}.lesson-pebbles>.is-current:after{transform:scaleX(.5)}@keyframes pebble-pop{0%{transform:scaleY(1)}55%{transform:scaleY(1.9)}}.lesson-page.is-playing .review-chip{margin-top:0}.lesson-page.is-playing .exercise-body{position:relative;z-index:1;flex:1;display:flex;flex-direction:column;gap:12px;max-width:560px;margin:0 auto;padding:4px 16px calc(16px + env(safe-area-inset-bottom))}.lesson-page.is-playing .exercise-stage{display:flex;flex-direction:column;gap:12px;flex:1 1 auto;min-height:0}.lesson-page.is-playing .exercise-answers{display:grid;gap:12px;align-content:start}.lesson-page.is-playing .exercise-dock{display:flex;flex-direction:column;justify-content:flex-end;gap:12px;min-height:var(--dock-h, 0)}.lesson-page.is-playing .exercise-body.has-sheet{--dock-h: 208px}@media(max-height:740px){.lesson-page.is-playing .exercise-body.has-sheet{--dock-h: 0px}}.lesson-page.is-playing .exercise-actions{margin:0;gap:12px}.lesson-page.is-playing .hint-text{margin:0}.lesson-page.is-playing .prompt-word{flex:1 1 auto;display:grid;place-items:center;min-height:120px;margin:0;padding:24px 20px}.lesson-page.is-playing .new-word{flex:1 1 auto;margin:0}.lesson-page.is-playing .exercise-note{margin:0}.lesson-page.is-playing .exercise-body.is-game .exercise-stage{flex:0 0 auto}.lesson-page.is-playing .exercise-body.is-game .exercise-answers{flex:1;align-content:stretch}.lesson-page.is-playing .exercise-body.is-game .game{height:100%}.lesson-page.is-playing .game .game-ru,.lesson-page.is-playing .game .tf-card,.lesson-page.is-playing .game .bubble-q,.lesson-page.is-playing .game .cloze-line{flex:1 1 auto}.lesson-page.is-playing .game .game-ru{display:grid;place-items:center}.lesson-page.is-playing .game .assemble-line{flex:0 0 auto}.lesson-page.is-playing .game .assemble-bank,.lesson-page.is-playing .game .cloze-options,.lesson-page.is-playing .game .bubble-replies,.lesson-page.is-playing .game .tf-buttons,.lesson-page.is-playing .game.memory .memory-grid{margin-top:auto}.lesson-page.is-playing .exercise-body:not(.is-game) .exercise-answers{margin-top:auto}.lesson-page.is-playing .button.feedback-next{min-height:64px}.lesson-page.is-playing .answer-feedback{position:static;margin:0 -16px calc(-16px - env(safe-area-inset-bottom));padding:16px 16px calc(16px + env(safe-area-inset-bottom));border-radius:var(--r-lg) var(--r-lg) 0 0;border-width:1.5px 0 0;box-shadow:0 -8px 28px #0f23191f}.ask{display:flex;align-items:flex-end;gap:4px;min-height:96px}.ask-bars{flex:none;width:88px;height:88px;margin-right:-2px}.ask-bars .bars-sprite{width:100%;height:100%}.cloud{position:relative;padding:14px 18px;border-radius:var(--r-lg);border-bottom-left-radius:var(--r-xs);background:var(--surface);color:var(--ink);box-shadow:0 10px 28px #0f231924}.ask-bubble{display:grid;flex:1 1 auto;min-width:0;margin-bottom:14px}.ask-bubble>*{grid-area:1 / 1;transition:opacity var(--t-quick) var(--ease-out)}.exercise-body .ask-task{margin:0;font-size:var(--fs-xl);font-weight:800;line-height:1.25;letter-spacing:-.01em}.ask-sub{margin:4px 0 0;font-size:var(--fs-md);line-height:1.35;color:var(--muted)}.ask-remark{margin:0;align-self:center;font-size:var(--fs-lg);font-weight:700;line-height:1.3;opacity:0}.ask-bubble.is-remark .ask-remark{opacity:1}.ask-bubble.is-remark .ask-line{opacity:0}[data-theme=dark] .cloud{box-shadow:0 10px 28px #0006}[data-mode=adult] .finish-bars,[data-mode=adult] .ask-bars{display:none}[data-mode=adult] .ask{min-height:0}[data-mode=adult] .ask-bubble,[data-mode=adult] .cloud{margin:0;padding:0;border-radius:0;background:none;box-shadow:none}[data-mode=adult] .exercise-body .ask-task{font-size:var(--fs-2xl)}@media(min-width:900px){.lesson-page.is-playing .lesson-top{padding-inline:max(24px,calc((100% - 1040px)/2))}.lesson-page.is-playing .exercise-body{--ctl-h: 72px;display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);grid-template-rows:minmax(0,1fr) auto;grid-template-areas:"stage answers" "dock dock";gap:16px 64px;max-width:1120px;padding:8px 40px 32px}.lesson-page.is-playing .exercise-stage{grid-area:stage;justify-content:center}.lesson-page.is-playing .exercise-answers{grid-area:answers;align-self:center;margin-top:0!important}.lesson-page.is-playing .exercise-dock{grid-area:dock;--dock-h: 88px}.lesson-page.is-playing .prompt-word,.lesson-page.is-playing .new-word{flex:0 0 auto;min-height:clamp(220px,38dvh,340px)}.lesson-page.is-playing .exercise-body.is-game,.lesson-page.is-playing .exercise-body.is-solo{grid-template-columns:minmax(0,1fr);grid-template-areas:"stage" "answers" "dock";grid-template-rows:auto minmax(0,1fr) auto;max-width:720px;gap:16px}.lesson-page.is-playing .exercise-body.is-solo .exercise-answers{display:none}.lesson-page.is-playing .exercise-body.is-game .exercise-answers{align-self:start}.lesson-page.is-playing .game .tf-card,.lesson-page.is-playing .game .bubble-q,.lesson-page.is-playing .game .cloze-line{min-height:200px}.lesson-page.is-playing .game .game-ru{min-height:100px}.ask{min-height:120px}.ask-bars{width:112px;height:112px}.lesson-page.is-playing .exercise-body .ask-task{font-size:var(--fs-2xl)}.ask-remark{font-size:var(--fs-xl)}.lesson-page.is-playing .exercise-dock .exercise-actions{flex-direction:row-reverse;align-items:center;justify-content:space-between}.lesson-page.is-playing .exercise-dock .exercise-actions .lesson-cta{width:auto;min-width:260px}.lesson-page.is-playing .answer-feedback{margin:0;padding:14px 20px;border-radius:var(--r-lg);border-width:1.5px;box-shadow:var(--shadow-lift)}.lesson-page.is-playing .answer-feedback .button.feedback-next{min-width:220px}}.lesson-finish{max-width:650px;margin:50px auto;text-align:center;padding:0 25px}.lesson-finish>.button{display:flex;width:100%;margin-top:25px}.finish-medallion{width:130px;height:130px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--accent-soft);color:var(--accent);margin:0 auto 25px;border:1px solid var(--accent-border);box-shadow:0 0 0 12px var(--soft)}.lesson-save{display:flex;flex-wrap:wrap;gap:10px 14px;align-items:center;justify-content:space-between;margin-top:20px;padding:14px 16px;text-align:left;border:1px solid var(--accent-border);border-radius:var(--r-sm);background:var(--accent-soft)}.lesson-save div{flex:1 1 200px;min-width:0}.lesson-save strong{display:block;font-size:var(--fs-md)}.lesson-save span{display:block;margin-top:2px;font-size:var(--fs-sm);line-height:1.45;color:var(--muted)}.lesson-page.is-finish{--hills: min(14dvh, 120px);position:relative;isolation:isolate;min-height:calc(100dvh / var(--zoom, 1))}.lesson-page.is-finish:after{content:"";position:absolute;left:0;right:0;bottom:0;height:var(--hills);z-index:-1;pointer-events:none;background:url(../images/welcome/felt-tall.webp) center bottom / cover no-repeat;-webkit-mask-image:linear-gradient(to top,#000 55%,transparent);mask-image:linear-gradient(to top,#000 55%,transparent)}@media(orientation:landscape){.lesson-page.is-finish{--hills: min(16dvh, 128px)}.lesson-page.is-finish:after{background-image:url(../images/welcome/felt-wide.webp)}}[data-theme=dark] .lesson-page.is-finish:after{filter:var(--hills-filter)}.lesson-page.is-finish .lesson-top{background:var(--bg);-webkit-backdrop-filter:none;backdrop-filter:none;border-bottom:0}.finish{position:relative;z-index:1;flex:1;display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:12px;width:100%;max-width:520px;margin:0 auto;padding:0 16px calc(var(--hills) + 8px + env(safe-area-inset-bottom));text-align:center}.finish-body{display:flex;flex-direction:column;gap:12px;min-width:0}.finish-body>*{animation:finish-rise var(--t-base) var(--ease-out) backwards}@keyframes finish-rise{0%{opacity:0;transform:translateY(12px)}}.finish-cheer{display:flex;flex-direction:column;align-items:center;gap:0}.finish-bars{width:200px;aspect-ratio:1;margin-top:-14px;animation:finish-rise var(--t-slow) var(--ease-out) backwards}.finish-bars .bars-sprite{width:100%;height:100%}.finish-cloud{position:relative;order:-1;width:100%;padding:12px 20px;border-radius:var(--r-lg);background:var(--surface);color:var(--ink);box-shadow:0 10px 28px #0f231924;animation:finish-rise var(--t-slow) var(--ease-out) 80ms backwards}.finish-cloud:after{content:"";position:absolute;left:50%;bottom:-9px;width:20px;height:20px;margin-left:-10px;border-bottom-right-radius:var(--r-xs);background:inherit;transform:rotate(45deg)}.finish-cloud h1{margin:0;font-size:var(--fs-3xl);line-height:1.15;letter-spacing:-.02em}.finish-cloud p{margin:4px 0 0;font-size:var(--fs-md);line-height:1.35;color:var(--muted)}[data-theme=dark] .finish-cloud{box-shadow:0 10px 28px #0006}.finish-done{margin:0;font-size:var(--fs-md);font-weight:700;color:var(--ink);animation-delay:80ms}.finish-words{display:grid;gap:8px;animation-delay:.14s}.finish-words-count{margin:0;font-size:var(--fs-md);font-weight:700;color:var(--muted)}.finish-words ul{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:0;padding:0;list-style:none}.finish-words li{display:grid;gap:1px;padding:6px 14px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface)}.finish-words li strong{font-size:var(--fs-lg);font-weight:800;line-height:1.2;color:var(--ink)}.finish-words li span{font-size:var(--fs-sm);line-height:1.25;color:var(--muted)}.finish-words-more{margin:0;font-size:var(--fs-sm);color:var(--muted)}.finish-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:12px 8px;border-radius:var(--r-lg);background:var(--surface);animation-delay:.14s}.finish-stats[data-cols="2"]{grid-template-columns:repeat(2,minmax(0,1fr))}.finish-stats[data-cols="1"]{grid-template-columns:minmax(0,1fr)}.finish-stats strong{display:block;font-size:var(--fs-3xl);line-height:1.1;letter-spacing:-.02em;color:var(--ink)}.finish-stats span{display:block;margin-top:2px;font-size:var(--fs-sm);line-height:1.3;color:var(--muted)}.finish-stats strong span{display:inline;margin:0;font:inherit;color:inherit}.finish .lesson-save{margin:0;animation-delay:.34s}.finish .new-badges{max-width:none;margin:0;text-align:left}.finish .new-badges small{font-size:var(--fs-sm)}.finish .new-badges.is-lead{justify-items:stretch}.finish .pet-card{width:100%;max-width:none}.finish-body>.lesson-cta{margin-top:4px;animation-delay:.26s}.finish-note{margin:0;font-size:var(--fs-sm);line-height:1.4;color:var(--muted)}.finish-quiet{display:flex;flex-direction:column;align-items:center;gap:0;animation-delay:.3s}.finish-quiet p{max-width:34ch;margin:0 0 4px;font-size:var(--fs-sm);line-height:1.4;color:var(--muted)}.finish-practice{display:flex;flex-direction:column;align-items:center}.finish-quiet-action{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 20px;border-radius:var(--r-pill);color:var(--accent);font-size:var(--fs-md);font-weight:800;text-decoration:none;transition:background-color var(--t-quick) var(--ease-out)}.finish-quiet-action:hover{background:var(--accent-soft)}.finish-quiet-action:focus-visible{outline:3px solid var(--accent);outline-offset:2px}@media(max-width:760px){.finish,.finish-body{gap:8px}.finish-bars{width:min(200px,15dvh);margin-top:-10px}.finish-cloud{padding:10px 16px}.finish-cloud h1{font-size:var(--fs-2xl)}.finish-words{gap:4px}.finish-words ul{gap:6px}.finish-words li{padding:4px 12px}.finish .new-badge-lead{padding:8px 14px}}@media(min-width:900px){.finish{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;align-content:center;column-gap:64px;max-width:1000px;padding-inline:40px}.finish-bars{width:300px;margin-top:-20px}.finish-cloud h1{font-size:var(--fs-4xl)}.finish-cloud p{font-size:var(--fs-lg)}.finish-quiet{flex-direction:row;flex-wrap:wrap;align-items:flex-start;justify-content:center;column-gap:8px}}@media(prefers-reduced-motion:reduce){.finish-body>*,.finish-bars,.finish-cloud,.new-badge-lead{animation:none}}.lesson-culture{max-width:650px;padding:0 25px;margin:40px auto}.lesson-culture img{border-radius:13px;max-height:260px;width:100%;object-fit:cover;margin-bottom:27px}.lesson-culture h1{font-size:30px;letter-spacing:-1px}.lesson-not-found{text-align:center;padding:100px 20px}.lesson-not-found h1{margin-bottom:25px}@media(max-width:760px){.lesson-culture{padding:0 22px}.lesson-culture h1{font-size:27px}.lesson-culture .button{white-space:normal}}.sidebar{position:fixed;inset:0 auto 0 0;z-index:20;display:flex;flex-direction:column;width:228px;padding:24px 16px 16px;border-right:1px solid var(--border);background:var(--surface)}.sidebar .brand{margin-bottom:28px;padding:0 8px}.sidebar nav{display:grid;gap:6px}.nav-item{position:relative;display:flex;align-items:center;gap:12px;min-height:52px;padding:0 14px;border-radius:var(--r-sm);color:var(--muted);font-size:var(--fs-md);font-weight:700;transition:background-color var(--t-quick) var(--ease-out),color var(--t-quick) var(--ease-out),transform var(--t-press) var(--ease-out)}.nav-item:active{transform:scale(.97)}@media(hover:hover){.nav-item:hover{background:var(--soft);color:var(--ink)}}.nav-item.active{background:var(--accent-soft);color:var(--accent);font-weight:800;box-shadow:inset 4px 0 0 var(--accent)}.sidebar-bottom{display:grid;gap:8px;margin-top:auto}.theme-button{display:flex;align-items:center;gap:12px;width:100%;min-height:48px;padding:0 14px;border-radius:var(--r-sm);color:var(--muted);font-size:var(--fs-sm);font-weight:700;transition:background-color var(--t-quick) var(--ease-out),transform var(--t-press) var(--ease-out)}.theme-button:active,.sidebar-profile:active{transform:scale(.97)}@media(hover:hover){.theme-button:hover,.sidebar-profile:hover{background:var(--soft)}}.sidebar-profile{display:flex;align-items:center;gap:10px;min-height:56px;padding:8px 10px;border-top:1px solid var(--border);border-radius:var(--r-sm);transition:background-color var(--t-quick) var(--ease-out),transform var(--t-press) var(--ease-out)}.sidebar-profile strong{display:block;max-width:120px;overflow:hidden;font-size:var(--fs-sm);text-overflow:ellipsis;white-space:nowrap}.sidebar-profile small{color:var(--muted);font-size:var(--fs-sm)}@media(max-width:1190px){.sidebar{width:205px;padding-inline:12px}}@media(min-width:761px)and (max-width:899px){.sidebar{align-items:stretch;width:104px;padding:20px 8px 12px}.main-shell{margin-left:104px;width:calc(100% - 104px)}.sidebar .brand{justify-content:center;padding:0}.sidebar .brand>span:last-child,.theme-button span,.sidebar-profile div{display:none}.nav-item{flex-direction:column;justify-content:center;gap:4px;padding:8px 2px;font-size:var(--fs-sm);text-align:center}.nav-item.active{box-shadow:inset 0 -4px 0 var(--accent)}.theme-button,.sidebar-profile{justify-content:center;padding:0}}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:72px;padding:8px 32px;background:var(--bg)}.mobile-brand{display:none}.topbar-actions{display:flex;align-items:center;gap:12px}.streak-pill{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:0 14px;border-radius:var(--r-pill);background:var(--soft);color:var(--ink);font-size:var(--fs-sm);font-weight:800}.streak-pill>svg{color:#a3673f}[data-theme=dark] .streak-pill>svg{color:var(--gold)}.global-search-field{min-height:48px;border-radius:var(--r-sm)}.global-search-field input,.global-search-copy strong,.global-search-heading,.global-search-hint,.global-search-copy small,.global-search-empty span{font-size:var(--fs-sm)}.global-search-panel{border-radius:var(--r-md)}.global-search-result{border-radius:var(--r-sm)}.rail-card{border-radius:var(--r-md)}.height-line,.rail-footnote,.week-days>div,.word-of-day>.tiny-label,.word-of-day .text-link,.local-note,.app-footer{font-size:var(--fs-sm)}.bottom-nav{display:none}@media(max-width:760px){.sidebar{display:none}.topbar{position:relative;justify-content:flex-start;gap:10px;min-height:64px;padding:8px 16px}.mobile-brand{display:block;flex:none}.topbar .brand{font-size:24px}.mobile-brand{margin-right:auto}.global-search{position:static;flex:none;width:48px;margin:0}.global-search-field{position:relative;justify-content:center;width:48px;padding:0}.global-search-field input{position:absolute;top:0;right:0;bottom:0;left:0;padding:0;opacity:0}.global-search-field:focus-within{position:absolute;inset:8px 12px auto;z-index:31;justify-content:flex-start;width:auto;padding:0 12px 0 15px}.global-search-field:focus-within input{position:static;padding:10px 0;opacity:1}.global-search-panel{left:12px;right:12px;z-index:30;width:auto}.topbar-actions{flex:none;gap:8px}.streak-pill{padding:0 12px}.bottom-nav{position:fixed;inset:auto 0 0;z-index:30;display:grid;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;padding:6px 4px calc(6px + env(safe-area-inset-bottom));border-top:1px solid var(--border);background:var(--surface);box-shadow:0 -6px 20px #0f231914}[data-theme=dark] .bottom-nav{box-shadow:0 -6px 20px #00000059}.bottom-nav a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-width:0;min-height:60px;border-radius:var(--r-sm);color:var(--muted);font-size:var(--fs-sm);font-weight:700;line-height:1.15;transition:transform var(--t-press) var(--ease-out)}.bottom-nav a:active{transform:scale(.97)}.bn-icon{display:grid;place-items:center;width:56px;height:32px;border-radius:var(--r-pill);transition:background-color var(--t-quick) var(--ease-out)}.bottom-nav a.active{color:var(--accent);font-weight:800}.bottom-nav a.active .bn-icon{background:var(--accent-soft);box-shadow:inset 0 0 0 2px var(--accent)}}@media(max-width:400px){.bottom-nav a{font-size:12px}}.is-work .sidebar{padding:20px 12px 12px}.is-work .sidebar .brand{margin-bottom:20px}.is-work .nav-item{min-height:48px;font-size:var(--fs-sm)}.work-switch{display:flex;align-items:center;gap:10px;min-height:48px;padding:0 12px;border:1px solid var(--accent-border);border-radius:var(--r-sm);color:var(--accent);font-size:var(--fs-sm);font-weight:700;line-height:1.25;transition:background-color var(--t-quick) var(--ease-out),transform var(--t-press) var(--ease-out)}.work-switch:active{transform:scale(.97)}@media(hover:hover){.work-switch:hover{background:var(--accent-soft)}}.is-work .topbar{min-height:56px;padding:6px 32px;border-bottom:1px solid var(--border);background:var(--surface)}.work-context{color:var(--muted);font-size:var(--fs-sm);font-weight:700}.work-theme{display:none}.is-work .content-wrap{max-width:1120px;padding:28px 32px 24px}.is-work .app-footer{max-width:1120px}.content-wrap.no-rail{grid-template-columns:minmax(0,1fr)}.content-wrap.no-rail .right-rail{display:none}@media(min-width:761px)and (max-width:899px){.work-switch{flex-direction:column;justify-content:center;gap:4px;padding:6px 2px;text-align:center}.is-work .sidebar-profile svg{flex:none}}@media(max-width:1190px){.is-work .content-wrap{max-width:none;padding:24px}}@media(max-width:760px){.is-work .topbar{padding:6px 16px}.is-work .work-context{display:none}.is-work .work-theme{display:inline-flex}.is-work .content-wrap{display:block;padding:20px 16px 16px}.is-work .app-footer{padding:10px 16px 100px}}.consent-note{font-size:var(--fs-sm)}.consent-note a{display:inline-flex;align-items:center;min-height:44px}.home-hero{--hills: 96px;--bleed: 0px;position:relative;isolation:isolate;display:grid;gap:14px;margin-bottom:0;padding-bottom:calc(var(--hills) * .55)}.home-hero>*{width:100%;max-width:560px;margin-inline:auto}.home-hero:after{content:"";position:absolute;inset:auto calc(-1 * var(--bleed)) 0;z-index:-1;height:var(--hills);pointer-events:none;background:url(../images/welcome/felt-tall.webp) center bottom / cover no-repeat;-webkit-mask-image:linear-gradient(to top,#000 25%,transparent),linear-gradient(to right,transparent,#000 22%,#000 78%,transparent);mask-image:linear-gradient(to top,#000 25%,transparent),linear-gradient(to right,transparent,#000 22%,#000 78%,transparent);-webkit-mask-composite:source-in;mask-composite:intersect}@media(orientation:landscape){.home-hero:after{background-image:url(../images/welcome/felt-wide.webp)}}@media(max-width:760px){.home-hero{--bleed: 22px}}[data-theme=dark] .home-hero:after{filter:var(--hills-filter)}.home-hero .ask-task{margin:0;font-size:var(--fs-xl);font-weight:800;line-height:1.25;letter-spacing:-.01em}.home-hero .ask-bars{animation:finish-rise var(--t-slow) var(--ease-out) backwards}.home-hero .ask-bubble{animation:finish-rise var(--t-slow) var(--ease-out) 80ms backwards}.home-go{min-height:72px;padding:10px 20px}.home-go-text{display:grid;flex:1;min-width:0;text-align:left}.home-go-text small{overflow:hidden;font-size:var(--fs-sm);font-weight:600;text-overflow:ellipsis;white-space:nowrap}.home-extras{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.home-tile{display:flex;align-items:center;gap:10px;min-height:56px;padding:8px 14px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface);color:var(--ink);font-size:var(--fs-sm);font-weight:700;line-height:1.25;transition:transform var(--t-press) var(--ease-out),background-color var(--t-quick) var(--ease-out),border-color var(--t-quick) var(--ease-out)}.home-tile>svg{flex:none;color:var(--accent)}.home-tile.has-due{border-color:var(--accent-border);background:var(--accent-soft)}.home-tile:active{transform:scale(.97)}@media(hover:hover){.home-tile:hover{border-color:var(--accent)}}.home-dock{position:sticky;bottom:calc(84px + env(safe-area-inset-bottom));z-index:35;max-width:560px;margin-inline:auto;padding-block:8px}.home-dock{isolation:isolate}.home-dock:before{content:"";position:absolute;top:-40px;right:-28px;bottom:0;left:-28px;z-index:-1;pointer-events:none;background:radial-gradient(ellipse 62% 100% at 50% 100%,color-mix(in srgb,var(--bg) 92%,transparent) 55%,transparent)}.home-dock .home-go{width:100%;min-height:64px;box-shadow:var(--shadow-lift)}@media(min-width:761px){.home-dock{bottom:16px}}.curriculum-progress,.module-kicker,.module-header p,.lesson-row-copy strong,.lesson-row-copy small,.lesson-index,.discovery-card h3,.discovery-card .tiny-label,.discovery-card .text-link,.discovery-number,.closing-note,.section-title .text-link,.today-count,.today-note,.quest-hint,.today-extra-copy>span,.level-complete .eyebrow{font-size:var(--fs-sm)}.module,.quests,.discovery-card,.level-complete,.guest-save{border-radius:var(--r-md)}.lesson-row .button-small{border-radius:var(--r-sm)}.words{display:grid;gap:16px;width:100%;max-width:720px;margin-inline:auto}.words>*{min-width:0}.screen-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.screen-head h1{margin:0;font-size:var(--fs-3xl);font-weight:800;line-height:1.15;letter-spacing:-.02em;overflow-wrap:anywhere}.screen-head p{margin:2px 0 0;color:var(--muted);font-size:var(--fs-md);line-height:1.35}@media(min-width:900px){.screen-head h1{font-size:var(--fs-4xl)}}.words-go{min-height:56px}.words-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;border-radius:var(--r-md);background:var(--soft)}.words-tabs button{min-height:48px;border-radius:var(--r-sm);color:var(--muted);font-size:var(--fs-md);font-weight:700;transition:background-color var(--t-quick) var(--ease-out),color var(--t-quick) var(--ease-out),transform var(--t-press) var(--ease-out)}.words-tabs button.active{background:var(--surface);color:var(--accent);font-weight:800;box-shadow:0 2px 8px #0f23191a}.words-tabs button:active,.words-chips button:active{transform:scale(.97)}.words-tabs button:focus-visible,.words-chips button:focus-visible,.words-search input:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.words-search{margin:0;min-height:56px;gap:12px;padding:0 16px;border-radius:var(--r-md)}.words-search input{padding:14px 0;font-size:var(--fs-md)}.words-chips{display:flex;flex-wrap:wrap;gap:8px}.words-chips button{min-height:44px;padding:0 16px;border:1px solid var(--border);border-radius:var(--r-pill);background:var(--surface);color:var(--ink);font-size:var(--fs-sm);font-weight:700;transition:background-color var(--t-quick) var(--ease-out),transform var(--t-press) var(--ease-out)}.words-chips button.active{border-color:var(--accent);background:var(--accent);color:var(--on-accent)}.words-themes{display:grid;gap:16px}.words-theme-head{display:grid;gap:10px}.words-learn{min-height:48px;border-radius:var(--r-md);font-size:var(--fs-md);white-space:normal}.words-note{color:var(--muted);font-size:var(--fs-sm);line-height:1.45}.words-list{display:grid;gap:8px;animation:finish-rise var(--t-base) var(--ease-out) backwards}.word-card{display:flex;align-items:center;gap:12px;min-height:64px;padding:12px 16px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface)}.word-card>div{min-width:0;overflow-wrap:anywhere}.word-card strong{display:block;font-size:var(--fs-xl);font-weight:800;line-height:1.25;letter-spacing:-.01em}.word-card div>span{display:block;margin-top:2px;color:var(--muted);font-size:var(--fs-md);line-height:1.3}.word-known{display:grid;flex:none;place-items:center;width:36px;height:36px;margin-left:auto;border-radius:50%;background:var(--accent-soft);color:var(--accent)}[data-mode=adult] .words-tabs,[data-mode=adult] .word-card{border-radius:var(--r-sm)}@media(min-width:900px){.words{gap:20px}.words-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.words-theme-head{grid-template-columns:1fr 1fr}.words-note{grid-column:1 / -1}}.quiz-pick{display:grid;gap:16px;width:100%;max-width:720px;margin-inline:auto}.quiz-sets{display:grid;gap:12px}.quiz-set{display:flex;align-items:center;gap:16px;min-height:88px;padding:14px 18px;border:1.5px solid var(--border);border-radius:var(--r-md);background:var(--surface);color:var(--ink);text-align:left;transition:transform var(--t-press) var(--ease-out),border-color var(--t-quick) var(--ease-out)}.quiz-set .summary-icon{display:grid;flex:none;place-items:center;width:52px;height:52px;margin:0;border-radius:var(--r-sm);background:var(--accent-soft)}.quiz-set-text{display:grid;flex:1;min-width:0;gap:2px}.quiz-set-text strong{font-size:var(--fs-xl);font-weight:800}.quiz-set-text span{color:var(--muted);font-size:var(--fs-md);line-height:1.35}.quiz-set>svg:last-child{flex:none;color:var(--accent)}.quiz-set:active:not(:disabled){transform:scale(.97)}@media(hover:hover){.quiz-set:hover:not(:disabled){border-color:var(--accent)}}.quiz-set:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.quiz-set:disabled{opacity:.7}@media(min-width:900px){.quiz-sets{grid-template-columns:1fr 1fr}}.content-wrap:has(.talk){grid-template-columns:minmax(0,1fr);max-width:1160px;padding-bottom:16px}.content-wrap:has(.talk)>.right-rail{display:none}.talk{--talk-chrome: 150px;position:relative;display:flex;flex-direction:column;gap:12px;width:100%;max-width:760px;height:calc(100dvh / var(--zoom, 1) - var(--talk-chrome));min-height:420px;margin-inline:auto}@media(max-width:760px){.talk{--talk-chrome: calc(176px + env(safe-area-inset-bottom)) }}.talk>*{flex:none;min-width:0}.chat-clear{flex:none;display:grid;place-items:center;width:48px;height:48px;border-radius:50%;color:var(--muted);transition:background-color var(--t-quick) var(--ease-out),transform var(--t-press) var(--ease-out)}.chat-clear:active{transform:scale(.97)}@media(hover:hover){.chat-clear:hover{background:var(--soft);color:var(--ink)}}.talk-confirm{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:12px 16px;border-radius:var(--r-md);background:var(--soft)}.talk-confirm p{flex:1 1 240px;font-size:var(--fs-md);line-height:1.4}.talk-log{flex:1 1 auto;display:flex;flex-direction:column;gap:12px;min-height:0;padding:4px 2px 12px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scroll-behavior:smooth}.talk-log>*{flex:none}.talk-start{display:grid;gap:12px}.talk-prompt{font-size:var(--fs-lg);font-weight:800}.talk-chips{display:flex;flex-wrap:wrap;gap:10px}.talk-chips button{min-height:52px;padding:0 20px;border:1.5px solid var(--accent-border);border-radius:var(--r-pill);background:var(--surface);color:var(--ink);font-size:var(--fs-md);font-weight:700;transition:background-color var(--t-quick) var(--ease-out),transform var(--t-press) var(--ease-out)}.talk-chips button:active:not(:disabled){transform:scale(.97)}@media(hover:hover){.talk-chips button:hover:not(:disabled){background:var(--accent-soft)}}.talk-examples{flex-wrap:nowrap;padding:2px 2px 6px;overflow-x:auto;scroll-snap-type:x proximity;-webkit-mask-image:linear-gradient(to right,#000 calc(100% - 32px),transparent);mask-image:linear-gradient(to right,#000 calc(100% - 32px),transparent)}.talk-examples button{flex:none;min-height:48px;scroll-snap-align:start;white-space:nowrap}.talk-me,.talk-bot{max-width:100%;font-size:var(--fs-md);line-height:1.5}.talk-me>p,.talk-bot>p{white-space:pre-wrap;overflow-wrap:anywhere}.talk-me{align-self:flex-end;max-width:88%;padding:12px 16px;border-radius:var(--r-lg);border-bottom-right-radius:var(--r-xs);background:var(--accent-soft);color:var(--ink)}.talk-bot{align-self:flex-start;width:fit-content}h2.talk-bot{font-size:var(--fs-xl);font-weight:800;line-height:1.25}[data-mode=adult] .talk-bot{width:auto}.talk-thinking p{display:flex;gap:6px;padding:6px 2px}.talk-thinking i{width:10px;height:10px;border-radius:50%;background:var(--muted);animation:talk-dot 1s var(--ease-in-out) infinite}.talk-thinking i:nth-child(2){animation-delay:.15s}.talk-thinking i:nth-child(3){animation-delay:.3s}@keyframes talk-dot{0%,to{opacity:.35;transform:scale(.8)}50%{opacity:1;transform:scale(1)}}.assistant-word-results{margin-top:8px}.assistant-vocab{display:grid;margin:0;padding:0;list-style:none}.assistant-vocab>li{display:flex;align-items:center;gap:12px;min-width:0;min-height:60px;padding:6px 0;border-top:1px solid var(--border)}.assistant-word-pair{flex:1;min-width:0}.assistant-word-pair strong{display:block;font-size:var(--fs-xl);font-weight:800;line-height:1.25;overflow-wrap:anywhere}.assistant-word-pair>span{display:block;color:var(--muted);font-size:var(--fs-md);line-height:1.3;overflow-wrap:anywhere}.assistant-word-add,.assistant-word-saved{display:grid;flex:none;place-items:center;width:48px;height:48px;border-radius:50%;color:var(--accent)}.assistant-word-add{border:1.5px solid var(--accent-border);background:var(--accent-soft);transition:transform var(--t-press) var(--ease-out)}.assistant-word-add:active{transform:scale(.97)}.assistant-word-tools{display:flex;flex-wrap:wrap;align-items:flex-start;gap:4px 20px;font-size:var(--fs-sm);color:var(--muted)}.assistant-more-words{min-height:44px;color:var(--accent);font-size:var(--fs-sm);font-weight:700;text-decoration:underline;text-underline-offset:4px}.assistant-sources{flex:1 1 180px;min-width:0}.assistant-sources summary{display:flex;align-items:center;min-height:44px;cursor:pointer;font-size:var(--fs-sm)}.assistant-sources ul{margin:0;padding:0 0 8px;list-style:none;font-size:var(--fs-sm);line-height:1.5}.assistant-sources li{padding:3px 0;overflow-wrap:anywhere}.assistant-sources strong{color:var(--ink)}.chat-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.talk-quiz{display:grid;gap:12px}.talk-quiz-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;font-size:var(--fs-md);font-weight:800}.quiz-options{display:grid;gap:10px}.quiz-options button{min-height:56px;padding:8px 16px;border:1.5px solid var(--border);border-radius:var(--r-md);background:var(--surface);color:var(--ink);font-size:var(--fs-lg);font-weight:700;overflow-wrap:anywhere;transition:background-color var(--t-quick) var(--ease-out),border-color var(--t-quick) var(--ease-out),transform var(--t-press) var(--ease-out)}.quiz-options button:active:not(:disabled){transform:scale(.97)}@media(hover:hover){.quiz-options button:hover:not(:disabled){border-color:var(--accent)}}.quiz-options button:disabled{opacity:.6}.quiz-options button.right,.quiz-options button.wrong{opacity:1}.quiz-options button.right{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.quiz-options button.wrong{background:var(--soft)}.quiz-feedback{display:grid;gap:10px;animation:finish-rise var(--t-base) var(--ease-out) backwards}.quiz-feedback p{font-size:var(--fs-lg);font-weight:800}.talk-note{display:flex;align-items:flex-start;gap:8px;margin-top:4px;color:var(--muted);font-size:var(--fs-sm);line-height:1.45}.talk-note svg{flex:none;margin-top:1px}.talk-latest{align-self:center;position:relative;z-index:2;min-height:44px;margin-top:-64px;padding:0 18px;border:1px solid var(--border);border-radius:var(--r-pill);background:var(--surface);color:var(--accent);font-size:var(--fs-sm);font-weight:700;box-shadow:var(--shadow-lift)}.talk-form{display:flex;align-items:flex-end;gap:8px;padding:6px;border:1.5px solid var(--border);border-radius:var(--r-lg);background:var(--surface);transition:border-color var(--t-quick) var(--ease-out)}.talk-form:focus-within{border-color:var(--accent);outline:3px solid var(--accent);outline-offset:2px}.talk-form textarea{flex:1;width:100%;min-width:0;min-height:48px;max-height:130px;padding:12px 8px;border:0;outline:0;background:none;color:var(--ink);font:inherit;font-size:var(--fs-md);line-height:1.4;resize:none}.talk-form textarea::placeholder{color:var(--muted)}.talk-bulb,.talk-form .talk-send{display:grid;flex:none;place-items:center;width:48px;min-width:48px;height:48px;min-height:48px;padding:0;border-radius:var(--r-sm)}.talk-bulb{color:var(--accent);transition:background-color var(--t-quick) var(--ease-out),transform var(--t-press) var(--ease-out)}.talk-bulb[aria-expanded=true]{background:var(--accent-soft)}.talk-bulb:active{transform:scale(.97)}.talk .button:not(.lesson-cta):not(.talk-send){min-height:48px;padding:8px 18px;border-radius:var(--r-sm);font-size:var(--fs-md);white-space:normal}.talk .button:not(.lesson-cta):hover{transform:none}.talk .button-outline{border-width:1.5px}.talk button:focus-visible,.talk summary:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.talk-form textarea:focus-visible{outline:0}@media(min-width:900px){.quiz-options{grid-template-columns:1fr 1fr}}@media(prefers-reduced-motion:reduce){.talk-log{scroll-behavior:auto}}.content-wrap:has(.profile){grid-template-columns:minmax(0,1fr);max-width:1120px}.content-wrap:has(.profile)>.right-rail{display:none}.profile{display:grid;gap:20px;width:100%;max-width:760px;margin-inline:auto}.profile>*,.profile-panel>*{min-width:0}.profile-heading{margin:0 0 12px;font-size:var(--fs-xl);font-weight:800;letter-spacing:-.01em}.profile-card{--hills: 96px;position:relative;isolation:isolate;display:grid;gap:16px;color:var(--ink)}.profile-card:not(.is-compact){padding-bottom:calc(var(--hills) * .5)}.profile-card:not(.is-compact):after{content:"";position:absolute;inset:auto -16px 0;z-index:-1;height:var(--hills);pointer-events:none;background:url(../images/welcome/felt-tall.webp) center bottom / cover no-repeat;-webkit-mask-image:linear-gradient(to top,#000 25%,transparent),linear-gradient(to right,transparent,#000 22%,#000 78%,transparent);mask-image:linear-gradient(to top,#000 25%,transparent),linear-gradient(to right,transparent,#000 22%,#000 78%,transparent);-webkit-mask-composite:source-in;mask-composite:intersect}@media(orientation:landscape){.profile-card:not(.is-compact):after{background-image:url(../images/welcome/felt-wide.webp)}}[data-theme=dark] .profile-card:after{filter:var(--hills-filter)}.profile-head{display:flex;align-items:center;gap:14px;min-width:0;padding:14px 18px;border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow-lift)}.profile-card .avatar.large{flex:none;width:64px;height:64px;border-radius:var(--r-sm)}.profile-who{flex:1;min-width:0}.profile-card h1{margin:0;font-size:var(--fs-2xl);font-weight:800;line-height:1.2;letter-spacing:-.01em;overflow-wrap:anywhere}.profile-card h1:focus{outline:none}.profile-meta{display:flex;flex-wrap:wrap;column-gap:6px}.profile-meta span,.profile-meta b{font-weight:400;white-space:nowrap}.profile-meta b{flex-basis:100%}.profile-meta span:not(:last-child):after{content:" ·"}.profile-who p{margin:2px 0 0;font-size:var(--fs-md);line-height:1.35;color:var(--muted)}.profile-edit{flex:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;width:48px;height:48px;padding:0;border:1.5px solid var(--border);border-radius:var(--r-sm);background:var(--surface);color:var(--accent);font-size:var(--fs-sm);font-weight:700;cursor:pointer;transition:transform var(--t-press) var(--ease-out),border-color var(--t-quick) var(--ease-out)}.profile-edit span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.profile-edit:active{transform:scale(.96)}@media(hover:hover){.profile-edit:hover{border-color:var(--accent)}}.profile-edit:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.profile-card .pet-card{flex-direction:column;gap:8px;margin:0;padding:0;border:0;background:none;text-align:center}.profile-card .pet-art{width:clamp(150px,46vw,200px);height:clamp(150px,46vw,200px)}.profile-card .pet-copy{align-items:center;flex:none;width:100%;max-width:360px}.profile-card .pet-copy strong{font-size:var(--fs-xl);font-weight:800}.profile-card .progress-track{width:100%}.profile-card .pet-phrase,.profile-card .pet-growth{display:grid;align-content:start;min-height:3em;font-size:var(--fs-md);line-height:1.5}.profile-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.profile-stats>div{display:grid;align-content:start;justify-items:center;gap:2px;padding:12px 8px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface);text-align:center}.profile-stats strong{font-size:var(--fs-2xl);font-weight:800;line-height:1.2}.profile-stats span{font-size:var(--fs-sm);line-height:1.3;color:var(--muted);overflow-wrap:anywhere}[data-mode=adult] .profile-card:after{display:none}[data-mode=adult] .profile-card:not(.is-compact){padding-bottom:0}[data-mode=adult] .profile-head{padding:0;border:0;border-radius:0;background:none;box-shadow:none}.profile-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:4px;border-radius:var(--r-md);background:var(--soft)}.profile-tabs button{position:relative;min-height:52px;padding:0 4px;border-radius:var(--r-sm);color:var(--muted);font-size:var(--fs-md);font-weight:700;transition:background-color var(--t-quick) var(--ease-out),color var(--t-quick) var(--ease-out),transform var(--t-press) var(--ease-out)}.profile-tabs button:after{content:"";position:absolute;left:24%;right:24%;bottom:7px;height:3px;border-radius:var(--r-pill);background:var(--accent);transform:scaleX(0);transition:transform var(--t-base) var(--ease-out)}.profile-tabs button.active{background:var(--surface);color:var(--accent);font-weight:800;box-shadow:0 2px 8px #0f23191a}.profile-tabs button.active:after{transform:none}.profile-tabs button:active{transform:scale(.97)}.profile-tabs button:focus-visible{outline:3px solid var(--accent);outline-offset:2px}@media(max-width:420px){.profile-tabs button{font-size:var(--fs-sm)}}.profile-panel{display:grid;gap:20px;align-content:start}.badge-next{display:flex;align-items:center;gap:16px;padding:18px;border:1.5px dashed var(--accent-border);border-radius:var(--r-md)}.badge-next .badge-icon{flex:none;width:72px;height:72px;margin:0}.badge-next>div{display:grid;gap:2px;min-width:0}.badge-next strong{font-size:var(--fs-xl);line-height:1.25}.badge-next p{margin:0;font-size:var(--fs-md);line-height:1.35;color:var(--ink)}.badge-next .badge-left{font-weight:800;color:var(--accent)}.badge-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1fr;gap:10px;margin:0;padding:0;list-style:none}.badge{display:flex;flex-direction:column;align-items:center;gap:4px;padding:16px 10px;border:1.5px dashed var(--border);border-radius:var(--r-md);background:none;text-align:center}.badge-icon{display:grid;place-items:center;width:56px;height:56px;margin-bottom:6px;border-radius:50%;background:var(--soft);color:var(--subtle)}.badge strong{font-size:var(--fs-md);line-height:1.25;color:var(--ink)}.badge-state{display:inline-flex;align-items:center;gap:4px;font-size:var(--fs-sm);font-weight:700;color:var(--muted)}.badge p{margin:0;font-size:var(--fs-sm);line-height:1.4;color:var(--muted)}.badge.earned{border-style:solid;border-color:var(--accent-border);background:var(--accent-soft)}.badge.earned .badge-icon{background:var(--accent);color:var(--on-accent);box-shadow:0 0 0 3px var(--accent-soft),0 0 0 5px var(--gold)}.badge.earned .badge-state{color:var(--accent)}@media(min-width:560px){.badge-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(min-width:900px){.badge-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.profile-all{min-height:52px;width:100%;font-size:var(--fs-md)}.profile .settings-panel{margin:0;padding:18px;border-radius:var(--r-md)}.profile .backpack-grid li{font-size:var(--fs-sm)}.guest-save{position:relative;display:flex;flex-wrap:wrap;gap:12px 20px;align-items:center;justify-content:space-between;margin-bottom:16px;padding:16px 18px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md)}.profile .guest-save{margin:0}.guest-save:has(.guest-save-close){padding-right:56px}.guest-save-text{display:grid;gap:2px;flex:1 1 280px;min-width:0}.guest-save-text strong{font-size:var(--fs-md)}.guest-save-text span{font-size:var(--fs-sm);line-height:1.4;color:var(--muted)}.guest-save-actions{display:flex;flex-wrap:wrap;gap:8px}.guest-save-actions .button{min-height:48px;font-size:var(--fs-sm)}.guest-save-close{position:absolute;top:4px;right:4px}.guest-save-close.icon-button{width:48px;height:48px;color:var(--muted);background:none;border:0;box-shadow:none}.guest-save-close.icon-button:hover{color:var(--ink);background:var(--soft)}.profile-settings{gap:24px}.settings-group{display:grid;align-content:start}.settings-list{padding:0 16px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface)}.setting{display:flex;align-items:center;gap:14px;min-height:68px;padding:12px 0}.settings-list>:not(:first-child):is(.setting,.setting-block,.data-actions){border-top:1px solid var(--border)}.setting-icon{display:grid;flex:none;place-items:center;width:40px;height:40px;border-radius:var(--r-sm);background:var(--accent-soft);color:var(--accent)}.setting-copy{display:block;flex:1;min-width:0}.setting-copy strong,.setting-block strong{display:block;font-size:var(--fs-md);font-weight:700;line-height:1.3}.setting-copy small,.setting-block small{display:block;margin-top:2px;font-size:var(--fs-sm);line-height:1.4;color:var(--muted)}.setting-select{flex:none;width:auto;max-width:180px;min-height:48px;font-size:var(--fs-md)}.setting-with-select{flex-wrap:wrap}@media(max-width:480px){.setting-with-select{padding-bottom:14px}.setting-with-select .setting-copy{flex-basis:calc(100% - 54px)}.setting-with-select .setting-select{width:100%;max-width:none}}.setting-block{padding:14px 0}.setting-block .mode-picker{margin-top:12px}.setting-block .mode-card{min-height:56px;padding:14px}.setting-block .mode-card strong{font-size:var(--fs-md)}.setting-block .mode-card small{font-size:var(--fs-sm)}.setting-toggle,.setting-action{width:100%;background:none;color:var(--ink);text-align:left;cursor:pointer}.setting-toggle:focus-visible,.setting-action:focus-visible{outline:3px solid var(--accent);outline-offset:-3px;border-radius:var(--r-sm)}.switch{position:relative;flex:none;width:52px;height:32px;border-radius:var(--r-pill);background:var(--subtle);transition:background-color var(--t-quick) var(--ease-out)}.switch>span{position:absolute;top:4px;left:4px;width:24px;height:24px;border-radius:50%;background:var(--surface);transition:transform var(--t-quick) var(--ease-out)}.switch.checked{background:var(--accent)}.switch.checked>span{transform:translate(20px)}.setting-toggle:active .switch>span{transform:scale(.9)}.setting-toggle:active .switch.checked>span{transform:translate(20px) scale(.9)}.setting-go{flex:none;color:var(--muted);transition:transform var(--t-quick) var(--ease-out)}@media(hover:hover){.setting-action:hover .setting-go{transform:translate(3px)}.setting-toggle:hover .setting-copy strong,.setting-action:hover .setting-copy strong{color:var(--accent)}}.setting-action:active{background:var(--soft)}.setting-status{display:flex;align-items:flex-start;gap:14px;margin:0;padding:14px 0;font-size:var(--fs-md);line-height:1.5;color:var(--muted)}.setting-status svg{flex:none;margin-top:2px;color:var(--accent)}.settings-list .data-actions{margin:0;padding:14px 0;gap:10px}.settings-list .data-actions .button{flex:1 1 180px;min-height:52px;font-size:var(--fs-md)}.setting-done{display:flex;align-items:center;gap:8px;margin:0;padding:10px 0;font-size:var(--fs-sm);font-weight:700;color:var(--accent)}.settings-list .pair-feedback{margin:0;padding:10px 0;font-size:var(--fs-sm)}.settings-danger{padding:0 16px}.settings-danger .setting{border:0}.setting-action.is-danger strong,.setting-action.is-danger .setting-icon{color:var(--danger)}.setting-action.is-danger .setting-icon{background:none}.field-label{display:block;margin:20px 0 9px;font-size:var(--fs-sm);font-weight:700}.inline-form{display:flex;gap:10px}.inline-form .input{min-height:48px;font-size:var(--fs-md)}.inline-form .button{min-height:48px}.pet-card{display:flex;align-items:center;gap:18px;margin:0 0 20px;padding:18px 20px;border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);text-align:left}.pet-art{width:104px;height:104px;flex-shrink:0}.pet-touch{display:block;width:100%;height:100%;padding:0;border:0;border-radius:var(--r-lg);background:none;cursor:pointer;touch-action:manipulation;will-change:transform;transform-style:preserve-3d}.pet-touch:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.pet-copy{display:flex;flex:1;flex-direction:column;gap:8px;min-width:0}.pet-copy strong{font-size:var(--fs-xl)}.pet-phrase{margin:0;font-weight:700;color:var(--accent)}.pet-growth{margin:0;font-size:var(--fs-sm);color:var(--muted)}.pet-new{align-self:flex-start;padding:2px 10px;border-radius:var(--r-pill);background:var(--accent);color:var(--on-accent);font-size:var(--fs-sm);font-weight:800;animation:badge-pop var(--dur-slow) var(--ease-spring) .3s backwards}.pet-art.celebrate{animation:pet-celebrate .9s var(--ease-out) .3s 2}@media(max-width:760px){.pet-art{width:84px;height:84px}}@media(min-width:900px){.profile{max-width:880px;gap:24px}.profile-card:not(.is-compact){grid-template-columns:240px minmax(0,1fr);grid-template-areas:"pet head" "pet stats";align-items:center;column-gap:32px}.profile-card .profile-head{grid-area:head;align-self:end}.profile-card .pet-card{grid-area:pet;grid-row:1 / 3}.profile-card .profile-stats{grid-area:stats;align-self:start}.profile-card .pet-art{width:220px;height:220px}.profile-edit{width:auto;padding:0 16px}.profile-edit span{position:static;width:auto;height:auto;overflow:visible;clip-path:none}.profile-card h1{font-size:var(--fs-3xl)}.settings-list{padding-inline:24px}}@media(prefers-reduced-motion:reduce){.profile-tabs button:after,.switch,.switch>span,.setting-go,.profile-edit{transition:none}}.pet-rank{display:block;font-size:13px;color:var(--muted);margin:2px 0 8px}.account-page{display:grid;gap:16px;min-width:0}.cabinet{display:grid;gap:20px;min-width:0}.cabinet .page-heading{gap:12px 24px;flex-wrap:wrap;margin-bottom:0}.cabinet .page-heading h1{margin-bottom:4px;font-size:var(--fs-3xl);line-height:1.2;letter-spacing:-.01em}.cabinet .page-heading .muted{max-width:60ch;font-size:var(--fs-md);line-height:1.5}.cabinet .eyebrow{margin-bottom:4px;font-size:var(--fs-sm);letter-spacing:.08em}.cabinet .muted,.cabinet small{font-size:var(--fs-sm)}.cabinet .button,.cabinet .danger-button{min-height:48px;padding:0 20px;gap:8px;border-radius:var(--r-sm);font-size:var(--fs-sm);font-weight:700}.cabinet .button-small{min-height:44px;padding:0 16px}.cabinet .danger-button{justify-content:center;border:1px solid var(--error-border);background:var(--error-bg)}.cabinet .icon-button{border-radius:var(--r-sm)}.cabinet .text-link{min-height:44px;font-size:var(--fs-sm);font-weight:700}.cabinet .settings-panel{margin:0;padding:20px;border-radius:var(--r-sm)}.cabinet .section-title{margin-bottom:12px}.cabinet .section-title h2{font-size:var(--fs-lg);letter-spacing:0}.cabinet .data-actions{gap:12px;margin-top:16px}.cabinet-back{display:inline-flex;align-items:center;gap:6px;width:fit-content;min-height:44px;margin-bottom:-8px;color:var(--muted);font-size:var(--fs-sm);font-weight:700}.cabinet-back:hover{color:var(--ink)}.cabinet-title{display:flex;flex-wrap:wrap;gap:4px 14px;align-items:baseline}.cabinet-title h1{margin:0;font-size:var(--fs-3xl);line-height:1.2;letter-spacing:-.01em;overflow-wrap:anywhere}.cabinet-aside{margin:4px 0 0;color:var(--muted);font-size:var(--fs-sm)}.cabinet-aside a{color:var(--accent);font-weight:700;text-decoration:underline;text-underline-offset:3px}.cabinet-note{margin:0;font-size:var(--fs-sm)}.cabinet-actions{display:flex;justify-content:flex-start}.cabinet-archive>summary{display:flex;align-items:center;min-height:44px;color:var(--muted);font-size:var(--fs-sm);font-weight:700;cursor:pointer}.cabinet-archive .class-cards{margin-top:8px}.cabinet summary:focus-visible,.cabinet textarea:focus-visible,.cabinet .results-scroll:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.account-form{display:grid;gap:16px}.form-field{display:grid;gap:6px}.form-field>span{font-size:var(--fs-sm);font-weight:700}.form-field textarea{resize:vertical}.class-input{width:100%;min-height:48px;padding:0 14px;border:1px solid var(--subtle);border-radius:var(--r-sm);background:var(--surface);color:var(--ink);font:inherit;font-size:var(--fs-md)}textarea.class-input{padding:12px 14px;line-height:1.5}.form-check{display:flex;gap:12px;align-items:flex-start;min-height:44px;line-height:1.45}.form-check input{flex:none;width:24px;height:24px;margin:0;accent-color:var(--accent)}.form-check>span{font-size:var(--fs-sm)}.form-error{margin:0;padding:10px 14px;border:1px solid var(--error-border);border-radius:var(--r-sm);background:var(--error-bg);color:var(--danger);font-size:var(--fs-sm);font-weight:700;line-height:1.4}.form-note{color:var(--danger);font-weight:700}.assignment-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.assignment-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.recovery-codes{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:8px;margin:0;padding:12px;list-style:none;border:1px dashed var(--subtle);border-radius:var(--r-sm);font-family:ui-monospace,Cascadia Mono,Consolas,monospace;font-size:var(--fs-md)}.cabinet-tabs{display:flex;gap:4px;overflow-x:auto;border-bottom:1px solid var(--border);scrollbar-width:none}.cabinet-tabs a{flex:none;display:inline-flex;align-items:center;min-height:48px;padding:0 16px;margin-bottom:-1px;border-bottom:3px solid transparent;color:var(--muted);font-size:var(--fs-sm);font-weight:700;transition:color var(--t-quick) var(--ease-out),border-color var(--t-quick) var(--ease-out)}@media(hover:hover){.cabinet-tabs a:hover{color:var(--ink)}}.cabinet-tabs a.active{border-bottom-color:var(--accent);color:var(--ink);font-weight:800}.class-cards{display:grid;gap:8px;margin:0;padding:0;list-style:none}.class-card{display:grid;grid-template-columns:minmax(0,1fr) auto auto 20px;gap:4px 24px;align-items:center;min-height:72px;padding:12px 16px 12px 20px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface);color:inherit;transition:border-color var(--t-quick) var(--ease-out),background-color var(--t-quick) var(--ease-out)}@media(hover:hover){.class-card:hover{border-color:var(--accent);background:var(--accent-soft)}}.class-card strong{font-size:var(--fs-lg);overflow-wrap:anywhere}.class-card-stat{display:grid;min-width:96px;color:var(--muted);font-size:var(--fs-sm);line-height:1.3}.class-card-stat b{color:var(--ink);font-size:var(--fs-lg)}.class-card>svg{color:var(--muted)}.cabinet-empty{display:grid;gap:12px;justify-items:start;padding:24px;border:1px dashed var(--subtle);border-radius:var(--r-sm);background:var(--surface)}.cabinet-empty h2{margin:0;font-size:var(--fs-xl)}.cabinet-empty p{max-width:52ch;margin:0}.cabinet-steps{display:grid;gap:8px;margin:0 0 4px;padding-left:22px;font-size:var(--fs-md)}.work-list{display:grid;gap:12px;margin:0;padding:0;list-style:none}.work-row{display:grid;gap:12px;padding:16px 20px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface)}.work-row-head{display:flex;gap:12px;align-items:flex-start;justify-content:space-between}.work-row-head>div{display:grid;gap:2px;min-width:0}.work-row-head strong{font-size:var(--fs-lg);overflow-wrap:anywhere}.work-row-what{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.work-remove.icon-button{flex:none;margin:-8px -8px 0 0;border:0;background:none;color:var(--muted)}.work-remove.icon-button:hover{background:var(--error-bg);color:var(--danger)}.work-progress{display:flex;gap:12px;align-items:center;color:var(--muted);font-size:var(--fs-sm)}.work-progress .progress-track{flex:1;height:8px;margin:0;border-radius:var(--r-pill)}.work-progress .progress-track>span{border-radius:var(--r-pill)}.work-progress span{flex:none}.work-row-actions{display:flex;flex-wrap:wrap;align-items:center;gap:4px 20px}.share-actions,.share-links{justify-content:center}.share-links{margin-top:8px}.results-scroll{overflow-x:auto}.results-table{min-width:100%;border-collapse:collapse;font-size:var(--fs-sm)}.results-table th,.results-table td{padding:10px 12px;border-bottom:1px solid var(--border);text-align:left}.results-table thead th{min-width:96px;max-width:140px;vertical-align:bottom;color:var(--muted);font-weight:700;line-height:1.3}.results-table tbody th{white-space:nowrap}.results-table tbody th small{display:block;color:var(--muted);font-weight:500}.cabinet .cabinet-results{padding:0}.cabinet-results .results-table th:first-child{position:sticky;left:0;z-index:1;background:var(--surface)}.cabinet-results .results-scroll{padding:8px 12px 0}.results-hint{margin:8px 20px 0;color:var(--muted)}.result-done{display:inline-block;padding:4px 10px;border-radius:var(--r-xs);background:var(--accent-soft);color:var(--accent);font-weight:800}.result-none{color:var(--muted)}.cabinet-results-foot{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;justify-content:space-between;padding:12px 20px 16px}.cabinet-results-foot p{flex:1 1 280px;margin:0}.cabinet-filter button{border:1px solid var(--border);border-radius:var(--r-pill);font-size:var(--fs-sm);font-weight:700;text-transform:none}.cabinet-filter button.active{border-color:var(--accent)}.hard-words{display:grid;margin:8px 0 0;padding:0;list-style:none}.hard-words li{display:flex;flex-wrap:wrap;gap:2px 12px;align-items:baseline;padding:10px 0;border-bottom:1px solid var(--border)}.hard-words span,.hard-words small{color:var(--muted)}.hard-words small{margin-left:auto}.join-strip{display:flex;flex-wrap:wrap;gap:12px 16px;align-items:center;justify-content:space-between;padding:16px 20px;border:1px solid var(--accent-border);border-radius:var(--r-sm);background:var(--accent-soft)}.join-code{margin:0;font-family:ui-monospace,Cascadia Mono,Consolas,monospace;font-size:var(--fs-3xl);font-weight:800;letter-spacing:.12em}.join-show{display:grid;gap:8px;justify-items:center;padding:8px 0 12px;text-align:center}.join-show svg{width:min(280px,70vw);height:auto}.join-show p{margin:0}.join-code.big{font-size:clamp(40px,9vw,64px)}.roster{margin:0;padding:0 20px;list-style:none;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface)}.roster li{display:flex;flex-wrap:wrap;gap:2px 12px;align-items:center;justify-content:space-between;min-height:56px;border-bottom:1px solid var(--border);overflow-wrap:anywhere}.roster li:last-child{border-bottom:0}.roster-actions{display:flex;gap:8px;align-items:center}.roster .work-remove.icon-button{margin:0 -8px 0 0}.pin-sheet{display:grid;gap:12px;padding:16px 20px;border:1px solid var(--accent-border);border-radius:var(--r-sm);background:var(--accent-soft)}.pin-sheet:focus{outline:none}.pin-sheet .data-actions{align-items:center;margin:0}.pin-slips{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:8px}.pin-slip{display:grid;gap:2px;padding:12px 16px;border:1px dashed var(--accent-border);border-radius:var(--r-sm);background:var(--surface)}.pin-slip span{font-weight:700;overflow-wrap:anywhere}.pin-slip b{font-size:var(--fs-2xl);letter-spacing:.14em}.pin-slip small{color:var(--muted)}@media print{html.printing-slips body *{visibility:hidden}html.printing-slips .pin-slips,html.printing-slips .pin-slips *{visibility:visible}html.printing-slips .pin-slips{position:absolute;inset:0 0 auto;grid-template-columns:repeat(2,1fr);gap:0}html.printing-slips .pin-slip{break-inside:avoid;padding:18px;border:1px dashed #666;border-radius:0;background:#fff;color:#000}html.printing-slips .pin-slip small{color:#000}}.teacher-list{display:grid;gap:8px;margin:0;padding:0;list-style:none}.teacher-row{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;width:100%;min-height:56px;padding:10px 16px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface);color:inherit;text-align:left;font:inherit;cursor:pointer}.teacher-row:hover{border-color:var(--accent-border)}.teacher-row small{color:var(--muted)}.teacher-row svg:last-child{margin-left:auto}.teacher-pupil{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;justify-content:space-between;min-height:56px;padding:8px 0;border-bottom:1px solid var(--border);overflow-wrap:anywhere}.teacher-pupil .data-actions{margin:0}.pupil-work{margin-bottom:16px}.status{display:inline-flex;align-items:center;gap:6px;min-height:28px;padding:0 10px;border-radius:var(--r-pill);background:var(--soft);color:var(--ink);font-size:var(--fs-sm);font-weight:700;white-space:nowrap}.status-ok{background:var(--accent-soft);color:var(--accent)}.status-warn{border:1px solid var(--error-border);background:var(--error-bg);color:var(--danger)}.admin-person{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;min-width:0}.admin-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin:0}.admin-stats>div{display:flex;flex-direction:column-reverse;gap:2px;padding:14px 16px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface)}.admin-stats dt{color:var(--muted);font-size:var(--fs-sm);line-height:1.3}.admin-stats dd{margin:0;font-size:var(--fs-2xl);font-weight:800;line-height:1.1}.admin-invite-form{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:12px}.admin-invite-form .class-input{flex:1 1 240px;min-width:0}.admin-link{display:grid;gap:12px;margin-top:16px;padding:16px;border:1px solid var(--accent-border);border-radius:var(--r-sm);background:var(--accent-soft)}.admin-link .button{justify-self:start}.admin-invites{margin-top:16px}.admin-revoke:after{display:none}.admin-journal-box>summary{display:flex;align-items:center;min-height:44px;font-weight:700;cursor:pointer}.admin-journal{display:grid;gap:4px;margin:12px 0 0;padding:0;list-style:none;font-size:var(--fs-sm)}.admin-journal time{color:var(--muted)}.class-teacher{gap:20px}.class-search{margin-bottom:16px}.cabinet .search-box.compact,.cabinet .search-box{min-height:48px;border-color:var(--subtle);border-radius:var(--r-sm)}.cabinet .search-box input{font-size:var(--fs-md)}.cabinet .filter-tabs button{min-height:44px;border-radius:var(--r-pill);font-size:var(--fs-sm);font-weight:700;text-transform:none}.cabinet .filter-tabs button:not(.active){border:1px solid var(--border)}.class-levels{margin-bottom:12px}.class-module{margin-top:8px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface)}.class-module>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:56px;padding:8px 16px;font-weight:700;list-style:none;cursor:pointer}.class-module>summary::-webkit-details-marker{display:none}.class-module>summary>span:first-child{display:grid}.class-module>summary small{color:var(--muted);font-size:var(--fs-sm);letter-spacing:.06em}.class-module[open]>summary{border-bottom:1px solid var(--border)}.class-count{flex-shrink:0;padding:2px 12px;border-radius:var(--r-pill);background:var(--soft);color:var(--muted);font-size:var(--fs-sm)}.class-check{display:flex;align-items:center;gap:12px;min-height:48px;cursor:pointer}.class-check input{flex-shrink:0;width:24px;height:24px;accent-color:var(--accent)}.class-check-all{padding:0 16px;color:var(--accent);font-size:var(--fs-sm);font-weight:700}.class-lessons{margin:0;padding:0 0 4px;list-style:none}.class-lesson{padding:2px 16px;border-top:1px solid var(--border)}.class-lesson.picked{background:var(--accent-soft)}.class-lesson-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.class-lesson-row .class-check span{display:grid}.class-lesson-row small{color:var(--muted)}.class-peek{flex-shrink:0}.class-preview{padding:4px 0 12px 36px}.class-preview p{margin:8px 0 0;font-size:var(--fs-sm)}.class-words{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}.class-words li{padding:4px 10px;border:1px solid var(--word-border);border-radius:var(--r-xs);background:var(--word-bg);font-size:var(--fs-sm)}.class-share{display:grid;grid-template-columns:176px 1fr;gap:20px;align-items:start;padding:16px;border:1px solid var(--accent-border);border-radius:var(--r-sm);background:var(--accent-soft)}.class-qr{margin:0;text-align:center}.class-qr .qr-code{width:176px;height:176px;border:1px solid var(--border);border-radius:var(--r-xs)}.class-qr figcaption{margin-top:8px;color:var(--muted);font-size:var(--fs-sm)}.class-share-body .data-actions{margin-top:12px}.class-selection{position:sticky;bottom:16px;z-index:20;display:flex;align-items:center;gap:12px;margin-top:8px;padding:8px 8px 8px 16px;border:1px solid var(--accent-border);border-radius:var(--r-sm);background:var(--surface);box-shadow:var(--shadow-lift)}.class-selection>span{flex:1;font-size:var(--fs-sm)}.class-themes{display:grid;gap:16px;margin-bottom:20px}.class-theme h2{margin:0 0 12px;font-size:var(--fs-xl)}.class-plan-head{display:grid;gap:14px;justify-items:start}.class-plan-head h2{margin:0;font-size:var(--fs-xl)}.class-plan-head .progress-track{width:100%}.class-steps{display:grid;gap:10px;margin:22px 0 0;padding:0;list-style:none}.class-steps li{display:flex;align-items:center;gap:14px;padding:12px 14px;border:1px solid var(--border);border-radius:var(--r-sm)}.class-steps li.current{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.class-step-mark{display:grid;place-items:center;width:36px;height:36px;flex-shrink:0;border-radius:50%;background:var(--soft);font-weight:800}.class-steps li.done .class-step-mark{background:var(--accent);color:var(--on-accent)}.class-step-text{flex:1;display:grid;min-width:0}.class-step-text small{color:var(--muted)}@media(max-width:760px){.cabinet .page-heading{flex-direction:column;align-items:flex-start}.cabinet .page-heading h1,.cabinet-title h1{font-size:var(--fs-2xl)}.cabinet-tabs{gap:0}.cabinet-tabs a{flex:1 0 auto;justify-content:center;padding:0 8px}.class-card{grid-template-columns:1fr 1fr 20px;row-gap:8px;padding:14px 14px 14px 16px}.class-card strong{grid-column:1 / -1}.class-card>svg{display:none}.class-card-stat{grid-template-columns:auto 1fr;align-items:baseline;gap:6px}.results-hint{display:none}.results-scroll{overflow:visible}.results-table,.results-table tbody,.results-table tr,.results-table th,.results-table td{display:block}.results-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.results-table tr{margin-bottom:12px;padding:0 16px 8px;border:1px solid var(--border);border-radius:var(--r-sm)}.results-table tbody th{white-space:normal}.cabinet-results .results-table th:first-child{position:static;padding:12px 0 8px;background:none;font-size:var(--fs-md)}.results-table td{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0}.results-table td:before{content:attr(data-label);min-width:0;color:var(--muted);overflow-wrap:anywhere}.results-table td:last-child{border-bottom:0}.cabinet .cabinet-results{border:0;background:none}.cabinet-results .results-scroll{padding:0}.cabinet-results-foot{padding:8px 0 0}.class-share{grid-template-columns:1fr;justify-items:center}.class-share-body{width:100%}.class-qr .qr-code{width:200px;height:200px}.class-selection{bottom:calc(78px + env(safe-area-inset-bottom))}.class-preview{padding-left:0}.roster-actions .text-link{padding-inline:4px}}.print-page{max-width:760px;margin:0 auto;padding:24px 16px 48px;color:var(--ink)}.print-controls{display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin-bottom:24px}.print-controls a{display:inline-flex;align-items:center;min-height:44px}.print-page{max-width:840px}.print-controls .filter-tabs button{text-transform:none}.sheet{--sheet-ink: #1d2620;--sheet-line: #6b766e;background:#fff;color:var(--sheet-ink);padding:15mm;border-radius:6px;box-shadow:var(--shadow-lift);font-size:15px;line-height:1.45}.sheet-head{display:flex;justify-content:space-between;gap:20px;padding-bottom:12px;border-bottom:2px solid var(--sheet-ink);margin-bottom:14px}.sheet-brand{display:flex;align-items:center;gap:5px;margin:0;font-weight:800;font-size:15px}.sheet-brand .brand-dot{color:#2b5744}.sheet h1{margin:4px 0 8px;font-size:24px;letter-spacing:-.5px}.sheet-meta{margin:0}.sheet-blank{display:inline-block;width:30mm;border-bottom:1px solid var(--sheet-line);margin-right:10px}.sheet-blank.wide{width:60mm}.sheet-qr{margin:0;text-align:center;flex-shrink:0}.sheet-qr .qr-code{width:27mm;height:27mm}.sheet-qr figcaption{font-size:10px}.sheet-lesson+.sheet-lesson{margin-top:18px}.sheet h2{margin:0 0 6px;font-size:19px;break-after:avoid}.sheet h3{margin:10px 0 4px;font-size:14px;break-after:avoid}.sheet-words{padding:6px 12px 8px;border:1px dashed var(--sheet-line);border-radius:8px;break-inside:avoid}.sheet-words h3{margin-top:2px}.sheet-words ul{columns:3 150px;column-gap:18px;margin:0;padding:0;list-style:none}.sheet-words li{break-inside:avoid}.sheet-tasks{margin:0}.sheet-task{padding:5px 0;break-inside:avoid}.sheet-choice,.sheet-write,.sheet-letters,.sheet-match{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 14px}.sheet-tasks{counter-reset:task;list-style:none;padding-left:0}.sheet-task{counter-increment:task}.sheet-task:before{content:counter(task) ".";display:inline-block;min-width:1.6em;font-weight:700}.sheet-match:before{content:none}.sheet-match+.sheet-match{margin-top:8px;padding-top:10px;border-top:1px dotted var(--sheet-line)}.sheet-prompt{font-weight:700}.sheet-prompt small{font-weight:400;color:#4a554d}.sheet-options{display:flex;flex-wrap:wrap;gap:4px 18px}.sheet-option{padding:0 6px;border:1.5px solid transparent;border-radius:999px}.sheet-option.correct{border-color:var(--sheet-ink);font-weight:800}.sheet-line{flex:1;min-width:50mm;min-height:1.45em;border-bottom:1px solid var(--sheet-line)}.sheet-key .sheet-line,.sheet-answer{font-weight:800}.sheet-tiles{display:inline-flex;flex-wrap:wrap;gap:4px}.sheet-tiles span{min-width:1.6em;padding:0 4px;border:1px solid var(--sheet-line);border-radius:4px;text-align:center;font-weight:700}.sheet-pairs{flex:1;display:grid;grid-template-columns:1fr 1fr;gap:0 18mm}.sheet-pairs ol{margin:0;padding:0;list-style:none}.sheet-pairs li{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:1.9em}.sheet-pairs ol+ol li{justify-content:flex-start}.sheet-dot{width:7px;height:7px;flex-shrink:0;border-radius:50%;background:var(--sheet-ink)}.sheet .print-source{margin:8px 0 0;font-size:10.5px;color:#4a554d}@media(max-width:760px){.sheet{padding:18px 14px;font-size:14px}.sheet-head{flex-direction:column}.sheet-line{min-width:40%}.sheet-pairs{gap:0 24px}}@page{size:A4;margin:14mm 14mm 16mm}@media print{.print-page{max-width:none;margin:0;padding:0}.sheet{padding:0;box-shadow:none;border-radius:0;font-size:11.5pt;color:#000;-webkit-print-color-adjust:exact;print-color-adjust:exact}.sheet h1{font-size:18pt}.sheet h2{font-size:14pt}.sheet-line{min-width:50mm}}.bare-shell{min-height:100dvh;background:var(--bg)}.bare-shell>header{width:min(100% - 32px,760px);margin:0 auto;padding:24px 0 8px}.bare-shell:has(.auth-flow)>header{display:flex;justify-content:center}.bare-shell>main{width:min(100% - 32px,760px);margin:0 auto;padding:16px 0 56px;outline:none}.auth-page{display:block}.auth-flow{width:100%;max-width:440px;min-width:0;margin-inline:auto}.bare-shell .auth-flow{padding:28px 28px 32px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface)}.auth-flow .onboard-back{text-decoration:none}.onboard-back{display:inline-flex;align-items:center;gap:6px;min-height:44px;margin:-8px 0 12px -10px;padding:0 10px;border-radius:var(--r-sm);color:var(--muted);font-size:var(--fs-sm);font-weight:700;transition:color var(--t-quick) var(--ease-out),background-color var(--t-quick) var(--ease-out)}.onboard-back:hover{background:var(--soft);color:var(--ink)}.auth-title{margin:0;font-size:var(--fs-2xl);font-weight:800;line-height:1.2;letter-spacing:-.01em}.auth-title:focus{outline:none}.auth-sub{margin:8px 0 0;color:var(--muted);font-size:var(--fs-md);line-height:1.5}.auth-notice{margin:16px 0 0;padding:12px 14px;border-radius:var(--r-sm);background:var(--accent-soft);font-size:var(--fs-sm);font-weight:700}.auth-field{display:grid;gap:6px;margin-top:18px}.auth-title+.auth-field,.auth-sub+.auth-field,.auth-notice+.auth-field{margin-top:24px}.auth-field-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.auth-field label{font-size:var(--fs-sm);font-weight:700}.auth-field small{font-size:var(--fs-sm);line-height:1.4}.auth-flow .input{height:52px;border:1px solid var(--subtle);border-radius:var(--r-sm);font-size:var(--fs-md)}.auth-field .input[aria-invalid=true]{border-color:var(--danger);box-shadow:inset 0 0 0 1px var(--danger)}.auth-field .form-error{padding:0;border:0;background:none}.auth-form>.form-error{margin-top:16px}.input-with-action{position:relative;display:block}.input-with-action .input{padding-right:52px}.input-action{position:absolute;top:50%;right:4px;display:grid;place-items:center;width:44px;height:44px;border:0;border-radius:var(--r-xs);background:none;color:var(--muted);transform:translateY(-50%);cursor:pointer}.input-action:hover{color:var(--ink)}.input-action.ok,.input-action.ok:hover{color:var(--accent);cursor:default}.auth-field .join-input{font-size:var(--fs-xl);font-weight:700;letter-spacing:.14em}.auth-consents{display:grid;gap:8px;margin-top:20px}.inline-link{position:relative;padding:0;border:0;background:none;color:var(--accent);font:inherit;font-weight:700;text-decoration:underline;text-decoration-color:var(--accent-border);text-underline-offset:3px;cursor:pointer}.inline-link:after{content:"";position:absolute;top:-12px;right:-4px;bottom:-12px;left:-4px}.auth-field-head .inline-link,.auth-forgot{font-size:var(--fs-sm)}.auth-forgot{width:fit-content;margin-top:-6px}.auth-policy{justify-self:start;font-size:var(--fs-sm)}.auth-submit,.bare-shell .auth-submit,.auth-page .auth-submit{position:static;display:flex;width:100%;min-height:52px;margin-top:24px;padding:0 20px;justify-content:center;gap:10px;border-radius:var(--r-sm);box-shadow:none;font-size:var(--fs-md);font-weight:800}.auth-submit svg,.auth-pair svg{flex:none}.auth-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:16px}.auth-pair .button{min-height:48px;padding:0 12px;border-radius:var(--r-sm);font-size:var(--fs-sm)}.auth-flow .recovery-codes{margin-top:20px}.auth-switch{margin:20px 0 0;color:var(--muted);font-size:var(--fs-sm)}.auth-switch button{position:relative;padding:0;border:0;background:none;color:var(--accent);font:inherit;font-weight:700;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.auth-switch button:after{content:"";position:absolute;top:-14px;right:-6px;bottom:-14px;left:-6px}.bare-shell .auth-switch button{min-height:44px;padding:0 4px}.auth-choices{display:grid;gap:10px;margin-top:24px}.bare-shell .auth-choices{gap:12px}.level-option{display:flex;align-items:center;gap:14px;width:100%;min-height:72px;margin:0;padding:14px 16px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface);color:inherit;text-align:left;cursor:pointer;transition:border-color var(--t-quick) var(--ease-out),background-color var(--t-quick) var(--ease-out)}.level-option strong{font-size:var(--fs-md)}.level-option small{display:block;margin-top:2px;color:var(--muted);font-size:var(--fs-sm)}.level-option>svg{flex:none;margin-left:auto;color:var(--accent);transition:transform var(--t-quick) var(--ease-out)}@media(hover:hover){.level-option:hover{border-color:var(--accent);background:var(--accent-soft)}.level-option:hover>svg{transform:translate(3px)}}.auth-names{display:grid;gap:8px;margin:20px 0 0;padding:0;border:0}.auth-names label{display:flex;gap:12px;align-items:center;min-height:52px;padding:0 14px;border:1px solid var(--border);border-radius:var(--r-sm);font-weight:700;cursor:pointer;transition:border-color var(--t-quick) var(--ease-out),background-color var(--t-quick) var(--ease-out)}.auth-names label.selected{border-color:var(--accent);background:var(--accent-soft);box-shadow:inset 0 0 0 1px var(--accent);font-weight:800}.auth-names input{width:24px;height:24px;margin:0;accent-color:var(--accent)}.legal-page{max-width:70ch}.legal-page .page-heading{margin-bottom:8px}.legal-page .page-heading h1{font-size:var(--fs-3xl);line-height:1.2;letter-spacing:-.01em}.legal-page .eyebrow{font-size:var(--fs-sm);letter-spacing:.08em}.legal-page .muted,.legal-dialog .muted{color:var(--ink);font-size:var(--fs-md);line-height:1.6}.legal-page .page-heading .muted{color:var(--muted);font-size:var(--fs-md)}.legal-page .settings-panel{margin:0;padding:24px 0 0;border:0;border-top:1px solid var(--border);border-radius:0;background:none}.legal-page .section-title{margin-bottom:8px}.legal-page .section-title h2{font-size:var(--fs-xl);line-height:1.3;letter-spacing:0}.legal-page a:not(.button),.legal-dialog a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}.legal-list{display:grid;gap:12px;margin:12px 0;padding-left:22px;color:var(--ink);font-size:var(--fs-md);line-height:1.6}.legal-draft{margin:4px 0 0;color:var(--muted);font-size:var(--fs-sm)}.legal-dialog{display:grid;gap:16px;max-height:62vh;overflow-y:auto}.legal-dialog .settings-panel{margin:0;padding:0;border:0;background:none;box-shadow:none}.legal-dialog>p{margin:0}@media(max-width:760px){.bare-shell>header{padding:16px 0 4px}.bare-shell .auth-flow{padding:8px 0 24px;border:0;border-radius:0;background:none}}.legal-page .button{min-height:48px;padding:0 20px;border-radius:var(--r-sm);font-size:var(--fs-sm);font-weight:700}.auth-flow .input:focus-visible{outline-width:2px;outline-offset:2px}.lesson-guide.mascot-dialog{position:relative;top:auto;flex-direction:row-reverse;align-items:center;height:104px;width:calc(100% - 50px);max-width:590px;margin:8px auto 0;padding:0;background:none;border:0;box-shadow:none;gap:16px;z-index:2}.mascot-dialog .guide-art{width:112px;height:112px;padding:0;background:transparent;border:0;box-shadow:none;border-radius:24px;cursor:pointer;transition:transform .24s cubic-bezier(.2,.7,.3,1)}.mascot-dialog .guide-art:hover{background:transparent;transform:translateY(-3px)}.mascot-dialog .guide-art:active{transform:translateY(1px) scale(.97)}.mascot-dialog .guide-art:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.mascot-dialog .guide-copy{position:relative;flex:0 1 320px;max-width:320px;min-width:0;opacity:0;visibility:hidden;pointer-events:none;transform:translate(7px) translateY(4px) scale(.97);transform-origin:right center;transition:opacity .24s ease,transform .32s cubic-bezier(.2,.75,.25,1),visibility 0s linear .24s}.mascot-dialog .guide-copy.is-speaking{opacity:1;visibility:visible;pointer-events:auto;transform:translate(0) scale(1);transition-delay:0s}.mascot-dialog .guide-bubble{position:relative;display:block;padding:16px 34px 16px 18px;margin:0;background:var(--surface);border:1px solid var(--border);border-radius:18px;color:var(--ink);box-shadow:0 5px 20px #1c392b0d;font-size:14px;font-weight:500;line-height:1.55;text-align:left;text-wrap:pretty}.mascot-dialog .guide-bubble:after{content:"";position:absolute;right:-6px;top:calc(50% - 6px);width:10px;height:10px;background:var(--surface);border-top:1px solid var(--border);border-right:1px solid var(--border);transform:rotate(45deg);border-radius:0 2px 0 0}.mascot-dismiss{position:absolute;right:5px;top:3px;width:28px;height:28px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--muted);font-size:20px;line-height:1;opacity:.7;cursor:pointer}.mascot-dismiss:hover{opacity:1;background:var(--soft)}.mascot-dismiss:focus-visible{outline:2px solid var(--accent)}@media(max-width:760px){.lesson-guide.mascot-dialog{width:calc(100% - 36px);height:104px;gap:10px}.mascot-dialog .guide-art{width:96px;height:96px}.mascot-dialog .guide-copy{flex:1;max-width:300px}.mascot-dialog .guide-bubble{padding:12px 26px 12px 13px;border-radius:15px;font-size:12px;line-height:1.5}.mascot-dismiss{right:1px;top:1px;width:26px;height:26px}}@media(prefers-reduced-motion:reduce){.mascot-dialog .guide-art,.mascot-dialog .guide-copy{transition:none!important;transform:none!important}}.lesson-guide.mascot-dialog .guide-copy{flex:0 1 auto;width:max-content;max-width:min(320px,calc(100% - 128px))}.lesson-guide.mascot-dialog .guide-bubble{padding:12px 16px;text-wrap:wrap}@media(max-width:760px){.lesson-guide.mascot-dialog .guide-copy{flex:0 1 auto;max-width:calc(100% - 106px)}.lesson-guide.mascot-dialog .guide-bubble{padding:10px 13px}}@media(max-width:760px){.lesson-guide.mascot-dialog{height:56px;margin-top:4px}.mascot-dialog .guide-art{width:64px;height:64px}.lesson-guide.mascot-dialog .guide-copy{max-width:calc(100% - 74px)}}.content-wrap:has(.culture-library){grid-template-columns:minmax(0,1fr);max-width:1220px}.content-wrap:has(.culture-library)>.right-rail{display:none}.culture-library{display:grid;gap:16px}.culture-library>*{min-width:0}.library-filters{display:grid;gap:10px}.library-search{max-width:none;width:100%;margin:0;min-height:56px;border-radius:var(--r-md);background:var(--surface);box-shadow:none}.library-search input{width:100%;min-width:0;font-size:var(--fs-md)}.library-search input::-webkit-search-cancel-button{display:none}.library-clear{flex:none;width:44px;height:44px;border-radius:var(--r-sm);font-size:var(--fs-2xl);color:var(--muted)}.library-themes{display:flex;gap:8px;overflow-x:auto;padding-inline-end:32px;scrollbar-width:none;overscroll-behavior-x:contain;-webkit-mask-image:linear-gradient(to right,#000 calc(100% - 36px),transparent);mask-image:linear-gradient(to right,#000 calc(100% - 36px),transparent)}.library-themes::-webkit-scrollbar{display:none}.library-themes button{display:flex;flex:none;align-items:center;gap:8px;min-height:44px;padding:0 14px;border:1px solid var(--border);border-radius:var(--r-pill);color:var(--ink);font-size:var(--fs-sm);font-weight:700;white-space:nowrap;background:var(--surface);transition:background-color var(--t-quick) var(--ease-out),transform var(--t-press) var(--ease-out)}.library-themes .chip-label:first-letter{text-transform:uppercase}.library-themes button:active,.library-status button:active{transform:scale(.97)}.library-themes button span{font-size:var(--fs-sm);font-variant-numeric:tabular-nums}.library-themes button.active{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}.library-filter-bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:4px 12px}.library-status{display:flex;flex:1 1 100%;gap:4px;padding:4px;border-radius:var(--r-md);background:var(--soft)}.library-status button{flex:1 1 auto;min-height:44px;padding:0 8px;border-radius:var(--r-sm);font-size:var(--fs-sm);font-weight:700;white-space:nowrap;color:var(--muted)}.library-status button.active{background:var(--surface);color:var(--accent);font-weight:800;box-shadow:0 2px 8px #0f23191a}.library-reset{font-size:var(--fs-sm);min-height:44px;color:var(--muted);text-decoration:underline;text-underline-offset:3px}.library-results{margin:0;font-size:var(--fs-sm);color:var(--muted)}.culture-library button:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.culture-library .culture-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.culture-library .culture-tile{display:flex;flex-direction:column;width:100%;border-radius:var(--r-md);min-width:0}.culture-library .culture-photo{width:100%;height:155px;flex-shrink:0}.culture-library .culture-tile-body{padding:18px;display:flex;flex-direction:column;flex:1}.culture-library .culture-tile-body .tiny-label{font-size:var(--fs-sm);letter-spacing:.04em;line-height:1.5}.culture-library .culture-tile-body h2{font-size:var(--fs-lg);line-height:1.4;letter-spacing:-.02em;margin:8px 0 0}.culture-library .culture-tile-body p{font-size:var(--fs-sm);line-height:1.65;margin:10px 0 18px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.culture-library .culture-tile-body .text-link{margin-top:auto;font-size:var(--fs-sm)}.culture-library .read-marker{font-size:var(--fs-sm);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:5px 8px;border-radius:var(--r-xs)}.library-pagination{display:flex;flex-direction:column;align-items:center;gap:12px;padding:28px 0}.library-pagination .button{min-width:220px;min-height:48px;font-size:var(--fs-md)}.library-pagination>span{font-size:var(--fs-sm);color:var(--muted)}.library-unlock{display:flex;align-items:center;gap:14px;background:var(--soft);padding:18px 20px;border-radius:var(--r-sm);color:var(--muted)}.library-unlock>svg{flex-shrink:0}.library-unlock p{flex:1;margin:0;font-size:var(--fs-sm);line-height:1.6}.library-unlock strong{display:block;color:var(--ink);font-weight:800}.library-unlock .text-link{font-size:var(--fs-sm);white-space:nowrap}.library-empty{padding:52px 20px;text-align:center;border:1px dashed var(--border);border-radius:var(--r-md)}.library-empty h2{font-size:var(--fs-xl);margin:0 0 10px}.library-empty p{color:var(--muted);font-size:var(--fs-md);margin-bottom:22px}.dialog:has(.culture-reader){width:min(680px,calc(100% - 28px));padding:28px}.culture-reader .dialog-image{height:210px;margin-bottom:20px}.culture-reader .tiny-label{font-size:var(--fs-sm);color:var(--muted)}.culture-reader .reading-text{font-size:var(--fs-lg);line-height:1.75;margin:22px 0 28px}.culture-reader .reading-text p{margin:0 0 18px}.reader-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;border-top:1px solid var(--border);padding-top:20px}.reader-actions .button{min-height:52px;font-size:var(--fs-md)}.reader-read{display:flex;gap:8px;align-items:center;color:var(--accent);font-size:var(--fs-md);padding:12px 0;margin-right:auto}.reader-next-title{font-size:var(--fs-sm);line-height:1.5;color:var(--muted);margin:12px 0 0}@media(max-width:1100px){.culture-library .culture-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.culture-library .culture-grid{grid-template-columns:1fr;gap:16px}.culture-library .culture-photo{height:180px}.culture-library .culture-tile-body{padding:18px}.library-unlock{align-items:flex-start;flex-wrap:wrap}.library-unlock .text-link{margin-left:34px}.library-unlock p{flex-basis:calc(100% - 40px)}.dialog:has(.culture-reader){padding:20px}.culture-reader .dialog-image{height:170px}.culture-reader .reading-text{font-size:16px;line-height:1.8}.reader-actions .button{flex:1 1 180px}}@media(min-width:900px){.library-themes{flex-wrap:wrap;padding-inline-end:0;overflow:visible;-webkit-mask-image:none;mask-image:none}.library-status{flex-basis:auto;min-width:360px}}@media(prefers-reduced-motion:reduce){.library-themes button,.library-status button{transition:none}}.avatar:has(.avatar-portrait){padding:0;border:0;background:none;overflow:visible;flex-shrink:0}.avatar-portrait{display:block;width:100%;height:100%;object-fit:contain;border-radius:25%;-webkit-user-select:none;user-select:none;background:radial-gradient(95% 95% at 35% 20%,#fffdf6,var(--avatar-tint, #d9e2ce))}.avatar-portrait[src*="/eagle."]{--avatar-tint: #d9e2ce}.avatar-portrait[src*="/wolf."]{--avatar-tint: #d5e0df}.avatar-portrait[src*="/fox."]{--avatar-tint: #ead5bd}.avatar-portrait[src*="/bear."]{--avatar-tint: #e5d4bb}.avatar-portrait[src*="/lion."]{--avatar-tint: #efe0b9}.avatar-portrait[src*="/tiger."]{--avatar-tint: #e8d7b7}.avatar-portrait[src*="/deer."]{--avatar-tint: #dbe4cd}.avatar-portrait[src*="/elephant."]{--avatar-tint: #d9dce9}[data-theme=dark] .avatar-portrait{background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 160 160'%3E%3Cpath d='M-12 135L40 91 61 111 109 71 171 133V166H-12Z' fill='white' opacity='.05'/%3E%3C/svg%3E") center / 100% 100% no-repeat,radial-gradient(75% 75% at 50% 58%,color-mix(in srgb,var(--avatar-tint, #d9e2ce) 16%,#4a7560),color-mix(in srgb,var(--avatar-tint, #d9e2ce) 6%,#223a30))}.sidebar-profile .avatar.small{width:42px;height:42px;min-width:42px;border-radius:12px}.dialog:has(.avatar-collection){width:min(620px,calc(100% - 28px))}.avatar-selection-preview{display:flex;gap:16px;align-items:center;padding:0 0 20px;margin-bottom:18px;border-bottom:1px solid var(--border)}.avatar-selection-preview>.avatar-portrait{width:76px;height:76px;flex-shrink:0}.avatar-selection-preview strong{display:block;font-size:20px;line-height:1.4;font-weight:600;letter-spacing:-.02em}.avatar-selection-preview p{font-size:var(--fs-sm);color:var(--muted);margin:4px 0 0;line-height:1.5}.avatar-picker.avatar-collection{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:10px}.avatar-picker.avatar-collection>button{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;width:auto;height:auto;min-height:110px;padding:10px 8px;border:1px solid var(--border);border-radius:15px;background:var(--surface);color:var(--ink);font-size:var(--fs-sm);line-height:1.4;transition:border-color .18s,background .18s,transform .18s}.avatar-picker.avatar-collection>button>.avatar-portrait{width:68px;height:68px;transition:transform .22s ease}.avatar-picker.avatar-collection>button.selected{border:2px solid var(--accent);padding:9px 7px;background:var(--soft);box-shadow:none}.avatar-choice-check{position:absolute;right:6px;top:6px;display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--accent);color:var(--on-accent);font-size:14px;border:2px solid var(--surface)}.avatar-choice-name{font-weight:500}@media(hover:hover){.avatar-picker.avatar-collection>button:hover{border-color:var(--accent);background:var(--soft)}.avatar-picker.avatar-collection>button:hover>.avatar-portrait{transform:translateY(-3px)}}.avatar-picker.avatar-collection>button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}@media(max-width:600px){.avatar-picker.avatar-collection{gap:7px}.avatar-picker.avatar-collection>button{min-height:94px;padding:8px 4px;font-size:var(--fs-sm);border-radius:12px}.avatar-picker.avatar-collection>button.selected{padding:7px 3px}.avatar-picker.avatar-collection>button>.avatar-portrait{width:54px;height:54px}.avatar-selection-preview>.avatar-portrait{width:64px;height:64px}.avatar-selection-preview{padding-bottom:14px;margin-bottom:14px}.avatar-selection-preview strong{font-size:18px}}@media(max-width:360px){.avatar-picker.avatar-collection{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(prefers-reduced-motion:reduce){.avatar-picker.avatar-collection>button,.avatar-picker.avatar-collection>button>.avatar-portrait{transition:none;transform:none!important}}.dialog:has(.avatar-collection){padding:22px}.avatar-selection-preview{padding-bottom:14px;margin-bottom:12px}.avatar-selection-preview>.avatar-portrait{width:60px;height:60px}.avatar-picker.avatar-collection>button{min-height:100px}.avatar-picker.avatar-collection>button>.avatar-portrait{width:62px;height:62px}.entry{--entry-gap: clamp(20px, 3.4vw, 56px);--bars: min(330px, 46cqw);position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);grid-template-areas:"panel scene";min-height:100dvh;background:var(--bg);color:var(--ink)}.entry-scene{grid-area:scene;position:sticky;top:14px;height:calc(100dvh - 28px);margin:14px 14px 14px 0;border-radius:32px;overflow:hidden;background:#c9efe3;isolation:isolate;container-type:size}.entry-world{position:absolute;left:0;top:0;transform-origin:0 0}.entry-world:after{content:"";position:absolute;left:0;right:0;top:100%;height:60%;background:#96bb58}.entry-world img{display:block;width:100%;height:100%;opacity:0;transition:opacity .35s ease}.entry-world.is-on img{opacity:1}.entry-arrive-art{position:absolute;top:0;right:0;bottom:0;left:0}.entry-scene-media{display:block;width:100%;height:100%;object-fit:cover}.entry-arrive-art picture{display:contents}.entry-arrive-art .entry-scene-media{object-position:100% 50%}.entry-scene-brand{display:none}.entry-bars{position:absolute;z-index:2;left:0;top:0;width:0;height:0}.entry-bars-body{position:absolute;left:calc(var(--bars) * -.5);bottom:calc(var(--bars) * -.053);width:var(--bars);height:var(--bars);transform-origin:50% 94.7%}.bars-sprite:focus-visible{outline-color:var(--accent)}.entry-shadow{position:absolute;left:calc(var(--bars) * -.26);top:calc(var(--bars) * -.04);width:calc(var(--bars) * .52);height:calc(var(--bars) * .08);border-radius:50%;background:radial-gradient(rgb(16 36 24 / .36),transparent 70%)}.entry-dust{position:absolute;left:0;top:0}.entry-dust i{position:absolute;left:-9px;top:-9px;width:18px;height:18px;border-radius:50%;background:#fffaf0;animation:entry-dust .5s var(--ease-out) var(--at, .55s) both}.entry-dust i:nth-child(1){--dx: -58px;--dy: -14px}.entry-dust i:nth-child(2){--dx: -30px;--dy: -32px}.entry-dust i:nth-child(3){--dx: 30px;--dy: -30px}.entry-dust i:nth-child(4){--dx: 58px;--dy: -12px}@keyframes entry-dust{0%{opacity:0;transform:scale(.3)}10%{opacity:.95}to{opacity:0;transform:translate(var(--dx),var(--dy)) scale(1.2)}}.bars-sprite{position:relative;display:block;width:100%;height:100%;aspect-ratio:1;padding:0;border:0;background-color:transparent;background-repeat:no-repeat;background-position:0 0;cursor:pointer;animation-fill-mode:both;transition:transform var(--dur) var(--ease-spring)}.bars-sprite.is-loop{animation-iteration-count:infinite}.bars-sprite:hover{transform:translateY(-4px) scale(1.02)}.bars-sprite:active{transform:scale(.97)}.bars-sprite:focus-visible{outline:3px solid #fff;outline-offset:-10px;border-radius:24px}.entry-bubble{position:absolute;bottom:calc(var(--bars) * .84);width:max-content;max-width:min(280px,46cqw);margin:0;padding:15px 20px;border-radius:24px;background:#fff;color:#21332a;font-size:18px;font-weight:800;line-height:1.3;box-shadow:0 14px 34px #0f231933}.entry-bubble.is-right{left:calc(var(--bars) * -.1);border-bottom-left-radius:6px;transform-origin:0 100%}.entry-bubble.is-left{right:calc(var(--bars) * -.1);border-bottom-right-radius:6px;transform-origin:100% 100%}.entry-bubble-text{display:block}.entry-panel{grid-area:panel;display:flex;flex-direction:column;min-width:0;min-height:100dvh;padding:clamp(24px,3vw,40px) var(--entry-gap) 28px clamp(24px,6vw,104px)}.entry-head{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:52px}.entry-back{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 16px 0 12px;border-radius:99px;background:var(--soft);color:var(--ink);font-size:15px;font-weight:700;transition:background-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.entry-back:hover{background:var(--accent-soft)}.entry-back:active{transform:scale(.97)}.entry-progress{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:6px;max-width:480px;height:8px;margin-top:clamp(20px,4vh,44px);animation:rise-in-xs .3s var(--ease-out) backwards}.entry-progress>span{position:relative;display:block;border-radius:99px;background:var(--soft);overflow:hidden}.entry-progress>span:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .34s var(--ease-out) .4s}.entry-progress>span.is-on:after{transform:none}.entry-progress>span.is-on{animation:stone-pop .42s var(--ease-spring) .4s}@keyframes stone-pop{50%{transform:scaleY(1.7)}}.entry-body{position:relative;flex:1;display:flex;align-items:center;padding:clamp(28px,6vh,72px) 0}.entry-step{width:100%;max-width:520px}.entry h1:focus{outline:none}.entry-title{margin:0;font-size:clamp(44px,4.5vw,84px);font-weight:800;line-height:.98;letter-spacing:-.048em}.entry-line{display:block;overflow:hidden;padding-bottom:.09em;margin-bottom:-.09em}.entry-line>span{display:block}.entry-steps{display:block}.entry-hop{display:inline-block;transform-origin:50% 100%}.entry-mask{overflow:hidden;padding-bottom:.14em;margin-bottom:-.14em}.entry-lead{max-width:30em;margin:26px 0 0;font-size:clamp(17px,1.35vw,20px);line-height:1.5}.entry-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:36px}.entry .button.entry-cta,.entry .button.entry-ghost{min-height:60px;padding:0 28px;border-radius:16px;font-size:17px;gap:12px}.entry .button.entry-cta svg{transition:transform var(--dur) var(--ease-out)}.entry .button.entry-cta:hover svg{transform:translate(4px)}.entry .button.entry-ghost{background:var(--soft);color:var(--ink)}.entry .button.entry-ghost:hover{background:var(--accent-soft)}.entry-actions .entry-cta{flex:1 1 220px}.entry-actions .entry-ghost{flex:1 1 200px}.entry-q-title{margin:0;font-size:clamp(36px,3.6vw,54px);font-weight:800;line-height:1.04;letter-spacing:-.04em}.entry-sub{margin:14px 0 0;font-size:17px;line-height:1.5;color:var(--muted)}.entry-question .entry-cta{width:100%;margin-top:28px}.entry-cta-word{display:inline-block;animation:rise-in-xs .18s var(--ease-out)}.entry-name{display:block;width:100%;height:80px;margin-top:36px;padding:0 26px;border:2px solid transparent;border-radius:20px;background:var(--surface);color:var(--ink);font:inherit;font-size:clamp(24px,2.2vw,30px);font-weight:700;letter-spacing:-.02em;transition:border-color var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out)}.entry-name::placeholder{color:var(--subtle);font-weight:600;opacity:.7}.entry-name:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.entry-options{display:grid;gap:10px;margin-top:32px}.entry-option{display:grid;grid-template-columns:44px minmax(0,1fr) 26px;align-items:center;gap:16px;width:100%;min-height:82px;padding:16px 20px 16px 18px;border:2px solid transparent;border-radius:20px;background:var(--surface);color:var(--ink);text-align:left;cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.entry-option:hover{border-color:var(--accent-border)}.entry-option:active{transform:scale(.985)}.entry-option.is-on{border-color:var(--accent);background:var(--accent-soft);animation:option-pop .36s var(--ease-out)}@keyframes option-pop{40%{transform:scale(1.018)}}.entry-mark{display:grid;place-items:center;color:var(--accent)}.entry-mark rect{fill:var(--border);transform-box:fill-box;transform-origin:50% 100%;transition:fill var(--dur) var(--ease-out)}.entry-mark rect.on{fill:var(--accent)}.entry-option.is-on .entry-mark rect.on{animation:altitude-grow .46s var(--ease-spring) backwards}.entry-option.is-on .entry-mark rect.on:nth-child(2){animation-delay:.07s}.entry-option.is-on .entry-mark rect.on:nth-child(3){animation-delay:.14s}@keyframes altitude-grow{0%{transform:scaleY(.2)}}.entry-option.is-on .entry-mark svg.lucide{animation:mark-wiggle .52s var(--ease-out)}@keyframes mark-wiggle{30%{transform:rotate(-13deg) scale(1.16)}62%{transform:rotate(8deg) scale(1.08)}}.entry-option-copy strong{display:block;font-size:18px;font-weight:700;letter-spacing:-.01em}.entry-option-copy small{display:block;margin-top:3px;font-size:15px;color:var(--muted)}.entry-tick{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;border:2px solid var(--border);color:var(--on-accent);transition:background-color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.entry-tick svg{opacity:0;transform:scale(.4);transition:opacity var(--dur-fast) var(--ease-out),transform var(--dur) var(--ease-spring)}.entry-option.is-on .entry-tick{background:var(--accent);border-color:var(--accent)}.entry-option.is-on .entry-tick svg{opacity:1;transform:none}.entry-paths{display:grid;gap:12px;margin-top:32px}.entry-path{display:grid;grid-template-columns:40px minmax(0,1fr) 24px;grid-template-areas:"icon title go" "icon note go";align-items:center;column-gap:16px;row-gap:4px;width:100%;padding:22px 22px 22px 20px;border:2px solid transparent;border-radius:22px;background:var(--surface);color:var(--ink);text-align:left;cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.entry-path>svg:first-child{grid-area:icon;align-self:start;margin-top:2px;color:var(--accent)}.entry-path strong{grid-area:title;font-size:19px;font-weight:800;letter-spacing:-.015em}.entry-path small{grid-area:note;font-size:15px;line-height:1.4;color:var(--muted)}.entry-path-go{grid-area:go;transition:transform var(--dur) var(--ease-out)}.entry-path:hover{border-color:var(--accent-border);transform:translateY(-2px)}.entry-path:hover .entry-path-go{transform:translate(4px)}.entry-path:active{transform:scale(.985)}.entry-path.is-main{background:var(--accent);color:var(--on-accent)}.entry-path.is-main:hover{background:var(--accent-hover);border-color:transparent}.entry-path.is-main>svg:first-child,.entry-path.is-main small{color:inherit}.entry-path.is-main small{opacity:.86}.entry-path.is-quiet{padding-block:12px;background:none}.entry-path.is-quiet strong{font-size:16px;font-weight:700}.entry-path.is-quiet small{font-size:14px}.entry .auth-flow{max-width:520px}.access-guest-link{display:block;min-height:44px;width:100%;margin-top:4px;font-size:14px;color:var(--muted)}.access-guest-link:hover:not(:disabled){color:var(--ink);text-decoration:underline}.entry .auth-title{font-size:clamp(36px,3.6vw,54px);font-weight:800;line-height:1.04;letter-spacing:-.04em}.entry .auth-sub{margin-top:14px;font-size:17px}.entry .auth-flow .input{height:58px;border-radius:16px;font-size:17px}.entry .auth-submit{min-height:60px;border-radius:16px;font-size:17px}.entry .auth-choices{margin-top:32px}.entry .level-option.auth-choice{min-height:82px;padding:18px 20px;border:2px solid transparent;border-radius:20px}.entry .level-option.auth-choice:hover{border-color:var(--accent-border);background:var(--surface)}.entry .level-option.auth-choice strong{font-size:18px}.entry .level-option.auth-choice small{font-size:15px}.entry .auth-flow .onboard-back{margin:0 0 18px;padding:0 16px 0 12px;border-radius:99px;background:var(--soft);color:var(--ink);font-weight:700}@media(max-height:860px){.entry .auth-choices{margin-top:24px}.entry .auth-switch{margin-top:12px}}.entry-foot{display:flex;flex-wrap:wrap;gap:8px 22px;font-size:13px;animation:fade-in .25s ease .16s backwards}.entry-foot a{color:var(--muted);text-decoration:none}.entry-foot a:hover{color:var(--ink);text-decoration:underline}.entry-arrive{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;overflow:hidden;background:#c9efe3;color:#27382f}.entry-arrive-bars{--w: min(62vw, 46dvh);--k: max(100vw / 2000, 100dvh / 857);position:absolute;z-index:1;left:calc(100vw - (2000 - 1536) * var(--k) - .5 * var(--w));top:calc(50dvh + (554 - 428.5) * var(--k) - .947 * var(--w));width:var(--w);aspect-ratio:1;transform-origin:50% 94.7%}.entry-arrive-copy{position:absolute;z-index:1;left:clamp(24px,6vw,104px);right:clamp(24px,6vw,104px);bottom:clamp(36px,9vh,104px)}.entry-arrive-title{margin:0;font-size:clamp(52px,8.4vw,136px);font-weight:800;line-height:.95;letter-spacing:-.05em}.entry-arrive-sub{margin:20px 0 0;font-size:clamp(18px,1.6vw,22px);font-weight:600;opacity:.92}.entry-arrive-fade{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;background:var(--bg)}@media(max-width:1023px){.entry{--bars: min(230px, 46cqw);--band-hello: clamp(260px, 44svh, 460px);--band-question: clamp(200px, 27svh, 340px);--lap: 28px;display:flow-root}.entry-scene{position:absolute;top:10px;left:10px;right:10px;height:calc(var(--band-hello) + var(--lap));margin:0;border-radius:28px 28px 0 0}.entry-panel{position:relative;z-index:1;min-height:0;margin:calc(10px + var(--band-question)) 10px 0;padding:12px calc(clamp(20px,5vw,48px) - 10px) 24px;border-radius:var(--lap) var(--lap) 0 0;background:var(--bg)}.entry.is-hello .entry-panel{margin-top:calc(10px + var(--band-hello));padding-top:0}.entry.is-hello .entry-head{display:none}.entry-head{animation:fade-in .2s ease .12s backwards}.entry-scene-brand{position:absolute;z-index:3;top:12px;left:18px;display:block}.entry-scene-brand .brand{color:#21332a}.entry-progress{max-width:none;margin-top:12px}.entry-body{align-items:flex-start;padding:28px 0 40px}.entry-step{max-width:620px}.entry-bubble{bottom:calc(var(--bars) * .4);max-width:min(280px,47cqw)}.entry-bubble.is-right{left:calc(var(--bars) * .4)}.entry-bubble.is-left{right:calc(var(--bars) * .4)}}@media(orientation:portrait){.entry-arrive-bars{--k: max(100vw / 1600, 100dvh / 2000);left:calc(100vw - (1600 - 1007) * var(--k) - .5 * var(--w));top:calc(50dvh + (1268 - 1000) * var(--k) - .947 * var(--w))}.entry-arrive-copy{left:16px;right:16px;bottom:24px;padding:18px 20px;border-radius:24px;background:#f7f8f5eb}}@media(max-width:560px){.entry-title{font-size:clamp(40px,11.5vw,56px)}.entry-actions{flex-direction:column}.entry-actions .entry-cta,.entry-actions .entry-ghost{flex:none;width:100%}.entry-q-title,.entry .auth-title{font-size:34px}.entry-bubble{font-size:15px;padding:11px 15px}.entry-name{height:68px;font-size:24px}.entry-option{grid-template-columns:34px minmax(0,1fr) 24px;gap:12px;min-height:74px;padding:14px 16px 14px 14px}.entry-option-copy strong{font-size:16px}.entry-option-copy small{font-size:14px}}
