:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f4f4f1;--surface:#fff;--surface-alt:#f8f8f6;--surface-raised:#f0efef;--text:#20212b;--muted:#777982;--line:#e7e6e8;--accent:#6553db;--accent-hover:#5340c3;--accent-soft:#f0edff;--sidebar:#181b26;--sidebar-text:#a4a7b8;--success:#137865;--success-bg:#e8f8f2;--warning:#8a6119;--warning-bg:#fff5db;--error:#ab414e;--error-bg:#fff0f1;--shadow:0 18px 50px #161a2b09;font-family:DM Sans,system-ui,-apple-system,sans-serif}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#10131a;--surface:#1a1e28;--surface-alt:#212633;--surface-raised:#292e3b;--text:#f4f3fa;--muted:#a6abba;--line:#353a48;--accent:#aa9bff;--accent-hover:#c6bbff;--accent-soft:#302b50;--sidebar:#151822;--sidebar-text:#a7aab9;--success:#85e2bd;--success-bg:#193c36;--warning:#f5cf7e;--warning-bg:#41341f;--error:#f2a3aa;--error-bg:#493038;--shadow:0 20px 60px #00000021}*{box-sizing:border-box}html{min-width:320px}body{background:var(--bg);color:var(--text);margin:0;font-size:15px;line-height:1.55}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}input,select,textarea{color:var(--text);background:var(--surface);border:1px solid var(--line);border-radius:12px;outline:none;width:100%;min-height:46px;padding:12px 14px}textarea{resize:vertical;line-height:1.6}input::placeholder,textarea::placeholder{color:var(--muted)}input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible{outline:3px solid var(--accent);outline-offset:3px}button:focus:not(:focus-visible){outline:none}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3{font-family:Outfit,DM Sans,system-ui,sans-serif;line-height:1.18}h1{letter-spacing:-.046em;font-size:clamp(2.15rem,4vw,3.3rem);font-weight:700}h2{letter-spacing:-.025em;font-size:1.45rem}h3{font-size:1.08rem}em{color:var(--accent);font-style:normal}p{line-height:1.65}svg{flex-shrink:0}.muted{color:var(--muted)}.small{font-size:.82rem}.eyebrow,.step-label{color:var(--accent);letter-spacing:.17em;text-transform:uppercase;font-size:.69rem;font-weight:800;display:inline-block}.step-label{margin-bottom:16px}.panel{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:21px}.button{text-align:center;white-space:normal;border:1px solid #0000;border-radius:11px;justify-content:center;align-items:center;gap:9px;min-height:45px;padding:11px 17px;font-weight:700;line-height:1.2;transition:transform .16s,background .16s,border-color .16s;display:inline-flex}.button:not(:disabled):hover{transform:translateY(-2px)}.button:not(:disabled):active{transform:translateY(0)}.button.primary{color:#fff;background:#7563ef}.button.primary:not(:disabled):hover{background:#604de1}.button.secondary{background:var(--accent-soft);color:var(--accent)}.button.ghost{border-color:var(--line);color:var(--text);background:0 0}.button.danger{background:var(--error-bg);color:var(--error)}.button.full{width:100%}.button.large{padding:15px 23px}.button-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.icon-button{color:var(--muted);background:0 0;border:0;border-radius:10px;place-items:center;width:42px;height:42px;display:grid}.icon-button:hover{background:var(--surface-alt);color:var(--text)}.text-button{color:var(--accent);background:0 0;border:0;align-items:center;gap:5px;padding:4px 0;font-size:.85rem;font-weight:700;display:inline-flex}.text-button:hover{text-decoration:underline}.field-label{margin:13px 0 7px;font-size:.83rem;font-weight:700;display:block}.select-label{flex:1;min-width:160px;font-size:.81rem;font-weight:700}.select-label select,.select-label input{margin-top:7px;font-weight:400;display:block}.inline-fields{flex-wrap:wrap;align-items:flex-end;gap:10px;margin:14px 0;display:flex}.inline-fields>input,.inline-fields>select{flex:1;min-width:160px}.divider{border-top:1px solid var(--line);margin:24px 0}.alert,.warning,.success-message{border-radius:11px;flex-wrap:wrap;align-items:center;gap:10px;margin:14px 0;padding:13px 16px;font-size:.86rem;display:flex}.alert{color:var(--error);background:var(--error-bg)}.warning{color:var(--warning);background:var(--warning-bg)}.success-message{color:var(--success);background:var(--success-bg)}.alert p,.warning p{margin:0}.empty{text-align:center;color:var(--muted);padding:45px 23px;font-size:.92rem}.empty.compact{padding:25px 12px}.empty svg{color:var(--accent);margin-bottom:9px}.empty h3{color:var(--text);margin:8px 0}.empty p{max-width:350px;margin:0 auto}.state-box{text-align:center;color:var(--muted);padding:30px}.app-loading{flex-direction:column;justify-content:center;align-items:center;gap:15px;min-height:100vh;display:flex}.app-loading .brand-mark{color:var(--accent)}.brand-mark{letter-spacing:.03em;white-space:nowrap;color:#fff;font-family:Outfit,system-ui,sans-serif;font-size:1.2rem;font-weight:800}.brand-mark span{color:#a899ff;vertical-align:middle;margin-right:8px;font-size:1.7rem}.brand-mark.large{font-size:1.35rem}.brand-mark.large span{font-size:2rem}.app-shell{min-height:100vh;display:flex}.sidebar{background:var(--sidebar);width:236px;min-height:100vh;color:var(--sidebar-text);z-index:30;flex-direction:column;flex-shrink:0;align-self:flex-start;padding:27px 17px 19px;display:flex;position:sticky;top:0}.sidebar .brand-mark{margin:0 7px}.sidebar-caption{letter-spacing:.12em;color:#797d92;margin:4px 9px 45px;font-size:.58rem}.nav-title{letter-spacing:.19em;color:#777d91;margin:0 13px 12px;font-size:.64rem;font-weight:700}.sidebar nav{flex-direction:column;gap:4px;display:flex}.nav-link{color:var(--sidebar-text);text-align:left;background:0 0;border:0;border-radius:11px;align-items:center;gap:13px;width:100%;min-height:44px;padding:9px 13px;font-size:.86rem;font-weight:600;display:flex}.nav-link svg{width:18px;height:18px}.nav-link:hover,.nav-link.active{color:#eeeaff;background:#2d2c46}.nav-link.active{box-shadow:inset 3px 0 #a899ff}.nav-count{color:#d9ccff;margin-left:auto}.sidebar-bottom{margin-top:auto}.sidebar-callout{color:#c7c8d7;background:linear-gradient(145deg,#333052,#282a42);border:1px solid #4d486c;border-radius:15px;flex-direction:column;gap:3px;margin:0 2px 22px;padding:18px;font-size:.79rem;display:flex}.sidebar-callout strong{color:#fff;font-size:.9rem}.callout-orb{color:#fff;background:#776bea;border-radius:50%;place-items:center;width:37px;height:37px;margin-bottom:10px;font-size:1.6rem;display:grid}.main-area{flex:1;min-width:0}.topbar{border-bottom:1px solid var(--line);background:var(--surface);justify-content:space-between;align-items:center;gap:12px;min-height:70px;padding:0 clamp(22px,4vw,66px);display:flex}.breadcrumb{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.74rem;font-weight:700}.breadcrumb span{color:var(--accent);margin:0 9px}.top-actions{align-items:center;gap:11px;font-size:.82rem;font-weight:700;display:flex}.cloud-indicator{color:var(--success);align-items:center;gap:6px;margin-right:11px;font-size:.75rem;display:flex}.cloud-indicator.pending{color:var(--warning)}.top-avatar,.avatar{background:var(--accent-soft);color:var(--accent);flex-shrink:0;place-items:center;font-weight:800;display:grid}.top-avatar{border-radius:50%;width:30px;height:30px}.content{width:min(1180px,100%);margin:0 auto;padding:37px clamp(21px,4vw,62px) 80px}.page-flow{flex-direction:column;gap:25px;display:flex}.page-heading{justify-content:space-between;align-items:center;gap:24px;display:flex}.page-heading h1{margin:7px 0 6px}.page-heading p{margin:0}.section-top{justify-content:space-between;align-items:center;gap:15px;display:flex}.section-top h2,.section-top h3{margin:0}.section-top .eyebrow+h2{margin-top:6px}.round-icon{background:var(--accent-soft);width:46px;height:46px;color:var(--accent);border-radius:14px;flex-shrink:0;place-items:center;display:grid}.round-icon.blue{color:#3377a7;background:#e5f2fa}.round-icon.orange{color:#bb763b;background:#fcf0e3}.round-icon.success{background:var(--success-bg);color:var(--success)}[data-theme=dark] .round-icon.blue{color:#83c0e9;background:#203442}[data-theme=dark] .round-icon.orange{color:#f3ad72;background:#433123}.hero{color:#fff;background:linear-gradient(112deg,#242239 4%,#353365 67%,#5650a0 110%);border:0;align-items:center;min-height:325px;padding:clamp(27px,4vw,46px);display:flex;position:relative;overflow:hidden}.hero-copy{z-index:1;max-width:570px;position:relative}.hero .eyebrow{color:#c3bcff}.hero h1{margin:15px 0 10px;font-size:clamp(2.5rem,4vw,3.65rem)}.hero h1 em{color:#b6a4ff}.hero p{color:#d3d0eb;max-width:390px;margin-bottom:24px;font-size:.91rem}.hero-art{place-items:center;width:44%;height:100%;display:grid;position:absolute;bottom:-55px;right:-10px}.art-circle{aspect-ratio:1;border:1px solid #ffffff30;border-radius:50%;place-items:center;width:min(290px,90%);display:grid;transform:rotate(-14deg);box-shadow:0 0 0 32px #c4b3ff0e,0 0 0 65px #c4b3ff0b,inset 0 0 90px #a897fd33}.art-circle span{letter-spacing:-.08em;color:#d8d2ff;font:700 clamp(2rem,4vw,3.6rem)/.8 Outfit,sans-serif}.art-circle i{text-align:right;color:#acfae7;font-style:normal;display:block}.art-spark{color:#c4b8ff;font-size:2.2rem;position:absolute;top:24px;right:20%}.sync-notice{background:var(--warning-bg);color:var(--warning);border-radius:13px;align-items:center;gap:13px;padding:14px 18px;font-size:.82rem;display:flex}.sync-notice div{flex-direction:column;flex:1;display:flex}.sync-notice>span{flex:1}.quick-grid,.two-col{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.quick-card{color:var(--text);text-align:left;align-items:center;gap:15px;min-width:0;padding:18px 20px;display:flex}.quick-card>span:nth-child(2){flex-direction:column;flex:1;min-width:0;display:flex}.quick-card small,.quick-card>svg{color:var(--muted)}.quick-card:hover,.unit-card:hover{border-color:var(--accent);transform:translateY(-2px)}.content>.page-flow>section.panel,.content>.page-flow>section:not(.hero):not(.selector):not(.learning-card):not(.completion){padding:26px}.unit-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:13px;margin-top:22px;display:grid}.unit-card{border:1px solid var(--line);background:var(--surface-alt);text-align:left;min-height:176px;color:var(--text);border-radius:15px;flex-direction:column;align-items:flex-start;gap:5px;padding:19px 18px;transition:transform .18s,border-color .18s;display:flex;position:relative}.unit-card:nth-child(3n+2){background:var(--accent-soft)}.unit-card .eyebrow{color:var(--muted);margin-top:auto}.unit-card strong{font-family:Outfit,sans-serif;font-size:1.2rem;line-height:1.25}.unit-card small{color:var(--muted)}.unit-shape{color:var(--accent)}.unit-arrow{color:var(--muted);position:absolute;top:21px;right:16px}.count-badge,.tree-count{color:var(--accent);background:var(--accent-soft);border-radius:100px;padding:3px 9px;font-size:.75rem;font-weight:700}.list-panel,.detail-panel,.create-panel{padding:25px}.list-panel h2{margin:0}.list-panel .section-top{margin-bottom:17px}.tree-item{color:var(--text);text-align:left;background:0 0;border:0;border-radius:9px;align-items:center;gap:10px;width:100%;min-height:48px;padding:9px 13px;font-size:.9rem;display:flex}.tree-item:hover,.tree-item.active{background:var(--accent-soft)}.tree-item.active{color:var(--accent);font-weight:700}.tree-icon{color:var(--accent)}.tree-name{text-overflow:ellipsis;flex:1;overflow:hidden}.tree-arrow{color:var(--muted)}.detail-stack{flex-direction:column;gap:13px;min-width:0;display:flex}.detail-panel .section-top h2{margin:7px 0 0}.detail-panel .bar-wrap{margin-top:18px}.bar-wrap{align-items:center;gap:14px;display:flex}.bar-track{background:var(--surface-raised);border-radius:99px;flex:1;height:9px;overflow:hidden}.bar-fill{background:linear-gradient(90deg,#7d6cfc,#78c9bd);border-radius:99px;height:100%;transition:width .3s}.bar-wrap>.small{white-space:nowrap}.vocab-list{margin-top:11px}.vocab-row{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:14px 0;display:flex}.vocab-row>div{flex-direction:column;gap:1px;display:flex}.vocab-row small{color:var(--muted)}.vocab-row .muted{font-size:.88rem}.detail-placeholder{flex-direction:column;justify-content:center;align-items:center;min-height:260px;display:flex}.create-panel{max-width:750px}.create-panel h3{margin-bottom:16px}.stats-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:17px 0;display:grid}.stat{background:var(--surface-alt);border:1px solid var(--line);border-radius:13px;flex-direction:column;gap:5px;min-width:0;padding:18px 16px;display:flex}.stat strong{letter-spacing:-.035em;font:700 1.75rem Outfit,system-ui,sans-serif}.progress-list{flex-direction:column;gap:23px;margin-top:23px;display:flex}.progress-list .bar-wrap{margin-top:8px}.preview-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:20px 0;display:grid}.preview-stats .stat{padding:10px}.preview-stats .stat strong{font-size:1.3rem}.segmented{background:var(--surface-alt);border:1px solid var(--line);border-radius:12px;margin:22px 0;padding:4px;display:flex}.segmented button{color:var(--muted);background:0 0;border:0;border-radius:9px;flex:1;padding:9px 12px;font-weight:700}.segmented button.chosen{background:var(--surface);color:var(--accent);box-shadow:var(--shadow)}.import-layout>section{min-width:0;padding:25px}.import-layout h2{margin-bottom:5px}.import-layout textarea{font-family:ui-monospace,SFMono-Regular,monospace;font-size:.85rem}.preview-list{max-height:420px;margin:18px 0;overflow-y:auto}.preview-row{border-bottom:1px solid var(--line);grid-template-columns:24px minmax(0,1fr) 16px minmax(0,1fr);align-items:center;gap:8px;padding:11px 0;font-size:.85rem;display:grid}.preview-row>span:nth-child(2),.preview-row strong{overflow-wrap:anywhere}.preview-row small{grid-column:2/-1}.child-list{flex-direction:column;gap:8px;margin-top:20px;display:flex}.child-item{border:1px solid var(--line);border-radius:12px;padding:10px}.child-item.selected{border-color:var(--accent);background:var(--accent-soft)}.child-select{color:var(--text);text-align:left;background:0 0;border:0;align-items:center;gap:12px;width:100%;display:flex}.child-select>strong{flex:1}.avatar{border-radius:11px;width:38px;height:38px}.child-actions{gap:15px;padding:6px 0 0 50px;display:flex}.form-stack{flex-direction:column;display:flex}.form-stack .button{margin-top:18px}.form-stack .field-label{margin-bottom:4px}.form-stack .field-label:first-child{margin-top:0}.selector{max-width:820px;padding:28px}.selection-list{margin:18px 0}.selection-item{border:1px solid var(--line);cursor:pointer;border-radius:11px;align-items:center;gap:14px;margin-bottom:9px;padding:14px;display:flex}.selection-item:has(input:checked){border-color:var(--accent);background:var(--accent-soft)}.selection-item input{width:19px;height:19px;min-height:0;accent-color:var(--accent);flex-shrink:0}.selection-item>span:last-child{flex-direction:column;display:flex}.selection-item small{color:var(--muted)}.selection-icon{color:var(--accent)}.selector-footer{justify-content:space-between;align-items:center;gap:12px;display:flex}.learning-layout{gap:16px;max-width:740px;margin:auto}.session-top{justify-content:space-between;align-items:center;gap:10px;display:flex}.learning-card{min-height:430px;margin-top:12px;padding:clamp(25px,5vw,46px)}.card-meta{justify-content:space-between;align-items:center;margin-bottom:48px;display:flex}.card-symbol{color:var(--accent);font-size:1.7rem}.learning-card h1{overflow-wrap:anywhere;margin-bottom:11px;font-size:clamp(2rem,5vw,3.4rem)}.question-hint{margin-bottom:30px}.learning-card input:not([type=radio]){margin-bottom:15px;font-size:1.14rem}.answer-options{gap:10px;margin:25px 0;display:grid}.answer-option{border:1px solid var(--line);cursor:pointer;border-radius:11px;align-items:center;gap:10px;min-height:55px;padding:14px 17px;display:flex}.answer-option:hover,.answer-option.selected{border-color:var(--accent);background:var(--accent-soft)}.answer-option input{width:17px;height:17px;min-height:0;accent-color:var(--accent)}.answer-option>span:nth-child(2){flex:1}.option-circle{border:1px solid var(--line);border-radius:50%;width:15px;height:15px}.answer-button{min-width:210px;margin-top:12px}.feedback-result{border-radius:13px;align-items:center;gap:13px;margin-bottom:20px;padding:16px;display:flex}.feedback-result.right{background:var(--success-bg);color:var(--success)}.feedback-result.wrong{background:var(--warning-bg);color:var(--warning)}.feedback-result .round-icon{color:inherit;background:0 0}.feedback-result>div{flex-direction:column;display:flex}.correct-answer{color:var(--text);font:600 1.3rem Outfit,sans-serif}.example{border-left:3px solid var(--accent);margin:24px 0;padding:4px 0 4px 17px}.example p{margin:4px 0}.feedback>.muted{align-items:center;gap:7px;display:flex}.session-footnote{color:var(--muted);margin:5px 0;font-size:.78rem}.completion{text-align:center;max-width:790px;margin:0 auto;padding:50px}.completion>.round-icon{margin:0 auto 19px}.completion h1{margin:11px 0}.completion>.button{margin-top:22px}.completion .stats-grid{text-align:left}.completion>.warning{max-width:500px;margin:19px auto}.mobile-menu,.nav-backdrop{display:none}.login-page{color:#f5f3fa;background:#151722;place-items:center;min-height:100vh;padding:55px 30px;display:grid;position:relative;overflow:hidden}.login-page:before{content:"";pointer-events:none;background:radial-gradient(circle,#705bd72b,#0000 65%);width:700px;height:700px;position:absolute;top:-290px;left:-300px}.login-theme{color:#e3e0f1;position:absolute;top:20px;right:24px}.login-theme:hover{background:#2c2e3b}.login-grid{z-index:1;grid-template-columns:1fr minmax(340px,440px);align-items:center;gap:clamp(35px,8vw,145px);width:min(1120px,100%);display:grid}.login-intro{flex-direction:column;justify-content:center;min-height:560px;display:flex;position:relative}.login-intro .eyebrow{color:#aea0ff;margin-top:45px}.login-intro h1{margin:20px 0;font-size:clamp(3rem,6vw,5.4rem);line-height:1.03}.login-intro em{color:#ad9bff}.login-intro p{color:#bec1d0;max-width:350px}.login-graphic{color:#bbadff;place-items:center;width:180px;height:160px;margin-top:35px;font:600 1.1rem/1.5 Outfit,sans-serif;display:grid;position:relative;transform:rotate(-8deg)}.orbit{border:1px solid #4d4771;border-radius:50%;width:176px;height:155px;position:absolute;transform:rotate(-25deg)}.orbit-two{border-color:#343950;transform:rotate(34deg)}.login-graphic span{z-index:1}.login-card{color:#f5f3fa;background:#20232f;border-color:#3b3d4c;padding:clamp(27px,4vw,38px)}.login-card h2{margin-bottom:7px;font-size:1.9rem}.login-card>.muted{color:#b5b7c4}.login-card .step-label{color:#b3a8ff}.login-card input{color:#fff;background:#292d3a;border-color:#414654}.login-card .field-label{margin:25px 0 7px}.login-card .button.full{margin-top:17px}.profile-picker{gap:9px;max-height:270px;margin-top:25px;display:grid;overflow-y:auto}.profile-item{color:#e7e5ef;text-align:left;background:#272b39;border:1px solid #414654;border-radius:12px;align-items:center;gap:12px;padding:10px 12px;display:flex}.profile-item.selected,.profile-item:hover{background:#33304e;border-color:#a698ff}.profile-item>.avatar{color:#eee9ff;background:#4a3e80}.profile-item>span:nth-child(2){flex-direction:column;flex:1;display:flex}.profile-item small{color:#bbbcca}.profile-item svg{color:#b3a4ff}.login-note{color:#8c90a1;text-align:center;margin:25px 0 0;font-size:.72rem}.login-card .state-box{color:#bcc0d0}@media (width<=1000px){.sidebar{width:210px}.hero-art{opacity:.48}.two-col.import-layout{grid-template-columns:1fr}.topbar{padding:0 24px}.content{padding:31px 28px 70px}}@media (width<=760px){.sidebar{width:min(285px,85vw);height:100vh;transition:transform .2s;position:fixed;top:0;left:0;overflow-y:auto;transform:translate(-100%)}.sidebar.open{transform:translate(0)}.nav-backdrop{z-index:20;background:#0000007a;border:0;display:block;position:fixed;inset:0}.mobile-menu{z-index:19;background:var(--accent);color:#fff;border-radius:15px;width:52px;height:52px;display:grid;position:fixed;bottom:18px;right:18px;box-shadow:0 5px 20px #0000003b}.mobile-menu:hover{background:var(--accent-hover);color:var(--bg)}.topbar{min-height:62px;padding:0 22px}.top-name{display:none}.content{padding:25px 18px 95px}.hero{min-height:310px}.hero-art{opacity:.32;right:-110px}.two-col{grid-template-columns:1fr}.page-heading{align-items:flex-start}.login-grid{grid-template-columns:1fr;gap:20px;max-width:480px}.login-intro{min-height:0}.login-intro .eyebrow{margin-top:23px}.login-intro h1{margin:12px 0;font-size:clamp(2.4rem,8vw,3.8rem)}.login-intro p{margin-bottom:0}.login-graphic{display:none}.login-page{align-items:start;padding:60px 20px 30px}.login-card{padding:27px}.cloud-indicator span{display:none}}@media (width<=480px){.hero{min-height:300px;padding:26px}.hero h1{font-size:2.5rem}.hero-copy{max-width:100%}.hero-art{opacity:.18}.quick-grid,.stats-grid{grid-template-columns:1fr}.stats-grid .stat{flex-direction:row;justify-content:space-between;align-items:center}.stats-grid .stat strong{font-size:1.3rem}.page-heading{flex-wrap:wrap}.page-heading>.button{width:100%}.content>.page-flow>section.panel{padding:20px}.bar-wrap{flex-direction:column;align-items:flex-start;gap:6px}.bar-wrap>.bar-track{flex:auto;width:100%;height:9px}.completion{padding:26px 18px}.preview-stats{grid-template-columns:repeat(2,1fr)}.sync-notice{flex-wrap:wrap}.selector-footer{flex-direction:column;align-items:stretch}.selector-footer .button{width:100%}.card-meta{margin-bottom:28px}.learning-card{min-height:360px}.answer-button{width:100%}.top-actions{gap:7px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}.personal-lists-page{gap:20px}.personal-nav{align-items:center;gap:16px;min-width:0;padding:12px 16px;display:flex}.personal-nav-strip{scrollbar-width:thin;gap:9px;min-width:0;padding:4px 2px;display:flex;overflow-x:auto}.personal-nav-item{border:1px solid var(--line);background:var(--surface-alt);color:var(--text);text-overflow:ellipsis;white-space:nowrap;border-radius:999px;flex:none;max-width:230px;min-height:40px;padding:8px 16px;font-weight:700;overflow:hidden}.personal-nav-item:hover,.personal-nav-item.active{background:var(--accent-soft);color:var(--accent);border-color:var(--accent)}.personal-overview{padding:26px}.personal-overview h2{align-items:center;gap:12px;display:flex}.personal-overview-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,230px),1fr));gap:12px;display:grid}.personal-overview-item{text-align:left;border:1px solid var(--line);background:var(--surface-alt);color:var(--text);border-radius:13px;grid-template-columns:1fr auto;align-items:center;gap:4px 8px;min-height:88px;padding:17px;display:grid}.personal-overview-item:hover{border-color:var(--accent)}.personal-overview-item strong,.personal-overview-item .small{overflow-wrap:anywhere;min-width:0}.personal-overview-item .small{grid-column:1}.personal-overview-item svg{color:var(--accent);grid-area:1/2/3}.personal-editor{grid-template-columns:minmax(0,1fr) minmax(290px,.9fr);align-items:start;gap:20px;display:grid}.personal-list-detail,.personal-catalog{min-width:0;padding:25px}.personal-list-detail.drop-active{outline:3px dashed var(--accent);outline-offset:3px;background:var(--accent-soft)}.personal-list-detail .section-top,.personal-catalog .section-top{flex-wrap:wrap;gap:12px}.personal-list-detail .section-top h2,.personal-catalog .section-top h2{overflow-wrap:anywhere;margin:5px 0 0}.personal-list-detail .section-top .button{flex-shrink:0}.personal-progress{align-items:center;gap:12px;margin:18px 0;display:flex}.personal-progress>.small{white-space:nowrap}.personal-drop-hint{margin:15px 0}.personal-catalog .select-label,.personal-picker .select-label,.personal-lists-page .create-panel .select-label{margin:16px 0 10px;display:block}.personal-search{align-items:center;margin-top:6px;display:flex;position:relative}.personal-search svg{color:var(--muted);pointer-events:none;position:absolute;left:14px}.personal-search input{padding-left:42px}.personal-results{max-height:610px;margin-top:12px;overflow-y:auto}.personal-result{border-bottom:1px solid var(--line);align-items:center;gap:10px;min-width:0;padding:12px 4px;display:flex}.personal-result[draggable=true]{cursor:grab}.personal-result[draggable=true]:active{cursor:grabbing}.personal-result-word{overflow-wrap:anywhere;flex-direction:column;flex:1;min-width:0;display:flex}.personal-result-word .muted{font-size:.83rem}.personal-result .button{padding:9px 11px;font-size:.76rem}.drag-handle{color:var(--muted)}.personal-picker-button{display:none}.personal-picker-overlay{z-index:40;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.personal-picker-backdrop{background:#0c0f19a6;border:0;position:absolute;inset:0}.personal-picker{flex-direction:column;width:min(620px,100%);max-height:min(90vh,780px);padding:22px;display:flex;position:relative;overflow:hidden;box-shadow:0 24px 80px #00000047}.personal-picker .section-top h2{margin:0}.personal-picker .personal-results{flex:1;min-height:0;overflow:auto}.personal-check{cursor:pointer;flex:1;align-items:center;gap:12px;min-width:0;display:flex}.personal-check input{width:21px;height:21px;min-height:21px;accent-color:var(--accent);flex:none}.personal-picker-footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding-top:15px;display:flex}@media (width<=1050px){.personal-editor{grid-template-columns:minmax(0,1fr) minmax(260px,.85fr)}.personal-result:not(:has(.personal-check)){flex-wrap:wrap}.personal-result .button{margin-left:27px}}@media (width<=760px){.personal-editor{display:block}.personal-catalog,.personal-drop-hint{display:none}.personal-picker-button{margin-top:16px;display:inline-flex}.personal-nav{display:block}.personal-nav>.small{margin-bottom:5px;display:block}.personal-picker{max-height:calc(100dvh - 30px)}.personal-picker-footer .button{min-width:0}.personal-list-detail{padding:20px}}.brand-logo{align-items:center;width:220px;max-width:100%;line-height:0;display:inline-flex}.brand-logo img{object-fit:contain;width:100%;height:auto;display:block}.brand-logo.large{background:#fffffff5;border-radius:16px;width:min(330px,78%);padding:14px 18px;box-shadow:0 16px 45px #00000021}.brand-logo.loading-logo{width:min(250px,70vw)}.brand-logo.sidebar-logo{background:#fff;border-radius:11px;width:174px;margin:0 5px;padding:9px 11px}.sidebar-caption{margin-top:8px}.sidebar-callout{padding:17px 18px}.hero-copy{max-width:59%}.brand-logo.hero-logo{opacity:.72;background:#ffffffe0;border-radius:18px;width:min(38%,470px);padding:clamp(12px,2vw,24px);position:absolute;top:50%;right:clamp(20px,4vw,58px);transform:translateY(-50%);box-shadow:0 22px 70px #07071626}.login-intro{justify-content:center}.login-intro .brand-logo+.eyebrow{margin-top:42px}@media (width<=1000px){.brand-logo.hero-logo{opacity:.48}.hero-copy{max-width:65%}}@media (width<=760px){.brand-logo.sidebar-logo{width:185px}.login-intro .brand-logo+.eyebrow{margin-top:23px}.brand-logo.hero-logo{display:none}.hero-copy{max-width:100%}}@media (width<=480px){.personal-progress{flex-direction:column;align-items:flex-start;gap:5px}.personal-progress .bar-track{flex:auto;width:100%;height:9px}.personal-picker-overlay{padding:0}.personal-picker{border-radius:0;width:100%;height:100dvh;max-height:100dvh;padding:20px 16px}.personal-picker-footer{flex-wrap:wrap}.personal-picker-footer .button{flex:1}}.vocab-row>div:first-child{overflow-wrap:anywhere;min-width:0}.vocab-row .vocab-actions{flex-direction:row;flex-shrink:0;gap:3px;display:flex}.vocab-edit-form{padding:4px 0 18px}.vocab-edit-fields{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:12px;display:grid}.vocab-edit-form .button-row{margin-top:10px}.import-mode{max-width:480px;margin:0}.import-help{background:var(--surface-alt);border:1px solid var(--line);border-radius:13px;margin:18px 0;padding:16px;overflow:hidden}.import-help pre{white-space:pre-wrap;overflow-wrap:anywhere;background:var(--surface);border-radius:9px;max-height:360px;padding:12px;font:12px/1.55 ui-monospace,SFMono-Regular,monospace;overflow:auto}.import-edit-list{max-height:620px;margin:15px 0;overflow:auto}.import-edit-row{border-top:1px solid var(--line);padding:16px 0}.import-edit-row .section-top{margin-bottom:12px}.import-edit-fields{grid-template-columns:repeat(auto-fit,minmax(min(100%,190px),1fr));gap:12px;display:grid}.import-edit-fields label{gap:5px;min-width:0;font-size:.82rem;font-weight:700;display:grid}.import-edit-fields textarea{font-family:inherit}.import-save{margin-top:18px}.import-layout .section-top{flex-wrap:wrap;gap:12px}.import-layout .section-top h2{margin:0}.dropdown-field{flex:1;min-width:0}.dropdown-field>.field-label{display:block}.dropdown{min-width:0;position:relative}.dropdown-trigger{text-align:left;width:100%;min-height:46px;color:var(--text);background:var(--surface);border:1px solid var(--line);border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:11px 14px;display:flex}.dropdown-trigger[aria-expanded=true]{border-color:var(--accent)}.dropdown-value{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.dropdown-options{z-index:40;background:var(--surface);border:1px solid var(--line);border-radius:12px;max-height:min(300px,45vh);padding:5px;position:absolute;top:calc(100% + 5px);left:0;right:0;overflow:auto;box-shadow:0 16px 34px #161a2b26}.dropdown-option{text-align:left;width:100%;min-height:42px;color:var(--text);overflow-wrap:anywhere;background:0 0;border:0;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:9px 10px;display:flex}.dropdown-option:hover,.dropdown-option:focus-visible,.dropdown-option[aria-selected=true]{background:var(--accent-soft);color:var(--accent)}.dropdown-option>span{min-width:0}.organizer-layout{grid-template-columns:minmax(280px,.85fr) minmax(0,1.15fr);align-items:start;gap:20px;display:grid}.organizer-tree,.organizer-tree ul{margin:0;padding:0;list-style:none}.organizer-tree ul{border-left:1px solid var(--line);margin-left:16px;padding-left:9px}.organizer-tree li{min-width:0}.organizer-node{border:1px solid #0000;border-radius:10px;align-items:center;margin:4px 0;display:flex}.organizer-node.active{background:var(--accent-soft)}.organizer-group{min-width:0;color:var(--text);text-align:left;background:0 0;border:0;flex:1;align-items:center;gap:8px;min-height:44px;padding:10px 6px;display:flex}.organizer-group>span{overflow-wrap:anywhere;flex:1}.organizer-group>small{color:var(--muted)}.organizer-word{border-bottom:1px solid var(--line);align-items:center;gap:9px;padding:9px 4px;font-size:.86rem;display:flex}.organizer-word>input{width:18px;height:18px;min-height:0;accent-color:var(--accent);flex-shrink:0}.organizer-word>span{overflow-wrap:anywhere;flex:1;min-width:0}.organizer-word strong,.organizer-word small{display:block}.organizer-word small{color:var(--muted)}.organizer-controls{background:var(--surface-alt);border:1px solid var(--line);border-radius:12px;gap:10px;margin:18px 0;padding:14px;display:grid}.organizer-root{border:1px dashed var(--line);border-radius:10px;padding:12px}.organizer-layout .drop-active{outline:2px dashed var(--accent);background:var(--accent-soft)}.organizer-group[draggable=true],.organizer-word[draggable=true]{cursor:grab}.organizer-group:active,.organizer-word:active{cursor:grabbing}@media (width<=900px){.organizer-layout{grid-template-columns:minmax(0,1fr)}.organizer-layout>.list-panel{padding:18px}.organizer-tree ul{margin-left:8px;padding-left:6px}}.organizer-group>.organizer-book-cover{flex:none;width:35px;height:49px;display:block}.organizer-book-cover .book-cover{width:35px;height:49px}.organizer-book-cover .book-cover-fallback{padding:3px}.organizer-book-cover .book-cover-fallback>svg{width:18px;height:18px}.organizer-book-cover .book-cover-fallback>span{display:none}.organizer-order-controls{flex:none;align-items:center;display:flex}.organizer-order-button{width:32px;min-height:44px;color:var(--muted);background:0 0;border:0;border-radius:8px;flex:none;place-items:center;padding:0;display:grid}.organizer-order-button:not(:disabled):hover{background:var(--accent-soft);color:var(--accent)}.word-selection-bar{flex-wrap:wrap;align-items:center;gap:9px;padding:14px 0;display:flex}.word-selection-bar>p{flex-basis:100%;margin:0}.vocab-row>.word-selection-check{width:19px;height:19px;min-height:0;accent-color:var(--accent);flex:none}.vocab-row>.vocab-summary{overflow-wrap:anywhere;flex:1;min-width:0}.vocab-entry.selected{background:var(--accent-soft);border-radius:10px}.word-drag-handle[draggable=true]{cursor:grab}.word-drag-handle:active{cursor:grabbing}.vocab-assignment{background:var(--surface-alt);border:1px solid var(--line);overflow-wrap:anywhere;border-radius:12px;margin:8px 0 16px;padding:15px}.vocab-assignment h4{margin-bottom:8px}.vocab-assignment p:last-child{margin:10px 0 0}@media (width<=480px){.vocab-row{flex-wrap:wrap}.vocab-row>.vocab-summary{flex-basis:calc(100% - 45px)}.vocab-row>.vocab-actions{margin-left:auto}.word-selection-bar .button{flex:1}}.organizer-drag-preview{pointer-events:none;width:320px;height:200px;color:var(--text);font:14px/1.4 DM Sans,system-ui,sans-serif;position:fixed;top:0;left:-10000px}.organizer-drag-card{border:1px solid var(--accent);background:var(--surface);transform-origin:0 0;border-radius:14px;width:260px;height:132px;padding:13px 15px;position:absolute;top:16px;left:16px;overflow:hidden;box-shadow:0 9px 20px #161a2b33}.organizer-drag-card[data-layer="1"]{background:var(--accent-soft);transform:translate(10px,8px)rotate(3deg)}.organizer-drag-card[data-layer="2"]{background:var(--surface-raised);transform:translate(20px,15px)rotate(6deg)}.organizer-drag-heading{color:var(--accent);justify-content:space-between;align-items:center;gap:8px;margin-bottom:9px;font-size:11px;font-weight:700;display:flex}.organizer-drag-count{background:var(--accent);color:var(--surface);white-space:nowrap;border-radius:999px;padding:3px 9px}.organizer-drag-card>strong,.organizer-drag-translation{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.organizer-drag-card>strong{font-size:17px}.organizer-drag-translation{color:var(--muted);font-size:12px}.organizer-drag-card>small{color:var(--muted);margin-top:7px;font-size:11px;display:block}.word-learning-status{--word-blue:#386da6;--word-orange:#ad641d;--word-yellow:#9c7818;border:1px solid var(--line);background:var(--surface-alt);border-radius:14px;min-width:0;margin:22px 0 14px;padding:16px;font-size:.84rem;line-height:1.45}:root[data-theme=dark] .word-learning-status{--word-blue:#99c4ff;--word-orange:#f1b575;--word-yellow:#e5cf78}.word-learning-status.is-secure{border-color:var(--word-blue);background:color-mix(in srgb,var(--word-blue) 6%,var(--surface-alt))}.word-learning-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 12px;min-height:30px;display:flex}.word-learning-label{align-items:center;gap:7px;font-weight:700;display:inline-flex}.word-learning-dot{background:var(--word-color);border-radius:50%;flex:none;width:9px;height:9px}.word-learning-label.is-new{--word-color:var(--error)}.word-learning-label.is-learning{--word-color:var(--word-orange)}.word-learning-label.is-growing{--word-color:var(--word-yellow)}.word-learning-label.is-good{--word-color:var(--success)}.word-learning-label.is-secure{--word-color:var(--word-blue)}.word-learning-score{white-space:nowrap;font-variant-numeric:tabular-nums;align-items:baseline;gap:4px;display:inline-flex}.word-learning-score>strong{font-size:1.17rem;line-height:1.3}.word-learning-delta-slot{pointer-events:none;flex:none;align-self:center;width:3.2ch;height:1.5em;display:inline-block;position:relative}.word-learning-delta{place-items:center;font-weight:800;animation:.7s ease-out both word-learning-score-delta;display:grid;position:absolute;inset:0}.word-learning-delta.is-positive{color:var(--success)}.word-learning-delta.is-negative{color:var(--warning)}.word-learning-trace{min-height:3.3em;color:var(--muted);flex-direction:column;gap:2px;margin:5px 0 12px;font-size:.76rem;line-height:1.5;display:flex}.word-learning-trace-values{color:var(--text);font-variant-numeric:tabular-nums}.word-learning-trace-values>span{color:var(--muted)}.word-learning-clamp{overflow-wrap:anywhere}.word-learning-caption{color:var(--muted);margin-bottom:10px;font-size:.72rem;display:block}.word-learning-stages{grid-template-columns:repeat(4,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.word-learning-stage{text-align:center;flex-direction:column;align-items:center;gap:3px;min-width:0;padding:0 2px;display:flex;position:relative}.word-learning-stage:not(:first-child):before{content:"";background:var(--line);width:100%;height:3px;position:absolute;top:14px;left:-50%}.word-learning-stage.is-complete:not(:first-child):before{background:var(--success)}.word-learning-stage.is-target:not(:first-child):before{background:linear-gradient(90deg,var(--success),var(--accent-soft))}.word-learning-node{z-index:1;border:2px solid var(--line);background:var(--surface-alt);width:30px;height:30px;color:var(--muted);border-radius:50%;place-items:center;margin-bottom:5px;font-size:.79rem;font-weight:800;display:grid;position:relative}.word-learning-stage.is-complete .word-learning-node{background:var(--success-bg);border-color:var(--success);color:var(--success)}.word-learning-stage.is-target .word-learning-node{background:var(--accent-soft);border-color:var(--accent);color:var(--accent);outline:3px solid var(--accent-soft);outline-offset:2px}.word-learning-check{background:var(--success);color:var(--surface);border-radius:50%;width:14px;height:14px;padding:1px;position:absolute;bottom:-3px;right:-5px}.word-learning-node.is-newly-reached{animation:.65s ease-out both word-learning-stage-reached}.word-learning-stage-name{overflow-wrap:anywhere;max-width:100%;font-size:.77rem}.word-learning-count{font-variant-numeric:tabular-nums;font-size:.76rem}.word-learning-stage-state{color:var(--muted);font-size:.65rem}.word-learning-stage.is-target .word-learning-stage-state{color:var(--accent);font-weight:800}.word-learning-stage.is-complete .word-learning-stage-state{color:var(--success)}.word-learning-milestone,.word-learning-mastery{align-items:flex-start;gap:8px;margin-top:16px;font-size:.78rem;display:flex}.word-learning-milestone>svg{color:var(--accent);margin-top:2px}.word-learning-milestone p{margin:0;line-height:1.5}.word-learning-milestone p+p{margin-top:5px}.word-learning-mastery{background:color-mix(in srgb,var(--word-blue) 9%,var(--surface));color:var(--word-blue);border-radius:9px;align-items:center;padding:10px 12px;font-size:.9rem}.word-learning-mastery.is-newly-secure{animation:.75s ease-out both word-learning-mastery-reached}.word-learning-series{color:var(--muted);margin:8px 0 0;font-size:.72rem;line-height:1.5}.word-learning-series strong{color:var(--text);font-variant-numeric:tabular-nums}.word-learning-sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.learning-strike{--strike-color:var(--muted);border:1px solid var(--line);background:var(--surface-alt);max-width:100%;min-height:48px;color:var(--text);border-radius:12px;align-items:center;gap:9px;padding:7px 11px;display:inline-flex}.learning-strike[data-heat="1"]{--strike-color:var(--warning)}.learning-strike[data-heat="2"]{--strike-color:var(--warning);border-color:color-mix(in srgb,var(--warning) 35%,var(--line));box-shadow:0 0 12px color-mix(in srgb,var(--warning) 9%,transparent)}.learning-strike[data-heat="3"]{--strike-color:var(--warning);background:var(--warning-bg);border-color:color-mix(in srgb,var(--warning) 45%,var(--line));box-shadow:0 0 16px color-mix(in srgb,var(--warning) 15%,transparent)}.learning-strike-icon{color:var(--strike-color);display:flex}.learning-strike-icon.is-rising{animation:.55s ease-out both learning-strike-rise}.learning-strike-icon.is-reset{animation:.5s ease-out both learning-strike-reset}.learning-strike-copy{flex-direction:column;min-width:0;display:flex}.learning-strike-value{font-variant-numeric:tabular-nums;overflow-wrap:anywhere;font-size:.83rem}.learning-strike-before{color:var(--muted)}.learning-strike-caption{color:var(--muted);font-size:.64rem}.learning-strike-heat{align-items:flex-end;gap:3px;height:20px;margin-left:3px;display:flex}.learning-strike-heat>span{background:var(--line);border-radius:3px;width:4px;height:8px}.learning-strike-heat>span:nth-child(2){height:13px}.learning-strike-heat>span:nth-child(3){height:18px}.learning-strike-heat>.is-lit{background:var(--strike-color)}.learning-session-metrics{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.learning-point-values{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.78rem}.learning-answer-form{min-width:0}.learning-answer-form textarea{min-height:120px;margin-bottom:15px;font-size:1rem}.learning-answer-form .answer-option>span{overflow-wrap:anywhere;min-width:0}.learning-answer-form .answer-option input{flex:none}.learning-answer-form .answer-button{min-width:0;max-width:100%}.learning-feedback{border:1px solid var(--line);background:var(--surface-alt);border-radius:13px;margin:22px 0;padding:16px}.learning-feedback.right{border-color:color-mix(in srgb,var(--success) 35%,var(--line));background:var(--success-bg)}.learning-feedback.wrong{border-color:color-mix(in srgb,var(--warning) 35%,var(--line));background:var(--warning-bg)}.learning-feedback-heading{align-items:center;gap:9px;margin-bottom:14px;font-weight:700;display:flex}.learning-feedback.right .learning-feedback-heading{color:var(--success)}.learning-feedback.wrong .learning-feedback-heading{color:var(--warning)}.learning-answer-block{background:var(--surface);border-left:3px solid var(--line);overflow-wrap:anywhere;white-space:pre-wrap;border-radius:9px;padding:11px 12px}.learning-answer-block+.learning-answer-block{margin-top:10px}.learning-answer-block.submitted{border-left-style:dashed;border-left-color:var(--warning)}.learning-answer-block.expected{border-left-color:var(--success)}.learning-answer-block p{margin:4px 0 0}.learning-answer-label{color:var(--muted);margin-bottom:4px;font-size:.73rem;font-weight:700;display:block}.learning-context{border-left:3px solid var(--accent);overflow-wrap:anywhere;white-space:pre-wrap;margin:20px 0;padding:4px 0 4px 14px}.learning-context p{margin:5px 0}@keyframes word-learning-score-delta{0%{opacity:0;visibility:visible;transform:translateY(5px)}18%,65%{opacity:1;visibility:visible;transform:translateY(0)}to{opacity:0;visibility:hidden;transform:translateY(-8px)}}@keyframes word-learning-stage-reached{0%{transform:scale(.94);box-shadow:0 0 #0000}40%{box-shadow:0 0 0 6px color-mix(in srgb,var(--success) 15%,transparent);transform:scale(1.12)}to{transform:scale(1);box-shadow:0 0 #0000}}@keyframes word-learning-mastery-reached{0%{opacity:.65;transform:translateY(3px)}40%{opacity:1;box-shadow:0 0 0 4px color-mix(in srgb,var(--word-blue) 12%,transparent)}to{opacity:1;transform:translateY(0);box-shadow:0 0 #0000}}@keyframes learning-strike-rise{0%{transform:scale(.9)}40%{transform:scale(1.16)}to{transform:scale(1)}}@keyframes learning-strike-reset{0%{opacity:.4}to{opacity:1}}@media (width<=480px){.word-learning-status{padding:12px}.word-learning-stage-name{font-size:.7rem}.word-learning-count{font-size:.72rem}.word-learning-trace{font-size:.73rem}.learning-feedback{padding:12px}.learning-session-metrics{gap:8px}}.word-learning-status{overflow-wrap:anywhere;max-width:100%}.word-learning-summary{margin-bottom:8px}.word-learning-change{align-items:flex-start;gap:7px;margin-bottom:4px;display:flex}.word-learning-change .word-learning-delta-slot{align-self:flex-start}.word-learning-change .word-learning-trace{flex:1;min-width:0;min-height:1.5em;margin:0;font-size:.78rem}.word-learning-caption{margin-bottom:7px}.word-learning-milestone,.word-learning-mastery{margin-top:9px}.word-learning-reached{color:var(--success);flex-wrap:wrap;gap:4px 12px;margin-top:8px;font-size:.75rem;font-weight:700;display:flex}.word-learning-reached>span{align-items:center;gap:5px;display:inline-flex}.word-learning-status.is-compact{border-radius:10px;margin:0;padding:9px 11px;font-size:.75rem}.word-learning-status.is-compact .word-learning-heading{gap:4px 8px;min-height:0}.word-learning-status.is-compact .word-learning-score>strong{font-size:.94rem}.word-learning-status.is-compact .word-learning-label{gap:6px}.word-learning-status.is-compact .word-learning-dot{width:7px;height:7px}.word-learning-status.is-compact .word-learning-stage{gap:2px}.word-learning-status.is-compact .word-learning-node{width:20px;height:20px;margin-bottom:2px;font-size:.62rem}.word-learning-status.is-compact .word-learning-stage:not(:first-child):before{height:2px;top:9px}.word-learning-status.is-compact .word-learning-stage-name{font-size:.65rem;line-height:1.3}.word-learning-status.is-compact .word-learning-check{width:11px;height:11px;bottom:-2px;right:-4px}.word-learning-status.is-compact .word-learning-stage.is-target .word-learning-node{outline-offset:1px;outline-width:2px}.word-learning-status.is-compact .word-learning-milestone>svg,.word-learning-status.is-compact .word-learning-mastery>svg{width:13px;height:13px}.word-learning-status.is-compact .word-learning-mastery{background:0 0;padding:0}.learning-layout>section.learning-card[data-card-state]{min-width:0;max-width:100%;min-height:0;margin-top:0;padding:16px}.learning-card[data-card-state]>.card-meta{gap:8px;min-width:0;margin-bottom:12px}.learning-card[data-card-state]>.card-meta .eyebrow{overflow-wrap:anywhere;letter-spacing:.09em;min-width:0;font-size:.63rem}.learning-card[data-card-state] .learning-question,.learning-card[data-card-state] .learning-feedback{overflow-wrap:anywhere;min-width:0;max-width:100%}.learning-card[data-card-state=question] h1{margin:0 0 6px;font-size:clamp(1.65rem,4.5vw,2.4rem);line-height:1.2}.learning-card[data-card-state=question] .question-hint{margin:0 0 8px;font-size:.85rem;line-height:1.45}.learning-card[data-card-state=question] .learning-point-values{margin:4px 0 8px;font-size:.7rem;line-height:1.45}.learning-card[data-card-state=question] input:not([type=radio]),.learning-card[data-card-state=question] textarea{max-width:100%;min-height:44px;margin-bottom:6px;padding:10px 12px;font-size:1rem}.learning-card[data-card-state=question] textarea{min-height:5.5em;line-height:1.5}.learning-card[data-card-state=question] .answer-options{gap:6px;margin:10px 0}.learning-card[data-card-state=question] .answer-option{gap:8px;min-width:0;max-width:100%;min-height:44px;padding:9px 11px;line-height:1.4}.learning-card[data-card-state=question] .answer-option>span{overflow-wrap:anywhere;min-width:0}.learning-question-support{grid-template-columns:minmax(0,1fr);gap:6px;min-width:0;max-width:100%;margin:10px 0;display:grid}.learning-question-support>.learning-strike{justify-self:end}.learning-question-support>.word-learning-status{width:100%}.learning-card[data-card-state] .answer-button{overflow-wrap:anywhere;width:100%;min-width:0;max-width:100%;min-height:46px;margin-top:8px;padding:11px 13px}.learning-card[data-card-state] .learning-strike{border-radius:9px;gap:6px;min-height:0;padding:4px 8px}.learning-card[data-card-state] .learning-strike-icon>svg{width:16px;height:16px}.learning-card[data-card-state] .learning-strike-copy{flex-flow:wrap;align-items:baseline;gap:2px 7px}.learning-card[data-card-state] .learning-strike-value{font-size:.74rem}.learning-card[data-card-state] .learning-strike-caption{font-size:.61rem}.learning-card[data-card-state] .learning-strike-heat{gap:2px;height:14px;margin-left:2px}.learning-card[data-card-state] .learning-strike-heat>span{width:3px;height:6px}.learning-card[data-card-state] .learning-strike-heat>span:nth-child(2){height:10px}.learning-card[data-card-state] .learning-strike-heat>span:nth-child(3){height:14px}.learning-card[data-card-state=answer] .learning-feedback{background:0 0;border:0;border-radius:0;margin:0;padding:0}.learning-card[data-card-state=answer] .learning-feedback-heading{border-radius:10px;gap:7px;margin-bottom:10px;padding:9px 10px;line-height:1.4}.learning-card[data-card-state=answer] .learning-feedback-heading .round-icon{width:24px;height:24px;color:inherit;background:0 0;flex:none}.learning-card[data-card-state=answer] .learning-feedback.right .learning-feedback-heading{color:var(--success);background:var(--success-bg)}.learning-card[data-card-state=answer] .learning-feedback.wrong .learning-feedback-heading{color:var(--error);background:var(--error-bg)}.learning-card[data-card-state=answer] .learning-answer-block{background:var(--surface-alt);padding:8px 10px;line-height:1.45}.learning-card[data-card-state=answer] .learning-answer-block+.learning-answer-block{margin-top:7px}.learning-card[data-card-state=answer] .learning-answer-label{margin-bottom:2px;font-size:.7rem}.learning-card[data-card-state=answer] .learning-answer-block p{margin:0;line-height:1.45}.learning-card[data-card-state=answer] .learning-feedback.wrong .learning-answer-block.submitted{border-left-color:var(--error)}.learning-card[data-card-state=answer] .learning-feedback.right .learning-answer-block.submitted{border-left-color:var(--success)}.learning-card[data-card-state=answer] .learning-context{margin:12px 0;padding:0 0 0 10px;font-size:.82rem;line-height:1.45}.learning-card[data-card-state=answer] .learning-context p{margin:3px 0;line-height:1.45}.learning-card[data-card-state=answer] .word-learning-status{border:0;border-top:1px solid var(--line);background:0 0;border-radius:0;margin:12px 0 8px;padding:10px 0 0}.learning-card[data-card-state=answer] .word-learning-heading{min-height:24px}.learning-card[data-card-state=answer] .word-learning-node{width:26px;height:26px;margin-bottom:3px}.learning-card[data-card-state=answer] .word-learning-stage:not(:first-child):before{top:12px}.learning-card[data-card-state=answer] .word-learning-series,.learning-card[data-card-state=answer] .learning-feedback>.learning-strike{margin-top:5px}.learning-card[data-card-state=answer] .learning-feedback>p.small{margin:8px 0 0;font-size:.69rem;line-height:1.4}.learning-card[data-card-state=answer] .learning-feedback>p.small>svg{vertical-align:middle;margin-right:3px}.learning-card[data-card-state=answer] .learning-feedback-heading h1{letter-spacing:0;color:inherit;margin:0;font-family:inherit;font-size:1.05rem;line-height:1.35}.learning-card[data-card-state=answer] .learning-feedback-heading h1:focus{outline:none}@media (width>=600px){.learning-layout>section.learning-card[data-card-state]{padding:24px}.learning-card[data-card-state]>.card-meta{margin-bottom:16px}.learning-card[data-card-state] .answer-button{width:auto}.learning-card[data-card-state=question] h1{margin-bottom:8px}}@media (prefers-reduced-motion:reduce){.word-learning-delta{visibility:hidden;animation:none!important}.word-learning-node.is-newly-reached,.word-learning-mastery.is-newly-secure,.learning-strike-icon.is-rising,.learning-strike-icon.is-reset{animation:none!important}}.app-update-notice{background:var(--surface-alt);border-bottom:1px solid var(--line);color:var(--text);text-align:center;overflow-wrap:anywhere;padding:10px 18px;font-size:.8rem;line-height:1.45}.round-config{overflow-wrap:anywhere;gap:16px;width:100%;min-width:0;max-width:760px;margin:0 auto;display:grid}.round-config-heading h1{margin:7px 0;font-size:clamp(1.85rem,4vw,2.5rem)}.round-config-heading p{color:var(--muted);margin:0;font-size:.85rem}.round-config-panel{gap:20px;min-width:0;padding:24px;display:grid}.round-config-fieldset{border:0;min-width:0;margin:0;padding:0}.round-config-fieldset legend{margin-bottom:10px;padding:0;font-size:1rem;font-weight:700}.round-config-pool{color:var(--muted);margin:0 0 12px;font-size:.8rem;line-height:1.5}.round-config-loading{align-items:center;gap:8px;min-height:24px;display:inline-flex}.round-config-spinner{animation:.9s linear round-config-spin}.round-config-counts{grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:7px;max-width:440px;display:grid}.round-config-count{border:1px solid var(--line);background:var(--surface-alt);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;min-width:0;min-height:44px;padding:9px 6px;font-size:.88rem;font-weight:700;display:flex;position:relative}.round-config-count input{opacity:0;width:100%;height:100%;min-height:44px;cursor:inherit;margin:0;padding:0;position:absolute;inset:0}.round-config-type{border:1px solid var(--line);background:var(--surface-alt);cursor:pointer;border-radius:11px;align-items:flex-start;gap:10px;min-width:0;min-height:44px;padding:11px;display:flex}.round-config-type input{width:18px;height:18px;min-height:0;accent-color:var(--accent);flex:none;margin:2px 0 0;padding:0}.round-config-types{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.round-config-type-copy{gap:4px;min-width:0;line-height:1.4;display:grid}.round-config-type-copy>span{color:var(--muted);font-size:.76rem}.round-config-type-copy small{color:var(--accent);font-variant-numeric:tabular-nums;font-size:.71rem}:is(.round-config-count:has(input:checked),.round-config-type:has(input:checked)){border-color:var(--accent);background:var(--accent-soft)}:is(.round-config-count:has(input:focus-visible),.round-config-type:has(input:focus-visible)){outline:3px solid var(--accent);outline-offset:3px}.round-config-type input:focus-visible{outline:none}:is(.round-config-count:has(input:disabled),.round-config-type:has(input:disabled)){cursor:not-allowed;opacity:.65}:is(.round-config-count:has(input:not(:disabled)):hover,.round-config-type:has(input:not(:disabled)):hover){border-color:var(--accent)}.round-config-hint{color:var(--warning);margin:10px 0 0;font-size:.8rem;line-height:1.5}.round-config-note{color:var(--muted);margin:0;font-size:.8rem;line-height:1.6}.round-config-error{border:1px solid color-mix(in srgb,var(--error) 30%,var(--line));background:var(--error-bg);color:var(--error);border-radius:11px;padding:12px 14px;font-size:.85rem}.round-config-footer{border-top:1px solid var(--line);padding-top:16px}.round-config-summary{margin:0 0 12px;font-size:.9rem;font-weight:700}.round-config-summary:empty{display:none}.round-config-actions{justify-content:space-between;gap:10px;display:flex}.round-config-actions .button{min-width:0;max-width:100%;min-height:44px}@keyframes round-config-spin{to{transform:rotate(360deg)}}@media (width<=600px){.round-config-panel{gap:18px;padding:16px}.round-config-types{grid-template-columns:minmax(0,1fr)}.round-config-type{padding:10px}.round-config-actions{grid-template-columns:minmax(0,1fr);display:grid}.round-config-actions .button{width:100%}}@media (prefers-reduced-motion:reduce){.round-config-spinner{animation:none}}.learning-layout.is-focused,.round-config,.round-summary-card,.round-pause-dialog,.learning-group-selection{--muted:color-mix(in srgb,var(--text) 72%,var(--surface))}.app-shell.is-learning-focus{background:var(--bg);min-height:100dvh;display:block}.app-shell.is-learning-focus .main-area{width:100%;min-width:0}.app-shell.is-learning-focus .content{max-width:none;margin:0;padding:0}.learning-layout.is-focused{overflow-wrap:anywhere;flex-direction:column;gap:14px;width:100%;min-width:0;max-width:600px;margin:0 auto;padding:24px 20px 28px;display:flex}.round-toolbar{align-items:center;gap:10px;min-width:0;display:flex}.round-toolbar button{width:44px;height:44px;min-height:44px;color:var(--text);background:0 0;border:0;border-radius:12px;flex:none;justify-content:center;align-items:center;padding:10px;display:inline-flex}.round-toolbar button:hover{background:var(--accent-soft);color:var(--accent)}.round-counter{flex-direction:column;flex:1;min-width:0;line-height:1.35;display:flex}.round-counter strong{font-size:.94rem;font-weight:750}.round-counter small{color:var(--muted);font-size:.75rem}.round-toolbar-actions{flex:none;align-items:center;gap:7px;display:flex}.round-progress{background:var(--line);width:100%;height:5px;min-height:5px;accent-color:var(--accent);border:0;border-radius:99px;flex:none;overflow:hidden}.round-progress>div,.round-progress>span{border-radius:inherit;background:var(--accent);height:100%;transition:width .18s ease-out;display:block}.round-progress::-webkit-progress-bar{background:var(--line);border-radius:99px}.round-progress::-webkit-progress-value{background:var(--accent);border-radius:99px}.round-progress::-moz-progress-bar{background:var(--accent);border-radius:99px}.learning-layout.is-focused>section.learning-card[data-card-state]{min-width:0;min-height:min(510px,100dvh - 132px);box-shadow:var(--shadow);border-radius:20px;flex-direction:column;margin:0;padding:26px;display:flex}.learning-layout.is-focused>section.learning-card[data-card-state=question]{min-height:0}.learning-layout.is-focused .learning-card>.card-meta{margin-bottom:24px}.learning-layout.is-focused .learning-card>.card-meta .eyebrow{letter-spacing:.1em;font-size:.69rem}.learning-layout.is-focused .learning-question,.learning-layout.is-focused .learning-answer-form{min-width:0;display:block}.learning-layout.is-focused .learning-task-body{min-width:0}.learning-layout.is-focused .learning-card[data-card-state=question] h1{margin:0 0 10px;font-size:clamp(1.75rem,6vw,2.35rem);line-height:1.25}.learning-layout.is-focused .learning-card[data-card-state=question] .question-hint{margin:0 0 18px;font-size:.87rem}.learning-layout.is-focused .learning-card[data-card-state=question] .answer-options{gap:9px;margin:0 0 16px}.learning-layout.is-focused .learning-card[data-card-state=question] .answer-option{background:var(--surface);border-radius:12px;min-height:52px;padding:12px}.learning-layout.is-focused .learning-card[data-card-state=question] .answer-option:hover,.learning-layout.is-focused .learning-card[data-card-state=question] .answer-option.selected{background:var(--accent-soft);border-color:var(--accent)}.learning-layout.is-focused .learning-card[data-card-state=question] .answer-option:has(input:focus-visible){outline:3px solid var(--accent);outline-offset:2px}.learning-layout.is-focused .learning-card[data-card-state=question] input:not([type=radio]),.learning-layout.is-focused .learning-card[data-card-state=question] textarea{border-radius:12px;min-height:50px;margin:0 0 14px}.learning-layout.is-focused .learning-card[data-card-state=question] textarea{min-height:104px}.learning-layout.is-focused .learning-card[data-card-state] .answer-button{border-radius:12px;width:100%;min-height:48px;margin-top:auto;padding:13px 16px}.learning-layout.is-focused .learning-feedback{flex-direction:column;flex:1;display:flex}.learning-layout.is-focused .learning-card[data-card-state=answer] .learning-feedback-heading{background:0 0;flex-wrap:wrap;gap:8px;margin:0 0 18px;padding:0;display:flex}.learning-layout.is-focused .learning-feedback-heading h1{flex:1;min-width:0;font-size:1.12rem}.learning-feedback-heading .answer-points{margin-left:auto}.answer-points{font-variant-numeric:tabular-nums;border-radius:9px;flex:none;align-items:baseline;gap:4px;padding:5px 9px;font-size:.74rem;line-height:1.4;animation:.7s ease-out both answer-points-pulse;display:inline-flex}.answer-points strong{font-size:1.12rem}.answer-points.is-positive{background:var(--success-bg);color:var(--success)}.answer-points.is-negative{background:var(--error-bg);color:var(--error)}.learning-layout.is-focused .learning-card[data-card-state=answer] .learning-answer-block{border:1px solid var(--line);background:var(--surface-alt);border-radius:12px;padding:12px 14px;font-size:1rem}.learning-layout.is-focused .learning-card[data-card-state=answer] .learning-answer-block.submitted{color:var(--muted);border-style:solid;font-size:.92rem}.learning-layout.is-focused .learning-card[data-card-state=answer] .learning-feedback.wrong .learning-answer-block.submitted{background:var(--error-bg);border-color:color-mix(in srgb,var(--error) 25%,var(--line));color:var(--text)}.learning-layout.is-focused .learning-card[data-card-state=answer] .learning-feedback.right .learning-answer-block.submitted,.learning-layout.is-focused .learning-card[data-card-state=answer] .learning-answer-block.expected{border-color:color-mix(in srgb,var(--success) 30%,var(--line));background:var(--success-bg);color:var(--text);font-size:1.05rem}.learning-layout.is-focused .learning-card[data-card-state=answer] .learning-answer-label{margin-bottom:5px;font-size:.73rem}.learning-memory-hint{background:var(--accent-soft);overflow-wrap:anywhere;border-radius:12px;align-items:flex-start;gap:9px;margin:10px 0;padding:10px 12px;font-size:.84rem;display:flex}.learning-memory-hint>svg{color:var(--accent);flex:none;margin-top:2px}.learning-memory-hint>span{min-width:0}.learning-memory-hint strong{color:var(--accent);font-size:.78rem}.learning-memory-hint p{margin:2px 0 0;line-height:1.5}.learning-feedback-metrics{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:8px 0 16px;padding:12px 0;font-size:.8rem;display:grid}.learning-feedback-metrics>div{flex-direction:column;gap:4px;min-width:0;display:flex}.learning-feedback-metrics>div+div{border-left:1px solid var(--line);padding-left:12px}.learning-feedback-metrics small,.learning-feedback-metrics>div>span:first-child{color:var(--muted);font-size:.72rem;display:block}.learning-feedback-metrics p{margin:2px 0 0}.learning-feedback-metrics strong{font-variant-numeric:tabular-nums}.learning-feedback-metrics .word-learning-trace{min-height:0;margin:3px 0 0;font-size:.82rem}.learning-feedback-metrics .learning-strike{box-shadow:none;background:0 0;border:0;gap:6px;padding:3px 0}.learning-feedback-metrics .learning-strike-copy{display:block}.learning-feedback-metrics .learning-strike-heat,.learning-feedback-metrics .learning-strike-caption{display:none}.learning-retry-note{color:var(--muted);align-items:flex-start;gap:7px;margin:0 0 12px;font-size:.78rem;line-height:1.4;display:flex}.learning-retry-note svg{color:var(--accent);flex:none;margin-top:1px}.word-learning-status.is-compact{background:0 0;border:0;border-radius:0;margin:0;padding:12px 0;font-size:.79rem}.word-learning-status.is-compact .word-learning-heading{justify-content:flex-start;gap:4px 7px;min-height:22px}.word-learning-status.is-compact .word-learning-score>strong{font:inherit;font-weight:600}.word-learning-separator{color:var(--muted)}.word-learning-status.is-compact .word-learning-summary{margin-bottom:15px}.word-learning-status.is-compact .word-learning-stage{gap:6px;padding:0}.word-learning-status.is-compact .word-learning-node{background:var(--surface);border-width:2px;width:18px;height:18px;margin-bottom:0}.word-learning-status.is-compact .word-learning-stage:not(:first-child):before{background:var(--line);height:2px;top:8px}.word-learning-status.is-compact .word-learning-stage.is-complete:not(:first-child):before{background:var(--accent)}.word-learning-status.is-compact .word-learning-stage.is-complete .word-learning-node{background:var(--accent);border-color:var(--accent);color:var(--surface)}.word-learning-status.is-compact .word-learning-stage.is-target .word-learning-node{border-color:var(--accent);outline:none}.word-learning-status.is-compact .word-learning-stage-name{white-space:nowrap;overflow-wrap:normal;font-size:11px;font-weight:600;line-height:1.4}.word-learning-status.is-compact .word-learning-check{width:12px;height:12px;color:var(--surface);background:0 0;padding:0;position:static}.word-learning-status.is-compact .word-learning-milestone,.word-learning-status.is-compact .word-learning-mastery{gap:6px;margin-top:13px;font-size:.76rem}.word-learning-status.is-feedback .word-learning-reached{background:var(--success-bg);border-radius:10px;margin-top:8px;padding:8px 10px;font-size:.8rem}.word-learning-status.is-feedback .word-learning-mastery{background:color-mix(in srgb,var(--word-blue) 9%,var(--surface));padding:9px 11px}.learning-strike.is-compact{min-height:32px;box-shadow:none;background:0 0;border:0;border-radius:0;gap:4px;padding:0}.learning-strike.is-compact .learning-strike-value{font-size:.92rem}.learning-strike.is-compact .learning-strike-icon>svg{width:20px;height:20px}.round-toolbar .learning-strike[data-heat="0"] .learning-strike-value{color:var(--muted);font-weight:600}.learning-card[data-card-state=question] .learning-question-support{border-top:1px solid var(--line);padding-top:10px}.learning-card[data-card-state=question] .word-learning-status.is-compact{background:0 0;border:0;padding:0}.learning-card[data-card-state=question] .word-learning-summary{margin-bottom:8px}.learning-card[data-card-state=question] .word-learning-score>strong{font-weight:500}.learning-card[data-card-state=question] .word-learning-stages{grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.learning-card[data-card-state=question] .word-learning-stage{text-align:center;flex-direction:column;gap:4px}.learning-card[data-card-state=question] .word-learning-node{width:18px;height:18px;margin:0}.learning-card[data-card-state=question] .word-learning-stage.is-target .word-learning-node{background:var(--accent);color:var(--surface)}.learning-card[data-card-state=question] .word-learning-stage:not(:first-child):before{width:100%;top:8px;left:-50%}.learning-card[data-card-state=question] .word-learning-stage-name{white-space:normal;overflow-wrap:anywhere;font-size:clamp(.64rem,2.8vw,.76rem);font-weight:500;line-height:1.3}.learning-card[data-card-state=question] .word-learning-stage.is-target .word-learning-stage-name{color:var(--accent);font-weight:750}.learning-card[data-card-state=question] .word-learning-milestone{margin-top:8px}.learning-group-selection{width:100%;min-width:0;max-width:600px;margin:0 auto}.learning-group-selection .selection-item{background:var(--surface);border-radius:12px;gap:12px;min-height:64px;padding:12px 14px}.learning-group-selection .selection-item:has(input:checked){border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 1px var(--accent)}.learning-group-selection .selection-item>span:last-child{overflow-wrap:anywhere;gap:2px;min-width:0}.learning-group-selection .selection-item strong{font-size:.94rem}.learning-group-selection .selection-item small{font-size:.78rem}.learning-group-selection .selector-footer{flex-wrap:wrap}.learning-group-selection .selector-footer .button{min-height:48px}.round-config{gap:12px;max-width:600px}.round-config-heading{padding-right:48px;position:relative}.round-config-heading h1{font-size:clamp(1.75rem,5vw,2.15rem)}.round-config-back{width:44px;min-height:44px;color:var(--muted);background:0 0;border:0;border-radius:10px;place-items:center;display:grid;position:absolute;top:0;right:0}.round-config-back:hover{color:var(--accent);background:var(--accent-soft)}.round-config-back:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.round-config-context{gap:3px;margin-top:11px;font-size:.88rem;line-height:1.4;display:grid}.round-config-context strong{overflow-wrap:anywhere}.round-config-context span{color:var(--muted);font-variant-numeric:tabular-nums}.round-config-panel{gap:16px;padding:20px}.round-config-groups h2{margin:0 0 6px;font-size:.85rem}.round-config-groups ul{gap:7px;margin:0;padding:0;list-style:none;display:grid}.round-config-groups li{border:1px solid var(--line);background:var(--surface-alt);border-radius:11px;align-items:center;gap:9px;min-width:0;padding:5px 8px 5px 12px;display:flex}.round-config-groups li>svg{color:var(--accent);flex:none}.round-config-group-copy{flex:1;gap:2px;min-width:0;display:grid}.round-config-group-copy strong{overflow-wrap:anywhere;font-size:.86rem;font-weight:650}.round-config-group-copy small{color:var(--muted);font-size:.74rem}.round-config-practice{background:var(--accent-soft);color:var(--accent);border-radius:11px;margin:0;padding:11px 14px;font-size:.84rem}.round-config-counts{max-width:none}.round-config-count{min-height:52px}.round-config-type{background:var(--surface);align-items:center;min-height:56px;padding:11px 12px}.round-config-type input{margin:0}.round-config-type-copy strong{font-size:.85rem}.round-config-directions{grid-template-columns:minmax(0,1fr);gap:7px;display:grid}.round-config-direction{border:1px solid var(--line);background:var(--surface-alt);cursor:pointer;border-radius:11px;align-items:center;gap:11px;min-width:0;min-height:58px;padding:9px 12px;display:flex}.round-config-direction input{width:19px;height:19px;accent-color:var(--accent);flex:none;margin:0}.round-config-direction>span{gap:2px;min-width:0;line-height:1.35;display:grid}.round-config-direction strong{font-size:.87rem}.round-config-direction small{color:var(--muted);font-size:.74rem}.round-config-direction:has(input:checked){border-color:var(--accent);background:var(--accent-soft)}.round-config-direction:has(input:focus-visible){outline:3px solid var(--accent);outline-offset:3px}.round-config-direction input:focus-visible{outline:none}.round-config-direction:has(input:disabled){cursor:not-allowed;opacity:.65}.round-config-direction:not(:has(input:disabled)):hover{border-color:var(--accent)}.round-config-details{color:var(--muted);font-size:.78rem}.round-config-details summary{cursor:pointer;align-content:center;min-height:44px;padding:9px 0;display:list-item}.round-config-details summary:focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:4px}.round-config-details p{margin:5px 0 12px}.round-config-details ul{gap:12px;margin:0;padding:0;list-style:none;display:grid}.round-config-details li{gap:3px;display:grid}.round-config-details li strong{color:var(--text)}.round-config-details small{color:var(--accent)}.round-config-mix{background:var(--accent-soft);color:var(--text);border-radius:10px;margin:12px 0 0;padding:10px 12px;font-size:.8rem;line-height:1.5}.round-config-voice{border-top:1px solid var(--line);gap:4px;padding-top:10px;display:grid}.round-config-voice>span{color:var(--muted);font-size:.8rem;font-weight:700}.round-config-footer{text-align:center;padding-top:14px}.round-config-footer .round-config-note{justify-content:center;align-items:center;gap:6px;margin:0 0 8px;font-size:.79rem;display:flex}.round-config-note svg{color:var(--accent);flex:none}.round-config-summary{margin:0 0 10px;line-height:1.5}.round-config-actions{grid-template-columns:minmax(0,1fr);gap:9px;display:grid}.round-config-actions .button{width:100%;min-height:48px}.round-config-actions .button.ghost{border-color:#0000;font-size:.8rem}.round-summary-card{overflow-wrap:anywhere;width:100%;min-width:0;max-width:560px;margin:0 auto;padding:26px}.round-summary-heading{text-align:center}.round-summary-symbol{background:var(--success-bg);width:54px;height:54px;color:var(--success);border-radius:50%;justify-content:center;align-items:center;margin-bottom:14px;display:inline-flex}.round-summary-heading h1{margin:0 0 8px;font-size:clamp(1.8rem,5vw,2.25rem)}.round-summary-heading p{color:var(--muted);margin:0;font-size:.85rem}.round-summary-stats{border-block:1px solid var(--line);grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:23px 0;padding:16px 0;display:grid}.round-summary-stats>div{text-align:center;flex-direction:column-reverse;align-items:center;gap:3px;min-width:0;display:flex}.round-summary-stats dt{color:var(--muted);font-size:.72rem;line-height:1.4}.round-summary-stats dd{font-variant-numeric:tabular-nums;margin:0;font-size:1.45rem;font-weight:750}.round-summary-progress h2{margin:0 0 12px;font-size:1rem}.round-summary-progress dl{gap:10px;margin:0;display:grid}.round-summary-progress dl>div{justify-content:space-between;align-items:baseline;gap:10px;font-size:.86rem;display:flex}.round-summary-progress dd{color:var(--accent);font-variant-numeric:tabular-nums;margin:0;font-weight:750}.round-summary-safer{background:var(--accent-soft);color:var(--accent);border-radius:11px;align-items:center;gap:9px;margin:18px 0 0;padding:12px;font-size:.85rem;display:flex}.round-summary-actions{gap:9px;margin-top:23px;display:grid}.round-summary-actions .button{width:100%;min-width:0;min-height:48px}.round-summary-error,.round-pause-error{background:var(--error-bg);color:var(--error);border-radius:10px;margin:16px 0 0;padding:12px;font-size:.82rem}.round-summary-error p{margin:0}.round-summary-error p+p{margin-top:5px}.round-pause-overlay{z-index:100;overscroll-behavior:contain;background:#10131a73;place-items:center;padding:20px;display:grid;position:fixed;inset:0;overflow-y:auto}.round-pause-dialog{overflow-wrap:anywhere;width:100%;min-width:0;max-width:400px;max-height:calc(100dvh - 40px);padding:28px 22px 22px;position:relative;overflow-y:auto}.round-pause-dialog h2{margin:0 0 12px;padding-right:30px;font-size:1.45rem}.round-pause-dialog>p{margin-bottom:0;font-size:.86rem}.round-pause-close{min-width:44px;min-height:44px;color:var(--muted);background:0 0;border:0;border-radius:11px;place-items:center;display:grid;position:absolute;top:9px;right:9px}.round-pause-close:hover{color:var(--text);background:var(--surface-alt)}.round-pause-actions{gap:10px;margin-top:23px;display:grid}.round-pause-actions .button{width:100%;min-height:48px}.round-pause-warning{background:var(--warning-bg);color:var(--warning);border-radius:10px;padding:11px}.round-pause-groups-note{text-align:center;color:var(--muted);margin:0;font-size:.74rem;line-height:1.5}.round-summary-stats>div:nth-child(2) dd{color:var(--success)}.round-summary-stats>div:nth-child(3) dd{color:var(--error)}.round-summary-stats>div:nth-child(4) dd{color:var(--warning)}@keyframes answer-points-pulse{0%{opacity:.75;transform:scale(.94)}40%{opacity:1;transform:scale(1.08)}to{opacity:1;transform:scale(1)}}@media (width<=600px){.app-shell.is-learning-focus{background:var(--surface)}.learning-layout.is-focused{gap:12px;min-height:100dvh;padding:12px 16px 20px}.learning-layout.is-focused>section.learning-card[data-card-state]{box-shadow:none;border:0;border-radius:0;min-height:min(510px,100dvh - 102px);padding:16px 0 4px}.round-config-panel{gap:14px;padding:16px}.round-config-counts{gap:5px}.round-config-count{padding-inline:3px;font-size:.78rem}.round-summary-card{padding:23px 18px}.round-summary-stats{gap:4px}.round-summary-stats dt{font-size:11px}.round-pause-overlay{padding:14px}.round-pause-dialog{max-height:calc(100dvh - 28px);padding:26px 18px 18px}}@media (width<=360px){.learning-layout.is-focused{padding-inline:12px}.round-toolbar{gap:6px}.round-toolbar-actions{gap:3px}.round-counter strong{font-size:.85rem}.round-counter small{font-size:11px}.round-config-panel{padding:14px}.learning-layout.is-focused .learning-feedback-heading h1{font-size:1rem}.answer-points{padding:4px 7px}}@media (prefers-reduced-motion:reduce){.answer-points{opacity:1;transform:none;animation:none!important}.round-progress>div,.round-progress>span{transition:none}}html,body,#root{overscroll-behavior-x:none;min-width:0;max-width:100%;overflow-x:clip}.app-shell,.main-area,.panel{min-width:0;max-width:100%}.page-heading>div{overflow-wrap:anywhere;min-width:0}html[data-learning-viewport],html[data-learning-viewport] body,html[data-learning-viewport] #root{overscroll-behavior:none;height:100%;overflow:hidden}html[data-learning-viewport] .app-shell{top:var(--learning-viewport-top,0px);left:var(--learning-viewport-left,0px);width:var(--learning-viewport-width,100%);height:var(--learning-viewport-height,100dvh);min-height:0;max-height:var(--learning-viewport-height,100dvh);background:var(--bg);display:block;position:fixed;overflow:hidden}html[data-learning-viewport] .sidebar,html[data-learning-viewport] .topbar,html[data-learning-viewport] .mobile-menu,html[data-learning-viewport] .nav-backdrop{display:none}html[data-learning-viewport] .main-area,html[data-learning-viewport] .content{height:100%;min-height:0;max-height:100%;overflow:hidden}html[data-learning-viewport] .content{flex-direction:column;max-width:none;margin:0;padding:0;display:flex}html[data-learning-viewport] .content>.alert{flex:none;max-height:15%;margin:0;padding:6px 12px;font-size:.75rem;overflow:auto}html[data-learning-viewport] .learning-layout.is-focused{height:100%;min-height:0;max-height:100%;padding:10px max(16px,env(safe-area-inset-right)) 0 max(16px,env(safe-area-inset-left));padding-top:max(10px,env(safe-area-inset-top));flex:1;gap:8px;overflow:hidden}html[data-learning-viewport] .round-toolbar,html[data-learning-viewport] .round-progress{flex:none}html[data-learning-viewport] .learning-layout.is-focused>.learning-card[data-card-state]{flex-direction:column;flex:0 auto;width:100%;min-height:0;max-height:100%;padding:0;display:flex;overflow:hidden}.learning-card-scroll{overscroll-behavior:contain;scrollbar-width:thin;flex:0 auto;min-width:0;max-width:100%;min-height:0;padding:10px 12px 4px;scroll-padding-block:10px;overflow:hidden auto}html[data-learning-viewport] .learning-card-scroll>.learning-question,html[data-learning-viewport] .learning-card-scroll>.learning-feedback,html[data-learning-viewport] .learning-card-scroll .learning-answer-form{max-width:100%;min-height:0;display:block}.learning-card-scroll>.card-meta{margin:0 0 10px}html[data-learning-viewport] .learning-layout.is-focused .learning-card-scroll .question-hint{margin-bottom:10px;font-size:.82rem;line-height:1.4}html[data-learning-viewport] .learning-layout.is-focused .learning-card[data-card-state=question] .learning-card-scroll .question-hint{font-size:.94rem}html[data-learning-viewport] .learning-layout.is-focused .learning-card-scroll h1{margin-bottom:7px;font-size:clamp(1.45rem,5.8vw,2rem)}html[data-learning-viewport] .learning-card[data-card-state=question] h1.learning-word-prompt{font-size:clamp(1.9rem,7vw,2.5rem);line-height:1.2}.learning-recall-direction{color:var(--muted);margin:0 0 10px;font-size:.85rem;font-weight:700}html[data-learning-viewport] .learning-layout.is-focused .learning-card-scroll h1.learning-recall-prompt{background:color-mix(in srgb,var(--accent) 6%,var(--surface));text-wrap:balance;border-radius:14px;margin:0 0 14px;padding:18px 16px;font-size:clamp(1.9rem,7vw,2.5rem)}html[data-learning-viewport] .learning-layout.is-focused .learning-card-scroll h1.learning-recall-prompt.is-long{font-size:clamp(1.4rem,5vw,1.8rem)}.learning-recall-input-label{margin:0 0 7px;font-size:.85rem;font-weight:700;display:block}html[data-learning-viewport] .learning-layout.is-focused .learning-card-scroll .answer-options{gap:6px;margin:8px 0 10px}html[data-learning-viewport] .learning-layout.is-focused .learning-card-scroll .answer-option{min-height:52px;padding:10px 12px}html[data-learning-viewport] .learning-layout.is-focused .learning-card-scroll input:not([type=radio]),html[data-learning-viewport] .learning-layout.is-focused .learning-card-scroll textarea{min-height:46px;margin:0 0 8px;padding:10px 12px;font-size:max(16px,1rem)}html[data-learning-viewport] .learning-layout.is-focused .learning-card-scroll textarea{resize:vertical;min-height:88px}.learning-card-scroll .learning-answer-form input:not([type=radio]):focus-visible,.learning-card-scroll .learning-answer-form textarea:focus-visible{outline-offset:-3px}.learning-layout.is-focused .learning-question-support{margin:8px 0 0}.learning-card-scroll .word-learning-status.is-compact{margin:0;padding:8px 0}html[data-learning-viewport] .learning-card[data-card-state=question] .word-learning-status.is-compact{padding:0}html[data-learning-viewport] .learning-card-scroll .word-learning-summary{margin-bottom:9px}html[data-learning-viewport] .learning-card-scroll .word-learning-milestone,html[data-learning-viewport] .learning-card-scroll .word-learning-mastery{margin-top:8px}html[data-learning-viewport] .learning-layout.is-focused .learning-card-scroll .learning-feedback-heading{gap:10px;margin-bottom:16px}html[data-learning-viewport] .learning-layout.is-focused .learning-card-scroll .learning-feedback-heading h1{margin:0;font-size:clamp(1.5rem,4vw,1.625rem)}html[data-learning-viewport] .learning-layout.is-focused .learning-card-scroll .answer-points{font-size:.94rem}html[data-learning-viewport] .learning-layout.is-focused .learning-card-scroll .answer-points strong{font-size:1.35rem}html[data-learning-viewport] .learning-layout.is-focused .learning-card-scroll .learning-answer-block{padding:12px 14px;line-height:1.4}html[data-learning-viewport] .learning-layout.is-focused .learning-card-scroll .learning-answer-block+.learning-answer-block{margin-top:10px}html[data-learning-viewport] .learning-layout.is-focused .learning-card-scroll .learning-answer-label{margin-bottom:5px;font-size:.94rem}html[data-learning-viewport] .learning-layout.is-focused .learning-card-scroll .learning-answer-block p{font-size:clamp(1.25rem,3vw,1.375rem);line-height:1.4}html[data-learning-viewport] .learning-layout.is-focused .learning-card-scroll .learning-context{margin:16px 0;padding-left:12px;font-size:1rem;line-height:1.45}html[data-learning-viewport] .learning-layout.is-focused .learning-card-scroll .learning-context p{margin:6px 0;font-size:1.125rem;line-height:1.45}html[data-learning-viewport] .learning-layout.is-focused .learning-card-scroll .learning-context p.muted{font-size:1.0625rem}.learning-card-scroll .learning-memory-hint{margin:12px 0;padding:11px 12px;font-size:.94rem;line-height:1.5}.learning-card-scroll .learning-feedback-metrics{gap:12px;margin:8px 0 4px;padding:12px 0;font-size:1rem}html[data-learning-viewport] .learning-card[data-card-state=answer] .word-learning-status.is-compact{font-size:1.0625rem}html[data-learning-viewport] .learning-card[data-card-state=answer] .word-learning-stage-name{-webkit-hyphens:auto;hyphens:auto;font-size:clamp(.875rem,3.8vw,1rem)}html[data-learning-viewport] .learning-card[data-card-state=answer] .word-learning-node{width:22px;height:22px}html[data-learning-viewport] .learning-card[data-card-state=answer] .word-learning-stage:not(:first-child):before{top:10px}html[data-learning-viewport] .learning-card[data-card-state=answer] .word-learning-milestone,html[data-learning-viewport] .learning-card[data-card-state=answer] .word-learning-mastery{margin-top:12px;font-size:1.0625rem}html[data-learning-viewport] .learning-card[data-card-state=answer] .learning-feedback-metrics .score-transition-final,html[data-learning-viewport] .learning-card[data-card-state=answer] .learning-feedback-metrics .strike-transition-final{font-size:1.0625rem}html[data-learning-viewport] .learning-card[data-card-state=answer] .learning-retry-note{font-size:.94rem;line-height:1.5}.learning-feedback-metrics .strike-transition>span:first-child{align-items:center;gap:4px;display:flex}.strike-transition svg{color:var(--warning)}.learning-action-bar{z-index:1;width:100%;min-width:0;padding:8px 0 max(12px,env(safe-area-inset-bottom));background:var(--surface);border-top:1px solid var(--line);flex:none;margin-top:auto;position:relative}.learning-action-bar .answer-button{overflow-wrap:anywhere;width:100%;min-width:0;max-width:100%;min-height:48px;margin:0;padding:12px;font-size:1.125rem}.learning-action-bar .answer-button:not(:disabled):hover,.learning-action-bar .answer-button:not(:disabled):active{transform:none}html[data-learning-keyboard] .learning-action-bar{padding-bottom:8px}html[data-learning-viewport] .learning-layout>.alert{flex:none;max-height:15%;margin:0;padding:6px 10px;font-size:.75rem;overflow:auto}html[data-learning-viewport] .round-pause-overlay{inset:auto;top:var(--learning-viewport-top,0px);left:var(--learning-viewport-left,0px);width:var(--learning-viewport-width,100%);height:var(--learning-viewport-height,100dvh)}html[data-learning-viewport] .round-pause-dialog{max-height:100%}.score-transition>.score-transition-values,.strike-transition-values{min-width:0;max-width:100%;color:var(--text);font-variant-numeric:tabular-nums;align-items:baseline;font-size:.85rem;display:inline-grid}.score-transition-flash,.score-transition-final,.strike-transition-flash,.strike-transition-final{overflow-wrap:anywhere;grid-area:1/1;min-width:0}.score-transition-flash{color:var(--success);animation:.7s ease-out both score-transition-flash}.score-transition.is-negative .score-transition-flash{color:var(--error)}.score-transition:not(.is-clamped) .score-transition-final,.strike-transition-final{animation:.7s ease-out both score-transition-final}.strike-transition-flash{animation:.7s ease-out both score-transition-flash}@keyframes score-transition-flash{0%{opacity:0;visibility:visible;transform:translateY(3px)}15%,65%{opacity:1;visibility:visible;transform:translateY(0)}to{opacity:0;visibility:hidden;transform:translateY(-4px)}}@keyframes score-transition-final{0%,65%{opacity:0}to{opacity:1}}@media (width<=760px){:root input:not([type=checkbox]):not([type=radio]),:root textarea,:root select{font-size:max(16px,1rem)}}@media (width<=600px){html[data-learning-viewport] .app-shell{background:var(--surface)}.learning-card-scroll{padding:5px 3px 4px}html[data-learning-viewport] .learning-layout.is-focused{padding-inline:max(12px,env(safe-area-inset-left)) max(12px,env(safe-area-inset-right));gap:7px}}@media (height<=700px){html[data-learning-viewport] .learning-layout.is-focused{padding-top:max(6px,env(safe-area-inset-top));gap:5px}.learning-card-scroll>.card-meta{margin-bottom:6px}html[data-learning-viewport] .learning-layout.is-focused .learning-card-scroll .question-hint{margin-bottom:7px}html[data-learning-viewport] .learning-card-scroll .word-learning-status.is-compact{padding-block:5px}html[data-learning-viewport] .learning-card-scroll .word-learning-summary{margin-bottom:6px}html[data-learning-viewport] .learning-card-scroll .word-learning-stage{gap:3px}html[data-learning-viewport] .learning-card-scroll .word-learning-milestone{margin-top:5px}}@media (prefers-reduced-motion:reduce){.score-transition-flash,.strike-transition-flash{visibility:hidden;animation:none!important}.score-transition-final,.strike-transition-final{opacity:1;transform:none;animation:none!important}}.pronunciation-button{vertical-align:middle;background:var(--accent-soft);width:24px;height:24px;min-height:24px;color:var(--accent);border:0;border-radius:50%;place-items:center;margin:-3px 10px;padding:0;line-height:1;display:inline-grid;position:relative}.pronunciation-button:after{content:"";border-radius:50%;position:absolute;inset:-10px}.pronunciation-button:hover{background:color-mix(in srgb,var(--accent) 18%,var(--surface))}.pronunciation-button.is-speaking{background:var(--accent);color:var(--surface)}.pronunciation-button.has-error{background:var(--warning-bg);color:var(--warning)}.pronunciation-button:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.pronunciation-button svg{width:16px;height:16px}.voice-preference{flex-wrap:wrap;align-items:center;gap:4px 8px;min-width:0;font-size:.8rem;display:flex}.voice-preference-label{color:var(--muted);margin-right:auto;font-weight:650}.voice-preference>label{cursor:pointer;white-space:nowrap;border-radius:9px;align-items:center;gap:6px;min-height:44px;padding:6px;display:inline-flex}.voice-preference input[type=radio]{width:16px;height:16px;accent-color:var(--accent);margin:0;padding:0}.voice-preference>label:has(input:checked){background:var(--accent-soft);color:var(--accent)}.voice-preference>label:has(input:disabled){opacity:.6;cursor:not-allowed}.round-pause-dialog>.voice-preference{margin:2px 0 10px}.book-learning-selection{width:100%;min-width:0;max-width:1040px;margin:0 auto}.book-learning-picker{--muted:color-mix(in srgb,var(--text) 72%,var(--surface));overflow-wrap:anywhere;gap:24px;width:100%;min-width:0;max-width:1040px;margin:0 auto;display:grid}.book-library-heading h1{margin:0 0 8px;font-size:clamp(2rem,5vw,2.8rem)}.book-library-heading p{color:var(--muted);margin:0}.book-language-section{min-width:0}.book-language-section h2{color:var(--muted);margin:0 0 9px;font-size:.84rem}.book-library-grid{grid-template-columns:minmax(0,1fr);gap:14px;min-width:0;display:grid}.book-library-tile{width:100%;min-width:0;min-height:44px;color:var(--text);text-align:left;flex-direction:column;align-items:stretch;padding:0;transition:border-color .16s,box-shadow .16s;display:flex;overflow:hidden}.book-library-tile:not(:disabled):hover{border-color:var(--accent);box-shadow:0 8px 24px color-mix(in srgb,var(--accent) 10%,transparent)}.book-tile-art{background:var(--surface-alt);border-bottom:1px solid var(--line);place-items:center;width:100%;padding:20px;display:grid}.book-tile-copy{flex-direction:column;flex:1;width:100%;min-width:0;padding:17px 18px;display:flex}.book-tile-title-row{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:7px;display:flex}.book-tile-title{overflow-wrap:anywhere;font-size:1.08rem;line-height:1.3}.book-offline-badge{background:var(--success-bg);color:var(--success);border-radius:999px;flex:none;align-items:center;gap:4px;padding:4px 7px;font-size:.66rem;font-weight:750;line-height:1.2;display:inline-flex}.book-offline-badge.is-error{background:var(--error-bg);color:var(--error)}.book-offline-badge.is-syncing svg,.book-offline-badge.is-updating svg,.book-offline-badge.is-downloading svg{animation:1.1s linear 999 offline-spin}.book-language{color:var(--muted);font-size:.8rem;line-height:1.4;display:block}.book-counts{color:var(--muted);flex-wrap:wrap;gap:3px 6px;font-size:.75rem;display:flex}.book-counts:empty{display:none}.book-counts>span+span:before{content:"·";margin-right:6px}.book-tile-copy>.book-counts{margin-top:12px}.book-tile-copy>.book-mastery{border-top:1px solid var(--line);margin-top:15px;padding-top:13px}.book-tile-open{color:var(--accent);justify-content:space-between;align-items:center;gap:8px;margin-top:auto;padding-top:13px;font-size:.8rem;font-weight:700;display:flex}.book-cover{aspect-ratio:5/7;color:#504475;background:#e9e1fc;border-radius:6px 12px 12px 6px;flex:none;width:100%;min-width:0;max-width:140px;display:grid;position:relative;overflow:hidden;box-shadow:inset 5px 0 #321e5a14,0 6px 16px #1e143c17}.book-cover[data-tone="1"]{color:#315f58;background:#deeee9}.book-cover[data-tone="2"]{color:#785139;background:#f6e8d8}.book-cover[data-tone="3"]{color:#405978;background:#e0e9f6}.book-cover.is-prominent{max-width:200px}.book-cover-fallback{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:14px;min-width:0;padding:16px 12px;display:flex}.book-cover-fallback>span{overflow-wrap:anywhere;max-width:100%;font-size:.82rem;font-weight:750;line-height:1.4}.book-cover-image{object-fit:contain;width:100%;height:100%;position:absolute;inset:0}.book-mastery{gap:3px;min-width:0;display:grid}.book-mastery-label{color:var(--muted);font-size:.73rem;font-weight:600}.book-mastery-value{color:var(--text);font-size:.88rem;line-height:1.35}.book-mastery progress,.book-content-copy progress{border:1px solid var(--line);background:var(--surface-raised);width:100%;height:9px;accent-color:var(--success);border-radius:99px;margin-top:5px;display:block;overflow:hidden}.book-mastery progress::-webkit-progress-bar{background:var(--surface-raised);border-radius:99px}.book-content-copy progress::-webkit-progress-bar{background:var(--surface-raised);border-radius:99px}.book-mastery progress::-webkit-progress-value{background:var(--success);border-radius:99px}.book-content-copy progress::-webkit-progress-value{background:var(--success);border-radius:99px}.book-mastery progress::-moz-progress-bar{background:var(--success);border-radius:99px}.book-content-copy progress::-moz-progress-bar{background:var(--success);border-radius:99px}.book-unassigned-entry{text-align:left;min-width:0;min-height:44px;color:var(--text);align-items:center;gap:14px;padding:18px;display:flex}.book-unassigned-entry>svg{color:var(--accent)}.book-unassigned-entry>span{flex:1;gap:4px;min-width:0;display:grid}.book-unassigned-entry strong{font-size:.95rem}.book-unassigned-entry span>span,.book-unassigned-entry small{color:var(--muted);font-size:.79rem}.book-unassigned-entry:not(:disabled):hover{border-color:var(--accent)}.book-picker-back{min-height:44px;color:var(--accent);background:0 0;border:0;border-radius:8px;justify-self:start;align-items:center;gap:8px;padding:8px 3px;font-weight:700;display:inline-flex}.book-detail-heading{grid-template-columns:112px minmax(0,1fr);align-items:center;gap:20px;min-width:0;display:grid}.book-detail-heading>.book-cover{max-width:112px}.book-detail-heading>div{gap:7px;min-width:0;display:grid}.book-detail-heading h1{overflow-wrap:anywhere;margin:0;font-size:clamp(1.55rem,3vw,2.2rem);line-height:1.2}.book-detail-heading .book-mastery{max-width:330px}.offline-library-toolbar{border:1px solid var(--line);background:var(--surface-alt);border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:13px 15px;display:flex}.offline-library-toolbar>span{color:var(--success);align-items:center;gap:7px;font-size:.82rem;font-weight:700;display:flex}.offline-library-toolbar .button{min-height:44px}.offline-book-controls{justify-content:space-between;align-items:center;gap:18px;margin-bottom:18px;padding:20px 22px;display:flex}.offline-book-controls>div:first-child{flex:1;gap:6px;min-width:0;display:grid}.offline-book-controls strong{align-items:center;gap:7px;display:flex}.offline-book-controls small{color:var(--muted);line-height:1.55}.offline-book-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:9px;display:flex}.offline-book-actions .button{min-height:44px}@keyframes offline-spin{to{transform:rotate(360deg)}}.book-picker-error{background:var(--error-bg);color:var(--error);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:14px;font-size:.86rem;display:flex}.book-picker-error>span{flex:1;min-width:0}.book-picker-error .button{flex:none;min-height:44px}.book-picker-loading,.book-contents-empty{color:var(--muted);margin:0;font-size:.86rem}.book-picker-unavailable p{margin-bottom:12px}.book-contents{min-width:0;padding:22px}.book-contents h2{margin:0 0 8px;font-size:1.15rem}.book-contents-hint{color:var(--muted);margin:0 0 18px;font-size:.81rem}.book-content-tree{gap:4px;min-width:0;margin:0;padding:0;list-style:none;display:grid}.book-content-node{min-width:0;padding-left:calc(var(--book-depth,0) * 14px)}.book-content-node[data-depth="0"]:not(:first-child){margin-top:12px}.book-content-row{background:var(--surface);border:1px solid #0000;border-radius:9px;align-items:flex-start;min-width:0;display:flex}.book-content-row.is-unit{border-color:var(--line);background:var(--surface-alt)}.book-content-row.is-selected{border-color:color-mix(in srgb,var(--accent) 30%,var(--line));background:var(--accent-soft)}.book-content-caret{width:44px;min-height:44px;color:var(--muted);background:0 0;border:0;border-radius:10px;flex:none;place-items:center;padding:8px;display:grid}.book-content-caret:not(:disabled):hover{color:var(--accent);background:var(--accent-soft)}.book-content-caret-space{flex:none;width:12px}.book-content-choice{cursor:pointer;flex:1;align-items:flex-start;gap:10px;min-width:0;min-height:44px;padding:9px 12px 9px 0;display:flex}.book-content-choice input{width:19px;height:19px;min-height:0;accent-color:var(--accent);flex:none;margin:2px 0 0;padding:0}.book-content-choice:has(input:disabled){cursor:default}.book-content-choice:has(input:focus-visible){outline:3px solid var(--accent);outline-offset:2px;border-radius:8px}.book-content-copy{overflow-wrap:anywhere;flex:1;gap:3px;min-width:0;display:grid}.book-content-copy strong{font-size:.88rem;line-height:1.35}.book-content-row.is-unit .book-content-copy strong{font-size:1rem}.book-content-copy small{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.74rem}.book-content-copy progress{max-width:380px;height:7px;margin:3px 0 1px}.book-selection-footer{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:15px;margin-top:20px;padding-top:16px;display:flex}.book-selection-footer>div{flex:1;min-width:min(210px,100%)}.book-selection-footer p{margin:0 0 4px;font-size:.86rem;font-weight:700}.book-selection-footer small{color:var(--muted);font-size:.75rem;line-height:1.5;display:block}.book-selection-footer .button{min-width:0;max-width:100%;min-height:48px}.round-config-book{align-items:center;gap:11px;min-width:0;margin-top:12px;display:flex}.round-config-book>.book-cover{width:44px;max-width:44px}.round-config-book .book-cover-fallback{gap:3px;padding:4px}.round-config-book .book-cover-fallback>svg{width:17px;height:17px}.round-config-book .book-cover-fallback>span{font-size:.5rem}.round-config-book>div{gap:2px;min-width:0;display:grid}.round-config-book strong{overflow-wrap:anywhere;font-size:.98rem}.round-config-book>div>span{color:var(--muted);font-size:.78rem}.round-config-remove-group{width:44px;min-height:44px;color:var(--muted);background:0 0;border:0;border-radius:8px;flex:none;place-items:center;padding:9px;display:grid}.round-config-remove-group:not(:disabled):hover{background:var(--accent-soft);color:var(--accent)}.round-config-remove-group:focus-visible,.round-config-choose-contents:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.round-config-choose-contents{justify-self:start;max-width:100%;min-height:44px;font-size:.8rem}.book-cover-editor{flex-wrap:wrap;align-items:flex-start;gap:16px;min-width:0;display:flex}.book-cover-preview{background:var(--accent-soft);border-radius:9px;flex:none;place-items:center;width:100px;max-width:100px;height:140px;max-height:140px;display:grid;overflow:hidden}.book-cover-preview img{object-fit:contain;width:100%;max-width:100px;height:100%;max-height:140px;display:block}.book-cover-preview.book-cover,.book-cover-preview>.book-cover{max-width:100px;max-height:140px}.book-cover-actions{flex:1;gap:9px;min-width:min(220px,100%);display:grid}.book-cover-actions .button{justify-self:start;max-width:100%;min-height:44px}.book-cover-actions input[type=file]{min-width:0;max-width:100%;padding:4px;font-size:.8rem}.book-cover-actions input[type=file]::file-selector-button{background:var(--accent-soft);min-height:44px;color:var(--accent);font:inherit;cursor:pointer;border:0;border-radius:8px;margin-right:8px;padding:9px 12px;font-weight:700}.cover-rights-check{border:1px solid color-mix(in srgb,var(--accent) 28%,var(--line));background:var(--accent-soft);cursor:pointer;border-radius:10px;align-items:flex-start;gap:10px;padding:11px;font-size:.78rem;line-height:1.45;display:flex}.cover-rights-check input{width:20px;height:20px;min-height:0;accent-color:var(--accent);flex:none;margin:1px 0 0;padding:0}.cover-rights-check:has(input:focus-visible){outline:3px solid var(--accent);outline-offset:2px}.cover-rights-check input:focus-visible{outline:none}.cover-rights-check a{color:var(--accent);font-weight:750}@media (width>=660px){.book-library-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1100px){.book-library-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=600px){.book-learning-picker{gap:14px}.book-library-tile .book-tile-art{padding:15px}.book-library-tile .book-cover{max-width:136px}.book-tile-copy{padding:16px}.book-detail-heading{text-align:left;grid-template-columns:80px minmax(0,1fr);align-items:center;gap:12px}.book-detail-heading>.book-cover{max-width:80px}.book-detail-heading>div{gap:3px}.book-detail-heading h1{font-size:1.45rem}.book-detail-heading .book-mastery{width:100%;margin-top:4px}.book-detail-heading .book-mastery progress{margin-top:2px}.book-contents{padding:14px 12px 0}.book-contents-hint{margin-bottom:12px}.book-content-tree{padding-bottom:14px}.book-content-node{padding-left:calc(var(--book-depth,0) * 8px)}.book-content-copy small{font-size:.71rem}.book-selection-footer{z-index:18;padding:10px max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));background:var(--surface);box-shadow:0 -6px 16px color-mix(in srgb,var(--text) 7%,transparent);gap:7px;margin:0 -12px;display:grid;position:sticky;bottom:0}.book-selection-footer .button{width:100%;min-height:48px}.app-shell:has(.book-contents) .mobile-menu{bottom:calc(156px + env(safe-area-inset-bottom))}.offline-library-toolbar{flex-direction:column;align-items:stretch}.offline-library-toolbar .button{width:100%}.offline-book-controls{flex-direction:column;align-items:stretch;padding:18px 16px}.offline-book-actions{display:grid}.offline-book-actions .button,.offline-book-controls>.button{width:100%}}@media (width<=374px){.book-library-tile .book-cover{max-width:130px}.book-detail-heading{gap:10px}.book-detail-heading h1{font-size:1.35rem}.book-detail-heading .book-counts{gap:3px 7px}.book-content-caret{width:44px}.book-contents{padding:12px 10px 0}.book-content-node{padding-left:calc(var(--book-depth,0) * 6px)}.book-selection-footer{margin-inline:-10px}}.book-content-caret-space{width:44px;min-height:44px}.book-cover-fallback{position:absolute;inset:0;overflow:hidden}.book-cover-fallback>span{-webkit-line-clamp:5;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.progress-page .panel{padding:26px}.progress-page .panel h2,.progress-page .stats-grid{margin:0}.progress-page .stat{gap:2px}.progress-page .stat strong{color:var(--accent);line-height:1.15}.progress-page .stat .muted{font-size:.85rem}.progress-page .progress-list{gap:0;margin-top:18px}.progress-entry{border-top:1px solid var(--line);min-width:0;padding:15px 0}.progress-entry:first-child{border-top:0;padding-top:0}.progress-entry:last-child{padding-bottom:0}.progress-entry .section-top{flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin:0;display:flex}.progress-entry .section-top strong{overflow-wrap:anywhere;min-width:0}.progress-entry .progress-count{color:var(--success);margin-top:5px;font-size:.83rem;font-weight:700;display:block}.progress-entry .bar-wrap{margin-top:6px}.progress-entry .bar-track{min-width:0}.progress-page .progress-groups{gap:9px;margin-top:17px;display:grid}.progress-group{border:1px solid var(--line);background:var(--surface-alt);border-radius:12px;min-width:0}.progress-group summary{cursor:pointer;align-items:center;gap:12px;padding:12px 14px;font-weight:700;list-style:none;display:flex}.progress-group summary::-webkit-details-marker{display:none}.progress-group summary:before{content:"";border-right:2px solid var(--accent);border-bottom:2px solid var(--accent);width:8px;height:8px;transform:rotate(-45deg)}.progress-group[open] summary:before{transform:rotate(45deg)}.progress-group summary:focus-visible{outline:3px solid var(--accent);outline-offset:2px;border-radius:10px}.progress-group summary span{overflow-wrap:anywhere;flex:1;min-width:0}.progress-group summary small{color:var(--muted);white-space:nowrap;font-weight:500}.progress-group .progress-list{margin:0;padding:0 14px 15px}.progress-page .progress-sessions{margin-top:15px}.progress-session{border-top:1px solid var(--line);overflow-wrap:anywhere;gap:1px;padding:11px 0;display:grid}.progress-session:first-child{border-top:0;padding-top:0}.progress-session:last-child{padding-bottom:0}@media (width<=760px){.app-shell:has(.progress-page) .mobile-menu{width:48px;height:48px;bottom:14px;right:14px}.app-shell:has(.progress-page) .content{padding-bottom:105px}}@media (width<=480px){.progress-page .panel{padding:20px}.progress-page .stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.progress-page .stats-grid .stat{flex-direction:column;justify-content:flex-start;align-items:flex-start;padding:14px}.progress-page .stats-grid .stat:last-child{grid-column:1/-1}.progress-page .stats-grid .stat strong{font-size:1.7rem}.progress-entry .bar-wrap>.bar-track{width:100%}}.beta-registration-note{border:1px solid color-mix(in srgb,var(--accent) 28%,#414654);background:color-mix(in srgb,var(--accent) 12%,#20232f);color:#d8d3f4;border-radius:11px;align-items:flex-start;gap:9px;margin-top:13px;padding:11px 12px;font-size:.75rem;line-height:1.5;display:flex}.beta-registration-note>svg{color:#b9adff;flex:none;margin-top:2px}.beta-registration-note strong{color:#f5f3fa;font-size:.78rem;display:block}.beta-badge{border:1px solid color-mix(in srgb,var(--accent) 32%,var(--line));background:var(--accent-soft);min-height:36px;color:var(--accent);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:7px 10px;font-size:.72rem;font-weight:800;display:inline-flex}.beta-badge:not(:disabled):hover{border-color:var(--accent);transform:translateY(-1px)}.beta-dialog-overlay{z-index:120;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#10131a94;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.beta-dialog{overflow-wrap:anywhere;width:min(470px,100%);padding:32px;position:relative}.beta-dialog-close{color:var(--muted);position:absolute;top:10px;right:10px}.beta-dialog-symbol{background:var(--accent-soft);width:46px;height:46px;color:var(--accent);border-radius:14px;place-items:center;margin-bottom:18px;display:grid}.beta-dialog h2{margin:10px 38px 12px 0;font-size:1.65rem}.beta-dialog p{margin-bottom:13px}.beta-dialog>.button{margin-top:5px}.beta-consent-check{border:1px solid color-mix(in srgb,var(--accent) 30%,var(--line));background:color-mix(in srgb,var(--accent) 8%,var(--surface));color:inherit;cursor:pointer;border-radius:10px;align-items:flex-start;gap:10px;margin-top:12px;padding:11px;font-size:.78rem;font-weight:650;line-height:1.45;display:flex}.beta-consent-check input{width:20px;height:20px;min-height:0;accent-color:var(--accent);flex:none;margin:1px 0 0;padding:0}.beta-consent-check:has(input:focus-visible){outline:3px solid var(--accent);outline-offset:2px}.beta-consent-check input:focus-visible{outline:none}.beta-consent-actions{gap:9px;margin-top:20px;display:grid}.beta-consent-actions .button{width:100%}.beta-consent-dialog h2{margin-right:0}.beta-consent-dialog>.auth-status{margin-top:14px}.app-legal-links{flex-wrap:wrap;justify-content:center;align-items:center;gap:5px 15px;margin-top:13px;font-size:.7rem;display:flex}.app-legal-links a{color:var(--muted);text-decoration:none}.app-legal-links a:hover,.app-legal-links a:focus-visible{color:var(--accent);text-underline-offset:3px;text-decoration:underline}.beta-dialog .app-legal-links{justify-content:flex-start;margin:4px 0 15px;font-size:.76rem}.sidebar-legal{flex-wrap:wrap;gap:5px 12px;margin:0 11px 15px;font-size:.65rem;display:flex}.sidebar-legal a{color:#85899b;text-decoration:none}.sidebar-legal a:hover,.sidebar-legal a:focus-visible{color:#d8d3ff;text-underline-offset:3px;text-decoration:underline}@media (width<=760px){.beta-badge{min-height:34px}.beta-badge span{display:none}.beta-dialog{padding:27px 23px}.beta-dialog>.button{width:100%}}:root{--info:#286b9d;--info-bg:#edf7ff}:root[data-theme=dark]{--info:#9bd5ff;--info-bg:#203444}.login-card .turnstile-widget{min-height:65px;margin:20px 0 4px}.auth-status{overflow-wrap:anywhere;border:1px solid #0000;border-radius:12px;align-items:flex-start;gap:11px;margin-top:17px;padding:13px 15px;font-size:.88rem;line-height:1.5;display:flex}.auth-status>span:last-child{min-width:0;padding-top:2px}.auth-status-icon{border-radius:50%;flex:none;place-items:center;width:26px;height:26px;display:grid}.auth-status.success{border-color:color-mix(in srgb,var(--success) 30%,var(--line));background:var(--success-bg);color:var(--success)}.auth-status.success .auth-status-icon{background:var(--success);color:#fff}.auth-status.info{border-color:color-mix(in srgb,var(--info) 28%,var(--line));background:var(--info-bg);color:var(--info)}.auth-status.info .auth-status-icon{background:var(--info);color:#fff}.auth-status.error{border-color:color-mix(in srgb,var(--error) 30%,var(--line));background:var(--error-bg);color:var(--error)}.auth-status.error .auth-status-icon{background:var(--error);color:#fff}@media (width<=480px){.login-card .turnstile-widget{margin-top:18px}.auth-status{padding:12px 13px}}.app-view-hidden{display:none!important}.app-legal-page{background:var(--bg);min-height:100vh;color:var(--text)}.app-legal-header{z-index:30;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--surface) 94%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;min-height:76px;padding:12px clamp(18px,4vw,52px);display:grid;position:sticky;top:0}.app-legal-header .app-legal-logo{width:150px}.app-legal-header .theme-switch{justify-self:end}.app-legal-back{justify-self:start;min-height:44px}.app-legal-main{width:min(900px,100%);margin:0 auto;padding:clamp(38px,7vw,74px) clamp(20px,5vw,52px) 90px}.app-legal-hero{border-bottom:1px solid var(--line);padding-bottom:28px}.app-legal-hero .eyebrow{color:var(--accent);margin:0 0 12px;display:block}.app-legal-hero h1{overflow-wrap:anywhere;margin:0;font-size:clamp(2.2rem,7vw,4.6rem);line-height:1.02}.app-legal-hero>p{color:var(--muted);margin:13px 0 0}.app-legal-offline{align-items:flex-start;gap:8px;max-width:620px;font-size:.82rem;line-height:1.55;display:flex}.app-legal-offline svg{color:var(--accent);flex:none;margin-top:2px}.app-legal-tabs{flex-wrap:wrap;gap:8px;margin:24px 0;display:flex}.app-legal-tabs a{border:1px solid var(--line);background:var(--surface);min-height:42px;color:var(--muted);border-radius:999px;align-items:center;padding:8px 13px;font-size:.78rem;font-weight:750;text-decoration:none;display:inline-flex}.app-legal-tabs a:hover,.app-legal-tabs a:focus-visible{border-color:var(--accent);color:var(--accent)}.app-legal-content{gap:16px;display:grid}.app-legal-content section{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:16px;padding:clamp(20px,4vw,30px)}.app-legal-content h2{overflow-wrap:anywhere;margin:0 0 13px;font-size:clamp(1.05rem,3vw,1.35rem)}.app-legal-content p{margin:0 0 12px;line-height:1.7}.app-legal-content p:last-child{margin-bottom:0}.app-legal-content ul{gap:9px;margin:0;padding-left:21px;display:grid}.app-legal-content li{line-height:1.65}.app-legal-content a{color:var(--accent);text-underline-offset:3px;overflow-wrap:anywhere;font-weight:700}.app-legal-content address{gap:4px;font-style:normal;line-height:1.6;display:grid}.app-legal-content address span{display:block}@media (width<=600px){.app-legal-header{grid-template-columns:1fr auto;min-height:68px;padding:10px 14px}.app-legal-header .app-legal-logo{display:none}.app-legal-back{padding-inline:10px}.app-legal-main{padding:34px 14px 70px}.app-legal-tabs{grid-template-columns:1fr;display:grid}.app-legal-tabs a{border-radius:11px;justify-content:center}.app-legal-content section{border-radius:13px;padding:20px 17px}}.settings-legal h2{margin:8px 0}.settings-legal nav{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:18px;display:grid}.settings-legal nav a{border:1px solid var(--line);background:var(--surface-alt);min-height:48px;color:var(--text);border-radius:11px;justify-content:space-between;align-items:center;padding:11px 14px;font-size:.84rem;font-weight:750;text-decoration:none;display:flex}.settings-legal nav a:after{content:"›";color:var(--accent);font-size:1.25rem}.settings-legal nav a:hover,.settings-legal nav a:focus-visible{border-color:var(--accent);color:var(--accent)}@media (width<=660px){.settings-legal nav{grid-template-columns:1fr}}.feedback-fab{z-index:90;background:var(--accent);color:#fff;min-height:48px;box-shadow:0 12px 30px color-mix(in srgb,var(--accent) 32%,transparent);border:0;border-radius:999px;align-items:center;gap:8px;padding:11px 16px;font-weight:750;display:flex;position:fixed;bottom:22px;right:22px}.feedback-fab svg{width:19px}.feedback-fab:hover{background:var(--accent-hover)}.feedback-backdrop{z-index:150;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#10131a99;place-items:center;padding:18px;display:grid;position:fixed;inset:0;overflow-y:auto}.feedback-dialog{width:min(560px,100%);max-height:calc(100dvh - 36px);padding:30px;position:relative;overflow-y:auto}.feedback-close{position:absolute;top:10px;right:10px}.feedback-dialog form{gap:9px;display:grid}.feedback-dialog h2{margin:3px 42px 10px 0}.feedback-dialog form>label:not(.feedback-check){font-size:.82rem;font-weight:750}.feedback-dialog .dropdown-field{width:100%}.feedback-dialog .dropdown-options{z-index:160}.feedback-counter{text-align:right;color:var(--muted)}.feedback-check{border:1px solid var(--line);background:var(--surface-alt);cursor:pointer;border-radius:12px;align-items:flex-start;gap:10px;padding:12px;display:flex}.feedback-check input{width:20px;height:20px;min-height:0;accent-color:var(--accent);flex:none;margin:2px 0 0;padding:0}.feedback-check>span{gap:3px;display:grid}.feedback-check small{color:var(--muted);font-weight:400;line-height:1.45}.feedback-check:has(input:focus-visible){outline:3px solid var(--accent);outline-offset:2px}.feedback-check input:focus-visible{outline:none}.feedback-screenshot{border:1px dashed var(--line);border-radius:12px;gap:10px;padding:12px;display:grid}.feedback-screenshot img{object-fit:contain;background:var(--surface-alt);border-radius:8px;width:100%;max-height:240px;display:block}.feedback-screenshot>div{flex-wrap:wrap;gap:8px;display:flex}.feedback-screenshot svg{width:17px}.feedback-submit{width:100%;margin-top:5px}.feedback-success{text-align:center;place-items:center;padding:25px 5px;display:grid}.feedback-success>svg{width:44px;height:44px;color:var(--success);margin-bottom:14px}.feedback-success h2{margin:0 0 8px}.learning-feedback-link{min-height:44px;color:var(--accent);text-underline-offset:3px;background:0 0;border:0;align-self:center;margin:4px 12px 10px;padding:8px 12px;font-size:.78rem;font-weight:750;text-decoration:underline}@media (width<=760px){.feedback-fab{padding:13px;bottom:78px;right:14px}.feedback-fab span{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.feedback-dialog{padding:26px 18px}.topbar{gap:10px;min-height:62px;padding:0 14px}.topbar .breadcrumb{margin-right:auto}.mobile-menu{z-index:25;background:var(--accent-soft);width:42px;height:42px;color:var(--accent);box-shadow:none;border-radius:12px;flex:none;display:grid;position:relative;inset:auto}.app-shell:has(.book-contents) .mobile-menu{z-index:25;background:var(--accent-soft);width:42px;height:42px;color:var(--accent);box-shadow:none;border-radius:12px;flex:none;display:grid;position:relative;inset:auto}.app-shell:has(.progress-page) .mobile-menu{z-index:25;background:var(--accent-soft);width:42px;height:42px;color:var(--accent);box-shadow:none;border-radius:12px;flex:none;display:grid;position:relative;inset:auto}.mobile-menu:hover{background:var(--accent);color:#fff}.feedback-fab{right:max(14px,env(safe-area-inset-right));bottom:max(14px,env(safe-area-inset-bottom))}.app-shell.is-learning-focus~[data-feedback-exclude] .feedback-fab{bottom:calc(72px + env(safe-area-inset-bottom))}}
