@font-face{font-family:'IBM Plex Sans';font-style:normal;font-display:swap;font-weight:400;src:url('/fonts/ibm-plex-sans-latin-400-normal.woff2?v=c1145d6b5c4a774a') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'IBM Plex Sans';font-style:normal;font-display:swap;font-weight:400;src:url('/fonts/ibm-plex-sans-cyrillic-400-normal.woff2?v=c1145d6b5c4a774a') format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'IBM Plex Sans';font-style:normal;font-display:swap;font-weight:500;src:url('/fonts/ibm-plex-sans-latin-500-normal.woff2?v=c1145d6b5c4a774a') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'IBM Plex Sans';font-style:normal;font-display:swap;font-weight:500;src:url('/fonts/ibm-plex-sans-cyrillic-500-normal.woff2?v=c1145d6b5c4a774a') format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'IBM Plex Sans';font-style:normal;font-display:swap;font-weight:600;src:url('/fonts/ibm-plex-sans-latin-600-normal.woff2?v=c1145d6b5c4a774a') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'IBM Plex Sans';font-style:normal;font-display:swap;font-weight:600;src:url('/fonts/ibm-plex-sans-cyrillic-600-normal.woff2?v=c1145d6b5c4a774a') format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'IBM Plex Sans';font-style:normal;font-display:swap;font-weight:700;src:url('/fonts/ibm-plex-sans-latin-700-normal.woff2?v=c1145d6b5c4a774a') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'IBM Plex Sans';font-style:normal;font-display:swap;font-weight:700;src:url('/fonts/ibm-plex-sans-cyrillic-700-normal.woff2?v=c1145d6b5c4a774a') format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
:root{--bg:#f5f5fa;--panel:#fff;--ink:#25283d;--muted:#6b6d84;--primary:#5556a6;--primary-dark:#444589;--accent:#b77755;--line:#e2e2ed;--soft:#eeeefa;--warm:#f6ece5;--success:#30734e;--error:#a23e43;font-family:"IBM Plex Sans","Segoe UI",Arial,sans-serif;color:var(--ink);background:var(--bg);font-synthesis:none}
*{box-sizing:border-box}body{margin:0;font-size:16px;line-height:1.55}button,input,select{font:inherit}button,a,input,select{ -webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}a{color:inherit;text-decoration:none}button{cursor:pointer}button:disabled{cursor:wait;opacity:.55}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:4px}button{border:0}h1,h2,h3,p{margin:0}h1{font-size:clamp(2.2rem,4.3vw,3.6rem);line-height:1.12;letter-spacing:-.045em;font-weight:650}h2{font-size:1.6rem;line-height:1.3;letter-spacing:-.035em}h3{font-size:1.125rem;letter-spacing:-.015em}p{color:var(--muted)}small{font-size:.875rem}.skip{position:absolute;left:20px;top:-90px;padding:12px;background:white;z-index:100}.skip:focus{top:12px}.loading{padding:100px;text-align:center}.wrap{max-width:1184px;margin:auto;padding:0 36px}.header{background:var(--panel);border-bottom:1px solid var(--line)}.header-inner{display:flex;align-items:center;gap:44px;min-height:86px}.logo{display:inline-flex;gap:1px;align-items:baseline;font-size:1.65rem;font-weight:750;letter-spacing:-.065em;white-space:nowrap}.logo span{color:var(--primary)}.logo b{color:var(--accent);font-size:1.6rem;margin-left:2px}.nav{display:flex;align-self:stretch;gap:28px}.nav a{display:flex;align-items:center;border-bottom:2px solid transparent;font-size:.9375rem;color:var(--muted);gap:8px}.nav a.active{color:var(--primary);border-color:var(--primary);font-weight:600}.nav svg{display:none}.header-actions{margin-left:auto;display:flex;gap:12px;align-items:center}.avatar{width:34px;height:34px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;background:var(--soft);color:var(--primary);font-size:.875rem;font-weight:600}.icon{width:20px;height:20px;vertical-align:middle;flex-shrink:0}.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:46px;padding:11px 21px;background:var(--primary);color:white;font-size:.9375rem;font-weight:600;border-radius:9px;line-height:1.35;transition:background .15s,transform .15s}.button:hover{background:var(--primary-dark)}.button:active{transform:translateY(1px)}.button.secondary{background:white;color:var(--ink);border:1px solid var(--line)}.button.secondary:hover{background:var(--bg)}.button.ghost{background:transparent;color:var(--muted);padding:9px 12px}.button.ghost:hover{background:var(--soft);color:var(--primary)}.button.large{min-height:52px;padding:14px 26px}.button.full{width:100%}.button.small{min-height:38px;padding:8px 14px;font-size:.875rem}.eyebrow{color:var(--primary);font-size:.8125rem;letter-spacing:.13em;text-transform:uppercase;font-weight:700}.tag{display:inline-flex;align-items:center;gap:6px;padding:4px 9px;background:var(--soft);color:var(--primary);border-radius:5px;font-size:.8125rem;font-weight:600}.tag.warm{background:var(--warm);color:#925330}.tag.neutral{color:var(--muted);background:var(--bg)}.tag.green{color:var(--success);background:#edf6ef}.tag.outline{background:transparent;border:1px solid var(--line);color:var(--muted)}.muted{color:var(--muted)}.panel{background:var(--panel);border:1px solid var(--line);border-radius:14px}.page{padding-top:54px;padding-bottom:70px;min-height:calc(100vh - 170px)}.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:31px}.page-heading h1{font-size:2.65rem}.page-heading p{margin-top:10px}.page-heading .eyebrow{margin-bottom:10px}.footer{border-top:1px solid var(--line);padding:24px 0}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:20px}.footer .logo{font-size:1.1rem}.footer p{font-size:.8125rem}.hero{display:grid;grid-template-columns:1.1fr 1fr;gap:70px;align-items:center;padding-top:88px;padding-bottom:77px}.hero h1{font-size:clamp(3rem,5.7vw,4.7rem);max-width:620px;margin-top:19px}.hero h1 em{font-style:normal;color:var(--primary)}.hero-copy>p{margin-top:23px;max-width:420px;font-size:1.0625rem;line-height:1.75}.hero-actions{display:flex;gap:12px;margin-top:32px;flex-wrap:wrap}.sample-shell{padding:25px;border-radius:19px;background:var(--soft);position:relative}.sample-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px;font-size:.875rem;color:var(--muted)}.sample-card{padding:30px 28px 26px;background:white;border:1px solid #dcdced;border-radius:12px}.sample-card .expression{font-size:2.25rem;margin-top:22px}.expression{font-family:inherit;font-weight:600;letter-spacing:-.015em;color:var(--ink);line-height:1.2}.example{margin-top:19px;color:var(--muted);line-height:1.8}.example mark{background:transparent;color:var(--ink);border-bottom:2px solid #d9d9ef}.sample-answer{margin-top:22px;padding-top:20px;border-top:1px solid var(--line)}.sample-answer strong{font-size:1.125rem;font-weight:550}.sample-answer p{margin-top:7px;font-size:.9375rem}.sample-card .button{margin-top:23px}.sample-bottom{display:flex;gap:8px;align-items:center;font-size:.8125rem;color:var(--muted);padding-top:18px}.sample-bottom svg{color:var(--primary)}.method{border-top:1px solid var(--line);padding:37px 0 58px}.method-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:27px}.method-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.method-item{display:flex;gap:16px;align-items:flex-start}.step{width:37px;height:37px;border-radius:50%;background:var(--warm);color:#925330;display:grid;place-items:center;flex-shrink:0;font-size:.875rem;font-weight:600}.method-item p{font-size:.9375rem;margin-top:7px;max-width:270px}.demo-banner{background:var(--warm);border:1px solid #e9dacf;border-radius:9px;padding:11px 15px;display:flex;gap:10px;align-items:center;color:#825134;font-size:.875rem;margin-bottom:25px}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,1fr);gap:29px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-bottom:25px}.stat{padding:21px 23px}.stat .value{font-size:2rem;letter-spacing:-.04em;line-height:1.2;font-weight:600}.stat .caption{font-size:.875rem;color:var(--muted);margin-top:8px}.stat:first-child .value{color:var(--primary)}.deck{padding:27px 28px}.deck-title{display:flex;gap:16px;align-items:flex-start}.deck-icon{background:var(--soft);border-radius:11px;width:47px;height:47px;display:grid;place-items:center;color:var(--primary);flex-shrink:0}.deck-icon svg{width:25px;height:25px}.deck-title h2{font-size:1.35rem;margin-top:1px}.deck-title p{font-size:.875rem;margin-top:5px}.deck .description{margin-top:20px;font-size:.9375rem;max-width:470px}.deck-progress{margin-top:24px}.progress-label{display:flex;justify-content:space-between;font-size:.8125rem;color:var(--muted);margin-bottom:9px}.progress-track{height:5px;background:var(--soft);border-radius:4px;overflow:hidden}.progress-track progress{width:100%;height:5px;display:block;appearance:none;border:0}.progress-track progress::-webkit-progress-bar{background:var(--soft)}.progress-track progress::-webkit-progress-value{background:var(--primary);border-radius:4px}.progress-track progress::-moz-progress-bar{background:var(--primary)}.deck-bottom{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);margin-top:24px;padding-top:21px;gap:14px}.deck-bottom p{font-size:.875rem}.subtle-link{display:inline-flex;color:var(--primary);font-weight:550;font-size:.875rem;gap:8px;align-items:center}.add-material{margin-top:18px;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:18px 22px;border:1px dashed #d4d4e5;border-radius:10px}.add-material p{font-size:.875rem}.how{padding:27px}.how h2{font-size:1.3rem;margin-bottom:25px}.how ol{margin:0;padding:0;list-style:none}.how li{display:flex;gap:14px;margin-bottom:23px}.how li .step{width:31px;height:31px;font-size:.8125rem}.how li h3{font-size:.9375rem}.how li p{font-size:.875rem;line-height:1.6;margin-top:4px}.mini-card{border-top:1px solid var(--line);padding-top:21px}.mini-card .expression{font-size:1.7rem;margin-top:13px}.mini-card>p{margin-top:7px;font-size:.9375rem}.mini-card .example{font-size:.9375rem;margin-top:13px}.training{max-width:740px;margin:auto;padding-top:35px}.training-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:25px}.training-top>p{font-size:.875rem}.session-meta{display:flex;align-items:center;gap:14px;color:var(--muted);font-size:.875rem}.training-card{padding:37px 48px 40px;min-height:300px;position:relative;text-align:center}.training-card .eyebrow{font-size:.75rem}.training-card .expression{font-size:clamp(2.5rem,5vw,3.5rem);margin:29px 0 14px}.training-card .example{font-size:1.0625rem;margin:0}.card-prompt{margin-top:27px;color:var(--muted);font-size:.875rem}.answer{border-top:1px solid var(--line);margin-top:27px;padding-top:26px}.answer h2{font-size:1.5rem;font-weight:550;letter-spacing:-.025em}.answer p{margin-top:12px;font-size:1rem}.training-actions{margin-top:23px;text-align:center}.training-actions>.button{width:100%}.ratings{display:grid;grid-template-columns:repeat(4,1fr);gap:11px}.rating{min-height:73px;border:1px solid var(--line);border-radius:10px;background:white;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;color:var(--ink);font-size:.9375rem;font-weight:600}.rating span{font-size:.8125rem;font-weight:400;color:var(--muted)}.rating:hover{border-color:var(--primary);background:var(--soft)}.rating.again{color:var(--error)}.rating.good{background:var(--primary);color:white;border-color:var(--primary)}.rating.good span{color:#ededff}.rating.easy{color:var(--success)}.training-hint{margin-top:18px;font-size:.8125rem;color:var(--muted)}kbd{font:inherit;border:1px solid var(--line);border-radius:4px;background:white;padding:2px 5px;font-size:.75rem}.training-bottom{display:flex;justify-content:center;margin-top:20px}.complete{padding:50px 30px;text-align:center}.complete-icon{width:65px;height:65px;border-radius:50%;background:var(--soft);color:var(--primary);display:grid;place-items:center;margin:0 auto 24px}.complete-icon svg{width:30px;height:30px}.complete h1{font-size:2.5rem}.complete p{margin:15px auto 26px;max-width:470px}.complete .button{margin:5px}.toolbar{display:flex;gap:15px;align-items:center;margin-bottom:21px}.search{position:relative;flex:1;max-width:440px}.search svg{position:absolute;left:15px;top:14px;color:var(--muted)}input,select{background:white;border:1px solid var(--line);border-radius:8px;color:var(--ink);padding:12px 14px;min-height:46px;font-size:.9375rem;width:100%}.search input{padding-left:46px}select{width:auto;max-width:100%}.table-wrap{overflow-x:auto;border-radius:14px}table{width:100%;border-collapse:collapse;text-align:left}th{background:#fbfbfe;color:var(--muted);font-size:.8125rem;font-weight:500;padding:15px 25px;border-bottom:1px solid var(--line)}td{padding:20px 25px;border-bottom:1px solid var(--line);font-size:.9375rem}tr:last-child td{border:0}td:first-child{width:32%}td .expression{font-size:1.35rem}td .translation{margin-top:5px;font-size:.875rem;color:var(--muted)}td .sentence{color:var(--ink)}td .sentence-translation{font-size:.875rem;color:var(--muted);margin-top:5px}td:last-child{white-space:nowrap;width:150px}.list-count{font-size:.875rem;margin-top:16px}.empty{padding:45px;text-align:center;color:var(--muted)}.settings-layout{display:grid;grid-template-columns:1.5fr 1fr;gap:25px}.settings-form{padding:28px 32px}.field{margin-top:24px}.field label{display:block;font-size:.9375rem;font-weight:550;margin-bottom:8px}.field p{font-size:.875rem;margin-top:7px}.field input,.field select{width:100%}.settings-form .button{margin-top:29px}.info-panel{padding:27px}.info-panel h3{margin-bottom:15px}.info-panel p{font-size:.9375rem;margin-bottom:16px}.info-panel code{font-size:.8125rem}.info-line{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-top:1px solid var(--line);font-size:.875rem}.info-line span{color:var(--muted)}.journal-stats{max-width:850px}.journal{padding:27px 30px}.journal h2{font-size:1.25rem;margin-bottom:20px}.history-row{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:14px 0;border-top:1px solid var(--line)}.history-row .expression{font-size:1.25rem}.history-row p{font-size:.8125rem;margin-top:4px}.history-right{display:flex;gap:18px;align-items:center;font-size:.875rem;color:var(--muted)}dialog{border:1px solid var(--line);border-radius:16px;padding:33px;max-width:460px;width:calc(100% - 32px);color:var(--ink);box-shadow:0 20px 80px #25283d25;max-height:90vh;overflow:auto}dialog::backdrop{background:#25283d65}dialog h2{font-size:1.7rem}dialog>p{font-size:.9375rem;margin-top:12px}.dialog-close{float:right;border:0;background:transparent;padding:6px;color:var(--muted)}dialog .field{margin-top:22px}dialog .button.full{margin-top:20px}.divider{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:.8125rem;margin-top:22px}.divider::before,.divider::after{content:'';height:1px;background:var(--line);flex:1}.local-note{font-size:.8125rem;margin-top:12px;text-align:center}.form-error{color:var(--error);font-size:.875rem;margin-top:12px;min-height:0}.form-note{font-size:.8125rem;margin-top:12px}.import-summary{padding:15px;background:var(--soft);border-radius:9px;margin-top:20px}.import-list{padding-left:21px;max-height:170px;overflow:auto;font-size:.875rem}.toast{position:fixed;bottom:28px;left:50%;transform:translateX(-50%);max-width:calc(100% - 32px);padding:14px 22px;background:var(--ink);color:white;border-radius:10px;z-index:100;box-shadow:0 6px 25px #25283d20;font-size:.9375rem}.toast[hidden]{display:none}
@media(min-width:900px){.mobile-only{display:none}}
@media(max-width:1050px){.header-inner{gap:28px}.nav{gap:20px}.hero{gap:35px}.dashboard-grid{gap:20px}.wrap{padding-left:26px;padding-right:26px}.stat{padding:19px}.deck{padding:24px}.how{padding:23px}}
@media(max-width:760px){.wrap{padding-left:20px;padding-right:20px}.header-inner{min-height:73px;gap:15px}.logo{font-size:1.5rem}.header-actions .button{padding:9px 12px}.nav{position:fixed;bottom:0;left:0;right:0;height:68px;padding-bottom:env(safe-area-inset-bottom);z-index:20;background:white;border-top:1px solid var(--line);display:flex;justify-content:space-around;gap:0}.nav a{font-size:.75rem;flex-direction:column;gap:3px;justify-content:center;border-bottom:0;min-width:64px}.nav svg{display:block;width:20px;height:20px}.nav a.active{background:#f7f7fd}.with-nav{padding-bottom:70px}.hero{grid-template-columns:1fr;padding-top:44px;padding-bottom:43px;gap:37px}.hero h1{font-size:3.2rem;max-width:500px}.hero-copy>p{font-size:1rem;margin-top:18px}.hero-actions{margin-top:24px}.sample-shell{max-width:500px;width:100%;padding:20px}.sample-card{padding:24px}.sample-card .expression{font-size:2rem}.method{padding-bottom:40px}.method-title{align-items:flex-start;gap:15px}.method-title h2{font-size:1.35rem}.method-title p{font-size:.8125rem;text-align:right}.method-grid{grid-template-columns:1fr;gap:24px}.method-item p{max-width:none}.page{padding-top:32px;padding-bottom:40px}.page-heading{align-items:flex-start;margin-bottom:24px;flex-wrap:wrap}.page-heading h1{font-size:2.15rem}.page-heading p{font-size:.9375rem}.dashboard-grid{grid-template-columns:1fr;gap:24px}.stats{gap:9px}.stat{padding:17px 12px}.stat .value{font-size:1.65rem}.stat .caption{font-size:.8125rem;line-height:1.4}.deck{padding:22px}.deck-title h2{font-size:1.2rem}.deck-icon{width:39px;height:39px}.deck-title{gap:12px}.deck-bottom{flex-wrap:wrap}.deck-bottom .button{width:100%}.deck-bottom>div{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px}.add-material{padding:17px;align-items:flex-start}.add-material p{max-width:210px}.how{padding:23px}.how ol{display:grid;gap:17px}.how li{margin:0}.mini-card{margin-top:24px}.demo-banner{align-items:flex-start}.demo-banner svg{margin-top:2px}.footer-inner{align-items:flex-start}.footer p{max-width:210px;text-align:right;font-size:.75rem}.training{padding-top:8px}.training-top{gap:10px;margin-bottom:20px;flex-wrap:wrap}.training-card{padding:30px 22px;min-height:295px}.training-card .expression{font-size:2.6rem;overflow-wrap:anywhere}.training-card .example{font-size:1rem}.ratings{gap:7px}.rating{font-size:.8125rem;min-height:72px}.rating span{font-size:.75rem}.training-hint{display:none}.session-meta{font-size:.8125rem;gap:9px}.toolbar{gap:10px;flex-wrap:wrap}.search{max-width:none;flex-basis:100%}.toolbar select{flex:1}.table-wrap{overflow:visible}table,tbody,tr,td{display:block}thead{display:none}tr{padding:18px 20px;border-bottom:1px solid var(--line)}tr:last-child{border-bottom:0}td{padding:0;border:0;width:100%!important}td+td{margin-top:13px}td:last-child{white-space:normal}.list-count{margin-top:12px}.settings-layout{grid-template-columns:1fr}.settings-form{padding:24px}.history-row{align-items:flex-start}.history-right{flex-direction:column;gap:5px;align-items:flex-end}.journal{padding:23px}.complete h1{font-size:2rem}.complete{padding:38px 23px}.header-actions .avatar{display:none}dialog{padding:25px}.toast{bottom:85px;width:max-content;text-align:center}.footer{padding:20px 0}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

/* Compact public entry and consistent typography across learning surfaces. */
h1{font-weight:600;letter-spacing:-.025em}
h2,h3{letter-spacing:-.015em}
.logo{font-weight:600;letter-spacing:-.045em}
.header-inner{min-height:74px;gap:30px}
.brand-description{font-size:.875rem;color:var(--muted)}
.eyebrow{letter-spacing:.08em;font-weight:600}
.hero{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:58px;align-items:start;padding-top:54px;padding-bottom:46px}
.hero h1{font-size:clamp(2.25rem,3.6vw,3rem);font-weight:600;line-height:1.18;letter-spacing:-.025em;margin-top:16px}
.hero-copy>p{font-size:1.0625rem;line-height:1.65;max-width:480px;margin-top:20px;color:#575b73}





.sample-shell{padding:23px;background:white;border:1px solid var(--line);border-top:3px solid var(--primary);border-radius:10px}
.sample-top{margin-bottom:22px;gap:12px}
.sample-top h2{font-size:1.125rem;font-weight:600;letter-spacing:-.015em}
.sample-card{background:var(--bg);border-radius:8px;padding:23px 24px;border:1px solid var(--line)}
.sample-card .eyebrow{font-size:.75rem;color:var(--muted);letter-spacing:.06em}
.sample-card .expression{font-size:1.875rem;line-height:1.25;margin-top:15px;font-weight:600}
.sample-card .example{font-size:1rem;line-height:1.6;margin-top:15px;color:#575b73}
.sample-card .button{margin-top:23px}
.sample-answer{margin-top:18px;padding-top:17px}
.sample-answer strong{font-weight:500}
.sample-bottom{font-size:.875rem;line-height:1.5;gap:9px;padding-top:17px;align-items:flex-start}
.sample-bottom .icon{width:18px;height:18px;margin-top:2px}
.method{padding:28px 0 40px}
.method-title{margin-bottom:24px}
.method-title h2{font-size:1.375rem;font-weight:600}
.method-title p{font-size:.875rem}
.method-item h3{font-size:1rem;font-weight:600}
.method-item p{font-size:.9375rem;line-height:1.6;margin-top:5px}
.step{width:31px;height:31px;background:var(--soft);color:var(--primary);border-radius:7px}
.training-card .expression{font-size:clamp(2rem,4vw,2.75rem);line-height:1.25;letter-spacing:-.015em}
.training-card .example{font-size:1.125rem;line-height:1.6;color:#575b73}
.answer h2{font-weight:500;letter-spacing:-.01em}
.mini-card .expression{font-size:1.5rem}
.panel{border-radius:10px}
@media(max-width:1050px){.hero{gap:32px}.hero h1{font-size:2.5rem}.sample-shell{padding:20px}.sample-card{padding:22px 20px}}
@media(max-width:760px){.brand-description{display:none}.header-inner{min-height:66px}.hero{grid-template-columns:1fr;padding-top:30px;padding-bottom:30px;gap:28px}.hero h1{font-size:2.125rem;line-height:1.2;margin-top:13px}.hero-copy>.eyebrow{font-size:.75rem;letter-spacing:.05em}.hero-copy>p{font-size:1rem;margin-top:17px}.sample-shell{max-width:none;width:100%;padding:20px}.sample-card{padding:22px 19px}.sample-card .expression{font-size:1.75rem}.sample-top h2{font-size:1rem}.sample-bottom{font-size:.8125rem}.method{padding:24px 0 30px}.method-title{display:block}.method-title h2{font-size:1.25rem}.method-title p{margin-top:5px;text-align:left}.training-card .expression{font-size:2rem;overflow-wrap:normal;word-break:normal}.training-card .example{font-size:1rem}}
@media(max-width:360px){.hero h1{font-size:1.875rem}}

.benefits{border-top:1px solid var(--line);padding:30px 0 40px}
.benefits-heading h2{font-size:1.5rem;line-height:1.35;font-weight:600}
.benefits-heading>p{font-size:1rem;margin-top:8px}
.benefits-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;margin-top:28px}
.benefit-icon{display:grid;place-items:center;width:36px;height:36px;color:var(--primary);background:var(--soft);border-radius:8px;margin-bottom:14px}
.benefit h3{font-size:1.0625rem;line-height:1.4;font-weight:600;max-width:270px;min-height:48px}
.benefit p{font-size:1rem;line-height:1.65;margin-top:10px}
.benefits-cta{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:22px 25px;margin-top:29px;border:1px solid var(--line);border-left:3px solid var(--primary);border-radius:8px;background:var(--panel)}
.benefits-cta h3{font-size:1.0625rem;font-weight:600}
.benefits-cta p{font-size:.9375rem;margin-top:5px}
.benefits-cta .button{flex-shrink:0}
@media(max-width:760px){.benefits{padding:24px 0 30px}.benefits-heading h2{font-size:1.375rem}.benefits-grid{grid-template-columns:1fr;gap:24px;margin-top:25px}.benefit h3{min-height:0;max-width:none}.benefit-icon{margin-bottom:11px}.benefit p{margin-top:7px}.benefits-cta{flex-direction:column;align-items:stretch;gap:18px;padding:20px}.benefits-cta .button{width:100%}}

.hero-actions{margin-top:24px}
.answer-link{display:flex;align-items:center;gap:7px;width:fit-content;max-width:100%;background:transparent;color:#575b73;font-family:inherit;font-size:1rem;font-weight:400;line-height:1.6;letter-spacing:normal;margin-top:23px;padding:9px 0;border:0;border-radius:0;min-height:44px;text-align:left}
.answer-link span{border-bottom:1px dashed currentColor}
.answer-link .icon{width:14px;height:14px;transition:transform .15s}
.answer-link[aria-expanded="true"] .icon{transform:rotate(180deg)}
.answer-link:hover{color:var(--primary)}

/* Result and progress sections belong only to the public landing page. */
.landing-page .speech-results{padding-top:52px;padding-bottom:54px}
.landing-page .speech-results-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:28px}
.landing-page .speech-result{padding:26px;border:1px solid var(--line);border-radius:12px;background:var(--panel)}
.landing-page .speech-result:nth-child(2){background:var(--soft)}
.landing-page .result-icon{display:grid;place-items:center;width:34px;height:34px;color:var(--primary);margin-bottom:18px}
.landing-page .speech-result h3{font-size:1.125rem;line-height:1.4;font-weight:500}
.landing-page .speech-result p{font-size:.9375rem;line-height:1.65;margin-top:11px}
.landing-page .practice-promo .practice-caption{font-size:.875rem;line-height:1.6;max-width:390px}
.landing-page .expression-use-list{list-style:none;padding:0;margin:21px 0 0}
.landing-page .expression-use-list li{display:flex;gap:13px;align-items:baseline;padding:12px 0}
.landing-page .expression-use-list li+li{border-top:1px solid var(--line)}
.landing-page .expression-use-list p{font-size:1rem;line-height:1.65;margin:0;color:var(--ink)}
.landing-page .use-step{font-size:.75rem;color:var(--primary);min-width:18px;font-variant-numeric:tabular-nums}
.landing-page .practice-promo-example{padding:25px 27px;background:transparent}
.landing-page .progress-section{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:56px;align-items:center}
.landing-page .section-heading .progress-note{font-size:.875rem;margin-top:20px}
.landing-page .progress-preview{padding:27px;background:var(--panel);min-width:0}
.landing-page .progress-preview-top{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:.875rem;color:var(--muted)}
.landing-page .progress-preview-top .tag{font-size:.6875rem;white-space:nowrap}
.landing-page .progress-number{margin-top:20px;margin-bottom:20px;font-variant-numeric:tabular-nums}
.landing-page .progress-number strong{font-size:2.5rem;font-weight:500;color:var(--primary);line-height:1}
.landing-page .progress-number>span{font-size:1.125rem;color:var(--muted)}
.landing-page .progress-preview progress{display:block;appearance:none;border:0;width:100%;height:6px;border-radius:6px;background:var(--soft);overflow:hidden}
.landing-page .progress-preview progress::-webkit-progress-bar{background:var(--soft)}
.landing-page .progress-preview progress::-webkit-progress-value{background:var(--primary);border-radius:6px}
.landing-page .progress-preview progress::-moz-progress-bar{background:var(--primary);border-radius:6px}
.landing-page .progress-goal{font-size:.8125rem;margin-top:13px;line-height:1.6}
.landing-page .progress-preview-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding-top:20px;margin-top:22px;border-top:1px solid var(--line)}
.landing-page .progress-preview-stats strong{display:block;font-size:1.25rem;font-weight:500;color:var(--ink)}
.landing-page .progress-preview-stats span{display:block;font-size:.75rem;color:var(--muted);margin-top:4px}
.landing-page .preview-disclaimer{font-size:.6875rem;margin-top:22px;color:var(--muted);line-height:1.6}
.landing-page .learning-system>h2{font-size:1.5rem}
.landing-page .learning-system ul{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px;list-style:none;margin:28px 0 0;padding:0}
.landing-page .learning-system li{display:flex;align-items:flex-start;gap:10px}
.landing-page .learning-system li>.icon{color:var(--primary);width:16px;height:16px;margin-top:4px}
.landing-page .learning-system h3{font-size:1rem;font-weight:500;line-height:1.5}
.landing-page .learning-system p{font-size:.875rem;line-height:1.65;margin-top:7px}
.landing-page .landing-final-cta{text-align:center;background:var(--soft);border:1px solid var(--line);border-radius:14px;padding:48px 32px;margin:10px 0 58px}
.landing-page .landing-final-cta h2{font-size:1.875rem;line-height:1.35;max-width:650px;margin:auto;text-wrap:balance;font-weight:500}
.landing-page .landing-final-cta>p{font-size:1rem;line-height:1.65;max-width:560px;margin:18px auto 25px}
.landing-page .landing-final-cta .cta-note{display:block;margin-top:12px;font-size:.8125rem;color:var(--muted)}
@media(max-width:1050px){.landing-page .progress-section{gap:32px}.landing-page .speech-result{padding:22px}.landing-page .learning-system ul{gap:18px}}
@media(max-width:760px){
 .landing-page .speech-results-grid{grid-template-columns:1fr;gap:13px;margin-top:23px}
 .landing-page .speech-results{padding-top:32px;padding-bottom:34px}
 .landing-page .speech-result{padding:22px}
 .landing-page .result-icon{margin-bottom:12px}
 .landing-page .speech-result h3{font-size:1.0625rem}
 .landing-page .speech-result p{margin-top:8px}
 .landing-page .progress-section{grid-template-columns:1fr;gap:24px}
 .landing-page .progress-preview{padding:22px;width:100%;max-width:490px}
 .landing-page .progress-number strong{font-size:2.25rem}
 .landing-page .practice-promo-example{padding:22px}
 .landing-page .practice-promo .button{min-height:50px}
 .landing-page .learning-system>h2{font-size:1.375rem}
 .landing-page .learning-system ul{grid-template-columns:1fr;gap:20px;margin-top:23px}
 .landing-page .learning-system p{margin-top:4px}
 .landing-page .landing-final-cta{padding:32px 22px;margin:5px 0 36px;text-align:left}
 .landing-page .landing-final-cta h2{font-size:clamp(1.125rem,5vw,1.375rem);line-height:1.4;text-wrap:initial}
 .landing-page .landing-final-cta>p{font-size:.9375rem;margin-top:15px;margin-bottom:23px}
 .landing-page .landing-final-cta .button{width:100%;min-height:52px}
}

/* Public landing only: learning screens retain their existing layout. */
.landing-page .hero{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:56px;align-items:center;padding:68px 0 72px;min-height:max(590px,calc(100svh - 74px))}
.landing-page .hero h1{font-size:clamp(2.3rem,3.5vw,2.875rem);line-height:1.2;letter-spacing:-.035em;max-width:610px;margin-top:20px;text-wrap:balance}
.landing-page .hero-copy>p{max-width:495px;line-height:1.65;margin-top:24px}
.landing-page .hero-copy>.eyebrow{font-size:.75rem;letter-spacing:.065em}
.landing-page .hero-actions{display:flex;flex-direction:column;align-items:flex-start;gap:11px;margin-top:28px}
.landing-page .cta-note{font-size:.8125rem;color:var(--muted)}
.landing-page .sample-shell{border:1px solid var(--line);background:transparent;padding:22px;border-radius:12px}
.landing-page .sample-top{margin-bottom:18px}
.landing-page .sample-top h2{font-size:1rem;color:var(--muted);font-weight:500}
.landing-page .sample-top .tag{white-space:nowrap}

/* Sentence practice shares the course palette and keeps FSRS surfaces intact. */
.public-practice-nav{margin-left:auto;font-size:.875rem;color:var(--muted)}
.public-site .header-actions{margin-left:0}
.practice-page{max-width:900px;margin:auto}
.practice-page .page-heading h1{font-size:2.5rem}
.practice-options{padding:18px 22px;margin-bottom:25px}
.practice-options summary{cursor:pointer;color:var(--ink);font-size:.9375rem;min-height:28px}
.practice-fields{display:grid;grid-template-columns:1fr 1fr 1fr;gap:15px;margin-top:20px;align-items:end}
.practice-fields label{font-size:.8125rem;color:var(--muted)}
.practice-fields select{display:block;width:100%;margin-top:7px;min-width:0}
.practice-fields .button{grid-column:1/-1;justify-self:start}
.practice-help{display:block;color:var(--muted);font-size:.8125rem;line-height:1.6;margin-top:12px}
.practice-progress{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:.875rem;color:var(--muted);margin-bottom:16px}
.practice-progress progress{width:100%;height:5px;accent-color:var(--primary)}
.practice-card{padding:42px 38px;text-align:center;min-height:270px;display:flex;flex-direction:column;justify-content:center}
.practice-prompt{font-size:clamp(1.5rem,3vw,2rem);line-height:1.45;margin:24px auto 0;max-width:650px;overflow-wrap:break-word}
.practice-answer{margin-top:28px;padding-top:25px;border-top:1px solid var(--line)}
.practice-answer>p{color:var(--ink);font-size:1.375rem;line-height:1.6;margin-bottom:17px}
.practice-answer .tag{min-height:38px;padding:8px 12px}
.practice-buttons{display:flex;gap:14px;margin-top:20px}
.practice-buttons>.button{flex:1;min-height:54px}
.practice-buttons kbd{background:transparent;border:0;font-size:.75rem;color:inherit;margin-left:7px}
.practice-empty{padding:40px 30px;text-align:center}
.practice-empty h2{margin-top:12px}
.practice-empty p{margin:16px auto;max-width:570px}
.practice-results{display:flex;justify-content:center;gap:25px;flex-wrap:wrap;margin:25px 0}
.practice-total{margin-top:24px;font-size:.8125rem;text-align:center}
.practice-focus{padding:0 0 20px;color:var(--muted);font-size:.9375rem}
.practice-focus a{color:var(--primary);margin-left:16px}
.practice-promo{display:grid;grid-template-columns:1.25fr 1fr;gap:56px;align-items:center}
.practice-promo h2{font-size:1.5rem;line-height:1.4}
.practice-promo p{margin-top:16px;line-height:1.7;max-width:550px}
.practice-promo .button{margin-top:23px}
.practice-promo-example{padding:25px;font-size:1.125rem}
.practice-catalog-link{display:block;margin-top:10px;color:var(--primary);font-size:.8125rem;white-space:normal}
@media(min-width:761px) and (max-width:1050px){.with-nav .header-inner{gap:20px}.with-nav .nav{gap:15px}.with-nav .nav a{font-size:.8125rem}}
@media(max-width:760px){
 .public-site .header-inner{gap:12px}.public-practice-nav{font-size:.8125rem}
 .nav a{min-width:0;flex:1;font-size:.6875rem}
 .practice-page .page-heading h1{font-size:2.1rem}
 .practice-page .page-heading p{font-size:.9375rem}
 .practice-options{padding:16px;margin-bottom:20px}
 .practice-options summary{font-size:.8125rem;line-height:1.5;min-height:32px}
 .practice-fields{grid-template-columns:1fr;gap:13px;margin-top:17px}
 .practice-fields .button{width:100%}
 .practice-progress{font-size:.8125rem}
 .practice-card{padding:30px 20px;min-height:280px}
 .practice-card .eyebrow{font-size:.6875rem}
 .practice-prompt{font-size:1.5rem;line-height:1.4}
 .practice-answer>p{font-size:1.1875rem}
 .practice-buttons{gap:10px}.practice-buttons>.button{min-height:58px;padding:13px 12px}
 .practice-buttons kbd{display:none}
 .practice-page>.practice-buttons{position:sticky;bottom:80px;z-index:2;background:var(--bg);padding:6px 0}
 .practice-empty{padding:30px 20px}
 .practice-empty .practice-buttons{flex-direction:column}
 .practice-results{gap:16px;font-size:.9375rem}
 .practice-promo{grid-template-columns:1fr;gap:25px}
 .practice-promo h2{font-size:1.375rem}
}
.landing-page .sample-card{background:var(--panel);padding:24px;border-radius:9px}
.landing-page .sample-word{font-size:.9375rem;margin-bottom:24px}
.landing-page .sample-word strong{color:var(--ink);font-weight:500}
.landing-page .sample-card .expression{font-size:1.75rem;margin-top:10px}
.landing-page .sample-card .eyebrow{font-size:.6875rem;font-weight:500}
.landing-page .sample-bottom{font-size:.8125rem;line-height:1.5}
.landing-page .landing-section{border-top:1px solid var(--line);padding:46px 0 48px}
.landing-page .section-heading h2,.landing-page .landing-method>h2{font-size:1.5rem;font-weight:600;line-height:1.3}
.landing-page .section-heading>p{margin-top:14px;max-width:755px;font-size:1rem;line-height:1.7}
.landing-page .word-expression-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:26px}
.landing-page .word-expression-card{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding:21px 20px;background:var(--panel);border:1px solid var(--line);border-radius:10px;font-size:1rem}
.landing-page .source-word{color:var(--muted)}
.landing-page .word-arrow{color:var(--primary)}
.landing-page .word-expression-card strong{font-weight:500;color:var(--ink)}
.landing-page .priority-section{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:56px;align-items:start}
.landing-page .section-heading .preview-note{font-size:.8125rem;line-height:1.6;margin-top:20px;color:var(--muted);max-width:360px}
.landing-page .priority-preview{list-style:none;counter-reset:none;padding:6px 23px;margin:0;background:var(--panel);border:1px solid var(--line);border-radius:10px}
.landing-page .priority-preview li{display:flex;align-items:center;gap:20px;padding:12px 0;font-size:1rem}
.landing-page .priority-preview li+li{border-top:1px solid var(--line)}
.landing-page .preview-position{color:var(--muted);font-size:.8125rem;min-width:25px;font-variant-numeric:tabular-nums}
.landing-page .landing-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;list-style:none;padding:0;margin:28px 0 0}
.landing-page .landing-steps li{display:flex;gap:14px;align-items:flex-start}
.landing-page .landing-steps h3{font-size:1rem;font-weight:500;line-height:1.45}
.landing-page .landing-steps p{font-size:.9375rem;line-height:1.65;margin-top:8px}
@media(max-width:1050px){.landing-page .hero,.landing-page .priority-section{gap:32px}.landing-page .hero h1{font-size:2.5rem}.landing-page .word-expression-card{gap:9px;padding:18px 16px}}
@media(max-width:760px){
  .landing-page .hero{grid-template-columns:1fr;min-height:0;gap:34px;padding:34px 0 40px}
  .landing-page .hero h1{font-size:clamp(1.75rem,7.2vw,2.375rem);line-height:1.22;margin-top:17px;max-width:490px;letter-spacing:-.035em;text-wrap:initial}
  .landing-page .hero-copy>.eyebrow{font-size:.625rem;letter-spacing:.035em}
  .landing-page .hero-copy>p{font-size:1rem;margin-top:20px;max-width:490px}
  .landing-page .hero-actions{margin-top:24px;gap:10px}
  .landing-page .sample-shell{padding:18px;width:100%;max-width:490px}
  .landing-page .sample-top{gap:8px}
  .landing-page .sample-top h2{font-size:.9375rem}
  .landing-page .sample-top .tag{font-size:.6875rem;padding:3px 6px}
  .landing-page .sample-card{padding:22px 19px}
  .landing-page .sample-word{margin-bottom:21px}
  .landing-page .sample-card .expression{font-size:1.625rem}
  .landing-page .landing-section{padding:32px 0 34px}
  .landing-page .section-heading h2,.landing-page .landing-method>h2{font-size:1.375rem}
  .landing-page .section-heading>p{font-size:.9375rem;margin-top:12px}
  .landing-page .word-expression-grid{grid-template-columns:1fr;gap:11px;margin-top:22px}
  .landing-page .word-expression-card{padding:18px 20px;gap:13px}
  .landing-page .priority-section{grid-template-columns:1fr;gap:24px}
  .landing-page .section-heading .preview-note{margin-top:16px}
  .landing-page .landing-steps{grid-template-columns:1fr;gap:24px;margin-top:24px}
}


/* Focused landing: compact copy, one product demonstration, mobile entry. */
.landing-page{--muted:#60647a}
.landing-page .hero{min-height:0;padding:46px 0 52px}
.landing-page .hero h1{margin-top:14px}
.landing-page .hero-copy>p{margin-top:18px}
.landing-page .hero-actions{margin-top:22px}
.landing-page .word-expression-card{display:grid;grid-template-columns:1fr auto;gap:6px 12px;padding:18px 22px}
.landing-page .word-expression-card strong{grid-column:1/-1;font-size:1.25rem;font-weight:600;color:var(--primary)}
.landing-page .word-arrow{grid-column:2;grid-row:1/3;align-self:center}
.landing-page .landing-section{padding:34px 0 38px}
.landing-page .section-heading>p{line-height:1.6;max-width:600px}
.landing-page .mini-test-section{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:40px;align-items:center;background:var(--soft);border:1px solid var(--line);border-radius:12px;padding:26px 28px;margin:0 0 32px}
.landing-page .mini-test-section h2{font-size:1.5rem;line-height:1.3}
.landing-page .test-note{display:block;font-size:.8125rem;line-height:1.5;color:var(--muted);margin-top:12px}
.landing-page .mini-test-card{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:20px 24px;min-width:0}
.landing-page .test-counter{font-size:.875rem;color:var(--muted);font-variant-numeric:tabular-nums}
.landing-page .mini-test-card h3{font-size:1.75rem;line-height:1.25;color:var(--primary);margin:10px 0}
.landing-page .mini-test-card p{font-size:1rem;line-height:1.5;margin:0 0 16px}
.landing-page .test-actions{display:flex;gap:10px}
.landing-page .test-actions .button{flex:1;min-height:48px}
.landing-page .test-restart{display:block;font-size:.875rem;margin-top:12px}
.landing-page .priority-preview{padding:4px 22px}
.landing-page .priority-preview li{padding:9px 0}
.landing-page .landing-steps{margin-top:22px;gap:24px}
.landing-page .landing-steps h3{font-weight:600}
.landing-page .landing-steps p{margin-top:5px}
.landing-page .practice-promo{align-items:center}
.landing-page .practice-promo h2{font-size:1.625rem;line-height:1.3}
.landing-page .practice-promo>div>p{font-size:1rem;line-height:1.6;margin-top:14px}
.landing-page .practice-benefits{list-style:none;margin:16px 0 20px;padding:0;display:flex;flex-wrap:wrap;gap:6px 16px;font-size:.875rem;color:var(--muted)}
.landing-page .practice-expression{font-size:1.5rem;font-weight:600;color:var(--primary)}
.landing-page .practice-promo-example{background:var(--panel);padding:22px 24px}
.landing-page .expression-use-list{margin-top:12px}
.landing-page .expression-use-list li{padding:10px 0}
.landing-page .progress-preview{padding:22px 24px}
.landing-page .progress-number{margin:16px 0}
.landing-page .progress-preview-top .tag{font-size:.8125rem}
.landing-page .progress-preview-stats{gap:10px;margin-top:18px;padding-top:16px}
.landing-page .progress-preview-stats span{font-size:.8125rem;line-height:1.4}
.landing-page .preview-disclaimer{font-size:.8125rem;margin-top:14px;line-height:1.5}
.landing-page .compact-benefits{list-style:none;display:flex;justify-content:center;flex-wrap:wrap;gap:12px 28px;padding:0;margin:12px 0 24px;font-size:.9375rem;color:var(--muted)}
.landing-page .landing-final-cta{padding:34px 28px;margin-bottom:36px}
.landing-page .landing-final-cta>p{margin:14px auto 22px}
.landing-page .cta-note,.landing-page .sample-bottom{font-size:.875rem;line-height:1.5}
.mobile-start{display:none}
@media(max-width:760px){
 .landing-page .hero{padding:24px 0 30px;gap:24px}
 .landing-page .hero h1{margin-top:12px}
 .landing-page .hero-copy>.eyebrow{font-size:.6875rem}
 .landing-page .hero-copy>p{margin-top:14px;line-height:1.6}
 .landing-page .hero-actions{margin-top:18px;gap:8px}
 .landing-page .hero-actions .button{width:100%;min-height:50px}
 .landing-page .sample-shell{padding:15px}
 .landing-page .sample-top{margin-bottom:12px}
 .landing-page .sample-card{padding:18px}
 .landing-page .sample-word{margin-bottom:16px}
 .landing-page .sample-card .eyebrow{font-size:.75rem}
 .landing-page .landing-section{padding:28px 0 30px}
 .landing-page .section-heading>p{font-size:1rem}
 .landing-page .word-expression-grid{margin-top:18px;gap:8px}
 .landing-page .word-expression-card{display:flex;flex-wrap:nowrap;gap:10px;padding:13px 16px}
 .landing-page .word-expression-card strong{font-size:1.125rem;margin-left:auto}
 .landing-page .source-word{font-size:.875rem}
 .landing-page .mini-test-section{grid-template-columns:1fr;gap:18px;padding:20px 16px;margin-bottom:24px}
 .landing-page .mini-test-section h2{font-size:1.375rem}
 .landing-page .mini-test-card{padding:18px;min-height:194px}
 .landing-page .mini-test-card h3{font-size:1.625rem}
 .landing-page .priority-section{gap:18px}
 .landing-page .section-heading .preview-note{font-size:.875rem;margin-top:12px}
 .landing-page .landing-steps{gap:18px;margin-top:20px}
 .landing-page .landing-steps p{font-size:1rem}
 .landing-page .practice-promo{gap:20px}
 .landing-page .practice-promo h2{font-size:1.375rem}
 .landing-page .practice-promo-example{padding:20px 18px}
 .landing-page .practice-promo .practice-caption{font-size:.9375rem}
 .landing-page .progress-section{gap:20px}
 .landing-page .progress-preview{padding:20px 18px}
 .landing-page .compact-benefits{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:6px 0 22px;font-size:.875rem}
 .landing-page .landing-final-cta{padding:28px 20px;margin-bottom:20px}
 .landing-page .landing-final-cta h2{font-size:1.375rem}
 .landing-page .landing-final-cta>p{font-size:1rem}
 .landing-page{padding-bottom:calc(66px + env(safe-area-inset-bottom))}
 .mobile-start:not([hidden]){display:block;position:fixed;bottom:0;left:0;right:0;z-index:25;background:var(--panel);border-top:1px solid var(--line);padding:8px 20px calc(8px + env(safe-area-inset-bottom))}
 .mobile-start .button{width:100%;min-height:46px;padding:10px 16px}
}
@media(max-width:430px){.public-site .brand-description{display:none}}
@media(max-width:760px){
 .landing-page .landing-section{padding:24px 0 26px}
 .landing-page .mini-test-section{padding:18px 16px;gap:14px;margin-bottom:20px}
 .landing-page .sample-card{padding:16px 18px}
 .landing-page .sample-card .example{margin-top:12px}
 .landing-page .practice-benefits{margin:12px 0 16px}
 .landing-page .expression-use-list li{padding:8px 0}
 .landing-page .progress-preview{padding:18px}
}
/* Conversion polish, scoped to the public landing. */
.landing-page .demo-label{display:block;font-size:.75rem;line-height:1.4;color:var(--muted);font-weight:400;letter-spacing:0;margin-bottom:5px}
.landing-page .sample-top h2{font-size:.9375rem;color:var(--ink)}
.landing-page .sample-chain{display:grid;grid-template-columns:auto 22px minmax(0,1fr);align-items:center;gap:10px}
.landing-page .sample-origin{font-size:1rem;color:var(--muted)}
.landing-page .chain-arrow{color:var(--primary);text-align:center}
.landing-page .sample-chain .expression{font-size:1.5rem;line-height:1.3;margin:0}
.landing-page .sample-context{margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}
.landing-page .sample-context .example{margin-top:5px}
.landing-page .word-expression-card{grid-template-columns:minmax(0,1fr);gap:10px;padding:18px 20px}
.landing-page .word-arrow{display:none}
.landing-page .isolated-word{padding-bottom:12px;border-bottom:1px solid var(--line)}
.landing-page .natural-expression{padding-top:2px}
.landing-page .natural-expression strong{display:block;font-size:1.25rem}
.landing-page .natural-expression .demo-label{color:var(--primary)}
.landing-page .test-invitation{display:inline-flex;align-items:center;gap:8px;color:var(--primary);font-size:.8125rem;font-weight:600;margin-bottom:12px}
.landing-page .test-invitation::before{content:'';width:7px;height:7px;border-radius:50%;background:var(--primary)}
.landing-page .priority-section .section-heading strong{color:var(--ink);font-weight:600}
.landing-page .landing-steps{grid-template-columns:repeat(4,minmax(0,1fr));gap:32px}
.landing-page .landing-steps li{position:relative}
.landing-page .landing-steps li:not(:last-child)::after{content:'→';position:absolute;right:-23px;top:1px;color:var(--primary)}
.landing-page .expression-use-list li{display:block;padding:12px 0}
.landing-page .use-label{display:block;color:var(--muted);font-size:.8125rem;line-height:1.4;margin-bottom:5px}
.landing-page .expression-use-list p{line-height:1.5}
.landing-page .progress-goal-note{font-size:.875rem;line-height:1.5;color:var(--muted);margin:-4px 0 16px;max-width:390px}
.landing-page .method-summary{padding:16px 0 24px}
.landing-page .method-summary>p{font-size:.8125rem;color:var(--muted);margin:0 0 14px;text-align:center}
.landing-page .method-summary .compact-benefits{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin:0;text-align:center}
.landing-page .compact-benefits strong{display:block;font-size:.875rem;font-weight:500;line-height:1.4;color:var(--ink)}
.landing-page .compact-benefits span{display:block;font-size:.8125rem;line-height:1.5;margin-top:5px}
@media(max-width:1050px) and (min-width:761px){.landing-page .sample-chain{grid-template-columns:1fr}.landing-page .chain-arrow{text-align:left}.landing-page .landing-steps{gap:24px}.landing-page .landing-steps li:not(:last-child)::after{right:-18px}}
@media(max-width:760px){
 .landing-page .sample-top{align-items:flex-start}
 .landing-page .sample-top h2{max-width:230px;line-height:1.4}
 .landing-page .sample-chain{grid-template-columns:auto 18px minmax(0,1fr);gap:8px}
 .landing-page .sample-chain .expression{font-size:1.25rem}
 .landing-page .sample-context{margin-top:16px;padding-top:14px}
 .landing-page .word-expression-card{display:grid;grid-template-columns:minmax(0,.85fr) 18px minmax(0,1.25fr);gap:12px;padding:14px 16px;align-items:center}
 .landing-page .isolated-word{border-bottom:0;padding:0}
 .landing-page .word-arrow{display:block;grid-column:auto;grid-row:auto}
 .landing-page .natural-expression{padding:0}
 .landing-page .natural-expression strong{font-size:1.125rem;margin:0;line-height:1.4}
 .landing-page .demo-label{font-size:.75rem}
 .landing-page .landing-steps{grid-template-columns:1fr;gap:22px}
 .landing-page .landing-steps li:not(:last-child)::after{content:'';height:12px;width:1px;background:var(--line);left:13px;top:34px;right:auto}
 .landing-page .method-summary{padding:10px 0 24px}
 .landing-page .method-summary>p{text-align:left}
 .landing-page .method-summary .compact-benefits{grid-template-columns:1fr 1fr;gap:18px 16px;text-align:left}
 .landing-page .landing-final-cta .button{font-size:.9375rem;white-space:normal}
}
/* Learning cycle: styles confined to the How it works section. */
.landing-page .landing-method .method-lead{font-size:1rem;line-height:1.65;color:var(--muted);margin-top:16px;max-width:none}
.landing-page .landing-method .landing-steps{grid-template-columns:repeat(4,minmax(0,1fr));gap:32px;margin-top:30px}
.landing-page .landing-method .landing-steps li{display:block;position:relative}
.landing-page .landing-method .step{font-size:.875rem;width:34px;height:32px;margin-bottom:14px;font-variant-numeric:tabular-nums}
.landing-page .landing-method .landing-steps h3{font-size:1.0625rem;line-height:1.4;font-weight:600}
.landing-page .landing-method .landing-steps p{font-size:1rem;line-height:1.6;margin-top:10px}
.landing-page .landing-method .landing-steps li:not(:last-child)::after{content:'→';top:4px;right:-24px;color:var(--primary);height:auto;width:auto;background:none}
.landing-page .landing-method .method-active h3{color:var(--primary)}
.landing-page .landing-method .method-active .step{background:var(--primary);color:white}
.landing-page .landing-method .method-examples{font-size:.875rem;line-height:1.6;margin-top:14px;color:var(--ink)}
.landing-page .landing-method .method-examples span{display:block}
.landing-page .landing-method .method-mobile-copy{display:none}
.landing-page .landing-method .method-outcome{display:flex;justify-content:space-between;align-items:center;gap:32px;margin-top:30px}
.landing-page .landing-method .method-outcome p{font-size:1rem;line-height:1.6;max-width:680px;color:var(--ink)}
.landing-page .landing-method .method-outcome .button{flex-shrink:0;font-size:.9375rem}
@media(max-width:1050px) and (min-width:761px){
 .landing-page .landing-method .landing-steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 36px}
 .landing-page .landing-method .landing-steps li:nth-child(2)::after{display:none}
 .landing-page .landing-method .method-desktop-break{display:none}
 .landing-page .landing-method .method-outcome{align-items:flex-start}
}
@media(max-width:760px){
 .landing-page .landing-method .method-lead{font-size:1rem;line-height:1.6;margin-top:14px}
 .landing-page .landing-method .method-desktop-break{display:none}
 .landing-page .landing-method .landing-steps{grid-template-columns:1fr;gap:38px;margin-top:26px}
 .landing-page .landing-method .step{margin-bottom:10px}
 .landing-page .landing-method .landing-steps h3{font-size:1.1875rem}
 .landing-page .landing-method .landing-steps p{margin-top:7px}
 .landing-page .landing-method .method-mobile-copy{display:block}
 .landing-page .landing-method .method-desktop-copy{display:none}
 .landing-page .landing-method .landing-steps li:not(:last-child)::after{content:'↓';left:8px;right:auto;top:auto;bottom:-28px}
 .landing-page .landing-method .method-examples{font-size:.9375rem;margin-top:10px}
 .landing-page .landing-method .method-outcome{display:block;margin-top:28px}
 .landing-page .landing-method .method-outcome .button{margin-top:18px;min-height:48px}
}
/* Practice promotion only: automatic recall, clear examples, quiet rhythm. */
.landing-page .practice-promo{gap:40px;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);align-items:center}
.landing-page .practice-promo h2{font-size:1.625rem;line-height:1.3;max-width:650px;text-wrap:balance}
.landing-page .practice-promo>div>p{font-size:1rem;line-height:1.65;max-width:490px;margin-top:20px}
.landing-page .practice-promo .practice-benefits{display:flex;flex-direction:column;align-items:flex-start;gap:9px;margin:20px 0 24px;font-size:.9375rem;line-height:1.5;color:#575b73}
.landing-page .practice-promo .practice-promo-example{background:var(--panel);padding:28px;border-radius:12px;min-width:0}
.landing-page .practice-promo .practice-expression{font-size:1.875rem;line-height:1.2;font-weight:600;margin:0;color:var(--primary)}
.landing-page .practice-promo .expression-use-list{margin-top:22px}
.landing-page .practice-promo .expression-use-list li{padding:15px 0}
.landing-page .practice-promo .expression-use-list li:last-child{padding-bottom:0}
.landing-page .practice-promo .use-label{font-size:.8125rem;line-height:1.4;color:#60647a;margin-bottom:6px}
.landing-page .practice-promo .expression-use-list p{font-size:1rem;line-height:1.6;color:var(--ink)}
.landing-page .practice-promo .button{min-height:48px}
@media(max-width:760px){
 .landing-page .practice-promo{grid-template-columns:1fr;gap:26px}
 .landing-page .practice-promo h2{font-size:1.3125rem;line-height:1.35;text-wrap:initial}
 .landing-page .practice-promo>div>p{margin-top:16px}
 .landing-page .practice-promo .practice-benefits{margin:18px 0 22px;gap:8px;font-size:1rem}
 .landing-page .practice-promo .practice-promo-example{padding:24px 20px;width:100%}
 .landing-page .practice-promo .practice-expression{font-size:1.75rem}
 .landing-page .practice-promo .expression-use-list{margin-top:20px}
}
/* Stable digits while the illustrative progress preview animates. */
.landing-page .progress-preview .progress-number strong{display:inline-block;min-width:3ch;font-variant-numeric:tabular-nums}
.landing-page .progress-preview .progress-preview-stats strong{font-variant-numeric:tabular-nums}
/* Header guide entry and the concise learning handbook. */
.header-menu{margin-left:auto;position:relative;flex-shrink:0}
.header-menu .public-practice-nav{display:flex;align-items:center;gap:22px;margin:0}
.header-menu .public-practice-nav a{font-size:.9375rem;min-height:44px;display:flex;align-items:center;white-space:nowrap}
.header-menu .public-practice-nav a[aria-current]{color:var(--primary)}
.menu-toggle{display:none}
.learning-guide{max-width:860px;margin:0 auto;padding:44px 0 56px;font-size:1rem;line-height:1.65}
.learning-guide h1{font-size:clamp(1.875rem,3.6vw,2.5rem);line-height:1.2;max-width:700px}
.learning-guide h2{font-size:clamp(1.25rem,2vw,1.5rem);line-height:1.35}
.learning-guide p{margin-top:14px;max-width:760px}
.guide-intro>p{font-size:1.0625rem;line-height:1.6;max-width:720px;margin-top:18px}
.guide-cycle{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));list-style:none;counter-reset:guide;gap:18px;padding:0;margin:30px 0 40px}
.guide-cycle li{font-size:.9375rem;line-height:1.45;counter-increment:guide;border-top:2px solid var(--line);padding-top:12px;color:var(--ink)}
.guide-cycle li::before{content:'0' counter(guide);display:block;color:var(--primary);font-size:.875rem;margin-bottom:7px;font-variant-numeric:tabular-nums}
.guide-step{margin-top:32px}
.guide-example{background:var(--soft);border-radius:10px;padding:18px 22px;margin-top:18px;display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-width:0}
.guide-example strong{font-size:1.375rem;font-weight:600;color:var(--primary);line-height:1.3}
.guide-example p{color:var(--ink);margin-top:10px}
.guide-source{color:var(--muted)}
.learning-guide .guide-tip{color:var(--ink);font-size:1rem;padding-left:14px;border-left:2px solid var(--primary);margin-top:16px}
.guide-example dl{margin:12px 0 0}
.guide-example dt{font-size:.8125rem;color:var(--muted);margin-top:12px}
.guide-example dt:first-child{margin:0}
.guide-example dd{margin:3px 0 0;color:var(--ink)}
.guide-practice>.button{margin-top:18px;min-height:48px}
.guide-session{background:var(--soft);padding:22px;margin-top:32px;border-radius:10px}
.guide-session ol{margin:14px 0 0;padding-left:22px}
.guide-session li+li{margin-top:6px}
.guide-avoid{padding-left:22px;margin-top:16px;color:var(--muted)}
.guide-avoid li+li{margin-top:8px}
.guide-formula{margin-top:32px}
.learning-guide .guide-formula-line{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;font-size:.9375rem;font-weight:600;color:var(--primary);line-height:1.7}
.guide-start{margin-top:34px}
.guide-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}
.guide-actions .button{min-height:48px}
@media(max-width:1050px){.header-inner .brand-description{display:none}}
@media(max-width:760px){
 .menu-toggle{display:inline-flex;min-height:44px}
 .header-menu .public-practice-nav{display:none;position:absolute;right:0;top:calc(100% + 10px);width:200px;z-index:40;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:8px;gap:0;box-shadow:0 8px 24px #25283d12;flex-direction:column;align-items:stretch}
 .header-menu.is-open .public-practice-nav{display:flex}
 .header-menu .public-practice-nav a{padding:10px 12px;font-size:1rem;min-height:44px}
 .header-inner{gap:10px}
 .learning-guide{padding-top:30px;padding-bottom:40px}
 .guide-cycle{grid-template-columns:1fr;gap:12px;margin:26px 0 32px}
 .guide-cycle li{display:grid;grid-template-columns:28px 1fr;gap:10px;padding-top:10px}
 .guide-cycle li::before{margin:0}
 .guide-example{padding:18px;width:100%}
 .guide-actions{flex-direction:column}
 .guide-actions .button{width:100%}
}
/* Journal: real activity, open metrics and a calendar with contained scrolling. */
.journal-page{max-width:1120px;margin:auto}
.journal-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin:28px 0 12px}
.journal-summary>div{display:flex;flex-direction:column;gap:8px}
.journal-summary strong{font-size:clamp(1.75rem,3vw,2.5rem);line-height:1.2;font-weight:600;color:var(--primary);font-variant-numeric:tabular-nums}
.journal-summary span{font-size:.9375rem;color:var(--muted)}
.journal-data-note{font-size:.875rem;line-height:1.6;color:var(--muted);margin-top:12px}
.journal-section{margin-top:40px;min-width:0}
.journal-section h2,.journal-comparison h2{font-size:1.375rem;line-height:1.35}
.journal-section-title{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px}
.journal-section-title>span{font-size:.8125rem;color:var(--muted)}
.heat-scroll{max-width:100%;overflow-x:auto;padding-bottom:10px}
.heat-months{display:grid;grid-template-columns:repeat(12,1fr);margin-left:30px;min-width:790px;font-size:.8125rem;color:var(--muted);margin-bottom:9px}
.heat-layout{display:flex;gap:10px;min-width:820px}
.heat-weekdays{display:grid;grid-template-rows:repeat(7,12px);gap:4px;width:20px;flex-shrink:0;font-size:.6875rem;color:var(--muted);line-height:12px}
.heat-grid{display:grid;grid-template-rows:repeat(7,12px);grid-auto-flow:column;grid-auto-columns:12px;gap:4px}
.heat-day{border:0;border-radius:3px;padding:0;width:12px;height:12px;cursor:pointer;opacity:1}
.heat-day:disabled{cursor:default;opacity:.45}
.heat-day:focus-visible{outline:2px solid var(--primary);outline-offset:2px}
.level-0{background:#e9e9f2}.level-1{background:#dbd9f1}.level-2{background:#b4afd9}.level-3{background:#8781c2}.level-4{background:var(--primary)}
.journal-day-detail{font-size:.875rem;line-height:1.5;min-height:22px;color:var(--muted);margin-top:10px}
.heat-footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;margin-top:16px;font-size:.875rem;color:var(--muted)}
.heat-legend{display:flex;align-items:center;gap:5px;font-size:.8125rem}
.heat-legend i{display:block;width:12px;height:12px;border-radius:3px}
.journal-course{display:grid;grid-template-columns:1.5fr 1fr;gap:36px;align-items:center;background:var(--soft);padding:26px;border-radius:12px}
.journal-course-number{font-size:1.25rem;color:var(--muted);margin:20px 0}
.journal-course-number strong{font-size:2.75rem;color:var(--primary);font-weight:600}
.journal-course progress{display:block;width:100%;height:8px;accent-color:var(--primary);margin:0 0 16px}
.journal-course p{line-height:1.6}
.journal-next-goal{font-size:.9375rem;margin-top:8px;color:var(--muted)}
.journal-comparison{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:40px}
.journal-detail-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:22px 0 18px}
.journal-detail-stats>div{display:flex;flex-direction:column-reverse;gap:6px}
.journal-detail-stats dd{font-size:1.75rem;margin:0;color:var(--ink);font-weight:600}
.journal-detail-stats dt{font-size:.875rem;color:var(--muted);line-height:1.5}
.journal-practice-types{padding-left:20px;font-size:.875rem;color:var(--muted);margin-top:14px;line-height:1.8}
.journal-bars{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:20px;margin-top:22px}
.journal-bar-column{text-align:center;display:flex;flex-direction:column;gap:7px;font-size:.875rem;color:var(--muted)}
.journal-bar-column strong{color:var(--ink);font-weight:500}
.journal-bar-track{height:120px;display:flex;align-items:flex-end;background:var(--soft);border-radius:6px;overflow:hidden}
.journal-bar-track span{width:100%;background:var(--primary);border-radius:6px 6px 0 0}
.journal-bar-column small{font-size:.75rem}
.journal-event{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:18px 0;border-bottom:1px solid var(--line)}
.journal-event h3{font-size:1.125rem;font-weight:500}
.journal-event>div{display:flex;flex-direction:column;gap:6px}
.journal-event>div:last-child{align-items:flex-end}
.journal-event span,.journal-event time{font-size:.875rem;color:var(--muted)}
.journal-event .known{color:var(--primary)}
.journal-event .missed{color:var(--ink)}
.journal-empty{padding:26px;background:var(--soft);border-radius:12px;margin-top:28px}
.journal-empty h2{font-size:1.375rem;line-height:1.35}
.journal-empty p{margin:12px 0 20px;line-height:1.6}
.journal-recent>.button{margin-top:18px}
.journal-recent>p{margin-top:16px;line-height:1.6}
@media(max-width:760px){.journal-summary{grid-template-columns:1fr 1fr;gap:24px 16px}.journal-section-title{align-items:flex-start;flex-direction:column;gap:8px}.journal-course{grid-template-columns:1fr;gap:8px;padding:22px}.journal-comparison{grid-template-columns:1fr;gap:30px}.journal-detail-stats{gap:12px}.journal-bars{gap:9px}.journal-bar-track{height:100px}.journal-event{align-items:flex-start;gap:12px}.journal-event h3{font-size:1rem}.journal-empty{padding:22px}.heat-footer{flex-direction:column}.journal-summary span{font-size:.875rem}}
.journal-bar-track svg{display:block;width:100%;height:100%}
.journal-bar-track rect{fill:var(--primary)}
/* Product preferences: three groups, one summary and one save action. */
.preferences-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:32px 44px;align-items:start}
.preferences-main{min-width:0}
.preferences-section{padding:0 0 30px;margin-bottom:30px;border-bottom:1px solid var(--line)}
.preferences-section h2{font-size:1.375rem;line-height:1.35}
.preferences-section .field{margin-top:22px}
.preferences-section .field p{font-size:.9375rem;line-height:1.6;max-width:580px}
.preferences-section input,.preferences-section select{width:100%;font-size:1rem;min-height:48px}
.settings-presets{display:flex;gap:8px;margin-top:12px}
.settings-presets button{border:1px solid var(--line);background:var(--panel);color:var(--primary);min-width:48px;min-height:44px;border-radius:8px;font-size:.9375rem;cursor:pointer}
.preferences-section .settings-toggle{display:grid;grid-template-columns:1fr 44px;align-items:center;gap:4px 16px}
.preferences-section .settings-toggle label{margin:0}
.preferences-section .settings-toggle input{width:24px;height:24px;min-height:0;margin:10px;accent-color:var(--primary);cursor:pointer}
.preferences-section .settings-toggle p{grid-column:1/-1}
.settings-theme-note{font-size:.9375rem;margin-top:20px;color:var(--muted)}
.preferences-summary{background:var(--soft);padding:24px;border-radius:12px;min-width:0}
.preferences-summary h2{font-size:1.25rem;line-height:1.35}
.preferences-summary dl{margin:20px 0 24px}
.preferences-summary dl>div{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:11px 0;border-bottom:1px solid var(--line);font-size:.875rem;line-height:1.5}
.preferences-summary dt{color:var(--muted)}
.preferences-summary dd{margin:0;text-align:right;font-weight:500;color:var(--ink)}
.preferences-summary h3{font-size:1rem;line-height:1.4}
.preferences-summary p{font-size:.9375rem;line-height:1.6;margin-top:8px}
.preferences-save{grid-column:1/-1}
.preferences-save .button{min-height:48px}
.study-goal,.study-practice-offer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;padding:14px 18px;margin-bottom:18px;background:var(--soft);border-radius:10px;font-size:.9375rem;line-height:1.5}
.study-goal a,.study-practice-offer a{color:var(--primary);font-weight:500}
@media(max-width:760px){.preferences-layout{grid-template-columns:1fr;gap:24px}.preferences-section{padding-bottom:26px;margin-bottom:26px}.preferences-section:last-child{margin:0}.preferences-summary{padding:22px}.preferences-save .button{width:100%}}
/* Binary self-assessment in learning cards. */
.training .ratings{grid-template-columns:repeat(2,minmax(0,1fr))}
/* Journal learning/practice: consistent rows for values and descriptions. */
.journal-comparison .journal-detail-stats{display:grid;grid-template-columns:1fr;gap:0;margin:20px 0 18px}
.journal-comparison .journal-detail-stats>div{display:grid;grid-template-columns:80px minmax(0,1fr);align-items:baseline;gap:16px;min-height:56px;padding:12px 0;border-bottom:1px solid var(--line)}
.journal-comparison .journal-detail-stats dd{grid-column:1;grid-row:1;margin:0;font-size:1.75rem;line-height:1.2;font-weight:600;font-variant-numeric:tabular-nums}
.journal-comparison .journal-detail-stats dt{grid-column:2;grid-row:1;font-size:.9375rem;line-height:1.5;color:var(--muted)}
.journal-comparison>section>p{font-size:.9375rem;line-height:1.6;margin-top:14px}
@media(max-width:760px){.journal-comparison .journal-detail-stats>div{grid-template-columns:72px minmax(0,1fr);gap:14px}}
/* Account entry shares the public site's palette and typography. */
.auth-page{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:clamp(48px,8vw,116px);align-items:center;padding:76px 0 96px;min-height:calc(100vh - 230px)}
.auth-copy{max-width:470px}.auth-back{margin-bottom:36px}.auth-copy>.eyebrow{display:block}.auth-copy h1{font-size:clamp(2.3rem,3.8vw,3.25rem);line-height:1.12;letter-spacing:-.045em;margin:16px 0 20px}.auth-intro{line-height:1.7;max-width:425px}.auth-intro strong{color:var(--ink);overflow-wrap:anywhere}.auth-copy .field{margin-top:30px}.auth-copy input{min-height:58px;padding:16px 18px;background:var(--surface,#fff)}.auth-copy input[name=code]{letter-spacing:.3em;font-size:1.25rem}.auth-copy form>.button{margin-top:16px;min-height:56px;justify-content:center;gap:12px}.auth-help{font-size:.875rem;line-height:1.8;margin-top:22px}.auth-links{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:16px}.auth-text-button{border:0;background:transparent;color:var(--primary);font:inherit;font-size:.875rem;cursor:pointer;padding:10px 0}.auth-local{border-top:1px solid var(--line);padding-top:22px;margin-top:26px}.auth-local>span,.auth-local>p{font-size:.8125rem;color:var(--muted)}.auth-local .button{margin:12px 0}.auth-unavailable{font-size:.875rem;margin-top:16px;color:var(--muted)}.auth-benefits{background:var(--soft);border:1px solid var(--line);border-radius:24px;padding:clamp(28px,4vw,52px)}.auth-benefits h2{font-size:clamp(2rem,3.2vw,2.8rem);line-height:1.16;letter-spacing:-.04em;margin:22px 0}.auth-benefits h2 em{font-style:normal;color:var(--primary)}.auth-benefits-intro{line-height:1.75;margin-bottom:32px;max-width:440px}.auth-benefit{display:flex;align-items:flex-start;gap:16px;margin-top:24px}.auth-benefit>.icon{color:var(--primary);width:24px;height:24px;flex-shrink:0;margin-top:2px}.auth-benefit h3{font-size:1rem;font-weight:600}.auth-benefit p{font-size:.9375rem;line-height:1.65;margin-top:5px}.auth-privacy{display:flex;gap:10px;align-items:flex-start;border-top:1px solid #d9d9e9;padding-top:24px;margin-top:32px;font-size:.8125rem}.auth-privacy .icon{width:18px;height:18px;color:var(--primary);flex-shrink:0}.auth-preview-note{font-size:.75rem;line-height:1.6;margin-top:14px}.auth-page button:disabled,.auth-page input:disabled{opacity:.55;cursor:not-allowed}
@media(max-width:760px){.auth-page{grid-template-columns:1fr;gap:36px;padding:32px 0 48px;min-height:0}.auth-copy{max-width:none}.auth-back{margin-bottom:28px}.auth-benefits{border-radius:18px;padding:28px}.auth-copy h1{max-width:380px}.auth-benefits h2{font-size:2rem}}
/* Reference login layout, using NativeFlow's milk and indigo theme. */
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.auth-reference{grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:clamp(60px,11vw,150px);padding:88px 0 100px;min-height:calc(100vh - 180px);align-items:center}
.auth-reference .auth-copy{max-width:none}.auth-reference .auth-copy h1{font-size:clamp(2rem,3vw,2.7rem);margin:22px 0 24px;letter-spacing:-.035em}.auth-reference .field{margin:14px 0 0}.auth-reference input{min-height:56px;background:#fff;border-radius:9px;opacity:1}.auth-reference .auth-password-field{position:relative}.auth-reference .auth-password-field input{padding-right:96px}.password-toggle{position:absolute;right:16px;top:0;height:100%;padding:0;border:0;background:transparent;font:inherit;font-size:.8125rem;color:var(--muted);cursor:pointer}.password-toggle:hover{color:var(--primary)}.auth-reference form>.button{min-height:56px;margin-top:14px;border-radius:9px}.auth-reference-links{margin-top:22px}.auth-reference-links p{font-size:.875rem;line-height:1.85;color:var(--muted)}.auth-reference-links button,.auth-reference-links a{border:0;background:transparent;padding:0;font:inherit;color:var(--primary);cursor:pointer;text-decoration:none}.auth-reference-links button:hover,.auth-reference-links a:hover{text-decoration:underline}.auth-reference .auth-benefits{padding:34px 32px;border-radius:16px}.auth-reference .auth-benefits h2{font-size:clamp(1.9rem,2.65vw,2.45rem);margin:24px 0 36px;line-height:1.18;color:var(--ink)}.auth-reference .auth-benefits-intro{font-size:1.0625rem;line-height:1.75;margin:0;max-width:none}.auth-reference .auth-privacy{border:0;padding:0;margin-top:36px;font-size:.8125rem;line-height:1.7}.auth-dev-note{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--line);padding:14px 0;font-size:.75rem;color:var(--muted)}
@media(max-width:760px){.auth-reference{grid-template-columns:1fr;gap:38px;padding:48px 0;min-height:0}.auth-reference .auth-copy h1{font-size:2.2rem}.auth-reference .auth-benefits{padding:28px 24px}.auth-reference .auth-benefits h2{font-size:2rem;margin-bottom:24px}.auth-reference .auth-benefits-intro{font-size:1rem}.auth-dev-note{align-items:flex-start;flex-direction:column}}
.admin-page{padding:40px 0 70px}.admin-page h1{font-size:2.5rem}.admin-page h2{margin:32px 0 18px;font-size:1.5rem}.admin-tabs{display:flex;gap:24px;flex-wrap:wrap;border-bottom:1px solid var(--line);margin:28px 0;padding:0 0 16px}.admin-tabs a{color:var(--muted)}.admin-tabs a[aria-current=page]{color:var(--primary);font-weight:600}.admin-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:24px 0}.admin-toolbar{display:flex;gap:12px;margin:24px 0;flex-wrap:wrap}.admin-toolbar input{flex:1;min-width:200px}.admin-toolbar select{min-width:100px}.admin-import{padding:24px;max-width:640px;margin-top:24px}.admin-import label{display:block;margin-bottom:12px}.admin-import .button{margin-top:18px}.admin-page td:last-child{white-space:normal}.admin-page td .button{margin:3px 0}.admin-page th,.admin-page td{padding:14px 16px}.admin-page td{vertical-align:top}.admin-page #commit-import{margin-top:24px}#expression-editor{max-width:640px}.admin-page .table-wrap{max-width:100%}@media(max-width:760px){.admin-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-page h1{font-size:2rem}.admin-tabs{gap:16px}}

/* Compact audio controls inherit the approved NativeFlow palette. */
.audio-button{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;width:30px;height:30px;padding:4px;border:0;border-radius:50%;background:transparent;color:var(--primary);cursor:pointer}.audio-button:hover{background:var(--soft)}.audio-button:focus-visible{outline:2px solid currentColor;outline-offset:2px}.admin-audio-form{margin-top:20px}.admin-audio-form audio{max-width:100%;height:36px}.admin-audio-form input[type=file]{max-width:100%}

.practice-fields select,.preferences-section select,#filter{appearance:none;padding-right:44px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath d='m4 6 4 4 4-4' fill='none' stroke='%234d5266' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 20px center;background-size:16px 16px}

.example-with-audio{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;column-gap:12px;text-align:center}.example-with-audio>span{grid-column:2;min-width:0;overflow-wrap:anywhere}.example-with-audio .audio-button{grid-column:3;width:44px;height:44px;margin:0;border:1.5px solid var(--line);border-radius:10px;display:inline-flex;align-items:center;justify-content:center;color:var(--accent);background:var(--panel)}.example-with-audio .audio-button:hover{border-color:var(--accent);background:var(--bg)}.audio-samples{max-width:960px}.audio-samples>p{margin:20px 0 32px}.audio-samples .training-card{margin-bottom:24px}.sample-translation{margin-top:20px;text-align:left}.audio-button.is-playing{color:var(--accent);border-color:currentColor}.audio-playback-status{font-size:.875rem;color:var(--muted)}

/* Keep the card visible while its answer is saved. */
.training .training-card,.training .training-actions{transition:opacity .12s ease}
.training.is-saving .training-card,.training.is-saving .training-actions{opacity:.65}
.training.is-saving,.training.is-saving button,.training button:disabled{cursor:default}
@media(prefers-reduced-motion:reduce){.training .training-card,.training .training-actions{transition:none}}

.settings-account{margin-top:28px;max-width:760px}.settings-account form{display:grid;gap:18px}.settings-password-field{display:flex;align-items:center;border:1px solid var(--line);border-radius:10px;overflow:hidden}.settings-password-field input{min-width:0;border:0!important;flex:1}.settings-password-field button{background:transparent;color:var(--primary);padding:12px;font-size:.875rem}.settings-account .button{justify-self:start}.settings-account .form-error:empty{display:none}

.preferences-page .settings-account{margin-top:32px}

/* Settings: independent forms, readable rows and an account column. */
.settings-columns{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(310px,1fr);gap:24px;align-items:start}
.preferences-page .preferences-layout{display:block;min-width:0}
.preferences-page .settings-card{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:24px 26px;margin:0 0 20px}
.preferences-page .settings-card h2{font-size:1.2rem;margin:0 0 8px;letter-spacing:-.025em}
.settings-row{display:grid;grid-template-columns:minmax(0,1fr) 184px;gap:24px;align-items:center;padding:22px 0;border-bottom:1px solid var(--line)}
.settings-row:last-child{border-bottom:0;padding-bottom:2px}
.settings-copy label{display:block;font-size:.9375rem;font-weight:600;line-height:1.4;color:var(--ink);margin:0 0 6px}
.settings-copy p{font-size:.8125rem;line-height:1.65;color:#64677b;margin:0;max-width:36ch}
.settings-control{min-width:0}
.preferences-page .settings-control select,.preferences-page .settings-control input{font-size:.875rem;min-height:44px;width:100%}
.preferences-page .settings-control select{padding-left:12px;padding-right:38px;background-position:right 16px center}
.settings-control input[type=number]{text-align:center}
.preferences-page .settings-control input[role=switch]{appearance:none;-webkit-appearance:none;display:block;margin:0 0 0 auto;width:44px;min-height:26px;height:26px;padding:0;border:1px solid #d6d8e3;border-radius:20px;background:#e5e6ee;cursor:pointer;position:relative}
.settings-control input[role=switch]::after{content:'';position:absolute;width:18px;height:18px;left:3px;top:3px;border-radius:50%;background:white;box-shadow:0 1px 3px #25283d26;transition:transform .15s}
.preferences-page .settings-control input[role=switch]:checked{background:var(--primary);border-color:var(--primary)}
.settings-control input[role=switch]:checked::after{transform:translateX(18px)}
.settings-control .settings-presets{display:flex;gap:6px;margin-top:8px}
.settings-control .settings-presets button{flex:1;padding:5px 0;min-width:0;font-size:.75rem}
.preferences-page .preferences-save{display:block;margin-top:4px;padding:0;background:transparent;border:0}
.preferences-page .preferences-save .form-error:empty{display:none}
.preferences-page .settings-account{margin-top:0}
.settings-account-column{min-width:0}
.settings-account-email{padding:20px 0 24px;border-bottom:1px solid var(--line);margin-bottom:24px}
.settings-account-email>span{display:block;font-size:.8125rem;color:var(--muted);margin-bottom:8px}
.settings-account-email strong{display:block;overflow-wrap:anywhere;font-size:.9375rem;font-weight:500}
.settings-account-email p{font-size:.8125rem;line-height:1.6;margin-top:8px}
.settings-account h3{font-size:1rem;margin-bottom:16px}
.settings-account #password-form{gap:16px}
.settings-account .field{margin:0}
.settings-account .field label{font-size:.8125rem;font-weight:500;margin-bottom:8px}
.settings-account .field input{font-size:.875rem;min-height:44px}
.settings-account form>p{font-size:.8125rem;line-height:1.6}
.settings-account .button{font-size:.875rem;max-width:100%}
@media(max-width:1000px){.settings-columns{grid-template-columns:1fr}.settings-account-column{max-width:none}}
@media(max-width:560px){.preferences-page .settings-card{padding:20px;margin-bottom:16px}.settings-row{grid-template-columns:minmax(0,1fr);gap:14px;padding:20px 0}.settings-copy p{max-width:none}.settings-control{width:100%}.settings-row:has(input[role=switch]){grid-template-columns:minmax(0,1fr) 44px;gap:16px}.preferences-page .settings-control select,.preferences-page .settings-control input{font-size:1rem}.settings-account .field input{font-size:1rem}.preferences-page .preferences-save .button{width:100%}}
@media(prefers-reduced-motion:reduce){.settings-control input[role=switch]::after{transition:none}}

/* Guest onboarding and persistent auth labels. */
.guest-lesson progress{width:100%;margin:12px 0 24px}.guest-progress{color:var(--muted)}
.guest-lesson .complete p{margin:18px auto;max-width:48ch;line-height:1.7}.guest-lesson .complete a{color:var(--primary)}
.test-meaning{font-size:1.25rem;font-weight:500}.mini-test-card p{line-height:1.6;margin:12px 0}.mini-test-card>button{margin-top:14px}
.auth-reference .field label{display:block;font-size:.875rem;font-weight:500;margin:0 0 8px}.auth-reference .auth-password-field .password-toggle{top:28px;height:56px}
.loading{display:flex;min-height:60vh;align-items:center;justify-content:center;flex-direction:column;gap:16px}.loading-spinner{width:30px;height:30px;border:3px solid #dedeee;border-top-color:var(--primary,#5651a3);border-radius:50%;animation:loading-turn .8s linear infinite}
@keyframes loading-turn{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.loading-spinner{animation:none;border-top-color:var(--primary)}}
@media(max-width:760px){.hero h1{font-size:2rem;max-width:330px}.hero-copy>p{margin-top:14px}.hero{gap:22px}.guest-lesson .page-heading h1{font-size:1.8rem}.guest-lesson .training-card .expression{overflow-wrap:anywhere}.auth-reference input{font-size:1rem}}

/* Explain the value of an account at the end of the guest lesson. */
.guest-lesson .guest-conversion{max-width:780px;margin:24px auto;padding:40px;text-align:left}
.guest-conversion>h1{font-size:clamp(1.75rem,3vw,2.35rem);line-height:1.2;margin:20px 0 16px;letter-spacing:-.025em}
.guest-lesson .guest-conversion>p{max-width:none;margin:16px 0;line-height:1.65}
.guest-result strong{color:var(--ink)}.guest-conversion .guest-value-intro{color:var(--ink);font-weight:500}
.guest-value-list{list-style:none;padding:0;margin:24px 0 28px;display:grid;gap:22px}
.guest-value-list li{display:grid;grid-template-columns:40px minmax(0,1fr);gap:14px;align-items:start}
.guest-value-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:10px;background:var(--soft);color:var(--primary)}
.guest-value-list h3{font-size:1rem;line-height:1.5;margin:0;font-weight:600}
.guest-lesson .guest-value-list p{max-width:none;margin:4px 0 0;line-height:1.6;font-size:.9375rem}
.guest-conversion-cta{min-height:50px;width:100%;justify-content:center;gap:10px}
.guest-lesson .guest-conversion>.guest-cta-note{font-size:.8125rem;margin:10px 0 20px;text-align:center}
.guest-demo-note{font-size:.8125rem;color:var(--muted);line-height:1.6}.guest-demo-note summary{cursor:pointer;padding:8px 0}.guest-lesson .guest-demo-note p{margin:8px 0;max-width:none}
.guest-secondary-actions{border-top:1px solid var(--line);margin-top:22px;padding-top:18px;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:.875rem}
.guest-secondary-actions .button{font-size:.8125rem;padding:10px 0}
@media(max-width:760px){.guest-lesson .guest-conversion{padding:24px 20px;margin:12px 0}.guest-value-list{gap:20px}.guest-secondary-actions{align-items:flex-start;flex-direction:column}.guest-conversion-cta{padding:14px 12px;font-size:.9375rem}}

/* Two primary destinations; secondary links live in the profile. */
.member-site .header-inner{gap:32px}
.member-nav{align-self:center;align-items:center;gap:12px;margin-left:auto}
.member-nav a{min-height:48px;padding:12px 18px;border:0;border-radius:10px;white-space:nowrap;font-weight:500}
.member-nav a.active{background:var(--soft)}
.member-nav a.nav-study{background:var(--primary);color:white;padding:14px 30px;font-weight:600;min-height:52px}
.member-nav a.nav-study:hover{background:var(--primary-dark)}
.member-site .header-actions{margin-left:0}
.profile-menu{position:relative}
.profile-menu summary{display:flex;align-items:center;gap:9px;min-height:48px;cursor:pointer;list-style:none;border-radius:10px;padding:4px 8px}
.profile-menu summary::-webkit-details-marker{display:none}
.profile-menu summary:hover,.profile-menu[open] summary{background:var(--soft)}
.profile-avatar{width:34px;height:34px;border-radius:50%;background:var(--soft);border:1px solid var(--line);display:grid;place-items:center;color:var(--primary);flex-shrink:0}
.profile-menu summary>.icon{width:16px;height:16px}
.profile-label{font-size:.875rem}
.profile-links{position:absolute;top:calc(100% + 10px);right:0;width:270px;max-width:calc(100vw - 32px);padding:8px;background:var(--panel);border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 32px #25283d18;z-index:50;display:flex;flex-direction:column}
.profile-email{display:block;overflow-wrap:anywhere;color:var(--muted);font-size:.8125rem;padding:10px 12px 14px;border-bottom:1px solid var(--line);margin-bottom:4px}
.profile-links a,.profile-links .button{display:flex;align-items:center;justify-content:flex-start;gap:10px;min-height:44px;padding:10px 12px;font-size:.9375rem;border-radius:8px}
.profile-links a:hover,.profile-links a[aria-current]{background:var(--soft);color:var(--primary)}
.profile-links .button{border-top:1px solid var(--line);margin-top:4px}
@media(max-width:760px){
 .member-site .header-inner{gap:12px;justify-content:space-between}
 .member-site .header-actions{margin-left:auto}
 .member-nav{margin:0;height:auto;min-height:76px;display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:10px;padding:10px 16px calc(10px + env(safe-area-inset-bottom))}
 .member-nav a{min-width:0;min-height:48px;flex-direction:row;font-size:.875rem;padding:12px 8px;gap:8px}
 .member-nav a.nav-study{min-height:52px;padding:12px 10px}
 .member-nav .icon{display:block;width:20px;height:20px}
 .member-site.with-nav{padding-bottom:calc(80px + env(safe-area-inset-bottom))}
 .profile-menu summary{padding:4px}
}
@media(min-width:761px) and (max-width:1000px){.member-site .header-inner{gap:18px}.profile-label{display:none}.member-nav a.nav-study{padding-left:22px;padding-right:22px}}

/* Legacy lesson styles, scoped to its previous renderer. */
@media(min-width:761px){
 .lesson-page{max-width:760px;margin:0 auto;padding-top:36px}
 .lesson-progress{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;color:var(--muted);font-size:14px;margin:24px 0}
 .lesson-progress progress{width:100%;height:5px;accent-color:var(--accent,#7162d9)}
 .lesson-page .lesson-card{min-height:330px;padding:44px 48px;text-align:left;border-radius:24px}
 .lesson-card .eyebrow{font-size:12px;letter-spacing:.07em}
 .lesson-card .expression{font-size:40px;line-height:1.2;margin:24px 0}
 .lesson-card .answer{margin:18px 0;padding-top:20px}
 .lesson-prompt{font-size:30px;line-height:1.4;max-width:600px;margin:28px 0}
 .lesson-instruction{color:var(--muted);line-height:1.7;margin:20px 0 0}
 .lesson-example,.lesson-expression-row,.lesson-answer-row{display:flex;align-items:center;justify-content:space-between;gap:20px}
 .lesson-answer h2{font-size:24px;line-height:1.5}
 .lesson-actions{display:flex;gap:14px;margin-top:24px}
 .lesson-actions>button{flex:1;min-height:56px}
 .lesson-page .training-hint{text-align:center;margin:16px 0;font-size:13px}
 .with-nav .nav a[href="#practice"]{display:none}
}

.journal-learning-summary{margin-top:40px}.journal-learning-summary h2{font-size:1.375rem;line-height:1.35}.journal-learning-summary>section>p{font-size:.9375rem;line-height:1.6;margin-top:14px}
/* Simple cards: one learning surface on desktop and mobile. */
.simple-training{max-width:760px;margin:0 auto;padding-top:28px}
.simple-session-top{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:16px;align-items:center;font-size:.875rem;color:var(--muted);margin-bottom:12px}
.simple-session-top>span:last-child{text-align:right}
.lesson-timer{color:var(--primary);font-variant-numeric:tabular-nums;font-weight:500;min-width:4ch;text-align:center}
.simple-progress{display:flex;width:100%;height:5px;margin:0 0 28px;overflow:hidden}
.simple-progress-segment{flex:1;min-width:0;height:100%}
.simple-progress-segment::after{content:'';display:block;width:calc(100% - min(3px,20%));height:100%;border-radius:3px;background:var(--line)}
.simple-progress-segment:last-child::after{width:100%}
.simple-progress-segment.is-complete::after{background:var(--primary)}
.simple-training .simple-card{display:flex;flex-direction:column;padding:34px 40px 20px;min-height:340px;text-align:left;border-radius:24px}
.simple-card-meta{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:.8125rem}
.simple-expression{display:flex;align-items:center;justify-content:center;gap:16px;margin:34px 0 22px;text-align:center}
.simple-card .expression{font-size:clamp(2rem,5vw,2.75rem);line-height:1.18;letter-spacing:-.025em;margin:0;overflow-wrap:anywhere}
.simple-example{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:12px;font-size:1.125rem;line-height:1.65;text-align:center}
.simple-example p{grid-column:2;min-width:0;overflow-wrap:anywhere}
.simple-example .audio-button{grid-column:3}
.simple-card .audio-button{flex:0 0 44px;min-width:44px;min-height:44px;margin:0;border:1px solid var(--line);border-radius:12px;background:var(--panel);color:var(--primary);display:inline-flex;align-items:center;justify-content:center}
.simple-translation{border-top:1px solid var(--line);margin-top:26px;padding-top:24px;text-align:center;animation:simple-reveal .2s ease-out}
.simple-example-translation{color:var(--muted);line-height:1.65;margin-bottom:18px}
.simple-translation h2{font-size:clamp(1.5rem,3.5vw,2rem);line-height:1.35;overflow-wrap:anywhere}
.simple-card-footer{min-height:24px;margin-top:auto;padding-top:48px;display:flex;gap:18px;flex-wrap:wrap}
.simple-secondary{background:none;color:var(--muted);font-size:.8125rem;padding:6px 10px;min-height:32px;border-radius:8px;transition:background-color .15s ease,color .15s ease}
.simple-secondary:not(:disabled):hover,.simple-secondary:not(:disabled):focus-visible{background:var(--soft);color:var(--primary)}
.simple-actions{display:flex;gap:14px;margin-top:22px}
.simple-actions>button{flex:1;min-height:60px;border-radius:14px;font-size:1.125rem}
.simple-actions .again{background:var(--warm);color:var(--error)}
.simple-actions .good{background:var(--primary);color:white}
.simple-hint{text-align:center;font-size:.8125rem;color:var(--muted);margin:16px 0}
.simple-training .form-error{margin:12px 0;text-align:center}
@keyframes simple-reveal{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:760px){.simple-training{padding-top:16px}.simple-training .simple-card{padding:24px 22px 16px;min-height:320px;border-radius:20px}.simple-session-top{font-size:.8125rem;gap:10px}.simple-progress{margin-bottom:20px}.simple-expression{margin-top:30px}.simple-example{font-size:1rem}.simple-actions{gap:12px;margin-top:18px}.simple-actions>button{min-height:62px}.simple-hint{display:none}.simple-card-footer{margin-top:auto;padding-top:36px}}
@media(prefers-reduced-motion:reduce){.simple-translation{animation:none}}
.simple-finish{padding:0;background:none;font:inherit;text-align:left}
.progress-today .journal-detail-stats,.journal-course .journal-detail-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:24px}
.progress-difficult{display:flex;justify-content:space-between;align-items:center;gap:24px}
.progress-difficult h2,.progress-sessions h2{margin-bottom:16px}
.progress-difficult-examples{margin-top:16px;color:var(--ink);line-height:1.8}
.progress-difficult>.button{flex-shrink:0}
.progress-session{border-bottom:1px solid var(--line);padding:20px 0}
.progress-session summary{cursor:pointer;color:var(--ink);font-weight:500;line-height:1.6}
.progress-session[open] summary{margin-bottom:20px}
.progress-session .journal-detail-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
@media(max-width:760px){.journal-summary{grid-template-columns:1fr;gap:20px}.progress-today .journal-detail-stats,.journal-course .journal-detail-stats,.progress-session .journal-detail-stats{grid-template-columns:1fr}.progress-difficult{flex-direction:column;align-items:stretch}.progress-difficult>.button{width:100%}}
/* How to learn: the existing NativeFlow palette and components. */
.guide-v2{max-width:960px;padding:64px 0 72px}
.guide-v2 h1{max-width:820px;font-size:clamp(2.4rem,4.5vw,3.65rem);line-height:1.12;letter-spacing:-.035em}
.guide-v2 h2{font-size:clamp(1.5rem,2.6vw,2rem);line-height:1.25;max-width:740px}
.guide-v2 h3{font-size:1.125rem;line-height:1.35}
.guide-v2 p{line-height:1.7;max-width:720px}
.guide-hero>h1{margin-top:20px}.guide-hero>p{font-size:1.125rem;margin-top:24px;max-width:650px}
.guide-hero>.button{margin-top:28px}.guide-hero-note{display:block;font-size:.875rem;color:var(--muted);margin-top:14px}
.guide-block{margin-top:72px}.guide-section-heading{max-width:760px;margin-bottom:28px}.guide-section-heading>.eyebrow{display:block;margin-bottom:14px}
.guide-section-heading>.button{margin-top:24px}.guide-v2 .guide-small-note{font-size:.8125rem;margin-top:12px}
.guide-milestones{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.guide-milestone{padding:26px 24px;display:flex;flex-direction:column;min-width:0}
.guide-milestone-number{font-size:2.25rem;font-weight:600;color:var(--primary);line-height:1.2}
.guide-milestone-unit{font-size:.8125rem;color:var(--muted);margin-top:4px}.guide-milestone h3{margin-top:24px}
.guide-v2 .guide-milestone p{font-size:.9375rem;line-height:1.65;margin-bottom:22px}
.guide-expression-chips{display:flex;gap:6px;flex-wrap:wrap;margin-top:auto;min-height:30px}
.guide-expression-chips span{padding:4px 9px;border-radius:7px;background:var(--soft);color:var(--primary);font-size:.8125rem}
.guide-v2 .guide-key-thought{font-size:1.0625rem;font-weight:500;color:var(--ink);margin-top:26px;max-width:740px}
.guide-why,.guide-reassurance{display:grid;grid-template-columns:1.45fr 1fr;gap:44px;align-items:center}
.guide-construction{border:1px solid var(--line);border-radius:20px;background:var(--panel);padding:28px 24px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:12px}
.guide-construction>span:first-child{font-size:1rem;color:var(--muted)}.guide-construction>strong{font-size:1.45rem;color:var(--primary)}.guide-v2 .guide-construction p{margin-top:0;color:var(--ink)}
.guide-four-steps{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.guide-four-steps>li{padding:26px}.guide-step-number{display:inline-flex;width:32px;height:32px;align-items:center;justify-content:center;border-radius:50%;background:var(--soft);color:var(--primary);font-weight:600;margin-bottom:18px}
.guide-v2 .guide-four-steps p{font-size:.9375rem}.guide-answer-labels{display:flex;gap:10px;margin-top:18px}.guide-answer-labels>span{padding:7px 18px;border-radius:9px;background:var(--warm);color:var(--error);font-size:.875rem;font-weight:500}.guide-answer-labels>span+span{background:var(--soft);color:var(--primary)}
.guide-screenshot{margin:32px 0 0}.guide-screenshot img{display:block;width:100%;height:auto;border:1px solid var(--line);border-radius:20px;background:var(--panel)}
.guide-training-figure{max-width:800px;margin:32px auto 0}.guide-screenshot figcaption{font-size:.8125rem;color:var(--muted);line-height:1.7;margin-top:14px}
.guide-image-label{display:block;text-align:center}.guide-callouts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));list-style:none;padding:0;margin:18px 0 0;gap:14px}.guide-callouts>li{display:flex;gap:9px;align-items:baseline}.guide-callouts b{display:inline-flex;align-items:center;justify-content:center;background:var(--soft);color:var(--primary);border-radius:50%;width:24px;height:24px;flex-shrink:0}
.guide-rhythm{padding:36px 40px;border-radius:24px;background:var(--soft)}.guide-rhythm h2{margin-top:16px}.guide-rhythm p{max-width:760px}
.guide-memory-path{display:flex;flex-direction:column;gap:10px;align-items:center;padding:30px;border-radius:20px;background:var(--panel);border:1px solid var(--line)}.guide-memory-path>span:not([aria-hidden]){font-size:1.0625rem;color:var(--ink)}.guide-memory-path [aria-hidden]{color:var(--muted)}.guide-memory-path strong{color:var(--primary);font-size:1.2rem}
.guide-pace{max-width:760px}.guide-progress-figure{max-width:860px}
.guide-day{padding:32px 36px;border:1px solid var(--line);background:var(--panel);border-radius:24px}.guide-day h2{margin-top:14px}.guide-day ol{padding-left:22px;margin-top:24px;color:var(--ink)}.guide-day li+li{margin-top:10px}
.guide-final{margin-top:72px;padding:44px 36px;text-align:center;border-radius:24px;background:var(--soft)}.guide-final h2,.guide-v2 .guide-final p{margin-left:auto;margin-right:auto}.guide-final>.button{margin-top:26px}
@media(max-width:760px){.guide-v2{padding:32px 0 40px}.guide-v2 h1{font-size:2.2rem}.guide-v2 h1 br,.guide-v2 h2 br{display:none}.guide-hero>p{font-size:1rem}.guide-block{margin-top:44px}.guide-milestones,.guide-four-steps,.guide-why,.guide-reassurance{grid-template-columns:1fr}.guide-why,.guide-reassurance{gap:24px}.guide-milestone{padding:24px}.guide-milestone h3{margin-top:18px}.guide-four-steps>li{padding:24px}.guide-rhythm,.guide-day{padding:26px 22px;border-radius:20px}.guide-callouts{grid-template-columns:1fr;gap:10px}.guide-screenshot img{border-radius:14px}.guide-final{margin-top:44px;padding:30px 22px;border-radius:20px}.guide-hero>.button,.guide-final>.button{width:100%;justify-content:center}.guide-v2 p{line-height:1.65}}

.simple-report-link{text-align:center;margin:0;font-size:12px}
.simple-report-link .subtle-link{font-size:inherit;font-weight:400;color:var(--muted);background:transparent;padding:0 6px;line-height:1.4;text-decoration:none}
.simple-report-link .subtle-link:hover{text-decoration:none;color:var(--primary,#5954af)}
.expression-report-dialog{position:fixed;inset:0;margin:auto;width:min(640px,calc(100% - 32px));max-height:calc(100dvh - 32px);overflow:auto;box-sizing:border-box;padding:32px;border:1px solid #e2e1ed;border-radius:24px;background:#fff;color:#26263c;box-shadow:0 24px 80px #26263c26}
.expression-report-dialog::backdrop{background:#23223966}
.expression-report-dialog h2{font-size:28px;line-height:1.25;margin:14px 32px 16px 0}
.expression-report-dialog p{color:#747489;line-height:1.6}
.expression-report-dialog textarea{width:100%;box-sizing:border-box;resize:vertical;min-height:140px;font:inherit;padding:14px;border:1px solid #dcdbea;border-radius:12px;background:#fff;color:inherit}
.expression-report-dialog textarea:focus{outline:2px solid #5954af;outline-offset:2px}
.report-close{position:absolute;right:18px;top:14px;background:transparent;border:0;color:#747489;font-size:30px;cursor:pointer}
.report-close:hover{color:#5954af}
.report-actions{display:flex;gap:12px;flex-wrap:wrap}
.report-context{overflow-wrap:anywhere}
@media(max-width:600px){.expression-report-dialog{padding:24px}.expression-report-dialog h2{font-size:24px}.report-actions .button{flex:1}}
/* My progress: shared site colors, course path and responsive overview. */
.progress-dashboard{padding-top:38px;padding-bottom:70px;max-width:1120px}
.progress-dashboard>h1{font-size:34px;letter-spacing:-.035em;line-height:1.25;margin-bottom:24px}
.progress-dashboard .panel{border:1px solid var(--line);border-radius:20px;box-shadow:none;background:var(--panel);min-width:0}
.progress-path{padding:34px 36px 32px}
.progress-label-small{font-size:14px;font-weight:500;color:var(--muted)}
.progress-path-top{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:7px;margin-bottom:25px}
.progress-path-number{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}
.progress-path-number strong{font-size:64px;line-height:1.1;font-weight:700;letter-spacing:-.05em;color:var(--primary);font-variant-numeric:tabular-nums}
.progress-path-number>span{font-size:18px;color:var(--muted)}
.progress-stage-badge{font-size:13px;font-weight:600;color:var(--primary);background:var(--soft);padding:8px 15px;border-radius:24px;white-space:nowrap}
.progress-stage-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px}
.progress-stage-heading h2{font-size:17px;letter-spacing:0;font-weight:600}
.progress-stage-heading>span{font-size:14px;color:var(--muted)}
.progress-stage-heading b{font-weight:600;color:var(--ink)}
.progress-stage-track{display:block;width:100%;height:16px;appearance:none;border:0;border-radius:20px;overflow:hidden;background:var(--soft);accent-color:var(--primary)}
.progress-stage-track::-webkit-progress-bar{background:var(--soft);border-radius:20px}
.progress-stage-track::-webkit-progress-value{background:var(--primary);border-radius:20px}
.progress-stage-track::-moz-progress-bar{background:var(--primary);border-radius:20px}
.progress-path-note{font-size:13px;line-height:1.6;margin-top:12px}
.progress-whole-course{margin-top:28px;padding-top:24px;border-top:1px solid var(--line)}
.progress-whole-course>.progress-label-small{font-size:13px;margin-bottom:10px}
.progress-course-track{width:100%;height:8px;display:block;border-radius:10px;overflow:hidden}
.course-base{fill:var(--soft)}.course-mastered{fill:var(--primary)}.course-learning{fill:color-mix(in srgb,var(--primary) 50%,var(--soft))}.progress-course-track line{stroke:var(--panel);stroke-width:2}
.progress-course-stages{display:flex;gap:8px;margin-top:12px}
.progress-course-stages>div{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px;font-size:12px;color:var(--muted)}
.progress-course-stages>div:nth-child(2){flex:2}.progress-course-stages>div:nth-child(3){flex:3}
.progress-course-stages strong{font-size:12px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.progress-course-stages .is-current strong{color:var(--primary)}
.progress-status-legend{display:flex;flex-wrap:wrap;gap:14px 24px;margin-top:18px;font-size:14px;color:var(--muted)}
.progress-status-legend>span{display:flex;align-items:center;gap:8px}.progress-status-legend b{font-weight:600;color:var(--ink)}
.progress-status-legend i{width:10px;height:10px;border-radius:3px;flex-shrink:0}.status-mastered{background:var(--primary)}.status-learning{background:color-mix(in srgb,var(--primary) 50%,var(--soft))}.status-ahead{background:var(--soft);border:1px solid var(--line)}
.progress-status-help{margin-top:14px;font-size:12px;color:var(--muted)}.progress-status-help summary{cursor:pointer;width:fit-content}.progress-status-help p{max-width:720px;line-height:1.7;margin-top:10px}
.progress-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:20px}
.progress-overview>section{padding:23px 24px;display:flex;flex-direction:column;min-height:206px}
.progress-overview h2{font-size:28px;letter-spacing:-.025em;line-height:1.25;margin-top:14px;font-weight:650}
.progress-overview h2+p{font-size:13px;margin-top:4px}
.progress-dashboard .progress-daily{background:var(--primary);border-color:var(--primary);color:white}
.progress-daily .progress-label-small,.progress-daily h2+p{color:color-mix(in srgb,white 78%,var(--primary))}
.progress-daily>.button{background:var(--panel);color:var(--primary);width:100%;min-height:44px;font-size:13px;margin-top:auto;border:1px solid transparent}
.progress-daily>.button:hover{background:var(--soft)}
.progress-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:9px;margin-top:auto;padding-top:14px}
.progress-week>div{min-width:0;text-align:center}.progress-week>div>span{display:block;aspect-ratio:1;max-height:32px;border-radius:8px;background:var(--soft)}
.progress-week .is-active>span{background:var(--primary)}.progress-week small{display:block;font-size:10px;color:var(--muted);margin-top:5px}.progress-week .is-current small{font-weight:600;color:var(--ink)}
.progress-forecast{font-size:12px;margin-top:auto;padding-top:24px;line-height:1.5}
.progress-activity{margin-top:20px;padding:30px 32px}
.progress-panel-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px}
.progress-panel-heading h2{font-size:18px;line-height:1.3;font-weight:600;letter-spacing:-.015em}
.progress-panel-heading>span,.progress-panel-heading>a{font-size:12px;color:var(--muted)}
.progress-panel-heading>a{color:var(--primary);text-decoration:underline;text-underline-offset:2px;white-space:nowrap}
.progress-activity .heat-scroll{padding:0 2px 10px}
.progress-activity .heat-grid{grid-template-rows:repeat(7,14px);grid-auto-columns:14px;gap:4px;width:100%}
.progress-activity .heat-day{width:14px;height:14px;border-radius:3px}
.progress-activity .heat-layout{min-width:968px;gap:12px}
.progress-activity .heat-weekdays{grid-template-rows:repeat(7,14px);line-height:14px;width:18px}
.progress-activity .heat-months{min-width:938px;margin-left:30px;font-size:11px;margin-bottom:6px}
.progress-activity .heat-day.is-today{outline:1px solid var(--accent);outline-offset:2px}
.progress-activity .heat-day:disabled{opacity:.45;cursor:default}
.progress-activity-footer{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:8px;font-size:12px}
.progress-activity-footer p{font-size:12px}.progress-activity .heat-legend{font-size:11px;gap:4px}.progress-activity .heat-legend i{height:11px;width:11px}
.progress-expression-panels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:20px;align-items:stretch}
.progress-expression-panels>section{padding:28px 28px 30px;min-width:0}
.progress-expression-panels .progress-panel-heading{margin-bottom:8px;min-height:25px}
.progress-expression-row{display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:69px;padding:14px 0;border-top:1px solid var(--line)}
.progress-expression-row>div{min-width:0}.progress-expression-row strong{font-size:16px;font-weight:600;line-height:1.35;overflow-wrap:anywhere}
.progress-expression-row p{font-size:13px;line-height:1.5;margin-top:3px;overflow-wrap:anywhere}
.progress-expression-row>span{font-size:12px;color:var(--muted);white-space:nowrap;flex-shrink:0}
.progress-expression-row>.progress-error-badge{font-size:11px;color:var(--accent);background:var(--warm);padding:4px 9px;border-radius:20px;font-weight:600}
.progress-dashboard .progress-difficult{display:block;margin:0}
.progress-difficult>.button{width:100%;background:var(--soft);color:var(--primary);min-height:44px;margin-top:22px;font-size:13px}
.progress-difficult>.button:hover{background:color-mix(in srgb,var(--primary) 15%,var(--soft))}
.progress-difficult>.button:disabled{cursor:default}
.progress-empty{font-size:14px;line-height:1.7;padding:24px 0;max-width:350px}
.progress-site .footer{display:none}
.progress-site .member-nav.progress-nav{position:static;margin-left:auto;align-self:center;display:flex;background:none;border:0;box-shadow:none;min-height:0;height:auto;padding:0;gap:0;width:auto}
.progress-site .progress-nav .button{color:white;border:0;background:var(--primary);padding:12px 20px;min-height:44px;border-radius:10px;font-size:14px}
.progress-site .header-actions{margin-left:0}.progress-site .header-inner{gap:12px;min-height:72px}
.progress-site .profile-label,.progress-site .profile-menu>summary>.icon{display:none}
@media(min-width:1100px){.progress-activity .heat-grid{grid-auto-columns:1fr}.progress-activity .heat-day{width:100%}}
@media(max-width:1000px) and (min-width:701px){.progress-overview>section{padding:20px}.progress-overview h2{font-size:23px}.progress-path{padding:28px}.progress-week{gap:6px}}
@media(max-width:700px){
 .progress-site main.wrap{padding-left:16px;padding-right:16px}.progress-site .header-inner{padding-left:16px;padding-right:16px;min-height:70px}.progress-site .header .logo{font-size:21px}
 .progress-site .progress-nav .button{font-size:12px;padding:10px 14px;min-height:42px}.progress-site .profile-avatar{width:40px;height:40px}
 .progress-dashboard{padding-top:30px;padding-bottom:64px}.progress-dashboard>h1{font-size:27px;margin-bottom:22px}
 .progress-dashboard .panel{border-radius:20px}.progress-path{padding:21px 20px 20px}.progress-label-small{font-size:13px}
 .progress-path-top{align-items:flex-start;flex-direction:column;gap:13px;margin:5px 0 25px}.progress-path-number{gap:9px}.progress-path-number strong{font-size:47px}.progress-path-number>span{font-size:15px}
 .progress-stage-badge{font-size:12px;padding:7px 12px}.progress-stage-heading h2{font-size:16px}.progress-stage-heading>span{font-size:13px}
 .progress-stage-track{height:14px}.progress-path-note{font-size:12px;margin-top:11px}.progress-whole-course{margin-top:24px;padding-top:21px}
 .progress-course-stages>div,.progress-course-stages>div:nth-child(2),.progress-course-stages>div:nth-child(3){flex:1}.progress-course-stages strong{font-size:11px}.progress-course-stages span{font-size:11px}
 .progress-status-legend{gap:8px 18px;font-size:12px;margin-top:16px}.progress-status-legend>span{gap:7px}.progress-status-legend i{width:9px;height:9px}.progress-status-help{font-size:11px}
 .progress-overview{grid-template-columns:1fr;gap:14px;margin-top:18px}.progress-overview>section{padding:23px;min-height:0}.progress-overview h2{font-size:27px;margin-top:12px}.progress-overview h2+p{font-size:12px}
 .progress-daily>.button{margin-top:20px;min-height:43px}.progress-week{gap:12px;padding-top:14px;margin:0}.progress-week>div>span{max-height:30px}.progress-week small{font-size:11px}.progress-forecast{padding-top:20px}
 .progress-activity{padding:22px 20px;margin-top:18px}.progress-panel-heading{gap:10px;margin-bottom:19px}.progress-panel-heading h2{font-size:16px}.progress-panel-heading>span,.progress-panel-heading>a{font-size:11px}
 .progress-activity-footer{align-items:flex-start;flex-direction:column;gap:12px;margin-top:8px}.progress-activity-footer p{font-size:11px}
 .progress-expression-panels{grid-template-columns:1fr;gap:16px;margin-top:18px}.progress-expression-panels>section{padding:22px 20px 25px}.progress-expression-row{gap:12px;min-height:69px;padding:13px 0}.progress-expression-row strong{font-size:15px}.progress-expression-row p{font-size:12px}.progress-expression-row>span{font-size:11px}
}

/* Card secondary actions */
.simple-session-top{grid-template-columns:minmax(0,1fr) auto}
.simple-card-meta{align-items:center}
.card-options{position:relative;margin-left:auto}
.card-options>summary{display:flex;align-items:center;justify-content:center;list-style:none;width:40px;height:36px;border-radius:10px;font-size:26px;line-height:1;cursor:pointer;color:var(--muted)}
.card-options>summary::-webkit-details-marker{display:none}
.card-options>summary:hover,.card-options[open]>summary{background:var(--soft);color:var(--primary)}
.card-options-list{position:absolute;right:0;top:calc(100% + 6px);z-index:20;width:230px;max-width:calc(100vw - 64px);padding:6px;background:var(--panel);border:1px solid var(--line);border-radius:14px;box-shadow:0 10px 30px #25283d18}
.card-option{display:block;width:100%;text-align:left;padding:12px;border-radius:8px;background:transparent;color:var(--ink);font:inherit;font-size:14px;min-height:44px}
.card-option:hover{background:var(--soft);color:var(--primary)}

.card-option-row{display:flex;align-items:center;position:relative}
.card-option-row>.card-option{flex:1;min-width:0;padding-right:4px}
.card-option-help{flex:0 0 32px;align-self:stretch;display:flex;align-items:center}
.card-help-icon{display:flex;align-items:center;justify-content:center;width:32px;min-height:44px;padding:0;background:transparent;color:var(--muted);border-radius:8px;font-size:18px;cursor:help}
.card-help-icon:hover,.card-help-icon:focus-visible{color:var(--primary);background:var(--soft)}
.card-help-tooltip{display:none;position:absolute;right:0;top:calc(100% + 4px);z-index:30;width:260px;max-width:calc(100vw - 72px);padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--ink);color:var(--panel);font-size:13px;line-height:1.5;box-shadow:0 8px 24px #25283d26;pointer-events:none}
.card-option-help:hover .card-help-tooltip,.card-option-help:focus-within .card-help-tooltip{display:block}
/* Public homepage */
.home-site>#main{max-width:none;width:100%;padding:0}
.home-site .brand-description{display:none}
.home-site .header-inner,.home-site .footer-inner{max-width:1120px}
.home-site .footer{margin-top:0;padding:32px 0 48px;background:var(--bg)}
.home-site .footer p{display:none}
.home-site .footer-inner{justify-content:space-between}
.home-site .footer-inner::after{content:'Английский готовыми фразами';font-size:12px;color:var(--muted)}
.home-redesign{color:var(--ink);font-size:16px;line-height:1.6}
.home-container{width:calc(100% - 64px);max-width:1120px;margin:0 auto}
.home-band{padding:80px 0;background:var(--bg)}
.home-white{background:var(--panel)}
.home-two{display:grid;grid-template-columns:1.2fr 1fr;gap:72px;align-items:center}
.home-redesign h1{font-size:48px;line-height:1.12;letter-spacing:-1.5px;margin:20px 0}
.home-redesign h2{font-size:34px;line-height:1.15;letter-spacing:-.65px;margin:16px 0}
.home-redesign h3{line-height:1.35}
.home-redesign p{color:var(--muted);margin:12px 0}
.home-redesign .eyebrow{font-size:12px;letter-spacing:1.5px;color:var(--primary);font-weight:600}
.home-lead{max-width:570px}
.home-hero-actions{display:flex;gap:20px;align-items:center;margin-top:28px}
.home-hero-actions>span{font-size:11px;color:var(--muted);white-space:nowrap}
.home-hero-actions .button{font-size:14px}
.home-facts{display:grid;grid-template-columns:repeat(3,1fr);margin-top:38px;padding-top:22px;border-top:1px solid var(--line);gap:18px}
.home-facts strong{display:block;font-size:24px;line-height:1.3}
.home-facts span{font-size:12px;color:var(--muted)}
.home-phrase-flow{display:flex;flex-direction:column;align-items:center;gap:18px;padding:24px}
.home-word{align-self:flex-start;background:white;padding:16px 20px;border-radius:12px;font-size:18px;color:var(--muted)}
.home-word span{font-size:14px}
.home-flow-arrow{color:#c7c6e8;font-size:28px;line-height:1}
.home-flow-arrow:nth-of-type(1){align-self:flex-start;margin-left:36px}
.home-phrase{padding:20px 26px;border-radius:12px;background:var(--soft);color:var(--primary);font-size:26px}
.home-context{background:white;border-radius:16px;padding:24px;box-shadow:0 12px 30px #25283d0c;max-width:340px;align-self:flex-end}
.home-context p{margin:0 0 10px;color:var(--ink);font-size:20px}
.home-context span{font-size:13px;color:var(--muted)}
.home-redesign mark{background:transparent;color:var(--primary);font-weight:600;text-decoration:underline;text-decoration-color:#c2bfe6;text-underline-offset:3px}
.home-section-intro{max-width:720px}
.home-section-intro h2{max-width:590px}
.home-comparison{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:34px}
.home-comparison article{border-radius:18px;padding:28px 30px}
.home-comparison h3{font-size:14px;margin:0 0 16px}
.home-word-way{background:var(--warm)}
.home-word-way h3{color:var(--accent)}
.home-phrase-way{background:var(--soft)}
.home-phrase-way h3{color:var(--primary)}
.home-comparison p{font-size:18px;color:var(--ink)}
.home-redesign ul{padding-left:18px;color:var(--muted);font-size:14px}
.home-features{display:grid;gap:22px;margin-top:30px}
.home-features>div{display:flex;align-items:flex-start;gap:16px}
.home-feature-icon{display:flex;align-items:center;justify-content:center;flex:0 0 36px;height:36px;background:var(--soft);color:var(--primary);border-radius:10px;font-size:20px}
.home-features h3{font-size:16px;margin:0 0 4px}
.home-features p{font-size:14px;margin:0}
.home-preview{margin:0;min-width:0}
.home-window{padding:12px 16px;font-size:11px;color:var(--muted);background:#eeedf5;border-radius:16px 16px 0 0}
.home-window>span{color:#cecbdf;margin-right:12px}
.home-preview-content{padding:20px;background:#f0eff7;border-radius:0 0 16px 16px;box-shadow:0 16px 50px #25283d12}
.home-mini-path,.home-mini-calendar,.home-mini-recent{background:white;padding:16px;border-radius:10px}
.home-preview small{display:block;font-size:10px;color:var(--muted)}
.home-mini-path>strong{font-size:36px;color:var(--primary);line-height:1.2;display:block}
.home-mini-path>strong span{font-size:12px;color:var(--muted);font-weight:400}
.home-mini-badge{font-size:9px;color:var(--primary);background:var(--soft);border-radius:8px;padding:4px 8px;display:inline-block;margin:4px 0}
.home-preview progress{width:100%;height:7px;display:block;margin:6px 0;accent-color:var(--primary)}
.home-mini-path>small:last-child{font-size:9px;margin-top:10px}
.home-mini-stats{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:12px 0}
.home-mini-stats>div{background:white;border-radius:10px;padding:14px;min-width:0}
.home-mini-stats>div:first-child{background:var(--primary);color:white}
.home-mini-stats>div:first-child small{color:#deddf2}
.home-mini-stats strong{display:block;font-size:19px;white-space:nowrap;line-height:1.4}
.home-mini-stats span{font-size:10px}
.home-mini-days{color:var(--primary);white-space:nowrap}
.home-mini-calendar>b{font-size:11px}
.home-mini-calendar>div{display:grid;grid-template-rows:repeat(7,1fr);grid-auto-flow:column;gap:3px;margin-top:8px}
.home-mini-calendar i{display:block;aspect-ratio:1;border-radius:2px;background:#eeedf6}
.home-mini-calendar .home-level-1{background:#d4d1ee}.home-mini-calendar .home-level-2{background:#b2aedc}.home-mini-calendar .home-level-3{background:#8580c1}.home-mini-calendar .home-level-4{background:var(--primary)}
.home-mini-recent{margin-top:12px}.home-mini-recent p{font-size:10px;background:var(--soft);border-radius:4px;padding:5px;color:var(--primary)}
.home-preview figcaption{font-size:11px;color:var(--muted);text-align:center;margin-top:18px}
.home-demo-band{background:var(--soft)}
.home-steps{list-style:none;counter-reset:steps;padding:0;display:grid;gap:22px;margin-top:30px;max-width:420px}
.home-steps li{position:relative;padding-left:40px;counter-increment:steps}
.home-steps li::before{content:counter(steps);position:absolute;left:0;top:0;display:grid;place-items:center;width:26px;height:26px;background:#dddaf2;color:var(--primary);font-size:13px;font-weight:600;border-radius:50%}
.home-steps li:first-child::before{background:var(--primary);color:white}
.home-steps strong{font-size:15px;display:block}.home-steps span{font-size:13px;color:var(--muted);display:block;margin-top:4px}
.home-live-demo>.panel{padding:30px;min-height:290px;border:0;box-shadow:0 16px 40px #25283d0b;border-radius:18px;text-align:center;position:relative}
.home-new{position:absolute;left:28px;top:24px;background:var(--soft);border-radius:8px;padding:2px 8px;font-size:10px;color:var(--primary)}
.home-live-demo h3{font-size:34px;margin:48px 0 18px}.home-live-demo p{font-size:16px}
.home-live-demo .home-demo-note{font-size:12px;margin-top:62px}
.home-live-demo>.button{width:100%;margin-top:16px}
.home-demo-translation{margin-top:25px;border-top:1px solid var(--line);padding-top:16px}.home-demo-translation>p{font-size:13px}
.home-demo-ratings{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:16px}
.home-path-heading{display:flex;justify-content:space-between;gap:24px;align-items:center}
.home-path-heading h2{margin-top:12px}.home-path-heading p{font-size:14px}
.home-pace{flex-shrink:0}.home-pace>span{font-size:11px;color:var(--muted)}
.home-pace>div{display:flex;background:var(--bg);padding:4px;border-radius:10px;margin-top:8px;gap:2px}
.home-pace button{min-width:42px;min-height:40px;background:transparent;color:var(--muted);border-radius:8px}
.home-pace button[aria-pressed=true]{background:var(--primary);color:white}
.home-path-line{display:flex;gap:4px;margin-top:20px}.home-path-line i{height:8px;border-radius:4px;background:var(--primary);flex:1}.home-path-line i:nth-child(2){flex:2;opacity:.7}.home-path-line i:nth-child(3){flex:3;opacity:.45}
.home-path-labels{display:grid;grid-template-columns:1fr 2fr 3fr;color:var(--muted);font-size:11px;margin-top:8px}
.home-stage-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:28px}
.home-stage{border:1px solid var(--line);border-radius:18px;padding:24px;display:flex;flex-direction:column;background:#fcfcff}
.home-stage>span{color:var(--primary);font-size:12px;font-weight:500}.home-stage h3{font-size:22px;margin:12px 0 4px}.home-stage>p{font-size:13px}.home-stage ul{margin:0 0 16px;line-height:1.6;flex:1}
.home-stage-tags{display:flex;gap:6px;flex-wrap:wrap}.home-stage-tags>span{background:var(--soft);color:var(--primary);font-size:10px;padding:2px 6px;border-radius:5px}
.home-stage .home-stage-time{padding-top:24px;margin-bottom:0;color:var(--ink)}.home-stage-time strong{font-size:26px}.home-stage-time>span{font-size:13px;color:var(--muted)}
.home-course-total{display:flex;gap:20px;background:var(--ink);color:white;border-radius:18px;padding:26px;margin-top:28px;align-items:center}
.home-course-total>span{display:grid;place-items:center;background:var(--accent);border-radius:50%;width:48px;height:48px;flex-shrink:0}
.home-course-total h3{font-size:18px;margin:0 0 6px}.home-course-total p{font-size:13px;color:#c9c9d8;margin:0}
.home-estimate-note{font-size:11px;margin-top:22px!important}
.home-faq{max-width:820px;margin:0 auto 80px}.home-faq h2{margin-top:0}.home-faq details{border-top:1px solid var(--line)}.home-faq summary{padding:18px 0;font-weight:500;font-size:15px;cursor:pointer}.home-faq details p{font-size:14px;margin:0 0 20px}.home-faq>a{display:inline-block;margin-top:24px;font-size:13px;color:var(--primary);text-decoration:underline}
.home-final{background:var(--primary);color:white;padding:56px 28px;text-align:center;border-radius:24px}.home-final h2{max-width:650px;margin:0 auto 20px;font-size:40px}.home-final p{color:#deddf0;margin:0 0 26px}.home-final>.button{background:white;color:var(--primary)}.home-final>span{display:block;color:#cccbe4;font-size:12px;margin-top:16px}.home-final>span button{background:none;color:white;text-decoration:underline;padding:0;font-size:inherit}
@media(max-width:1000px){.home-two{gap:36px;grid-template-columns:1.1fr 1fr}.home-redesign h1{font-size:40px}.home-hero-actions{align-items:flex-start;flex-direction:column;gap:10px}.home-stage{padding:20px}.home-mini-stats strong{font-size:16px}}
@media(max-width:700px){.home-container{width:calc(100% - 36px)}.home-band{padding:46px 0}.home-two{grid-template-columns:1fr;gap:32px}.home-redesign h1{font-size:34px;letter-spacing:-.8px;margin:16px 0}.home-redesign h2{font-size:28px}.home-redesign{font-size:15px}.home-redesign .eyebrow{font-size:10px;letter-spacing:1.1px}.home-hero{padding-top:38px}.home-lead{font-size:14px}.home-hero-actions{gap:12px;margin-top:24px}.home-hero-actions .button{font-size:13px}.home-facts{margin-top:26px;gap:12px;padding-top:20px}.home-facts strong{font-size:20px}.home-facts span{font-size:10px;line-height:1.4;display:block;margin-top:5px}.home-phrase-flow{padding:0 8px;gap:12px}.home-word{padding:12px 18px;font-size:16px}.home-phrase{font-size:23px;padding:16px 22px}.home-context{padding:22px;width:100%;max-width:310px}.home-context p{font-size:18px}.home-context span{font-size:12px}.home-comparison{grid-template-columns:1fr;gap:16px;margin-top:24px}.home-comparison article{padding:24px}.home-comparison p{font-size:16px}.home-redesign ul{font-size:13px}.home-features{gap:24px}.home-features h3{font-size:15px}.home-features p{font-size:13px}.home-preview-content{padding:14px}.home-mini-stats strong{font-size:19px}.home-live-demo>.panel{padding:24px;min-height:300px}.home-live-demo h3{font-size:32px}.home-live-demo p{font-size:14px}.home-path-heading{display:block}.home-pace{margin:22px 0}.home-pace>div{width:max-content}.home-path-heading h2{font-size:28px}.home-stage-grid{grid-template-columns:1fr;gap:18px}.home-stage{padding:24px}.home-stage h3{font-size:23px}.home-stage ul{font-size:14px;margin-top:4px}.home-stage-tags>span{font-size:11px}.home-course-total{align-items:flex-start;padding:24px;flex-direction:column;gap:16px}.home-course-total h3{font-size:20px}.home-course-total p{font-size:14px}.home-faq{margin-bottom:46px}.home-faq summary{font-size:14px}.home-final{padding:34px 22px;border-radius:20px}.home-final h2{font-size:28px}.home-final p{font-size:14px}.home-final br{display:none}.home-site .header-inner{gap:12px;min-height:65px}.home-site .logo{font-size:18px}.home-site .header-menu{margin-left:auto}.home-site .menu-toggle{display:none}.home-site .public-practice-nav{position:static!important;display:flex!important;background:none;border:0;box-shadow:none;padding:0}.home-site .public-practice-nav a{font-size:11px}.home-site .header-actions>.button{padding:8px 12px;font-size:12px;min-height:34px}.home-site .footer{padding-top:24px}.home-site .footer-inner::after{font-size:10px}}
@media(max-width:700px){.home-site .header-menu .public-practice-nav{width:auto;min-width:0}.home-site .header-inner{padding-left:18px;padding-right:18px}.home-site .header-menu .public-practice-nav a{padding-left:4px;padding-right:4px}}
/* How to study */
.guide-site>#main{width:100%;max-width:none;padding:0}.guide-site .brand-description{display:none}.guide-site .header-inner,.guide-site .footer-inner{max-width:1120px}.guide-site .footer{margin:0;padding:28px 0;background:var(--bg);border-top:1px solid var(--line)}.guide-site .footer-inner{justify-content:space-between}.guide-site .footer-inner>a:last-child{font-size:13px;color:var(--muted);text-decoration:underline}
.guide-redesign{font-size:16px;line-height:1.6}.guide-container{width:calc(100% - 64px);max-width:1120px;margin:auto}.guide-band{background:var(--bg);padding:76px 0}.guide-white{background:var(--panel)}.guide-redesign h1{font-size:46px;line-height:1.15;letter-spacing:-1px;margin:18px 0 14px}.guide-redesign h2{font-size:32px;line-height:1.2;letter-spacing:-.6px;margin:0 0 14px;max-width:760px}.guide-redesign h3{font-size:20px;line-height:1.35;margin:12px 0}.guide-redesign p{color:var(--muted)}.guide-redesign .eyebrow{font-size:12px;letter-spacing:1.4px;color:var(--primary);font-weight:600}.guide-intro{padding-top:70px;padding-bottom:86px}.guide-intro-text{font-size:19px;max-width:700px;line-height:1.6}.guide-jumps{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0 86px}.guide-jumps a{padding:9px 16px;border:1px solid var(--line);border-radius:24px;background:white;font-size:13px;color:var(--muted)}.guide-jumps a:hover{color:var(--primary);border-color:var(--primary)}.guide-redesign section[id]{scroll-margin-top:26px}
.guide-rule-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:26px}.guide-tile{padding:28px;border:1px solid var(--line);border-radius:20px;background:white;display:flex;flex-direction:column;min-width:0}.guide-tile>p{font-size:15px;line-height:1.5}.guide-rule-number{font-size:13px;color:var(--accent);font-weight:600}.guide-rule-grid .guide-tile{min-height:365px}.guide-ranks{border-top:1px solid var(--line);padding-top:12px;margin-top:auto;font-size:14px}.guide-ranks>div{display:flex;gap:18px;padding:4px 0}.guide-ranks span{color:var(--muted)}.guide-ranks>div>span:first-child{min-width:24px;font-size:12px}.guide-context-example{margin-top:auto;background:var(--bg);padding:16px;border-radius:12px}.guide-context-example p{color:var(--ink);font-size:16px}.guide-context-example span{font-size:13px;color:var(--muted)}.guide-context-example mark{background:transparent;color:var(--primary);text-decoration:underline;text-underline-offset:3px;font-weight:600}.guide-intervals{margin-top:auto;padding-top:28px}.guide-intervals>div{display:flex;justify-content:space-between;position:relative}.guide-intervals>div:before{content:'';position:absolute;left:6px;right:6px;height:2px;top:6px;background:#d6d3ec}.guide-intervals>div>span{position:relative;display:flex;align-items:flex-start;flex-direction:column;gap:10px}.guide-intervals i{width:14px;height:14px;border-radius:50%;background:var(--primary)}.guide-intervals small{font-size:10px;color:var(--muted)}.guide-intervals p{font-size:11px;margin-top:14px}
.guide-section-lead{max-width:800px;font-size:18px;margin-bottom:28px}.guide-answer-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.guide-answer-badge{align-self:flex-start;padding:9px 17px;border-radius:10px;font-size:14px;font-weight:600}.guide-answer-badge.forgot{background:var(--warm);color:var(--error)}.guide-answer-badge.known{background:var(--primary);color:white}.guide-answer-grid h3{font-size:20px;margin-top:18px}.guide-answer-grid ul{padding-left:18px;color:var(--muted);font-size:15px;line-height:1.6;margin:0 0 20px;flex:1}.guide-answer-grid li+li{margin-top:6px}.guide-tile>.guide-soft-note{background:var(--bg);border-radius:12px;padding:16px;font-size:13px;margin-top:auto}.guide-tools{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:30px}.guide-tools>div{padding:18px;background:var(--bg);border-radius:12px}.guide-tools h3{font-size:14px;margin:0 0 6px}.guide-tools p{font-size:13px;line-height:1.5}.guide-day-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.guide-day-grid .guide-tile{padding:24px}.guide-day-grid h3{font-size:19px}.guide-day-top{display:flex;justify-content:space-between;align-items:center}.guide-day-top>span{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--soft);color:var(--primary);font-weight:600}.guide-day-top small{font-size:12px;color:var(--muted)}.guide-day-grid>.guide-tile:last-child{background:var(--primary);color:white}.guide-day-grid>.guide-tile:last-child p,.guide-day-grid>.guide-tile:last-child small{color:#d4d3ec}.guide-day-grid>.guide-tile:last-child .guide-day-top>span{background:white;color:var(--primary)}
.guide-pace-band{background:var(--soft)}.guide-pace-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.guide-pace-card{background:white;padding:22px 20px;border:2px solid transparent;border-radius:16px}.guide-pace-card.recommended{border-color:#8580d2}.guide-pace-card>strong{font-size:30px;line-height:1;color:var(--primary)}.guide-pace-card h3{font-size:15px;margin:12px 0 6px}.guide-pace-card p{font-size:13px;line-height:1.5}.guide-pace-note{font-size:14px;margin-top:26px}.guide-faq{max-width:820px;margin:0 auto 90px}.guide-faq details{border-top:1px solid var(--line)}.guide-faq summary{cursor:pointer;font-size:16px;font-weight:500;padding:22px 0}.guide-faq details p{font-size:15px;margin-bottom:22px}.guide-cta{display:flex;justify-content:space-between;gap:30px;align-items:center;padding:48px 50px;border-radius:28px;background:var(--primary);color:white}.guide-cta h2{font-size:30px;margin-bottom:8px}.guide-cta p{color:#d8d7ee;font-size:15px}.guide-cta>.button{background:white;color:var(--primary);white-space:nowrap;flex-shrink:0}.guide-last{padding-bottom:80px}
@media(max-width:1000px){.guide-rule-grid{gap:14px}.guide-tile{padding:22px}.guide-redesign h3{font-size:18px}.guide-tile>p{font-size:14px}.guide-intervals small{font-size:8px}.guide-cta{padding:36px}.guide-cta h2{font-size:26px}}
@media(max-width:700px){.guide-container{width:calc(100% - 36px)}.guide-band{padding:44px 0}.guide-intro{padding-top:36px}.guide-redesign h1{font-size:31px;margin-top:16px;letter-spacing:-.6px}.guide-redesign h2{font-size:25px;letter-spacing:-.4px}.guide-intro-text{font-size:15px}.guide-redesign .eyebrow{font-size:10px;letter-spacing:1px}.guide-jumps{gap:8px;margin-top:22px;margin-bottom:44px}.guide-jumps a{font-size:12px;padding:8px 13px}.guide-rule-grid,.guide-answer-grid,.guide-tools,.guide-day-grid,.guide-pace-grid{grid-template-columns:1fr;gap:16px}.guide-rule-grid{margin-top:20px}.guide-rule-grid .guide-tile{min-height:0}.guide-tile{padding:24px;border-radius:18px}.guide-redesign h3{font-size:20px}.guide-tile>p{font-size:15px}.guide-ranks{margin-top:20px}.guide-context-example{margin-top:26px}.guide-intervals{margin-top:4px}.guide-intervals small{font-size:10px}.guide-section-lead{font-size:15px;margin-bottom:24px}.guide-answer-grid ul{font-size:14px}.guide-answer-grid h3{font-size:20px}.guide-tools{gap:12px;margin-top:20px}.guide-tools>div{padding:16px}.guide-tools h3{font-size:14px}.guide-tools p{font-size:13px}.guide-day-grid h3{font-size:20px}.guide-day-grid .guide-tile{padding:24px}.guide-pace-card{padding:20px}.guide-pace-card h3{font-size:15px;margin-top:10px}.guide-pace-card p{font-size:13px}.guide-pace-note{font-size:13px;margin-top:22px}.guide-faq{margin-bottom:44px}.guide-faq summary{font-size:14px;padding:20px 0}.guide-faq details p{font-size:14px}.guide-cta{flex-direction:column;align-items:flex-start;padding:28px 24px;border-radius:20px;gap:22px}.guide-cta h2{font-size:25px}.guide-cta p{font-size:14px}.guide-cta>.button{font-size:14px}.guide-site .header-inner{padding-left:18px;padding-right:18px;gap:12px;flex-wrap:wrap;min-height:70px;padding-top:10px;padding-bottom:10px}.guide-site .header .logo{font-size:18px}.guide-site .header-menu{margin-left:auto}.guide-site .menu-toggle{display:none}.guide-site .header-menu .public-practice-nav{position:static;display:flex;width:auto;min-width:0;background:transparent;border:0;box-shadow:none;padding:0}.guide-site .header-menu .public-practice-nav a{font-size:11px;padding:4px;min-height:30px}.guide-site .header-actions>.button{font-size:12px;min-height:34px;padding:8px 12px}.guide-site .member-nav{position:static;box-shadow:none;width:auto;border:0;background:none;padding:0}.guide-site .member-nav a:not(.nav-study){display:none}.guide-site .member-nav a.nav-study{font-size:12px;padding:8px;min-height:34px}.guide-site .profile-label{display:none}.guide-site.with-nav{padding-bottom:0}}
.simple-example{display:block}.simple-example p{margin:0}
.simple-expression .expression{min-width:0}.simple-expression .audio-button{align-self:center}
.simple-card .audio-button:hover,.simple-card .audio-button:focus-visible{background:var(--soft);border-color:var(--primary)}
.example-audio-tail{white-space:nowrap}
.simple-training .simple-card{min-height:0}
.simple-card .simple-example .audio-button{display:inline-flex;vertical-align:middle;width:40px;height:40px;min-width:40px;min-height:40px;padding:10px;margin:0 0 0 4px;border:0;border-radius:50%;background:transparent;color:var(--primary)}
.simple-card .simple-example .audio-button svg{width:20px;height:20px}
.simple-card .simple-example .audio-button:hover,.simple-card .simple-example .audio-button:active{background:var(--soft);border:0}
.simple-card .simple-example .audio-button:focus-visible{outline:2px solid currentColor;outline-offset:2px;border:0;background:transparent}
.simple-card .simple-example .audio-button.is-playing{background:var(--soft);color:var(--primary-dark)}
.expression-highlight{background:transparent;color:inherit;font-weight:700;padding:0;border:0;border-radius:0;box-shadow:none}
/* End of lesson */
.lesson-completion{max-width:760px;margin:0 auto;padding:48px 0 64px}.lesson-completion .panel{border:1px solid var(--line);border-radius:24px;background:var(--panel);box-shadow:none}.completion-hero{padding:40px;text-align:center}.completion-check{display:grid;place-items:center;width:64px;height:64px;margin:0 auto 16px;border-radius:50%;background:var(--primary);color:white;font-size:36px;line-height:1}.completion-hero h1{font-size:36px;letter-spacing:-.6px;line-height:1.2;margin:0 0 16px}.completion-intro{max-width:510px;margin:0 auto 26px;font-size:17px;line-height:1.5}.completion-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:26px}.completion-metrics>div{padding:18px 8px 16px;background:var(--bg);border-radius:15px}.completion-metrics>div:nth-child(2){background:var(--soft);color:var(--primary-dark)}.completion-metrics>div:nth-child(3){background:var(--warm);color:#914e2e}.completion-metrics strong{display:block;font-size:28px;line-height:1.3}.completion-metrics span{display:block;margin-top:6px;font-size:13px;color:var(--muted)}.completion-metrics>div:nth-child(2) span{color:var(--primary)}.completion-metrics>div:nth-child(3) span{color:#914e2e}.completion-actions{display:grid;grid-template-columns:1.12fr 1fr;gap:10px;margin-top:22px}.completion-actions .button{min-height:54px;padding:12px;font-size:15px;border-radius:14px}.completion-actions .secondary{color:var(--ink);background:white;border-color:#d3d1e8}.completion-details{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}.completion-details .panel{padding:22px}.completion-panel-top{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:14px;color:var(--muted)}.completion-panel-top>h2{font-size:18px;letter-spacing:0;color:var(--ink)}.completion-today-badge,.completion-stage-badge{padding:4px 10px;font-size:11px;white-space:nowrap;border-radius:20px;font-weight:600}.completion-today-badge{background:var(--warm);color:#914e2e}.completion-stage-badge{background:var(--soft);color:var(--primary-dark)}.completion-streak h2{font-size:27px;line-height:1.3;margin:12px 0 8px;letter-spacing:0}.completion-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin:10px 0 14px}.completion-week>div{text-align:center}.completion-week i{display:block;width:30px;height:30px;background:var(--soft);border-radius:9px;margin:auto}.completion-week .is-active i{background:var(--primary)}.completion-week .is-today i{background:var(--accent);outline:1.5px solid var(--accent);outline-offset:2px}.completion-week span{display:block;margin-top:7px;font-size:11px;color:var(--muted)}.completion-week .is-today span{font-weight:600;color:var(--ink)}.completion-details p{font-size:13px;line-height:1.5}.completion-course .completion-course-number{margin:12px 0 10px;font-size:13px}.completion-course-number strong{font-size:29px;line-height:1.3;color:var(--ink);margin-right:5px}.completion-course progress{width:100%;height:12px;display:block;margin:10px 0 14px;border:0;appearance:none;background:var(--soft);border-radius:8px;overflow:hidden}.completion-course progress::-webkit-progress-bar{background:var(--soft)}.completion-course progress::-webkit-progress-value{background:var(--primary);border-radius:8px}.completion-course progress::-moz-progress-bar{background:var(--primary)}.completion-course p b{color:#914e2e}.completion-expressions{margin-top:16px;padding:22px}.completion-expressions>.completion-panel-top>span{font-size:12px}.completion-expression-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 24px;margin-top:14px}.completion-expression{display:flex;align-items:center;gap:10px;padding:12px 0;border-top:1px solid #eeeef5;min-height:63px;min-width:0}.completion-expression>i{width:8px;height:8px;border-radius:50%;background:var(--primary);flex-shrink:0}.completion-expression>div{min-width:0;flex:1}.completion-expression strong{font-size:14px;font-weight:600;overflow-wrap:anywhere}.completion-expression p{font-size:13px;margin-top:2px;overflow-wrap:anywhere}.completion-expression>span{font-size:11px;color:var(--muted);max-width:100px;text-align:right;flex-shrink:0}.completion-expression.is-retried>i{background:var(--accent)}.completion-expression.is-retried>span{color:#914e2e}.completion-retry{background:var(--warm);color:#914e2e;font-size:14px;padding:12px 16px;min-height:44px;border-radius:12px;margin-top:18px}.completion-retry:hover{background:#efddd0}.completion-empty{font-size:14px;margin-top:20px}.completion-tomorrow{display:flex;align-items:center;gap:16px;background:var(--soft);border-radius:24px;padding:24px 22px;margin-top:16px}.completion-calendar{display:grid;place-items:center;flex:0 0 44px;height:44px;background:white;color:var(--primary);border-radius:12px;font-size:25px}.completion-tomorrow>div{flex:1}.completion-tomorrow h2{font-size:15px;letter-spacing:0;line-height:1.4}.completion-tomorrow p{font-size:13px;margin-top:4px}.completion-tomorrow label{font-size:13px;display:flex;align-items:center;gap:10px;white-space:nowrap;cursor:pointer}.completion-tomorrow input{width:18px;height:18px;accent-color:var(--primary);margin:0}.completion-site .footer{display:none}.completion-site .profile-label,.completion-site .profile-menu summary>.icon{display:none}.completion-site .header-inner{min-height:70px}
@media(max-width:700px){.completion-site main.wrap{padding-left:16px;padding-right:16px}.lesson-completion{padding-top:24px;padding-bottom:40px}.completion-hero{padding:24px}.completion-check{width:60px;height:60px;font-size:34px;margin-bottom:16px}.completion-hero h1{font-size:27px;letter-spacing:-.4px;line-height:1.25}.completion-intro{font-size:16px;line-height:1.55;margin-bottom:24px}.completion-metrics{grid-template-columns:1fr 1fr;gap:10px}.completion-metrics>div{padding:18px 8px}.completion-metrics strong{font-size:28px}.completion-actions{grid-template-columns:1fr;gap:10px;margin-top:22px}.completion-actions .button{font-size:15px;min-height:50px}.completion-details{grid-template-columns:1fr;gap:16px}.completion-details .panel,.completion-expressions{padding:22px}.completion-streak h2{font-size:27px}.completion-details p{font-size:13px}.completion-week i{width:30px;height:30px}.completion-panel-top{font-size:13px}.completion-panel-top>h2{font-size:18px}.completion-expression-grid{grid-template-columns:1fr;margin-top:14px}.completion-expressions>.completion-panel-top{align-items:flex-start;flex-direction:column;gap:8px}.completion-expression{min-height:64px;padding:13px 0}.completion-expression>span{font-size:11px}.completion-retry{font-size:13px}.completion-tomorrow{flex-wrap:wrap;padding:24px 22px;gap:18px}.completion-tomorrow>div{flex:1 1 100%}.completion-tomorrow h2{font-size:15px}.completion-tomorrow p{font-size:14px}.completion-tomorrow label{margin-top:8px;font-size:14px;min-height:32px}.completion-site .member-nav{position:static;width:auto;bottom:auto;box-shadow:none;background:none;border:0;padding:0;gap:8px;margin-left:auto}.completion-site .member-nav a{min-height:38px;font-size:12px;padding:8px 10px;flex:0 0 auto;display:flex;white-space:nowrap;flex-direction:row}.completion-site .member-nav a .icon{display:none}.completion-site .member-nav a.nav-study{border-radius:12px}.completion-site .header-inner{gap:10px;flex-wrap:wrap;padding:12px 16px}.completion-site .logo{font-size:21px}.completion-site .header-actions{margin-left:0}.completion-site.with-nav{padding-bottom:0}}
@media(max-width:370px){.completion-hero{padding:22px 18px}.completion-hero h1{font-size:25px}.completion-details .panel,.completion-expressions{padding:20px}.completion-panel-top{gap:6px}.completion-stage-badge{font-size:10px;padding:4px 7px}.completion-week{gap:5px}.completion-week i{width:27px;height:27px}}
@media(max-width:700px){.completion-site .header-inner{display:grid;grid-template-columns:1fr auto;gap:8px 12px;align-items:center}.completion-site .header .logo{grid-column:1;grid-row:1;justify-self:start}.completion-site .member-nav{display:contents}.completion-site .member-nav a.nav-study{grid-column:2;grid-row:1;justify-self:end}.completion-site .member-nav a:not(.nav-study){grid-column:1;grid-row:2;justify-self:start;padding-left:10px}.completion-site .header-actions{grid-column:1;grid-row:2;justify-self:start;margin-left:112px}}
/* Admin overview */
.admin-site{background:var(--bg)}.admin-site .wrap{max-width:1248px}.admin-site .admin-header{background:white;border-bottom:1px solid var(--line)}.admin-site .header-inner{min-height:60px;gap:24px;align-items:center}.admin-site .logo{font-size:19px;letter-spacing:-.4px}.admin-role-badge{padding:4px 9px;background:var(--warm);color:#914e2e;font-size:11px;font-weight:600;border-radius:7px;margin-left:-12px}.admin-site .admin-tabs{display:flex;align-items:stretch;align-self:stretch;gap:2px;border:0;margin:0;overflow:visible}.admin-site .admin-tabs>a{display:flex;align-items:center;gap:8px;padding:17px 14px;color:var(--muted);font-size:14px;font-weight:500;border:0;border-radius:0;border-left:1px solid transparent;border-right:1px solid transparent;background:none;white-space:nowrap}.admin-site .admin-tabs>a[aria-current=page]{color:var(--ink);border-left-color:var(--line);border-right-color:var(--line);box-shadow:inset 0 -2px var(--primary)}.admin-site [data-report-badge]{background:var(--accent);color:white;border-radius:50%;min-width:20px;height:20px;font-size:11px;text-align:center;line-height:20px}.admin-site [data-report-badge][hidden]{display:none}.admin-back{font-size:14px;text-decoration:underline;color:var(--muted);margin-left:auto;white-space:nowrap}.admin-site .admin-page{padding-top:28px;padding-bottom:56px}.admin-overview-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px}.admin-overview-heading h1{font-size:28px;line-height:1.3;letter-spacing:-.5px}.admin-period{display:flex;padding:4px;border:1px solid var(--line);background:white;border-radius:12px;gap:3px}.admin-period button{font-size:13px;font-weight:600;background:none;color:var(--ink);padding:9px 14px;min-height:36px;border-radius:7px;white-space:nowrap}.admin-period button[aria-pressed=true]{background:var(--primary);color:white}.admin-attention{display:flex;align-items:center;gap:24px;flex-wrap:wrap;padding:22px 20px;background:white;border:1px solid #eed0be;border-radius:16px;font-size:14px;margin-bottom:20px;min-height:70px}.admin-attention>strong{color:#914e2e}.admin-attention a{display:flex;align-items:center;gap:10px}.admin-attention i{width:8px;height:8px;background:var(--accent);border-radius:50%;display:inline-block}.admin-attention a>span{color:var(--primary)}.admin-kpi-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:white;border:1px solid var(--line);border-radius:16px;overflow:hidden;margin-bottom:20px}.admin-kpi-strip>div{padding:20px 22px;border-right:1px solid #ededf5}.admin-kpi-strip>div:last-child{border-right:0}.admin-kpi-strip>div>span{font-size:13px;color:var(--muted)}.admin-kpi-strip p{display:flex;align-items:baseline;gap:12px;margin-top:1px}.admin-kpi-strip strong{font-size:32px;line-height:1.35;color:var(--ink)}.admin-kpi-strip small{font-size:12px;color:var(--muted);line-height:1.5;display:block}.admin-change{color:var(--success);font-size:13px;font-weight:600}.admin-change.negative{color:#a44c2c}.admin-overview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.admin-overview .panel{border:1px solid var(--line);border-radius:17px;padding:22px;box-shadow:none;background:white;min-width:0}.admin-overview h2{font-size:16px;letter-spacing:0;line-height:1.5;margin:0;font-weight:600}.admin-panel-heading{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.admin-panel-heading>span{color:var(--muted);font-size:12px;line-height:1.5}.admin-panel-heading>a{font-size:13px;color:var(--primary);text-decoration:underline;font-weight:500}.admin-chart{grid-column:span 2;min-height:348px;position:relative}.admin-chart-plot{display:flex;gap:12px;margin-top:14px;position:relative}.admin-chart-plot>span{font-size:11px;color:var(--muted);min-width:15px}.admin-chart-plot svg{display:block;width:100%;height:190px;border-top:1px dotted var(--line);overflow:visible}.admin-chart-plot rect{fill:#d0cdec}.admin-chart-plot rect.selected{fill:var(--primary)}.admin-chart-plot line{stroke:var(--line);stroke-width:1}.admin-chart-labels{display:flex;justify-content:space-between;font-size:11px;color:var(--muted);margin:10px 0 0 27px}.admin-chart-empty{font-size:13px;text-align:center;position:absolute;top:45%;left:0;right:0;color:var(--muted)}.admin-funnel .admin-panel-heading h2{max-width:180px}.admin-funnel .admin-panel-heading>span{max-width:110px;font-size:11px}.admin-funnel-step{margin-top:12px}.admin-funnel-step>div{display:flex;justify-content:space-between;gap:10px;font-size:14px}.admin-funnel-step em{font-style:normal;color:var(--muted)}.admin-overview progress{display:block;width:100%;height:8px;appearance:none;background:var(--soft);border:0;border-radius:8px;overflow:hidden;margin-top:5px}.admin-overview progress::-webkit-progress-bar{background:var(--soft)}.admin-overview progress::-webkit-progress-value{background:var(--primary);border-radius:8px}.admin-overview progress::-moz-progress-bar{background:var(--primary);border-radius:8px}.admin-funnel-step:nth-child(2) progress::-webkit-progress-value{background:var(--ink)}.admin-funnel-note{font-size:11px;line-height:1.5;margin-top:14px;color:var(--muted)}.admin-learning,.admin-catalog-summary,.admin-latest{min-height:300px}.admin-learning-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px;padding-bottom:14px;border-bottom:1px solid var(--line)}.admin-learning-stats strong{display:block;font-size:25px;line-height:1.5}.admin-learning-stats span{font-size:13px;color:var(--muted)}.admin-hardest-label{font-size:13px;color:var(--muted);margin:12px 0 8px}.admin-hardest-row{display:flex;justify-content:space-between;align-items:baseline;gap:14px;font-size:14px;margin-top:8px}.admin-hardest-row strong{font-weight:500;overflow-wrap:anywhere}.admin-hardest-row>span{color:#a55232;white-space:nowrap;font-size:13px}.admin-overview-empty{font-size:13px;color:var(--muted);margin-top:20px}.admin-catalog-count{margin:12px 0 8px;color:var(--muted);font-size:14px}.admin-catalog-count strong{font-size:32px;color:var(--ink);margin-right:8px}.admin-catalog-summary dl{margin:14px 0 26px}.admin-catalog-summary dl>div{display:flex;justify-content:space-between;gap:16px;font-size:14px;margin:8px 0}.admin-catalog-summary dt{color:var(--muted)}.admin-catalog-summary dd{font-weight:600;margin:0}.admin-catalog-summary dd>a{color:#a55232}.admin-catalog-summary>.button{min-height:42px;width:100%;border-radius:11px;background:white;color:var(--ink);font-size:14px;padding:10px}.admin-latest-row{display:flex;align-items:center;gap:10px;padding:10px 0;border-top:1px solid var(--line);font-size:13px}.admin-latest-row:first-of-type{margin-top:10px}.admin-user-avatar{display:grid;place-items:center;background:var(--soft);color:var(--primary);font-size:11px;font-weight:600;width:28px;height:28px;flex:0 0 28px;border-radius:50%}.admin-latest-row>span:nth-child(2){min-width:0;overflow-wrap:anywhere}.admin-latest-row small{font-size:11px;color:var(--muted);margin-left:auto;text-align:right}.admin-overview-footnote{font-size:12px;color:var(--muted);margin-top:20px}.admin-site #admin-error:empty{display:none}.admin-site #admin-content>h1{font-size:30px;margin-bottom:14px}
@media(max-width:1100px){.admin-site .header-inner{gap:16px}.admin-site .admin-tabs>a{padding:17px 10px;font-size:13px}.admin-overview-grid{gap:16px}.admin-overview .panel{padding:18px}.admin-learning-stats strong{font-size:22px}.admin-hardest-row{font-size:13px}.admin-latest-row{flex-wrap:wrap}.admin-latest-row small{flex:1 1 100%;text-align:left;padding-left:38px;margin-top:-8px}}
@media(max-width:800px){.admin-overview-grid{grid-template-columns:1fr 1fr}.admin-chart{grid-column:span 2}.admin-kpi-strip{grid-template-columns:1fr 1fr}.admin-kpi-strip>div:nth-child(2){border-right:0}.admin-kpi-strip>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.admin-site .header-inner{flex-wrap:wrap;padding-top:12px;gap:12px}.admin-site .admin-tabs{order:4;flex-basis:100%;overflow-x:auto}.admin-role-badge{margin-left:0}.admin-funnel{grid-row:2;grid-column:1}.admin-latest-row small{flex:initial;padding-left:0;margin-top:0}.admin-back{font-size:12px}}
@media(max-width:560px){.admin-site .admin-page{padding-top:22px;padding-bottom:36px}.admin-overview-heading{gap:10px;align-items:flex-start}.admin-overview-heading h1{font-size:25px;margin-top:6px}.admin-period button{font-size:11px;padding:8px 10px;min-height:34px}.admin-attention{gap:12px;padding:18px;font-size:13px}.admin-attention>strong{flex:1 1 100%}.admin-kpi-strip>div{padding:17px 15px}.admin-kpi-strip strong{font-size:29px}.admin-kpi-strip>div>span{font-size:12px}.admin-kpi-strip small{font-size:10px}.admin-kpi-strip p{gap:8px}.admin-overview-grid{grid-template-columns:1fr}.admin-chart{grid-column:auto;min-height:280px}.admin-funnel{grid-row:auto;grid-column:auto}.admin-panel-heading>span{font-size:11px;max-width:110px}.admin-chart-plot svg{height:160px}.admin-overview .panel{padding:20px}.admin-learning,.admin-catalog-summary,.admin-latest{min-height:0}.admin-latest-row{flex-wrap:nowrap}.admin-latest-row small{font-size:10px}.admin-site .admin-tabs>a{padding:12px 9px;font-size:12px}.admin-site .header-inner{padding-left:18px;padding-right:18px}.admin-overview-footnote{font-size:11px}.admin-site .admin-page{padding-left:16px;padding-right:16px}}
.admin-chart-plot svg{flex:1;min-width:0;width:0}
/* Result after the five-card demo */
.demo-result{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:24px;max-width:1120px;margin:0 auto;padding:56px 0 64px;align-items:start}.demo-result .panel{background:white;border:1px solid var(--line);border-radius:24px;box-shadow:none}.demo-result-main{padding:40px}.demo-result-badge{display:inline-block;background:var(--soft);color:var(--primary-dark);font-size:13px;font-weight:600;border-radius:24px;padding:7px 12px}.demo-result h1{font-size:40px;letter-spacing:-.7px;line-height:1.15;margin:24px 0 12px}.demo-result-intro{font-size:18px;line-height:1.6;color:var(--muted)}.demo-result-phrases{margin-top:22px;border:1px solid #ebebf5;border-radius:17px;overflow:hidden}.demo-result-phrase{display:flex;align-items:center;gap:14px;padding:14px 16px;border-bottom:1px solid #eeeef5;min-height:71px}.demo-result-phrase:last-child{border-bottom:0}.demo-result-phrase.is-new{background:#fcf9f7}.demo-result-status{display:grid;place-items:center;flex:0 0 28px;width:28px;height:28px;border-radius:50%;background:var(--soft);color:var(--primary);font-size:16px;font-weight:600}.is-known .demo-result-status{background:var(--primary);color:white}.is-new .demo-result-status{background:var(--warm);color:var(--accent)}.demo-result-phrase>div{min-width:0;flex:1}.demo-result-phrase strong{font-size:16px;line-height:1.4;overflow-wrap:anywhere;font-weight:600}.demo-result-phrase p{font-size:14px;color:var(--muted);margin-top:2px}.demo-result-phrase>span:last-child{font-size:12px;color:var(--primary-dark);font-weight:600;text-align:right;flex-shrink:0}.demo-result-phrase.is-new>span:last-child{color:#914e2e}.demo-result-phrase.is-seen>span:last-child{color:var(--muted)}.demo-result-repeat{display:flex;gap:14px;align-items:flex-start;background:var(--warm);border-radius:18px;padding:18px;margin:22px 0 28px}.demo-result-repeat>span{display:grid;place-items:center;width:36px;height:36px;flex:0 0 36px;background:white;color:var(--accent);border-radius:11px}.demo-result-repeat h2{font-size:16px;line-height:1.4;letter-spacing:0;color:#694531;font-weight:600;margin:0 0 5px}.demo-result-repeat p{font-size:14px;line-height:1.55;color:#7b6658}.demo-result form>label{display:block;font-size:14px;font-weight:600;margin-bottom:12px}.demo-result form>div{display:grid;grid-template-columns:1.06fr 1fr;gap:10px}.demo-result input{width:100%;min-width:0;padding:15px 16px;min-height:56px;border:1px solid #d7d5ea;border-radius:14px;background:white;color:var(--ink);font-size:16px}.demo-result form .button{font-size:15px;min-height:56px;border-radius:14px;padding:12px 16px}.demo-result-email-note{font-size:13px;color:var(--muted);margin-top:10px}.demo-result-storage-note{font-size:11px;line-height:1.5;color:var(--muted);margin-top:12px}.demo-result .form-error:empty{display:none}.demo-result .form-error{font-size:13px;margin-top:8px}.demo-result-links{display:flex;align-items:center;gap:22px;border-top:1px solid #eeeef5;padding-top:16px;margin-top:22px}.demo-result-links a,.demo-result-links button{font-size:14px;color:var(--muted);text-decoration:underline;background:none;padding:0;min-height:30px}.demo-result-links button{color:var(--primary)}.demo-result-sidebar{display:grid;gap:16px}.demo-result-path{padding:24px 22px}.demo-result-path h2{font-size:14px;color:var(--muted);font-weight:500;letter-spacing:0}.demo-result-path>p:first-of-type{font-size:14px;color:var(--muted);margin-top:6px}.demo-result-path strong{font-size:36px;line-height:1.4;color:var(--primary);margin-right:4px}.demo-result-path progress{display:block;width:100%;height:10px;border:0;border-radius:8px;overflow:hidden;appearance:none;background:var(--soft);margin:8px 0 14px}.demo-result-path progress::-webkit-progress-bar{background:var(--soft)}.demo-result-path progress::-webkit-progress-value{background:var(--primary);border-radius:8px;min-width:10px}.demo-result-path progress::-moz-progress-bar{background:var(--primary);border-radius:8px;min-width:10px}.demo-result-path>p:last-child{font-size:14px;line-height:1.5;color:var(--muted)}.demo-result-benefits{padding:24px 22px;background:var(--soft);border-radius:22px}.demo-result-benefits>h2{font-size:16px;letter-spacing:0;margin:0 0 16px}.demo-result-benefits>div{display:flex;align-items:flex-start;gap:12px;margin-top:16px}.demo-result-benefits>div>span{display:grid;place-items:center;width:32px;height:32px;flex:0 0 32px;background:white;color:var(--primary);border-radius:11px}.demo-result-benefits h3{font-size:14px;line-height:1.4;margin:2px 0 3px;font-weight:600;letter-spacing:0}.demo-result-benefits p{font-size:14px;line-height:1.5;color:var(--muted)}.demo-result-site .header-menu,.demo-result-site .brand-description{display:none}.demo-result-site .header-actions{margin-left:auto}.demo-result-site .header-inner{max-width:1168px;min-height:70px}.demo-result-site .footer{display:none}
@media(max-width:1000px){.demo-result{grid-template-columns:minmax(0,1fr) 290px;gap:20px}.demo-result-main{padding:30px}.demo-result h1{font-size:34px}.demo-result form>div{grid-template-columns:1fr}.demo-result-phrase{padding:14px 12px;gap:12px}}
@media(max-width:700px){.demo-result-site main.wrap{padding-left:16px;padding-right:16px}.demo-result{grid-template-columns:1fr;padding-top:28px;padding-bottom:48px;gap:24px}.demo-result-main{padding:24px}.demo-result-badge{font-size:12px;padding:7px 12px}.demo-result h1{font-size:29px;line-height:1.2;letter-spacing:-.4px;margin-top:22px;margin-bottom:12px}.demo-result-intro{font-size:17px;line-height:1.55}.demo-result-phrases{margin-top:24px}.demo-result-phrase{padding:14px;gap:12px;min-height:72px}.demo-result-phrase strong{font-size:16px}.demo-result-phrase p{font-size:13px}.demo-result-phrase>span:last-child{font-size:11px}.demo-result-status{flex-basis:28px}.demo-result-repeat{padding:18px;gap:12px;margin-top:22px;margin-bottom:28px}.demo-result-repeat h2{font-size:16px}.demo-result-repeat p{font-size:15px;line-height:1.5}.demo-result form>label{font-size:14px}.demo-result input,.demo-result form .button{min-height:56px}.demo-result form>div{gap:10px}.demo-result-email-note{font-size:13px;line-height:1.5;margin-top:10px}.demo-result-storage-note{font-size:11px}.demo-result-links{gap:20px;flex-wrap:wrap;padding-top:14px;margin-top:22px}.demo-result-links a,.demo-result-links button{font-size:13px}.demo-result-sidebar{gap:16px}.demo-result-path{padding:24px}.demo-result-benefits{padding:26px 24px}.demo-result-benefits h3{font-size:14px}.demo-result-benefits p{font-size:14px}.demo-result-site .header-inner{padding-left:16px;padding-right:16px;min-height:70px}.demo-result-site .logo{font-size:23px}.demo-result-site .header-actions .button{padding:10px 18px;min-height:44px;font-size:14px}}
@media(max-width:370px){.demo-result-main{padding:22px 18px}.demo-result h1{font-size:27px}.demo-result-phrase{gap:9px;padding:13px 10px}.demo-result-phrase strong{font-size:14px}.demo-result-phrase p{font-size:12px}.demo-result-phrase>span:last-child{font-size:10px}.demo-result-repeat{padding:16px 14px}.demo-result-repeat p{font-size:14px}}
.demo-result h1{max-width:650px}
/* This heading receives focus to announce the result, but is not a control. */
#demo-result-title:focus{outline:none}

/* Login layout from desktop and mobile references. */
.auth-entry-site{min-height:100vh;background:#f5f5fa;color:#282a40;font-family:Arial,sans-serif}
.auth-entry-site .header{background:transparent;border:0}
.auth-entry-site .header-inner{max-width:1040px;padding:0;margin:auto;min-height:84px;display:flex;justify-content:space-between;gap:20px}
.auth-entry-site .logo{font-family:Arial,sans-serif;font-size:22px;font-weight:700;letter-spacing:-.5px}
.auth-entry-home{font-size:13px;color:#6b6d84;text-decoration:none;padding:12px 0}
.auth-entry-home:hover{color:var(--primary);text-decoration:underline}
.auth-entry-site #main{width:100%;max-width:none;padding:48px 16px 64px}
.auth-entry{width:440px;max-width:100%;margin:0 auto}
.auth-entry-card{padding:32px;background:#fff;border:1px solid #dedfee;border-radius:22px;box-shadow:0 16px 42px #282a400a}
.auth-entry-tabs{display:flex;gap:4px;padding:4px;background:#f5f5fa;border-radius:14px}
.auth-entry-tabs button{flex:1;min-width:0;min-height:40px;border:0;border-radius:10px;background:transparent;color:#282a40;font:700 14px Arial,sans-serif;cursor:pointer}
.auth-entry-tabs button[aria-current]{background:#fff;box-shadow:0 1px 3px #282a4026}
.auth-entry-card h1{font-size:26px;line-height:32px;font-weight:700;letter-spacing:-.5px;margin:18px 0 4px}
.auth-entry-intro{font-size:15px;line-height:22px;color:#6b6d84;margin:0}
.auth-entry .field{margin:22px 0 0}
.auth-entry .field label{font-size:14px;line-height:20px;font-weight:700;margin:0 0 6px}
.auth-entry input{display:block;min-height:52px;padding:14px 16px;font:16px Arial,sans-serif;border:1px solid #d4d4ee;border-radius:12px;background:#fff;color:#282a40}
.auth-entry input[name=code]{letter-spacing:.25em}
.auth-entry .button{font:700 15px Arial,sans-serif;min-height:52px;border-radius:12px;justify-content:center;width:100%}
.auth-entry form>.button{margin-top:12px;background:#5754a7;border:1px solid #5754a7;color:white}
.auth-entry form>.button:hover{background:#48458e}
.auth-entry .form-error:empty{display:none}
.auth-entry .form-error{line-height:20px;margin:10px 0 0}
.auth-entry-divider{display:flex;align-items:center;gap:12px;margin:20px 0;color:#7b7d94;font-size:13px;line-height:14px}
.auth-entry-divider::before,.auth-entry-divider::after{content:'';height:1px;flex:1;background:#dedff0}
.auth-entry .auth-entry-alternative{min-height:48px;background:#fff;color:#282a40;border:1px solid #d4d4ee}
.auth-entry .auth-entry-alternative:hover{background:#f5f5fa}
.auth-entry-privacy{display:flex;align-items:flex-start;gap:10px;margin:20px 0 0;font-size:13px;line-height:20px;color:#6b6d84}
.auth-entry-privacy svg{flex-shrink:0;margin-top:2px}
.auth-entry-password{position:relative}
.auth-entry-password input{padding-right:90px}
.auth-entry .password-toggle{top:0;right:14px;height:52px}
.auth-entry-links{display:flex;flex-wrap:wrap;gap:8px 16px;justify-content:center;margin-top:16px}
.auth-entry-links .button{width:auto;min-height:40px;padding:8px;font-size:13px}
.auth-entry .form-note{font-size:13px;line-height:20px}
.auth-entry-local{margin-top:18px;font-size:13px;line-height:20px;color:var(--muted)}
.auth-entry-local .button{margin-top:10px;font-size:13px}
.auth-entry button:disabled{opacity:.55;cursor:wait}
.auth-entry :is(button,input,a):focus-visible,.auth-entry-home:focus-visible{outline:3px solid #aaa7df;outline-offset:3px}
@media(max-width:1100px){.auth-entry-site .header-inner{margin:0 32px}}
@media(max-width:600px){.auth-entry-site .header-inner{margin:0 16px;min-height:84px}.auth-entry-site #main{padding:16px 16px 48px}.auth-entry-card{padding:22px;border-radius:22px}.auth-entry-card h1{margin-top:18px}.auth-entry-privacy{margin-top:20px;gap:8px}.auth-entry .field{margin-top:20px}}
