/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.isolate{isolation:isolate}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.grid{display:grid}.hidden{display:none}.table{display:table}.shrink{flex-shrink:1}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.capitalize{text-transform:capitalize}.italic{font-style:italic}.underline{text-decoration-line:underline}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.invert{--tw-invert:invert(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--ink:#3c4348;--muted:#8c9295;--blue:#ff7a3d;--blue-dark:#d85622;--blue-soft:#fff2e9;--mint:#e8f5ed;--coral:#ff8b5f;--paper:#fdfbf8;--line:#ebe7e1}*{box-sizing:border-box}html,body{min-height:100%;color:var(--ink);background:#f1f0ed;margin:0}body{font-feature-settings:"kern", "liga";-webkit-font-smoothing:antialiased;font-family:ui-rounded,SF Pro Rounded,Avenir Next Rounded,-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,sans-serif}button,input,select,textarea{font:inherit}button{-webkit-tap-highlight-color:transparent}.app-shell{place-items:center;min-height:100dvh;padding:24px;display:grid;position:relative;overflow:hidden}.ambient{filter:blur(2px);pointer-events:none;border-radius:999px;position:fixed}.ambient-one{opacity:.72;background:#e7e5e1;width:340px;height:340px;top:-130px;left:-80px}.ambient-two{opacity:.42;background:#f7ded2;width:280px;height:280px;bottom:-110px;right:-80px}.phone{background:var(--paper);z-index:1;border-radius:34px;grid-template-rows:72px 1fr 76px;width:min(100%,430px);height:min(900px,100dvh - 32px);min-height:690px;display:grid;position:relative;overflow:hidden;box-shadow:0 24px 70px #42403c1f}.phone.practice-mode{grid-template-rows:72px 1fr}.topbar{justify-content:space-between;align-items:center;padding:16px 20px 8px;display:flex;position:relative}.round-button{width:40px;height:40px;color:var(--ink);cursor:pointer;background:#f0efe9;border:0;border-radius:50%;font-size:21px}.brand{justify-content:center;align-items:center;gap:6px;display:inline-flex;position:absolute;left:50%;transform:translate(-50%)}.brand-mark{background:url(/miles-cat-avatar-fine-w-v12.png) 50%/contain no-repeat;flex:none;width:39px;height:35px;display:block}.brand-word{color:var(--ink);letter-spacing:-1.8px;text-transform:lowercase;font-family:ui-rounded,Avenir Next Rounded,Arial Rounded MT Bold,-apple-system,BlinkMacSystemFont,sans-serif;font-size:26px;font-weight:900;line-height:1}.brand-tail{border-right:2.5px solid var(--coral);border-bottom:2.5px solid var(--coral);border-radius:0 0 10px;width:11px;height:9px;position:absolute;bottom:-1px;right:-7px;transform:rotate(-18deg)}.streak{color:#d85d2b;background:#fff3eb;border-radius:999px;padding:8px 11px;font-size:13px;font-weight:700}.beta-streak{align-items:center;gap:3px;display:flex}.beta-streak small{color:#fff;background:var(--blue);letter-spacing:.4px;border-radius:999px;padding:2px 4px;font-size:6px}.beta-gate{z-index:100;background:radial-gradient(circle at 16% 12%,#ff7a3d2e,#0000 30%),radial-gradient(circle at 86% 86%,#ccebd98c,#0000 35%),#f3f1ed;place-items:center;padding:22px;display:grid;position:fixed;inset:0;overflow-y:auto}.beta-gate-card{text-align:center;background:#fffdf9f5;border:1px solid #ffffffe6;border-radius:30px;width:min(100%,390px);padding:21px 22px 19px;box-shadow:0 26px 70px #40373029}.beta-gate-brand{justify-content:center;align-items:center;gap:6px;margin-bottom:5px;display:flex}.beta-gate-brand .brand-mark{width:42px;height:38px}.beta-gate-brand b{color:var(--ink);letter-spacing:-1.5px;font-size:27px;font-weight:950}.beta-gate-brand em{color:#fff;background:var(--blue);letter-spacing:1px;border-radius:999px;padding:3px 6px;font-size:7px;font-style:normal;font-weight:900}.beta-gate-cat{border:4px solid #fff;border-radius:23px;width:86px;height:86px;margin:8px auto 10px;box-shadow:0 10px 24px #44362c1a}.beta-gate-card .eyebrow{margin-bottom:5px;font-size:9px}.beta-gate-card h1{color:var(--ink);margin:0;font-size:24px;line-height:1.25}.beta-gate-card>p:not(.eyebrow){color:#817a74;max-width:310px;margin:8px auto 15px;font-size:10px;line-height:1.6}.beta-gate-card form{text-align:left;gap:9px;display:grid}.beta-gate-card form label{gap:4px;display:grid}.beta-gate-card form label span{color:#6f6862;font-size:8px;font-weight:850}.beta-gate-card input{width:100%;color:var(--ink);background:#fff;border:1px solid #e7dfd7;border-radius:12px;outline:0;padding:11px 12px;font-size:11px}.beta-gate-card input:focus{border-color:var(--blue);box-shadow:0 0 0 3px #ff7a3d1a}.beta-gate-card form .primary-button{min-height:48px;box-shadow:0 6px 0 var(--blue-dark);border-radius:14px;margin-top:3px}.beta-gate-card>small{color:#9a928b;margin-top:14px;font-size:7px;line-height:1.45;display:block}.beta-gate-error{color:#b44f3c;text-align:center;background:#fff0eb;border-radius:9px;margin:0;padding:7px 9px;font-size:8px}.beta-gate-loading{color:#837a74;justify-items:center;gap:8px;padding:18px;font-size:9px;display:grid}.beta-gate-loading i{border:3px solid #f4d9ca;border-top-color:var(--blue);border-radius:50%;width:25px;height:25px;animation:.8s linear infinite beta-spin}@keyframes beta-spin{to{transform:rotate(360deg)}}.screen{scrollbar-width:none;padding:8px 22px 22px;overflow-y:auto}.screen::-webkit-scrollbar{display:none}.eyebrow{color:var(--blue);letter-spacing:1.2px;margin:0 0 8px;font-size:12px;font-weight:800}.quote-hero{background:radial-gradient(circle at 93% 8%,#ff7a3d17,#0000 31%),#fff;border:1px solid #ece7e0;border-radius:19px;margin-bottom:12px;padding:11px 13px 9px;position:relative;overflow:hidden;box-shadow:0 8px 22px #413a320a}.quote-hero:after{content:"“";color:#e9825517;pointer-events:none;font-family:Georgia,serif;font-size:64px;line-height:1;position:absolute;top:19px;right:9px}.quote-head{z-index:1;justify-content:space-between;align-items:center;gap:10px;display:flex;position:relative}.quote-head .eyebrow{letter-spacing:.7px;margin:0;font-size:9px}.quote-head button{color:var(--blue-dark);cursor:pointer;background:#fff0e7;border:0;border-radius:999px;flex:none;padding:4px 7px;font-size:8px;font-weight:800}.quote-head button:active{transform:scale(.97)}.quote-hero blockquote{z-index:1;margin:7px 0 6px;animation:.28s both quote-in;position:relative}.quote-hero h1{letter-spacing:-.2px;-webkit-line-clamp:2;-webkit-box-orient:vertical;max-width:92%;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(16px,4.3vw,19px);font-style:italic;font-weight:700;line-height:1.22;display:-webkit-box;overflow:hidden}.quote-zh{color:#665f59;white-space:nowrap;text-overflow:ellipsis;max-width:92%;margin:4px 0 0;font-family:Songti SC,STSong,Noto Serif SC,serif;font-size:10.5px;font-weight:700;line-height:1.4;overflow:hidden}.quote-hero footer{min-width:0;color:var(--blue-dark);align-items:baseline;gap:8px;margin-top:5px;font-size:8px;font-weight:800;display:flex}.quote-hero footer span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.quote-hero footer small{display:none}.quote-meta{z-index:1;color:var(--muted);border-top:1px dashed #e6dfd7;justify-content:space-between;align-items:center;gap:8px;padding-top:6px;font-size:7.5px;display:flex;position:relative}.quote-meta button{color:var(--blue-dark);cursor:pointer;background:0 0;border:0;padding:0;font-size:7.5px;font-weight:850}.quote-meta span:last-child{color:#9aa2b3;flex:none;font-weight:800}@keyframes quote-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.quote-library-heading{margin-bottom:13px}.quote-library-heading h1{margin-bottom:7px}.quote-shelf-switch{background:#ece9e4;border-radius:16px;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px;padding:4px;display:grid}.quote-shelf-switch button{color:#7b746e;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:12px;gap:2px;padding:9px 8px;display:grid}.quote-shelf-switch button.active{color:var(--blue-dark);background:#fff;box-shadow:0 4px 12px #36343017}.quote-shelf-switch b{font-size:10px}.quote-shelf-switch small{opacity:.78;font-size:8px;font-weight:700}.quote-filters{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:15px;display:grid}.quote-filters label{background:#fff;border:1px solid #e8e2da;border-radius:12px;grid-template-columns:auto 1fr;align-items:center;gap:6px;min-width:0;padding:7px 8px;display:grid}.quote-filters label>span{color:var(--muted);font-size:8px;font-weight:800}.quote-filters select{width:100%;min-width:0;color:var(--ink);background:0 0;border:0;outline:0;font-size:10px;font-weight:800}.quote-open-tools{grid-template-columns:1.45fr .8fr .65fr;gap:7px;margin-bottom:15px;display:grid}.quote-open-tools label{background:#fff;border:1px solid #e8e2da;border-radius:12px;gap:3px;min-width:0;padding:7px 8px;display:grid}.quote-open-tools label>span{color:var(--muted);font-size:7px;font-weight:800}.quote-open-tools input,.quote-open-tools select{width:100%;min-width:0;color:var(--ink);background:0 0;border:0;outline:0;padding:0;font-size:9px;font-weight:800}.quote-open-tools input::placeholder{color:#aaa29a}.quote-result-head{justify-content:space-between;align-items:center;margin:0 2px 8px;display:flex}.quote-result-head b{font-size:12px}.quote-result-head span{color:var(--muted);font-size:9px}.quote-library-list{gap:10px;display:grid}.quote-library-card{background:#fff;border:1px solid #e8e2da;border-radius:17px;padding:14px;box-shadow:0 7px 20px #3634300d}.quote-tags{gap:5px;margin-bottom:9px;display:flex}.quote-tags span{color:var(--blue-dark);background:#fff0e7;border-radius:999px;padding:4px 7px;font-size:8px;font-weight:850}.quote-tags .review-tag{color:#aa6624;background:#fff0d5}.quote-library-card h2{color:var(--ink);margin:0;font-family:Georgia,Times New Roman,serif;font-size:17px;font-style:italic;line-height:1.35}.quote-library-card>p{color:#6e6761;margin:7px 0 9px;font-family:Songti SC,STSong,serif;font-size:12px;font-weight:700;line-height:1.5}.quote-library-card footer{border-top:1px dashed #e8e1d9;gap:2px;padding-top:8px;display:grid}.quote-library-card footer b{color:var(--blue-dark);font-size:9px}.quote-library-card footer span{color:var(--muted);font-size:8px}.quote-library-card>a{color:#8f8780;margin-top:9px;font-size:8px;text-decoration:none;display:inline-block}.quote-candidate-card>p{color:#9a7b57;font-family:inherit;font-size:10px;font-weight:750}.quote-load-more{width:100%;color:var(--blue-dark);cursor:pointer;background:#fff7f1;border:1px solid #ecd7ca;border-radius:14px;justify-content:space-between;align-items:center;padding:12px 14px;font-size:10px;font-weight:850;display:flex}.quote-load-more span{color:#8d857e;font-size:8px}.quote-license-note{color:#918982;margin:12px 2px 0;font-size:8px;line-height:1.55}.quote-empty{color:var(--muted);text-align:center;background:#f7f7f4;border:1px dashed #e7e1d9;border-radius:17px;padding:28px 15px;font-size:11px}.profile-screen{padding-top:6px}.profile-identity{color:var(--ink);background:radial-gradient(circle at 88% 8%,#ff7a3d1a,#0000 34%),#fff;border:1px solid #ece6df;border-radius:22px;grid-template-columns:58px 1fr auto;align-items:center;gap:11px;margin-bottom:12px;padding:15px;display:grid;position:relative;overflow:hidden;box-shadow:0 8px 22px #413d380d}.profile-identity:after{content:"m";color:#ff7a3d0e;font-size:110px;font-weight:950;position:absolute;top:-30px;right:48px}.profile-cat{z-index:1;background:#fff url(/miles-cat-avatar-fine-w-v12.png) 50%/80% no-repeat;border:3px solid #f5eee8;border-radius:19px;width:58px;height:58px;position:relative}.profile-identity>div:nth-child(2){z-index:1;min-width:0;position:relative}.profile-identity span{letter-spacing:1px;opacity:.78;font-size:7px;font-weight:850}.profile-identity h1{margin:3px 0 2px;font-size:19px}.profile-identity p{color:var(--muted);margin:0;font-size:8px}.profile-identity>button{z-index:1;color:var(--blue-dark);background:#fff8f4;border:1px solid #eadfd7;border-radius:999px;padding:5px 8px;font-size:8px;font-weight:800;position:relative}.profile-stats{background:#fff;border:1px solid #e8e2da;border-radius:17px;grid-template-columns:repeat(4,1fr);margin-bottom:12px;display:grid;overflow:hidden}.profile-stats div{text-align:center;padding:11px 3px}.profile-stats div+div{border-left:1px solid #ece7e1}.profile-stats b,.profile-stats span{display:block}.profile-stats b{color:var(--blue-dark);font-size:16px}.profile-stats span{color:var(--muted);margin-top:2px;font-size:7px}.profile-card{background:#fff;border:1px solid #e8e2da;border-radius:18px;margin-bottom:10px;padding:13px;box-shadow:0 6px 18px #3634300a}.profile-card-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.profile-card-head>div{align-items:center;gap:8px;display:flex}.profile-card-head>div>span{width:31px;height:31px;color:var(--blue-dark);background:#fff0e7;border-radius:10px;flex:none;place-items:center;font-size:13px;font-weight:900;display:grid}.profile-card-head>div>div{gap:2px;display:grid}.profile-card-head b{font-size:11px}.profile-card-head small{color:var(--muted);font-size:8px}.profile-card-head em{color:#ad692a;background:#fff0d5;border-radius:999px;padding:4px 7px;font-size:8px;font-style:normal;font-weight:850}.switch-control{cursor:pointer;background:#d9d6d1;border:0;border-radius:999px;width:38px;height:22px;padding:0;position:relative}.switch-control i{background:#fff;border-radius:50%;width:16px;height:16px;transition:all .2s;position:absolute;top:3px;left:3px}.switch-control.on{background:var(--blue)}.switch-control.on i{transform:translate(16px)}.reminder-card>p{color:#7b746e;background:#f7f4ef;border-radius:10px;margin:9px 0 0;padding:7px 9px;font-size:8px}.checkin-week{grid-template-columns:repeat(7,1fr);gap:5px;margin:12px 0 10px;display:grid}.checkin-week div{justify-items:center;gap:4px;display:grid}.checkin-week i{color:#aaa29a;background:#f1eee9;border-radius:10px;place-items:center;width:28px;height:28px;font-size:10px;font-style:normal;font-weight:850;display:grid}.checkin-week i.done{color:#fff;background:#69b38f}.checkin-week span{color:#8d857e;font-size:7px}.checkin-action{width:100%;color:var(--blue-dark);background:#fff3eb;border:0;border-radius:11px;padding:8px;font-size:9px;font-weight:850}.vocab-test-summary p{color:#78716b;margin:10px 0;font-size:9px;line-height:1.5}.vocab-test-summary button{color:#fff;background:var(--blue);border:0;border-radius:11px;width:100%;padding:9px;font-size:9px;font-weight:850}.vocab-question{text-align:center;padding-top:10px}.vocab-question>span{color:var(--blue);font-size:8px;font-weight:850}.vocab-question h2{margin:5px 0 2px;font-family:Georgia,serif;font-size:24px}.vocab-question p{color:var(--muted);margin:0 0 10px;font-size:8px}.vocab-question>div{grid-template-columns:1fr 1fr;gap:8px;display:grid}.vocab-question button{color:var(--ink);background:#f7f4ef;border:1px solid #e8e1d9;border-radius:11px;padding:9px;font-size:9px;font-weight:850}.vocab-question button:last-child{color:#fff;border-color:var(--blue);background:var(--blue)}.group-card .profile-card-head>button{color:#fff;background:var(--blue);border:0;border-radius:999px;padding:5px 9px;font-size:8px;font-weight:850}.group-card .profile-card-head>button.joined{color:#4d7a65;background:#e2f3ea}.group-progress{background:#ece8e2;border-radius:999px;height:7px;margin:12px 0 15px;position:relative}.group-progress>span{border-radius:inherit;background:linear-gradient(90deg,#6db794,#8dccaa);width:0;height:100%;display:block}.group-progress small{color:#8d857e;font-size:7px;position:absolute;top:10px;right:0}.social-posts{gap:8px;padding-top:7px;display:grid}.social-posts article{background:#f8f5f1;border-radius:12px;justify-content:space-between;align-items:center;gap:8px;padding:8px;display:flex}.social-posts article>div{align-items:center;gap:7px;min-width:0;display:flex}.social-posts i{color:#fff;background:var(--coral);border-radius:50%;flex:none;place-items:center;width:27px;height:27px;font-size:8px;font-style:normal;font-weight:850;display:grid}.social-posts p{gap:2px;min-width:0;margin:0;display:grid}.social-posts p b{font-size:8px}.social-posts p span{color:#7d756f;white-space:nowrap;text-overflow:ellipsis;font-size:7px;overflow:hidden}.social-posts article>button{color:#8d857e;background:0 0;border:0;flex:none;padding:4px 6px;font-size:8px}.social-posts article>button.liked{color:var(--coral)}.share-channels{grid-template-columns:repeat(5,1fr);gap:7px;margin-top:12px;display:grid}.share-channels button{color:#6f6862;background:0 0;border:0;justify-items:center;gap:4px;padding:0;font-size:7px;display:grid}.share-channels i{color:#fff;background:#65b887;border-radius:12px;place-items:center;width:34px;height:34px;font-size:10px;font-style:normal;font-weight:900;display:grid}.share-channels button:nth-child(3) i{background:#6f7574}.share-channels button:nth-child(4) i{background:#f39846}.share-channels button:nth-child(5) i{background:#77706a}.share-feedback{color:#776f69;text-align:center;background:#f7f4ef;border-radius:9px;margin:9px 0 0;padding:7px;font-size:7px}.profile-privacy-note{color:#958d86;text-align:center;margin:3px 5px 12px;font-size:7px;line-height:1.5}.beta-feedback-card{background:linear-gradient(145deg,#fff,#fff8f3);border-color:#f0d5c6}.beta-feedback-card .profile-card-head>div>span{color:#fff;background:var(--blue)}.beta-feedback-card .profile-card-head em{color:var(--blue-dark);background:#ffebdf}.beta-feedback-form{gap:7px;margin-top:10px;display:grid}.beta-feedback-form select,.beta-feedback-form textarea{width:100%;color:var(--ink);background:#fff;border:1px solid #e8dfd7;border-radius:10px;outline:0;font-size:8px}.beta-feedback-form select{padding:7px 9px}.beta-feedback-form textarea{resize:vertical;min-height:70px;padding:9px;line-height:1.5}.beta-feedback-form button{color:#fff;background:var(--blue);cursor:pointer;border:0;border-radius:10px;padding:8px;font-size:8px;font-weight:850}.beta-feedback-form p{color:#557663;text-align:center;background:#eef8f2;border-radius:8px;margin:0;padding:6px;font-size:7px}.settings-entry{width:100%;color:var(--ink);text-align:left;cursor:pointer;background:#fff;border:1px solid #e8e2da;border-radius:17px;grid-template-columns:36px 1fr auto;align-items:center;gap:10px;margin-bottom:12px;padding:12px;display:grid}.settings-entry>span{width:36px;height:36px;color:var(--blue-dark);background:var(--blue-soft);border-radius:12px;place-items:center;font-size:17px;display:grid}.settings-entry>div{gap:3px;display:grid}.settings-entry b{font-size:11px}.settings-entry small{color:var(--muted);font-size:8px}.settings-entry em{color:var(--muted);font-size:20px;font-style:normal}.settings-heading{margin-bottom:12px}.settings-section{background:#fff;border:1px solid #e8e3dc;border-radius:18px;gap:9px;margin-bottom:11px;padding:13px;display:grid;box-shadow:0 6px 18px #413d3809}.settings-section-head{align-items:center;gap:9px;padding-bottom:3px;display:flex}.settings-section-head>span{color:#fff;background:var(--blue);border-radius:10px;place-items:center;width:30px;height:30px;font-size:9px;font-weight:900;display:grid}.settings-section-head>div{gap:2px;display:grid}.settings-section-head b{font-size:11px}.settings-section-head small{color:var(--muted);font-size:8px}.settings-field{background:#f8f6f2;border-radius:11px;grid-template-columns:76px 1fr;align-items:center;gap:9px;min-height:40px;padding:6px 8px;display:grid}.settings-field>span{color:#6f6963;font-size:9px;font-weight:800}.settings-field input,.settings-field select{width:100%;min-width:0;color:var(--ink);background:#fff;border:1px solid #e7e1da;border-radius:8px;outline:0;padding:5px 7px;font-size:9px;font-weight:750}.settings-two-columns{grid-template-columns:1fr 1fr;gap:7px;display:grid}.settings-two-columns .settings-field{grid-template-columns:1fr;gap:4px}.settings-toggle{background:#f8f6f2;border-radius:11px;justify-content:space-between;align-items:center;gap:12px;min-height:43px;padding:7px 8px;display:flex}.settings-toggle>div{gap:2px;display:grid}.settings-toggle b{font-size:9px}.settings-toggle small{color:var(--muted);font-size:7px}.settings-segment{background:#f1eee9;border-radius:11px;grid-template-columns:1fr 1fr;gap:4px;padding:3px;display:grid}.settings-segment button{color:var(--muted);background:0 0;border:0;border-radius:8px;padding:7px;font-size:9px;font-weight:850}.settings-segment button.selected{color:#fff;background:var(--blue)}.settings-actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.settings-actions button{color:var(--ink);background:#faf8f5;border:1px solid #e4ded7;border-radius:10px;padding:8px;font-size:8px;font-weight:800}.settings-actions button.danger{color:#b45342;background:#fff5f2;border-color:#f0d4cd}.settings-legal{color:var(--muted);margin:0;font-size:7px;line-height:1.5}.settings-feedback{color:#40735a;text-align:center;background:#eaf7ef;border-radius:10px;margin:5px 0 10px;padding:8px;font-size:8px;font-weight:800}.settings-save{margin:5px 0 12px}.learning-curve-card{color:var(--ink);background:radial-gradient(circle at 92% 6%,#ff7a3d17,#0000 34%),#fff;border:1px solid #ebe6df;border-radius:20px;margin-bottom:14px;padding:14px;box-shadow:0 8px 22px #413d380d}.learning-curve-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.learning-curve-head>div{gap:3px;display:grid}.learning-curve-head span{letter-spacing:.5px;font-size:13px;font-weight:900}.learning-curve-head small{color:var(--muted);font-size:9px}.learning-curve-head>b{color:var(--blue-dark);background:#fff4ed;border-radius:999px;flex:none;padding:5px 8px;font-size:9px}.learning-curve-chart{background:linear-gradient(#faf8f5,#fff);border-bottom:1px solid #e9e4de;border-radius:11px;height:78px;margin:10px 0 8px;position:relative;overflow:hidden}.learning-curve-area{background:linear-gradient(#ff8b5f6b,#ff8b5f0a);position:absolute;inset:9px 8px 0}.learning-curve-dots{grid-template-columns:repeat(7,1fr);place-items:end center;display:grid;position:absolute;inset:9px 8px 0}.learning-curve-dots i{background:var(--coral);border:2px solid #fff;border-radius:50%;width:7px;height:7px;position:relative;box-shadow:0 2px 7px #36343033}.curve-caption{color:var(--muted);font-size:8px;position:absolute;bottom:6px;left:9px}.learning-stats{background:#f8f6f2;border-radius:12px;grid-template-columns:repeat(3,1fr);margin:0 0 10px;display:grid}.learning-stats div{text-align:center;padding:8px 4px}.learning-stats div+div{border-left:1px solid #eae5de}.learning-stats b,.learning-stats span{display:block}.learning-stats b{font-size:16px}.learning-stats span{color:var(--muted);margin-top:2px;font-size:8px}.learning-records{padding-top:2px}.records-title{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.records-title b{font-size:10px}.records-title span{color:var(--muted);font-size:8px}.record-row{border-top:1px solid #eee9e3;grid-template-columns:1fr auto auto;align-items:center;gap:8px;min-height:25px;font-size:9px;display:grid}.record-row>span{font-weight:800}.record-row small{color:var(--muted);font-size:8px}.record-row>b{border-radius:999px;padding:3px 6px;font-size:8px}.record-clean{color:#47755f;background:#e8f5ed}.record-review{color:#a65e4f;background:#fff0eb}.empty-records{color:var(--muted);margin:5px 0 0;font-size:9px;line-height:1.45}.progress-summary-card{width:100%;min-height:92px;color:var(--ink);text-align:left;cursor:pointer;background:radial-gradient(circle at 91% 12%,#ff7a3d16,#0000 36%),#fff;border:1px solid #ebe6df;border-radius:18px;grid-template-rows:auto auto;grid-template-columns:1fr auto 68px;align-items:center;gap:8px 12px;margin-bottom:12px;padding:12px 14px;display:grid;box-shadow:0 8px 22px #413d380d}.progress-summary-card:active{transform:translateY(1px)}.progress-summary-copy{gap:3px;min-width:0;display:grid}.progress-summary-copy span{font-size:13px;font-weight:900}.progress-summary-copy b{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:8px;font-weight:650;overflow:hidden}.summary-metric{justify-items:center;display:grid}.summary-metric strong{font-size:19px;line-height:1}.summary-metric small{color:var(--muted);margin-top:3px;font-size:7px}.summary-mini-chart{background:#faf5f1;border-radius:10px;align-items:end;gap:4px;height:38px;padding:5px 6px;display:flex}.summary-mini-chart i{background:linear-gradient(#ffb08b,#ff7a3d);border-radius:99px 99px 3px 3px;flex:1;min-height:5px}.summary-footer{color:var(--muted);border-top:1px solid #eee8e2;grid-column:1/-1;justify-content:space-between;gap:8px;padding-top:7px;font-size:8px;display:flex}.summary-footer b{color:var(--blue-dark);flex:none;font-size:8px}.progress-heading{margin-bottom:13px}.progress-heading h1{margin-bottom:6px}.progress-dashboard{gap:11px;padding-bottom:4px;display:grid}.progress-overview-card{color:var(--ink);background:radial-gradient(circle at 90% 8%,#ff7a3d17,#0000 38%),#fff;border:1px solid #ebe6df;border-radius:21px;grid-template-columns:88px 1fr;align-items:center;gap:13px;padding:15px;display:grid;box-shadow:0 9px 24px #413d380d}.mastery-ring{border-radius:50%;place-items:center;width:82px;height:82px;display:grid;transform:rotate(-90deg)}.mastery-ring>div{background:#fff;border-radius:50%;place-content:center;justify-items:center;width:62px;height:62px;display:grid;transform:rotate(90deg);box-shadow:inset 0 0 0 1px #ede7e0}.mastery-ring b{font-size:19px;line-height:1}.mastery-ring span{color:var(--muted);margin-top:4px;font-size:7px}.overview-copy{min-width:0}.overview-copy>span{color:var(--blue-dark);letter-spacing:.7px;font-size:8px;font-weight:850}.overview-copy h2{margin:5px 0 4px;font-size:14px;line-height:1.35}.overview-copy p{color:var(--muted);margin:0;font-size:8px;line-height:1.45}.learning-curve-card.detail{margin:0;padding:14px}.learning-curve-card.detail .learning-records{display:none}.progress-panel{background:#fff;border:1px solid #e7e7e2;border-radius:18px;padding:14px;box-shadow:0 8px 22px #3634300d}.progress-panel-head{justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:11px;display:flex}.progress-panel-head>div{gap:3px;display:grid}.progress-panel-head b{font-size:12px}.progress-panel-head small{color:var(--muted);font-size:8px}.progress-panel-head>span{color:var(--blue-dark);background:var(--blue-soft);border-radius:999px;padding:4px 7px;font-size:8px;font-weight:800}.stage-list{gap:9px;display:grid}.stage-row{grid-template-columns:68px 1fr 20px;align-items:center;gap:8px;display:grid}.stage-row>div{gap:2px;display:grid}.stage-row>div b{font-size:9px}.stage-row>div small{color:var(--muted);font-size:7px}.stage-row>span{background:#efebe5;border-radius:99px;height:7px;overflow:hidden}.stage-row>span i{border-radius:inherit;height:100%;display:block}.stage-row i.coral{background:#ff8a77}.stage-row i.gold{background:#f1bc55}.stage-row i.blue{background:var(--blue)}.stage-row i.mint{background:#62bd91}.stage-row>strong{color:var(--ink);text-align:right;font-size:10px}.activity-bars{background:linear-gradient(#faf7f3,#fff);border-radius:13px;grid-template-columns:repeat(7,1fr);align-items:end;gap:7px;height:82px;padding:8px 6px 0;display:grid}.activity-bars>div{grid-template-rows:1fr auto;justify-items:center;gap:5px;height:100%;display:grid}.activity-bars>div>span{justify-content:center;align-items:end;width:100%;display:flex}.activity-bars i{background:linear-gradient(#f2a47e,#d96f43);border-radius:6px 6px 3px 3px;width:12px;min-height:4px}.activity-bars small{color:var(--muted);font-size:7px}.detail-records{padding-bottom:9px}.detail-records .records-title{margin-bottom:2px}.detail-records .record-row{min-height:35px;color:var(--ink);border-top-color:#ecece8;font-size:10px}.detail-records .record-row small{color:var(--muted)}.empty-progress-records{color:var(--muted);text-align:center;background:#f5f5f2;border-radius:12px;margin:5px 0;padding:17px 11px;font-size:9px;line-height:1.5}.book-card{border:1px solid var(--line);background:#fff;border-radius:22px;gap:16px;padding:16px;display:flex;box-shadow:0 10px 28px #36343012}.selected-book-card{width:100%;color:inherit;text-align:left;cursor:pointer}.selected-book-card:active{transform:translateY(1px)}.book-card.compact{border-radius:18px;padding:12px}.book-card.compact .book-cover{flex-basis:78px;height:104px;padding:11px}.book-card.compact .book-cover b{font-size:18px}.book-card.compact .book-info h2{margin-top:8px;font-size:14px}.book-card.compact .book-info p{margin-bottom:9px}.book-cover{color:#fff;background:#ff7a3d;border-radius:16px 8px 8px 16px;flex-direction:column;flex:0 0 98px;height:132px;padding:14px;display:flex;box-shadow:inset 5px 0 #ffffff2e,5px 6px #f1d8cc}.book-cover.blue,.mini-cover.blue{background:#ff7a3d}.book-cover.coral,.mini-cover.coral{background:#ff986f}.book-cover.mint,.mini-cover.mint{color:#376453;background:#ccebd9}.book-cover span{opacity:.75;letter-spacing:2px;font-size:11px}.book-cover b{margin-top:11px;font-size:22px;line-height:1.05}.book-cover small{opacity:.78;margin-top:auto;font-size:10px}.book-info{flex:1;min-width:0;padding-top:2px}.pill{color:#3f7359;background:var(--mint);border-radius:999px;padding:5px 8px;font-size:10px;font-weight:800;display:inline-block}.book-info h2{margin:11px 0 6px;font-size:16px;line-height:1.3}.book-info p{color:var(--muted);margin:0 0 13px;font-size:11px}.book-progress,.track{background:#ece8e2;border-radius:99px;height:7px;overflow:hidden}.book-progress span,.track span{border-radius:inherit;background:var(--blue);height:100%;transition:width .35s;display:block}.progress-copy{color:var(--muted);justify-content:space-between;margin-top:7px;font-size:10px;display:flex}.books-screen{padding-top:7px}.section-heading h1{letter-spacing:-.8px;margin:0;font-size:27px}.section-heading>p:last-child{color:var(--muted);margin:8px 0 16px;font-size:11px;line-height:1.55}.book-scroll-guide{color:var(--blue-dark);background:#fff5ee;border:1px solid #ecd9cd;border-radius:14px;align-items:center;gap:9px;margin:-3px 0 11px;padding:9px 11px;display:flex}.book-scroll-guide>span{color:#fff;background:var(--blue);border-radius:50%;place-items:center;width:26px;height:26px;font-size:15px;font-weight:900;animation:1.8s ease-in-out infinite scroll-nudge;display:grid}.book-scroll-guide>div{gap:2px;display:grid}.book-scroll-guide b{font-size:10px}.book-scroll-guide small{color:#817972;font-size:8px}@keyframes scroll-nudge{0%,to{transform:translateY(-1px)}50%{transform:translateY(2px)}}.book-category-tabs{z-index:3;scrollbar-width:none;background:linear-gradient(180deg, var(--paper) 75%, #fbfaf600);gap:6px;margin:0 -2px 14px;padding:6px 2px;display:flex;position:sticky;top:0;overflow-x:auto}.book-category-tabs::-webkit-scrollbar{display:none}.book-category-tabs button{color:#78716b;cursor:pointer;background:#fff;border:1px solid #e6e0d8;border-radius:999px;flex:none;padding:7px 10px;font-size:9px;font-weight:800}.book-category-tabs button.selected{color:#fff;border-color:var(--blue);background:var(--blue);box-shadow:0 4px 10px #bd5d3833}.book-group-title{justify-content:space-between;align-items:center;margin:0 2px 8px;display:flex}.book-group-title b{font-size:11px}.book-group-title span{color:var(--muted);font-size:8px}.book-group-title.open-title{margin-top:17px}.book-group-title.open-title b{color:#386c58}.book-group-title.topic-title{margin-top:17px}.book-group-title.topic-title b{color:var(--blue-dark)}.book-group-title.planned-title{margin-top:17px}.book-group-title.planned-title b{color:#9a6a2b}.wordbook-list{gap:9px;display:grid}.wordbook-option{border:1.5px solid var(--line);width:100%;min-height:75px;color:var(--ink);text-align:left;cursor:pointer;background:#fff;border-radius:17px;grid-template-columns:48px 1fr 26px;align-items:center;gap:11px;padding:9px 11px;display:grid}.wordbook-option.selected{border-color:var(--blue);background:#fff7f1;box-shadow:0 5px 14px #bd5d3814}.mini-cover{color:#fff;background:#ff7a3d;border-radius:9px 5px 5px 9px;place-items:center;width:44px;height:54px;font-size:11px;font-weight:900;display:grid;box-shadow:inset 3px 0 #fff3,3px 3px #f1d8cc}.wordbook-copy{gap:2px;min-width:0;display:grid}.wordbook-copy b{font-size:13px}.wordbook-copy small{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:9px;overflow:hidden}.wordbook-copy em{color:var(--blue);font-size:9px;font-style:normal;font-weight:750}.select-check{color:var(--blue);text-align:center;font-size:17px;font-weight:900}.wordbook-option.candidate{grid-template-columns:48px 1fr 38px}.wordbook-option.candidate.selected{background:#f1faf5;border-color:#71b495;box-shadow:0 5px 14px #377e5b14}.candidate-status{color:#39745a;text-align:center;background:#e1f3e9;border-radius:999px;padding:4px 5px;font-size:8px;font-weight:850}.wordbook-option.topic-book{background:linear-gradient(135deg,#fff,#fcf8f4);border-color:#eadfd7;grid-template-columns:48px 1fr 38px}.wordbook-option.topic-book.selected{border-color:var(--blue);background:#fff5ee;box-shadow:0 5px 14px #bd5d381a}.topic-status{color:var(--blue-dark);text-align:center;background:#ffe9dc;border-radius:999px;padding:4px 5px;font-size:8px;font-weight:850}.book-empty-state{color:var(--muted);text-align:center;background:#f8f8f5;border:1px dashed #e7e1d9;border-radius:15px;padding:18px 12px;font-size:9px}.planned-book-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.planned-book-card{background:#fffaf2;border:1px solid #eadfcd;border-radius:15px;grid-template-columns:34px 1fr;align-items:center;gap:8px;min-width:0;min-height:70px;padding:9px;display:grid;position:relative}.planned-book-card>span{color:#916029;text-align:center;background:#ffe4bd;border-radius:8px 5px 5px 8px;place-items:center;width:34px;height:43px;font-size:8px;font-weight:900;display:grid;box-shadow:inset 3px 0 #ffffff59,2px 2px #ead9c0}.planned-book-card>div{gap:3px;min-width:0;padding-right:2px;display:grid}.planned-book-card b{white-space:nowrap;text-overflow:ellipsis;font-size:10px;overflow:hidden}.planned-book-card small{color:#8b8174;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:7px;line-height:1.35;display:-webkit-box;overflow:hidden}.planned-book-card em{color:#a66e2b;background:#fff0d5;border-radius:999px;padding:3px 5px;font-size:6px;font-style:normal;font-weight:850;position:absolute;top:6px;right:7px}.practice-confirm-backdrop{z-index:20;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#2d2a2757;align-items:flex-end;padding:18px;animation:.2s ease-out confirm-fade-in;display:flex;position:absolute;inset:0}.practice-confirm{text-align:center;background:#fffdf9;border:1px solid #ffffffe6;border-radius:25px;width:100%;padding:18px 17px 15px;animation:.26s cubic-bezier(.2,.75,.25,1) confirm-sheet-in;position:relative;box-shadow:0 18px 50px #3d2d2438}.practice-confirm-close{color:#7e756e;cursor:pointer;background:#f1eee9;border:0;border-radius:50%;place-items:center;width:30px;height:30px;padding:0;font-size:18px;display:grid;position:absolute;top:13px;right:13px}.practice-confirm-cover{color:#fff;background:#ff7a3d;border:4px solid #fffdf9;border-radius:13px 7px 7px 13px;place-items:center;width:58px;height:69px;margin:-38px auto 12px;display:grid;box-shadow:inset 4px 0 #fff3,4px 5px #ead8cf,0 10px 22px #503a2d1f}.practice-confirm-cover.coral{background:#ff986f}.practice-confirm-cover.mint{color:#376453;background:#ccebd9}.practice-confirm-cover span{font-size:13px;font-weight:950}.practice-confirm .eyebrow{margin-bottom:5px;font-size:9px}.practice-confirm h2{color:var(--ink);margin:0;font-size:22px}.practice-confirm-book{color:#756d67;margin:7px 0 12px;font-size:11px;font-weight:800}.practice-confirm-meta{background:#fff4ec;border-radius:14px;grid-template-columns:1fr 1fr;margin-bottom:13px;padding:10px 4px;display:grid}.practice-confirm-meta span{color:#8a817a;font-size:7px}.practice-confirm-meta span+span{border-left:1px solid #ecdacf}.practice-confirm-meta b{color:var(--blue-dark);margin-bottom:2px;font-size:11px;display:block}.practice-confirm-primary{min-height:48px;box-shadow:0 6px 0 var(--blue-dark);border-radius:15px}.practice-confirm-later{color:#888079;cursor:pointer;background:0 0;border:0;width:100%;margin-top:9px;padding:9px;font-size:9px;font-weight:800}@keyframes confirm-fade-in{0%{opacity:0}}@keyframes confirm-sheet-in{0%{opacity:0;transform:translateY(28px)scale(.98)}}.alphabet-picker{background:#fff7ed;border:1px solid #f3dfc7;border-radius:19px;margin:14px 0 12px;padding:13px}.alphabet-head{justify-content:space-between;align-items:flex-start;margin-bottom:10px;display:flex}.alphabet-head>div{gap:2px;display:grid}.alphabet-head b{font-size:12px}.alphabet-head small{color:var(--muted);font-size:8px}.alphabet-head>span{color:#ad692a;background:#ffe9cc;border-radius:999px;padding:4px 7px;font-size:8px;font-weight:800}.alphabet-grid{grid-template-columns:repeat(9,1fr);gap:5px;display:grid}.alphabet-grid button{aspect-ratio:1;color:#6f6862;cursor:pointer;background:#fff;border:1px solid #eadac7;border-radius:8px;min-width:0;padding:0;font-size:10px;font-weight:850}.alphabet-grid button.selected{color:#fff;border-color:var(--coral);background:var(--coral);box-shadow:0 3px #db6958}.rights-note{color:#4a715f;background:#eef8f2;border-radius:13px;gap:3px;margin-bottom:13px;padding:9px 11px;font-size:9px;line-height:1.4;display:grid}.rights-note span{color:#718078;font-size:8px}.mode-grid{grid-template-columns:1fr 1fr;gap:11px;margin:16px 0;display:grid}.mode-card{border:1.5px solid var(--line);text-align:left;cursor:pointer;min-height:92px;color:var(--ink);background:#fff;border-radius:18px;grid-template-columns:38px 1fr;align-items:center;padding:13px;display:grid}.mode-card.active{border-color:var(--blue);background:var(--blue-soft);box-shadow:0 5px 16px #bd5d381a}.mode-icon{background:var(--blue);color:#fff;white-space:nowrap;border-radius:10px 10px 10px 4px;grid-row:1/3;place-items:center;width:34px;height:42px;font-size:13px;font-weight:900;display:grid}.mode-icon.coral{background:var(--coral)}.mode-card b{font-size:13px}.mode-card small{color:var(--muted);align-self:start;font-size:10px}.primary-button{color:#fff;background:var(--blue);width:100%;min-height:54px;box-shadow:0 9px 0 var(--blue-dark);cursor:pointer;border:0;border-radius:17px;justify-content:center;align-items:center;gap:10px;font-weight:800;display:flex}.primary-button:active{box-shadow:0 5px 0 var(--blue-dark);transform:translateY(4px)}.primary-button span{font-size:20px}.mini-list{color:var(--muted);align-items:center;gap:8px;margin:21px 4px 0;font-size:11px;display:flex}.mini-list>span{margin-right:auto}.mini-list div{display:flex}.mini-list i{border:2px solid var(--paper);width:27px;height:27px;color:var(--blue);background:#fff0e7;border-radius:50%;place-items:center;margin-left:-5px;font-style:normal;font-weight:800;display:grid}.mini-list b{color:var(--blue)}.practice-meta{color:#706963;justify-content:space-between;align-items:center;margin:5px 1px 10px;font-size:12px;font-weight:750;display:flex}.practice-meta span,.practice-meta b{border-radius:999px;padding:6px 10px}.practice-meta span{background:#f1eee9}.practice-meta b{color:var(--blue);background:var(--blue-soft)}.practice-screen{padding-bottom:max(18px, env(safe-area-inset-bottom))}.voice-picker{background:#f8f5f1;border:1px solid #e7e1d9;border-radius:15px;gap:7px;margin:10px 1px 0;padding:9px 10px;display:grid}.voice-picker-head{justify-content:space-between;align-items:center;gap:10px;padding:0 2px;display:flex}.voice-picker-head b{color:#615a54;font-size:9px}.voice-picker-head small{color:#918880;font-size:7px;font-weight:750}.voice-picker-controls{grid-template-columns:104px minmax(0,1fr);align-items:stretch;gap:7px;display:grid}.accent-switch{background:#e9e5df;border-radius:10px;grid-template-columns:1fr 1fr;padding:2px;display:grid}.accent-switch button{color:#7d756f;cursor:pointer;background:0 0;border:0;border-radius:8px;min-width:0;padding:7px 6px;font-size:9px;font-weight:850}.accent-switch button.selected{color:#fff;background:var(--blue);box-shadow:0 2px 6px #bd5d3838}.voice-picker label{background:#fff;border:1px solid #e6dfd7;border-radius:10px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:6px;min-width:0;padding:2px 3px 2px 8px;display:grid}.voice-picker label span{color:#8d857e;white-space:nowrap;font-size:7px;font-weight:850}.voice-picker select{width:100%;min-width:0;color:var(--ink);text-overflow:ellipsis;background:0 0;border:0;outline:0;padding:6px 22px 6px 6px;font-size:8px;font-weight:750;overflow:hidden}.word-stage{text-align:center;background:linear-gradient(#fff 0%,#fcfaf7 100%);border:1px solid #e8e2da;border-radius:23px;margin-top:14px;padding:16px 14px 13px;box-shadow:0 10px 24px #413a320d}.inline-speaker{width:44px;height:44px;color:var(--blue);cursor:pointer;isolation:isolate;background:#fff2ea;border:1.5px solid #f0cfbd;border-radius:50%;flex:0 0 44px;place-items:center;display:grid;position:relative;box-shadow:0 3px #ead3c6}.inline-speaker:before{content:"";z-index:-1;opacity:0;pointer-events:none;border:1.5px solid #e982554d;border-radius:50%;position:absolute;inset:-5px}.inline-speaker.speaking:before{animation:1.15s ease-out infinite sound-ring}.inline-speaker:active{transform:translateY(2px);box-shadow:0 1px #ead3c6}@keyframes sound-ring{0%{opacity:.5;transform:scale(.82)}75%,to{opacity:0;transform:scale(1.08)}}.sound-glyph{width:22px;height:20px;color:var(--blue);display:block;position:relative}.sound-glyph:before{content:"";background:currentColor;border-radius:2px;width:6px;height:7px;position:absolute;top:7px;left:1px}.sound-glyph i{clip-path:polygon(0 31%,100% 0,100% 100%,0 69%);background:currentColor;width:8px;height:13px;position:absolute;top:4px;left:6px}.sound-glyph:after{content:"";border-right:2px solid;border-radius:50%;width:5px;height:11px;position:absolute;top:5px;right:2px}.sound-glyph b{border-right:2px solid;border-radius:50%;width:8px;height:17px;position:absolute;top:2px;right:-2px}.word-zh{letter-spacing:-.6px;margin:3px 0 5px;font-size:26px;font-weight:900}.word-zh span{color:var(--muted);font-size:12px;font-weight:600}.ipa-row{justify-content:center;align-items:center;gap:10px;min-height:42px;display:flex}.ipa{color:#6d6660;align-items:center;gap:7px;min-height:30px;margin:0;display:inline-flex}.ipa span{width:24px;height:24px;color:var(--blue);background:var(--blue-soft);border-radius:8px;place-items:center;font-size:11px;font-weight:900;display:grid}.ipa strong{letter-spacing:.45px;font-family:Charis SIL,Times New Roman,Arial Unicode MS,serif;font-size:18px;font-weight:600}.letter-row{justify-content:center;gap:clamp(4px,1.6vw,7px);margin:24px 0 8px;display:flex}.letter-slot{border-bottom:3px solid #c5beb6;place-items:center;width:clamp(34px,10vw,44px);height:48px;font-size:26px;font-weight:800;display:grid}.letter-slot.missing{color:var(--blue);border-color:var(--blue);background:var(--blue-soft);border-radius:9px 9px 0 0}.shake{color:var(--coral);border-color:var(--coral);animation:.25s linear shake}@keyframes shake{25%{transform:translate(-4px)}75%{transform:translate(4px)}}.feedback-band{justify-content:center;align-items:center;min-height:62px;margin-top:5px;display:flex}.feedback{color:#7a726c;letter-spacing:.2px;background:#f3f0eb;border-radius:999px;justify-content:center;align-items:center;min-height:32px;margin:0 auto;padding:7px 13px;font-size:11px;font-weight:750;display:inline-flex}.feedback.correct{color:#267653;background:#e9f7ef;font-weight:850}.choice-grid{grid-template-columns:repeat(4,1fr);gap:10px;margin-top:26px;display:grid}.choice-grid button{height:64px;color:var(--ink);cursor:pointer;background:#fff;border:1.5px solid #e2ddd6;border-radius:16px;font-size:23px;font-weight:900;box-shadow:0 5px #e2ddd6}.choice-grid button:active{transform:translateY(3px);box-shadow:0 2px #e2ddd6}.choice-grid.multi{grid-template-columns:repeat(4,1fr);gap:8px;margin-top:13px}.choice-grid.multi button{border-radius:14px;height:52px;font-size:21px}.choice-grid.multi button:nth-last-child(2):nth-child(4n+1){grid-column:2}.full-spell-stage{margin:21px auto 3px}.keyboard-note{color:#7b746e;letter-spacing:.15px;margin:0 0 9px;font-size:10px;font-weight:750}.progressive-hint{color:#8a631d;text-align:left;background:#fff8e9;border:1px solid #efd9ae;border-radius:13px;grid-template-columns:auto 1fr;align-items:center;gap:4px 9px;width:min(100%,330px);margin:0 auto 9px;padding:8px 11px;display:grid}.progressive-hint span{color:#fff;white-space:nowrap;background:#d99a31;border-radius:8px;grid-row:1/3;padding:5px 7px;font-size:8px;font-weight:900}.progressive-hint strong{overflow-wrap:anywhere;min-width:0;color:var(--ink);letter-spacing:1.4px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:14px;line-height:1.3}.progressive-hint small{color:#8f7b59;font-size:8px}.progressive-hint.level-3{background:#effaf4;border-color:#b9dfc9}.progressive-hint.level-3 span{background:#4b9d72}.progressive-hint.level-3 strong{color:#29724f;letter-spacing:.2px;font-family:ui-rounded,SF Pro Rounded,sans-serif;font-size:17px}.full-input-wrap{border:2px solid var(--blue);background:#fff;border-radius:16px;max-width:330px;margin:0 auto;padding:5px;display:flex;box-shadow:0 5px 15px #bd5d3814}.full-input-wrap input{width:100%;min-width:0;color:var(--ink);background:0 0;border:0;outline:0;padding:12px;font-size:18px;font-weight:800}.full-input-wrap button{background:var(--blue);color:#fff;border:0;border-radius:11px;flex:0 0 44px;font-size:20px}.practice-footer{grid-template-columns:1fr 1fr;gap:10px;margin-top:13px;display:grid}.practice-footer.single-action{grid-template-columns:1fr}.tool-card{min-width:0;min-height:62px;color:var(--ink);text-align:left;cursor:pointer;background:#fff7f1;border:1px solid #ecd9cd;border-radius:17px;align-items:center;gap:9px;padding:9px 10px;display:flex;box-shadow:0 5px 14px #bd5d3812}.tool-card.hint{background:#fff9ed;border-color:#f2dfbd;justify-content:center;min-height:48px;box-shadow:0 5px 14px #c0892b12}.tool-card:active{transform:translateY(2px)}.tool-card:disabled{cursor:default;opacity:.62;transform:none}.tool-icon{width:38px;height:38px;color:var(--blue);background:#ffe9dc;border-radius:12px;flex:none;place-items:center;display:grid}.tool-card.hint .tool-icon{color:#c78522;background:#fff0cb}.tool-copy{gap:3px;min-width:0;display:grid}.tool-copy b{letter-spacing:-.15px;font-size:12px;font-weight:900}.tool-copy small{color:#8d857e;white-space:nowrap;text-overflow:ellipsis;font-size:8px;font-weight:650;overflow:hidden}.bulb-glyph{width:20px;height:21px;display:block;position:relative}.bulb-glyph:before{content:"";border:2px solid;border-radius:50%;width:12px;height:12px;position:absolute;top:1px;left:4px}.bulb-glyph:after{content:"";border-left:2px solid;border-right:2px solid;width:4px;height:5px;position:absolute;top:13px;left:8px}.bulb-glyph i{background:currentColor;border-radius:99px;width:7px;height:2px;position:absolute;bottom:0;left:7px}.coach-pop{background:#fff5f1;border:1px solid #ffd9cf;border-radius:17px;align-items:center;gap:9px;width:min(100%,340px);min-height:58px;margin:0 auto;padding:6px 10px 6px 6px;animation:.26s ease-out pop-in;display:flex;box-shadow:0 6px 18px #4a362f14}.coach-pop.success{background:#f0faf4;border-color:#ccebd9}.coach-pop>div:last-child{text-align:left;flex:1;min-width:0}.coach-pop b{color:#c75748;font-size:12px}.coach-pop.success b{color:#32835c}.coach-pop p{color:#756e68;margin:3px 0 0;font-size:10px;line-height:1.35}.coach-pop .mascot-sprite{border-radius:12px;width:44px;height:44px}@keyframes pop-in{0%{opacity:0;transform:translateY(8px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.mascot-sprite{background-image:url(/miles-gray-cat-reactions-v1.png);background-repeat:no-repeat;background-size:200% 200%;border-radius:15px;flex:none;width:62px;height:62px}.mascot-sprite.mood-0{background-position:0 0}.mascot-sprite.mood-1{background-position:100% 0}.mascot-sprite.mood-2{background-position:0 100%}.mascot-sprite.mood-3{background-position:100% 100%}.complete-screen{text-align:center;padding-top:36px}.complete-mascot{border-radius:30px;width:132px;height:132px;margin:-15px auto 14px}.celebrate{background:#e4f6eb;border-radius:50%;place-items:center;width:116px;height:116px;margin:0 auto 24px;display:grid;box-shadow:0 0 0 14px #f0faf4}.celebrate span{color:#fff;background:#49a875;border-radius:50%;place-items:center;width:62px;height:62px;font-size:35px;font-weight:900;display:grid}.complete-screen h1{margin:5px 0 8px;font-size:28px}.complete-screen>p:not(.eyebrow){color:var(--muted);font-size:13px}.score-card{border:1px solid var(--line);background:#fff;border-radius:20px;grid-template-columns:repeat(4,1fr);margin:28px 0 18px;padding:19px 4px;display:grid}.score-card div+div{border-left:1px solid var(--line)}.score-card b,.score-card span{display:block}.score-card b{color:var(--blue);font-size:22px}.score-card span{color:var(--muted);margin-top:5px;font-size:10px}.word-ribbon{color:var(--muted);background:#f2f1ec;border-radius:12px;margin-bottom:24px;padding:10px;font-size:11px}.review-plan{background:var(--blue-soft);color:var(--blue);border-radius:13px;gap:5px;margin-bottom:21px;padding:12px;font-size:11px;display:grid}.review-plan span{color:var(--muted);font-size:10px}.complete-actions{grid-template-columns:1fr 1fr;gap:8px;margin-top:9px;display:grid}.complete-actions button{color:#736b65;cursor:pointer;background:#fff;border:1px solid #e6dfd7;border-radius:12px;min-height:38px;padding:8px;font-size:9px;font-weight:850}.checkin-share-screen{padding-top:4px}.checkin-heading{margin-bottom:11px}.checkin-poster{color:#fff;text-align:center;background:radial-gradient(circle at 88% 8%,#ffffff40,#0000 28%),linear-gradient(145deg,#ff945d,#ff7438);border-radius:23px;padding:15px;position:relative;overflow:hidden;box-shadow:0 13px 27px #d2592638}.checkin-poster:after{content:"m";color:#ffffff14;font-size:138px;font-weight:950;line-height:1;position:absolute;top:42px;right:-8px}.poster-brand{z-index:1;text-align:left;align-items:center;gap:6px;display:flex;position:relative}.poster-brand .brand-mark{background-color:#ffffffeb;background-size:contain;border-radius:10px;width:32px;height:29px}.poster-brand b{letter-spacing:-.7px;font-size:19px}.poster-brand em{color:#fffffff0;border:1px solid #ffffff61;border-radius:999px;margin-left:auto;padding:4px 7px;font-size:7px;font-style:normal;font-weight:800}.poster-cat{z-index:1;border:3px solid #fffc;border-radius:20px;width:72px;height:72px;margin:7px auto 2px;position:relative;box-shadow:0 7px 16px #9c381626}.checkin-poster>p{z-index:1;color:#fffc;margin:4px 0 2px;font-size:8px;font-weight:800;position:relative}.checkin-poster h2{z-index:1;color:#fff;margin:0 0 10px;font-size:17px;line-height:1.35;position:relative}.checkin-poster h2 strong{font-size:36px;line-height:1}.poster-metrics{z-index:1;background:#ffffff24;border:1px solid #ffffff38;border-radius:14px;grid-template-columns:repeat(3,1fr);padding:9px 3px;display:grid;position:relative}.poster-metrics span{color:#fffc;font-size:7px}.poster-metrics span+span{border-left:1px solid #fff3}.poster-metrics b{color:#fff;margin-bottom:2px;font-size:13px;display:block}.poster-book{z-index:1;text-align:left;background:#712d1226;border-radius:12px;align-items:center;gap:8px;margin:9px 0;padding:8px 10px;display:flex;position:relative}.poster-book>span{color:#ff7a3d;background:#fff;border-radius:8px;place-items:center;width:32px;height:38px;font-size:8px;font-weight:950;display:grid}.poster-book>div{gap:2px;display:grid}.poster-book small{color:#ffffffbd;font-size:7px}.poster-book b{font-size:10px}.checkin-poster blockquote{z-index:1;border-top:1px dashed #ffffff4d;margin:8px 0 0;padding-top:8px;font-family:Georgia,serif;font-size:11px;font-weight:700;position:relative}.checkin-poster blockquote small{color:#ffffffc7;margin-top:2px;font-family:inherit;font-size:7px;font-weight:500;display:block}.checkin-history-card{background:#fff;border:1px solid #e8e2db;border-radius:17px;grid-template-columns:repeat(3,1fr);margin:11px 0;padding:11px 4px;display:grid}.checkin-history-card div+div{border-left:1px solid #eee8e2}.checkin-history-card b,.checkin-history-card span{text-align:center;display:block}.checkin-history-card b{color:var(--muted);font-size:7px}.checkin-history-card span{color:var(--ink);margin-top:4px;font-size:10px;font-weight:850}.checkin-share-card{background:#fffaf7;border:1px solid #eadfd7;border-radius:17px;margin-bottom:11px;padding:11px 12px 8px}.checkin-share-card>b{font-size:10px}.checkin-share-card>p:not(.share-feedback){color:var(--muted);margin:3px 0 8px;font-size:7px}.text-button{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:20px}.bottom-nav{border-top:1px solid var(--line);padding:8px 13px max(9px, env(safe-area-inset-bottom));background:#fbf8f2f7;grid-template-columns:repeat(4,1fr);display:grid}.bottom-nav button{color:#9d958e;cursor:pointer;background:0 0;border:0;place-items:center;gap:3px;font-size:10px;display:grid}.bottom-nav button span{font-size:21px;line-height:1}.bottom-nav button.selected{color:var(--blue);font-weight:800}@media (width<=520px){.app-shell{padding:0}.phone{width:100%;height:100dvh;min-height:0;box-shadow:none;border-radius:0}.ambient{display:none}.home-screen{padding-top:2px}}@media (height<=730px){.phone{grid-template-rows:62px 1fr 66px}.phone.practice-mode{grid-template-rows:62px 1fr}.topbar{padding-top:10px}.quote-hero{margin-bottom:8px;padding:10px 12px 8px}.quote-hero blockquote{margin:6px 0 5px}.quote-hero h1{font-size:16px}.quote-zh{margin-top:3px;font-size:10px}.quote-hero footer{margin-top:4px}.quote-meta{padding-top:5px}.learning-curve-card{margin-bottom:9px;padding:11px 12px}.learning-curve-chart{height:66px;margin:8px 0 7px}.book-cover{height:112px}.book-card{padding:12px}.mode-grid{margin:8px 0}.mode-card{min-height:68px;padding:8px}.mini-list{margin-top:15px}.word-stage{margin-top:9px;padding:12px 12px 10px}.voice-picker{margin-top:7px;padding:6px 7px}.letter-row{margin:17px 0 6px}.feedback-band{min-height:56px}.practice-footer{margin-top:10px}.choice-grid.multi{margin-top:9px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
