*{margin:0;-webkit-tap-highlight-color:transparent}html,body{-webkit-user-select:none;-moz-user-select:none;user-select:none;width:100%;height:100%}body{overflow-x:hidden;font-size:16px}uni-app,uni-page,uni-page-wrapper,uni-page-body{display:block;box-sizing:border-box;width:100%}uni-page-wrapper{position:relative}#app,uni-app,uni-page,uni-page-wrapper{height:100%}.uni-mask{position:fixed;z-index:999;top:0;right:0;left:0;bottom:0;background:rgba(0,0,0,.5)}.uni-fade-enter-active,.uni-fade-leave-active{transition-duration:.25s;transition-property:opacity;transition-timing-function:ease}.uni-fade-enter-from,.uni-fade-leave-active{opacity:0}.uni-loading,uni-button[loading]:before{background-color:transparent;background-image:url(data:image/svg+xml;base64,\ PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMjAiIGhlaWdodD0iMTIwIiB2aWV3Qm94PSIwIDAgMTAwIDEwMCI+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgxMDB2MTAwSDB6Ii8+PHJlY3Qgd2lkdGg9IjciIGhlaWdodD0iMjAiIHg9IjQ2LjUiIHk9IjQwIiBmaWxsPSIjRTlFOUU5IiByeD0iNSIgcnk9IjUiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDAgLTMwKSIvPjxyZWN0IHdpZHRoPSI3IiBoZWlnaHQ9IjIwIiB4PSI0Ni41IiB5PSI0MCIgZmlsbD0iIzk4OTY5NyIgcng9IjUiIHJ5PSI1IiB0cmFuc2Zvcm09InJvdGF0ZSgzMCAxMDUuOTggNjUpIi8+PHJlY3Qgd2lkdGg9IjciIGhlaWdodD0iMjAiIHg9IjQ2LjUiIHk9IjQwIiBmaWxsPSIjOUI5OTlBIiByeD0iNSIgcnk9IjUiIHRyYW5zZm9ybT0icm90YXRlKDYwIDc1Ljk4IDY1KSIvPjxyZWN0IHdpZHRoPSI3IiBoZWlnaHQ9IjIwIiB4PSI0Ni41IiB5PSI0MCIgZmlsbD0iI0EzQTFBMiIgcng9IjUiIHJ5PSI1IiB0cmFuc2Zvcm09InJvdGF0ZSg5MCA2NSA2NSkiLz48cmVjdCB3aWR0aD0iNyIgaGVpZ2h0PSIyMCIgeD0iNDYuNSIgeT0iNDAiIGZpbGw9IiNBQkE5QUEiIHJ4PSI1IiByeT0iNSIgdHJhbnNmb3JtPSJyb3RhdGUoMTIwIDU4LjY2IDY1KSIvPjxyZWN0IHdpZHRoPSI3IiBoZWlnaHQ9IjIwIiB4PSI0Ni41IiB5PSI0MCIgZmlsbD0iI0IyQjJCMiIgcng9IjUiIHJ5PSI1IiB0cmFuc2Zvcm09InJvdGF0ZSgxNTAgNTQuMDIgNjUpIi8+PHJlY3Qgd2lkdGg9IjciIGhlaWdodD0iMjAiIHg9IjQ2LjUiIHk9IjQwIiBmaWxsPSIjQkFCOEI5IiByeD0iNSIgcnk9IjUiIHRyYW5zZm9ybT0icm90YXRlKDE4MCA1MCA2NSkiLz48cmVjdCB3aWR0aD0iNyIgaGVpZ2h0PSIyMCIgeD0iNDYuNSIgeT0iNDAiIGZpbGw9IiNDMkMwQzEiIHJ4PSI1IiByeT0iNSIgdHJhbnNmb3JtPSJyb3RhdGUoLTE1MCA0NS45OCA2NSkiLz48cmVjdCB3aWR0aD0iNyIgaGVpZ2h0PSIyMCIgeD0iNDYuNSIgeT0iNDAiIGZpbGw9IiNDQkNCQ0IiIHJ4PSI1IiByeT0iNSIgdHJhbnNmb3JtPSJyb3RhdGUoLTEyMCA0MS4zNCA2NSkiLz48cmVjdCB3aWR0aD0iNyIgaGVpZ2h0PSIyMCIgeD0iNDYuNSIgeT0iNDAiIGZpbGw9IiNEMkQyRDIiIHJ4PSI1IiByeT0iNSIgdHJhbnNmb3JtPSJyb3RhdGUoLTkwIDM1IDY1KSIvPjxyZWN0IHdpZHRoPSI3IiBoZWlnaHQ9IjIwIiB4PSI0Ni41IiB5PSI0MCIgZmlsbD0iI0RBREFEQSIgcng9IjUiIHJ5PSI1IiB0cmFuc2Zvcm09InJvdGF0ZSgtNjAgMjQuMDIgNjUpIi8+PHJlY3Qgd2lkdGg9IjciIGhlaWdodD0iMjAiIHg9IjQ2LjUiIHk9IjQwIiBmaWxsPSIjRTJFMkUyIiByeD0iNSIgcnk9IjUiIHRyYW5zZm9ybT0icm90YXRlKC0zMCAtNS45OCA2NSkiLz48L3N2Zz4=);background-repeat:no-repeat}.uni-loading{width:20px;height:20px;display:inline-block;vertical-align:middle;animation:uni-loading 1s steps(12,end) infinite;background-size:100%}@keyframes uni-loading{0%{transform:rotate3d(0,0,1,0)}to{transform:rotate3d(0,0,1,360deg)}}html{--primary-color: #007aff;--UI-BG: #fff;--UI-BG-1: #f7f7f7;--UI-BG-2: #fff;--UI-BG-3: #f7f7f7;--UI-BG-4: #4c4c4c;--UI-BG-5: #fff;--UI-FG: #000;--UI-FG-0: rgba(0, 0, 0, .9);--UI-FG-HALF: rgba(0, 0, 0, .9);--UI-FG-1: rgba(0, 0, 0, .5);--UI-FG-2: rgba(0, 0, 0, .3);--UI-FG-3: rgba(0, 0, 0, .1)}uni-page[data-type] uni-page-body{background-color:transparent}body:after{position:fixed;content:"";left:-1000px;top:-1000px;animation:shadow-preload .1s;animation-delay:3s}@keyframes shadow-preload{0%{background-image:url(https://cdn.dcloud.net.cn/img/shadow-grey.png)}to{background-image:url(https://cdn.dcloud.net.cn/img/shadow-grey.png)}}.uni-async-error{position:absolute;left:0;right:0;top:0;bottom:0;color:#999;padding:100px 10px;text-align:center}.uni-async-loading{box-sizing:border-box;width:100%;padding:50px;text-align:center}.uni-async-loading .uni-loading{width:30px;height:30px}:root,uni-page-body{--canvas:#f7f7f2;--surface:#fff;--ink:#243b32;--body:#46564e;--muted:#6d776f;--line:#e5e9e2;--brand:#245b48;--brand-hover:#194b39;--brand-soft:#eaf1e8;--brand-on:#fff;--gold:#c2a36a;--warm:#f6eddc;--warm-ink:#795c29;--danger:#a64237;--danger-soft:#faece8;--disabled:#e8eae5;--shadow:0 12px 40px rgb(28 50 39 / 12%);--overlay:rgb(18 34 26 / 35%);--focus:#7ca48b;--radius:20px;--safe-bottom:env(safe-area-inset-bottom,0px) }*{box-sizing:border-box}uni-page-body,:root{background:var(--canvas);color:var(--ink);font:14px/24px PingFang SC,Microsoft YaHei,sans-serif}body{margin:0}uni-button,uni-input,uni-textarea,.select-input{font:inherit;color:inherit}uni-button{cursor:pointer;touch-action:manipulation}.anchor{color:var(--brand)}uni-button{border:0;background:none}uni-button:focus-visible,.anchor:focus-visible,uni-input:focus-visible,uni-textarea:focus-visible,.select-input:focus-visible{outline:3px solid var(--focus);outline-offset:3px}[hidden]{display:none!important}uni-button:disabled{background:var(--disabled)!important;color:var(--muted)!important;cursor:not-allowed;box-shadow:none}uni-button:active:not(:disabled){transform:translateY(1px)}.icon{width:24px;height:24px;flex-shrink:0;display:inline-block;vertical-align:middle}.app{max-width:440px;min-height:100dvh;margin:auto;background:var(--canvas);position:relative}.topbar{padding:16px 20px 8px;display:flex;align-items:center;justify-content:space-between;min-height:64px;gap:8px}.brand-mark{display:flex;align-items:center;gap:8px;font-size:20px;line-height:28px;font-weight:700;letter-spacing:2px}.brand-icon{height:32px;width:32px;border-radius:12px;background:var(--brand);color:var(--brand-on);display:grid;place-items:center;letter-spacing:0;font-size:18px}.profile-btn{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:24px;background:var(--surface);font-size:12px;line-height:20px;min-height:44px}.avatar{display:grid;place-items:center;width:24px;height:24px;background:var(--brand-soft);border-radius:50%;color:var(--brand);font-size:12px}.profile-btn .icon{width:16px;height:16px}.main{padding:12px 20px calc(96px + var(--safe-bottom))}.eyebrow{font-size:12px;line-height:20px;color:var(--muted);letter-spacing:1px}.h1,.h2,.h3,.p{margin:0}.h1{font-size:24px;line-height:32px;font-weight:700;letter-spacing:-.5px}.h2{font-size:18px;line-height:28px;font-weight:700}.h3{font-size:16px;line-height:24px;font-weight:700}.page-heading{margin-bottom:24px}.page-heading .h1{margin-top:4px}.page-heading .p{color:var(--muted);margin-top:8px;font-size:14px;line-height:24px}.section-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:24px 0 12px}.section-head:first-child{margin-top:0}.link-button{color:var(--brand);font-size:12px;min-height:44px;display:inline-flex;align-items:center;gap:4px;padding:8px 0}.link-button .icon{width:16px;height:16px}.hero{position:relative;overflow:hidden;background:var(--brand);color:var(--brand-on);padding:24px;border-radius:24px}.hero .eyebrow{color:var(--brand-on);opacity:.8}.hero .h2{font-size:24px;line-height:32px;margin-top:8px;max-width:220px}.hero .p{margin:8px 0 20px;max-width:220px;font-size:12px;line-height:20px;opacity:.85}.hero-symbol{position:absolute;right:24px;top:24px;width:64px;height:76px;opacity:.65;pointer-events:none}.leaf{position:absolute;width:24px;height:44px;border-radius:100% 0;background:var(--gold);transform:rotate(-12deg);left:28px;top:0}.leaf:nth-child(2){top:28px;left:4px;transform:rotate(105deg);background:var(--brand-soft)}.leaf-stem{position:absolute;left:31px;top:20px;height:60px;width:2px;background:var(--brand-soft);transform:rotate(18deg)}.hero-stats{display:flex;gap:24px;margin-bottom:20px}.hero-stats .strong{display:block;font-size:28px;line-height:36px;font-weight:500}.btn{min-height:48px;border-radius:16px;padding:12px 20px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:14px;line-height:24px;font-weight:600;transition:background .15s}.btn.primary{background:var(--brand);color:var(--brand-on)}.btn.primary:hover{background:var(--brand-hover)}.btn.secondary{background:var(--brand-soft);color:var(--brand)}.btn.light{background:var(--surface);color:var(--brand)}.btn.light:hover{background:var(--brand-soft)}.btn.ghost{background:transparent;color:var(--muted)}.btn.danger{background:var(--danger-soft);color:var(--danger)}.full{width:100%}.card{background:var(--surface);padding:20px;border-radius:var(--radius)}.quick-record{display:flex;align-items:center;gap:12px;width:100%;text-align:left}.quick-record .p{font-size:12px;line-height:20px;color:var(--muted);margin-top:4px}.icon-box{width:48px;height:48px;display:grid;place-items:center;border-radius:16px;background:var(--warm);color:var(--warm-ink);flex-shrink:0}.tag{display:inline-flex;gap:4px;align-items:center;padding:4px 8px;font-size:12px;line-height:16px;border-radius:8px;background:var(--brand-soft);color:var(--brand);white-space:nowrap}.tag.warm{background:var(--warm);color:var(--warm-ink)}.tag.neutral{background:var(--canvas);color:var(--muted)}.word-preview{display:flex;gap:8px;flex-wrap:wrap}.word-chip{min-height:44px;border-radius:12px;padding:8px 12px;background:var(--surface);font-size:14px;line-height:24px;text-align:left}.word-chip .small{display:block;color:var(--muted);font-size:12px;line-height:20px}.soft-note{margin-top:16px;color:var(--muted);font-size:12px;line-height:20px}.row{display:flex;align-items:center;gap:12px}.spread{justify-content:space-between}.search{position:relative;display:flex;align-items:center;gap:8px;background:var(--surface);padding:0 12px;border-radius:16px;margin-bottom:16px;min-height:48px}.search uni-input{border:0;padding:12px 0;width:100%;background:none;min-width:0;outline-offset:0}.search .icon{color:var(--muted);width:20px;height:20px}.segments{display:flex;gap:8px;margin-bottom:16px;flex-wrap:wrap}.segment{padding:8px 12px;min-height:44px;border-radius:12px;background:var(--surface);color:var(--muted);font-size:12px;line-height:20px;white-space:nowrap}.segment.active{background:var(--brand);color:var(--brand-on)}.word-list{border-radius:20px;background:var(--surface);overflow:hidden}.word-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px;width:100%;text-align:left;min-height:80px;border-bottom:1px solid var(--line)}.word-row:last-child{border:0}.word-row:hover{background:var(--brand-soft)}.word-row .strong{font-size:18px;line-height:28px;font-weight:600;display:block}.word-row .p{font-size:12px;line-height:20px;color:var(--muted);margin-top:4px}.word-row .icon{width:16px;height:16px;color:var(--muted)}.head-action{width:44px;height:44px;display:grid;place-items:center;border-radius:16px;background:var(--brand);color:var(--brand-on)}.empty{padding:32px 20px;text-align:center}.empty .icon-box{margin:0 auto 16px}.empty .p{color:var(--muted);margin:8px 0 16px;line-height:24px}.back-header{display:flex;align-items:center;gap:8px;padding:12px 12px 0;min-height:64px}.icon-button{width:44px;height:44px;display:grid;place-items:center;border-radius:16px}.icon-button:hover{background:var(--brand-soft)}.back-header .grow{font-size:14px;line-height:24px}.word-detail{padding:24px}.word-title{display:flex;align-items:center;justify-content:space-between;gap:8px}.word-title .h1{font-size:36px;line-height:44px;letter-spacing:-1px;overflow-wrap:anywhere}.phonetic{margin:8px 0 16px;color:var(--muted);font:14px/24px Arial,sans-serif}.meaning{font-size:18px;line-height:28px}.example{margin-top:24px;padding-top:20px;border-top:1px solid var(--line)}.example .english{font:18px/28px Arial,sans-serif;letter-spacing:.1px}.example .small{margin-top:8px}.memory-box{margin-top:12px;min-height:132px}.memory-box .h3{margin-bottom:12px}.memory-box .p{font-size:14px;line-height:24px;color:var(--body)}.memory-tabs{margin-top:24px;margin-bottom:0}.spelling-style{letter-spacing:2px}.review-page{padding-bottom:32px}.practice-progress{display:flex;align-items:center;gap:12px;margin:8px 0 20px}.progress-track{height:4px;background:var(--line);border-radius:4px;flex:1;overflow:hidden}.progress-fill{height:100%;background:var(--brand);transition:width .2s}.practice-card{text-align:center;padding:32px 24px;min-height:272px;display:flex;flex-direction:column;justify-content:center}.practice-card .h1{font:500 40px/48px Arial,sans-serif;margin:20px 0 12px;letter-spacing:-1px;overflow-wrap:anywhere}.practice-card .spelling-meaning{font:700 24px/32px sans-serif;letter-spacing:0}.practice-hint{margin-top:16px;color:var(--warm-ink);background:var(--warm);padding:12px;border-radius:12px;line-height:24px}.practice-answer{font-size:18px;line-height:28px;margin-top:8px}.rating-stack{display:grid;gap:12px;margin-top:24px}.rating-stack .btn{justify-content:space-between;text-align:left;min-height:56px}.practice-controls{display:flex;justify-content:center;margin-top:12px}.field{margin-top:16px}.field uni-label{display:block;font-size:14px;line-height:24px;margin-bottom:8px;font-weight:600}.input{width:100%;border:1px solid var(--line);border-radius:12px;background:var(--surface);padding:12px;min-height:48px;line-height:24px}.input:focus{border-color:var(--brand)}uni-textarea.input{min-height:88px;resize:vertical}.spelling-audio{align-self:center;color:var(--brand);background:transparent}.spelling-audio:hover{background:transparent;color:var(--brand-hover)}.spell-input{display:block;width:100%;min-height:48px;padding:8px 4px;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;text-align:center;font:20px/28px Arial,sans-serif;letter-spacing:1px}.spell-input:focus-visible{outline:0;border-bottom-color:var(--brand)}.spell-input:disabled{color:var(--muted);opacity:1}.error{font-size:12px;line-height:20px;color:var(--danger);margin-top:8px}.success-text{color:var(--brand);font-size:14px;line-height:24px;margin-top:12px}.session-next-actions{display:grid;gap:8px}.session-library-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:16px}.word-practice-link{display:flex;justify-content:flex-end;margin:-8px 0 8px}.summary .summary-daily-progress{font-size:12px;line-height:20px;color:var(--muted);margin-top:12px}.summary-icon{width:64px;height:64px;margin:0 auto 20px;display:grid;place-items:center;border-radius:24px;background:var(--brand-soft);color:var(--brand)}.summary-icon .icon{width:32px;height:32px}.summary{padding-top:32px;text-align:center}.summary .p{margin-top:12px;color:var(--muted)}.result-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:24px 0}.result-grid .strong{font-size:28px;line-height:36px;display:block}.record-list{display:grid;gap:12px}.record-card{padding:16px;text-align:left;width:100%;display:block}.record-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px}.record-bottom{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.record-dot{width:4px;height:4px;border-radius:50%;background:var(--muted)}.record-date{font-size:12px;color:var(--muted);line-height:20px}.record-note{white-space:pre-wrap;overflow-wrap:anywhere;color:var(--body);margin-top:12px}.record-photo{width:72px;height:72px;-o-object-fit:cover;object-fit:cover;border-radius:12px;background:var(--canvas)}.record-photos{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.photo-input{display:flex;align-items:center;gap:8px;min-height:48px;padding:12px;border:1px dashed var(--line);border-radius:12px;position:relative;cursor:pointer;color:var(--muted);font-size:12px}.photo-input uni-input{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.photo-remove{position:relative;display:inline-flex}.photo-remove uni-button{position:absolute;right:0;top:0;background:var(--surface);border-radius:8px;min-width:28px;min-height:28px;font-size:16px;line-height:20px}.my-card{display:flex;align-items:center;gap:16px}.my-card .avatar{height:56px;width:56px;border-radius:20px;font-size:20px}.my-card .p{margin-top:4px;color:var(--muted);font-size:12px;line-height:20px}.learning-context{margin-bottom:16px;padding:16px}.learning-context .h3{margin-top:4px}.learning-context>.p{margin-top:8px;color:var(--body);font-size:12px;line-height:20px;overflow-wrap:anywhere}.context-foot{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:12px}.context-note{color:var(--muted)!important;font-size:12px;line-height:20px;margin-top:8px;overflow-wrap:anywhere}.word-goals{margin-top:16px;margin-bottom:16px;padding:16px}.word-goals .row{align-items:flex-start;gap:8px}.word-goals .h3{font-size:14px;line-height:24px;padding-top:8px}.word-goals .link-button{flex-shrink:0}.goal-tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.word-goals>.p{overflow-wrap:anywhere}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.form-grid>.field{min-width:0}.form-grid uni-input,.form-grid .select-input{width:100%;min-width:0}.goal-choices{border:0;padding:0;margin:20px 0 8px;min-width:0}.goal-option{display:flex;align-items:center;gap:12px;min-height:64px;padding:12px;margin-bottom:8px;background:var(--canvas);border-radius:12px;cursor:pointer}.goal-option:hover{background:var(--brand-soft)}.goal-option:has(uni-input:checked){background:var(--brand-soft)}.goal-option uni-input{height:20px;width:20px;accent-color:var(--brand);flex-shrink:0}.goal-option .small{display:block;color:var(--muted);font-size:12px;line-height:20px;margin-top:4px}.settings-list{margin-top:24px;border-radius:20px;overflow:hidden;background:var(--surface)}.setting-row{padding:16px;width:100%;text-align:left;display:flex;align-items:center;gap:12px;min-height:64px;border-bottom:1px solid var(--line)}.setting-row:last-child{border:0}.setting-row .icon{width:20px;height:20px}.setting-row .small{color:var(--muted);font-size:12px;line-height:20px}.danger-text{color:var(--danger)}.setup-section{margin-top:16px;min-width:0}.setup-section>.summary{display:flex;align-items:center;gap:12px;min-height:64px;padding:12px;border-radius:12px;background:var(--canvas);cursor:pointer;list-style:none}.setup-section>.summary::-webkit-details-marker{display:none}.setup-section>.summary:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.setup-section>.summary .small{display:block;color:var(--muted);font-size:12px;line-height:20px;margin-top:4px}.setup-section[open]>.summary{background:var(--brand-soft)}.setup-section[open]>.summary>.icon:last-child{transform:rotate(180deg)}.setup-actions{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.setup-actions>.btn{flex:1 1 120px;padding-left:12px;padding-right:12px}.setup-volume{margin-top:12px}.setup-suggestion{background:var(--canvas);border-radius:12px;padding:16px;margin-top:16px;overflow-wrap:anywhere}.setup-suggestion-row{display:flex;align-items:flex-start;gap:12px;justify-content:space-between;margin-top:8px}.setup-suggestion-row>.strong{text-align:right;min-width:0}.nav-voice{color:var(--brand)}.nav-voice .icon{background:var(--brand-soft);border-radius:12px;width:32px;height:32px;padding:4px;margin-top:-4px}.record-page{padding-bottom:calc(160px + var(--safe-bottom))}.record-create{position:fixed;right:max(16px,calc((100vw - 440px)/2 + 16px));bottom:calc(96px + var(--safe-bottom));width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:var(--brand);color:var(--brand-on);box-shadow:var(--shadow);z-index:6}.record-create:hover{background:var(--brand-hover)}.dialog-open .record-create{visibility:hidden}.nav-voice[data-state=permission] .icon{outline:2px solid var(--focus);outline-offset:2px}.voice-result{width:100%;font-size:12px;line-height:20px;color:var(--muted);margin-top:8px;text-align:center}.voice-result-actions{display:flex;align-items:center;justify-content:center;gap:4px}.voice-result-actions uni-button,.voice-result-actions .anchor{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;font-size:12px;line-height:20px;color:var(--brand);min-width:44px;min-height:44px;padding:12px 8px;text-decoration:none;white-space:nowrap;border-radius:12px}.voice-result-actions [data-action=voice-save]{background:var(--brand-soft);font-weight:600}.voice-result-actions uni-button:hover,.voice-result-actions .anchor:hover{background:var(--brand-soft)}.voice-result uni-audio,.record-audio{display:block;width:100%;max-width:100%;margin-top:8px}.voice-result uni-audio[hidden]{display:none}.voice-result>.p{margin-top:4px;overflow-wrap:anywhere}.voice-feedback{position:fixed;bottom:0;left:50%;width:100%;max-width:440px;height:2px;transform:translate(-50%);z-index:50;pointer-events:none;overflow:hidden;background:var(--brand-soft)}.voice-feedback[data-state=idle],.voice-feedback[data-state=listening]{display:none}.voice-feedback:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,var(--brand-soft),var(--brand),var(--gold),var(--brand),var(--brand-soft))}.voice-feedback[data-state=processing]:after{animation:voice-processing 1.2s ease-in-out infinite}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;-webkit-clip-path:inset(50%);clip-path:inset(50%);white-space:nowrap}@keyframes voice-listening{0%{opacity:.3}to{opacity:1}}@keyframes voice-processing{0%{transform:translate(-100%)}to{transform:translate(100%)}}.modal-root:empty{display:none}.modal-root{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:flex;align-items:flex-end;justify-content:center}.backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--overlay)}.sheet{position:relative;width:100%;max-width:440px;max-height:92dvh;background:var(--surface);border-radius:24px 24px 0 0;box-shadow:var(--shadow);display:flex;flex-direction:column;padding-bottom:var(--safe-bottom);overflow:hidden}.sheet-handle{width:32px;height:4px;border-radius:4px;background:var(--line);margin:12px auto 0;flex-shrink:0}.sheet-header{display:flex;align-items:center;justify-content:space-between;padding:8px 20px;flex-shrink:0}.sheet-body{padding:4px 20px 20px;overflow-y:auto;overscroll-behavior:contain}.sheet-footer{padding:12px 20px 16px;border-top:1px solid var(--line);background:var(--surface);flex-shrink:0}.sheet-header .h2{line-height:28px}.sheet .segments{margin-top:12px;margin-bottom:0}.sheet-body>.field:first-child{margin-top:0}.profile-choice{padding:16px;border-radius:16px;background:var(--canvas);margin-bottom:12px;width:100%;text-align:left;display:flex;align-items:center;gap:12px;min-height:64px}.profile-choice.active{background:var(--brand-soft)}.profile-choice .p{font-size:12px;line-height:20px;color:var(--muted)}.profile-settings .profile-choice{padding:12px;margin-bottom:8px;min-height:64px;border-radius:12px}.profile-settings .profile-main-settings{margin-top:8px}.profile-settings .setting-row{padding:12px 8px;min-height:56px;border-radius:0}.profile-settings .setting-row .grow{min-width:0;overflow-wrap:anywhere}.profile-settings .setting-row .small{display:block;margin-top:4px}.profile-more{margin-top:8px}.profile-more>.summary{display:flex;align-items:center;justify-content:space-between;min-height:48px;padding:12px 8px;list-style:none;color:var(--muted);cursor:pointer}.profile-more>.summary::-webkit-details-marker{display:none}.profile-more[open]>.summary>.icon{transform:rotate(180deg)}.profile-more>.summary:hover,.profile-settings .setting-row:hover{background:var(--canvas)}.profile-more>.summary:focus-visible{outline:3px solid var(--focus);outline-offset:-3px;border-radius:8px}#learning-context-form [hidden]{display:none}.toast{position:fixed;left:50%;bottom:calc(96px + var(--safe-bottom));transform:translate(-50%);max-width:calc(100% - 40px);width:-moz-max-content;width:max-content;background:var(--ink);color:var(--brand-on);padding:12px 16px;border-radius:12px;z-index:40;font-size:12px;line-height:20px;box-shadow:var(--shadow);opacity:0;pointer-events:none;transition:opacity .15s}.toast.visible{opacity:1}.busy:before{content:"";display:inline-block;width:16px;height:16px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width:359px){.topbar{padding-right:16px;padding-left:16px}.main{padding-left:16px;padding-right:16px}.hero{padding:20px}.hero-symbol{right:16px;width:48px}.hero .h2{max-width:176px;font-size:20px;line-height:28px}.hero .p{max-width:176px}.profile-btn{padding-left:8px;padding-right:8px}.segments{gap:4px}.segment{padding-right:8px;padding-left:8px}.sheet-header,.sheet-body,.sheet-footer{padding-right:16px;padding-left:16px}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.wordbook-choice{display:flex;align-items:center;gap:12px;width:100%;min-height:64px;padding:12px 16px;margin-bottom:12px;background:var(--surface);border-radius:16px;text-align:left}.wordbook-choice .grow{min-width:0}.wordbook-choice .strong,.wordbook-choice .small{display:block}.wordbook-choice .small{font-size:12px;line-height:20px;color:var(--muted)}.wordbook-choice:hover{background:var(--brand-soft)}:root,uni-page-body{--syllable-first:#1d4ed8;--syllable-second:#b83c00;--syllable-third:#08723b;--syllable-first-soft:#e3edff;--syllable-second-soft:#ffe9d5;--syllable-third-soft:#dcfce7;--syllable-first-hover:#d4e3ff;--syllable-second-hover:#ffe0c2;--syllable-third-hover:#bbf7d0;--phonics-selected:#eaf1e8;--phonics-answer:#f6eddc}.syllable-tone-0{color:var(--syllable-first);--syllable-soft:var(--syllable-first-soft);--syllable-hover:var(--syllable-first-hover)}.syllable-tone-1{color:var(--syllable-second);--syllable-soft:var(--syllable-second-soft);--syllable-hover:var(--syllable-second-hover)}.syllable-tone-2{color:var(--syllable-third);--syllable-soft:var(--syllable-third-soft);--syllable-hover:var(--syllable-third-hover)}.syllable-word{display:block}.syllable-ipa{font-size:18px;line-height:28px}.syllable-key{display:flex;gap:8px 12px;flex-wrap:wrap;font-size:12px;line-height:20px;margin:8px 0}.phonics-parts{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}.phonics-part{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:8px 12px;min-width:52px;min-height:72px;border-radius:12px;background:var(--canvas);border:1px solid transparent}.phonics-part .small{font-size:10px;line-height:16px}.phonics-part:is(uni-button){background:var(--brand-soft);border-color:transparent;cursor:pointer}.phonics-part:is(uni-button):hover{background:var(--phonics-selected)}.phonics-entry{width:100%;display:flex;gap:12px;align-items:center;text-align:left;margin:16px 0;padding:16px;background:var(--brand-soft);border:0;border-radius:16px;color:var(--ink)}.phonics-entry .strong{display:block;font-size:16px;line-height:24px}.phonics-entry .small{display:block;color:var(--body);margin-top:4px}.phonics-entry-mark{font:700 22px/28px Arial;color:var(--brand);padding:8px;background:var(--surface);border-radius:12px}.phonics-page{padding-bottom:112px}.phonics-page .page-heading .p{margin-top:12px}.phonics-intro{margin-bottom:20px}.phonics-intro .p{margin-top:8px}.phonics-rule-list{display:grid;gap:12px}.phonics-rule-row{width:100%;display:flex;align-items:center;gap:12px;text-align:left;color:var(--ink);border:0;padding:16px}.phonics-rule-row .p{font-size:12px;color:var(--muted)}.phonics-rule-symbol{min-width:52px;text-align:center;color:var(--brand);font:700 24px/32px Arial}.phonics-rule-symbol .small{display:block;font:14px/24px Arial}.phonics-retry{color:var(--warm-ink);font-size:11px;white-space:nowrap}.phonics-rule-row .h3{font-size:16px}.phonics-title-sound{font:24px/32px Arial;color:var(--brand)}.phonics-example-choices{display:flex;gap:8px;flex-wrap:wrap}.phonics-example-choices .word-chip{min-width:64px}.phonics-selected{background:var(--phonics-selected)!important}.phonics-links{margin:20px 0}.phonics-links .h3{font-size:14px;margin-bottom:8px}.phonics-related{width:100%;display:flex;align-items:center;gap:12px;text-align:left;background:var(--surface);border:0;color:var(--ink);border-radius:12px;padding:12px;min-height:48px}.phonics-related .strong{color:var(--brand);font:600 16px/24px Arial}.phonics-question{margin:16px 0;padding:20px}.phonics-options{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0}.phonics-choice{flex:1;min-width:72px;font-size:20px;font-family:Arial,sans-serif}.phonics-tile{font:700 24px/32px Arial;min-width:60px}.phonics-assembly{background:var(--canvas);border-radius:12px;min-height:80px;margin-top:20px;display:flex;align-items:center;justify-content:center;padding:12px;font-size:20px;line-height:28px;text-align:center;overflow-wrap:anywhere}.phonics-answer-feedback{background:var(--phonics-answer);border-radius:12px;padding:16px}.phonics-answer-feedback .p{margin-top:8px}.phonics-score{margin:24px 0;display:flex;gap:16px;align-items:baseline}.phonics-score .small{font-size:20px;color:var(--muted)}.phonics-result-list{display:grid;gap:16px;margin-top:24px}.phonics-question .row{flex-wrap:wrap}.phonics-result-list .tag{font-size:11px}.memory-tabs .segment{min-width:44px}.phonics-parts{display:grid;grid-template-columns:repeat(var(--phonics-columns),minmax(44px,1fr));gap:4px}.phonics-part{min-width:44px;padding:8px 4px}.phonics-title-sound{margin-left:8px}.phonics-syllable-groups{display:grid;gap:4px;margin:16px 0}.phonics-syllable-group{min-width:0}.phonics-syllable-caption{font-size:12px;line-height:20px;margin-bottom:4px}.phonics-syllable-group .phonics-parts{margin:0}.phonics-page .word-detail{padding:20px}.phonics-ipa-entry{display:block;min-width:44px;min-height:44px;padding:0;margin:4px 0 0;text-align:left;border-radius:8px}.phonics-ipa-entry:hover{background:var(--brand-soft)}.phonics-ipa-hint{margin:0 0 12px}.phonics-part{padding:0;min-height:88px;align-items:stretch;overflow:hidden;background:var(--syllable-soft,var(--canvas))}.phonics-has-rule{border-color:transparent}.phonics-letter-link,.phonics-sound-link,.phonics-letter-static{display:flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;padding:0;color:inherit}.phonics-letter-link:hover,.phonics-sound-link:hover{background:var(--syllable-hover,var(--phonics-selected))}.phonics-part:focus-within{outline:3px solid currentColor;outline-offset:2px}.phonics-part uni-button:focus-visible{outline-offset:-3px}.phonics-sound-heading{font:36px/44px Arial,sans-serif;color:var(--brand)}.phonics-sound-mappings{display:grid;gap:16px}.phonics-sound-examples{margin-top:8px}.phonics-sound-example-row{display:flex;align-items:center;gap:8px}.phonics-example-word{flex:1;min-width:0;min-height:64px;display:flex;align-items:baseline;gap:12px;text-align:left;padding:12px 0}.phonics-example-word .strong{font:600 18px/28px Arial,sans-serif}.phonics-example-word .small{color:var(--muted);font-size:12px;line-height:20px}.phonics-sound-mapping>.row{gap:8px}.word-phonics{margin:16px 0}.word-phonics .h2{font-size:14px;line-height:20px}.word-phonics .phonics-parts{margin:8px 0}.phonics-word-note{margin-top:8px;line-height:20px;overflow-wrap:anywhere}.phonics-sound-static{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:44px}.phonics-silent{font-family:inherit!important;font-size:12px!important}.phonics-split{border:1px dashed currentColor}.phonics-pending{margin:12px 0}@media (max-width:359px){.phonics-parts{grid-template-columns:repeat(var(--phonics-columns-narrow),minmax(44px,1fr))}}.phonics-letter-play{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:56px;min-width:44px;padding:0;color:inherit;border-radius:8px}.phonics-play-mark{display:flex;height:12px;align-items:center}.phonics-play-mark .icon{width:12px;height:12px}.phonics-letter-play:hover{background:var(--syllable-hover)}.phonics-playable .phonics-sound-link{flex-direction:column;min-height:44px}.phonics-playable:focus-within{outline:0}[data-action=phonics-play][data-playback=playing]{background:var(--syllable-hover,var(--brand-soft));box-shadow:none}.phonics-letter-play[data-playback=playing] .phonics-play-mark{animation:phonics-audio-pulse .6s ease-in-out infinite alternate}.phonics-letter-play[data-playback=loading] .phonics-play-mark .icon{visibility:hidden}.phonics-letter-play[data-playback=loading] .phonics-play-mark{width:12px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:phonics-audio-spin .7s linear infinite}.phonics-letter-play[data-playback=error]{box-shadow:inset 0 0 0 2px var(--warm-ink)}.phonics-audio-rules{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.phonics-audio-rules .word-chip{display:flex;align-items:center;gap:4px;min-height:44px}.phonics-audio-rules .icon{width:16px;height:16px}.phonics-audio-credits{display:inline-flex;align-items:center;min-height:44px;margin-left:8px;color:var(--muted);text-decoration:underline;text-underline-offset:4px}@keyframes phonics-audio-pulse{to{opacity:.45}}@keyframes phonics-audio-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.phonics-play-mark{animation:none!important}}:root,uni-page-body{--phonics-pair-ink:var(--syllable-second);--phonics-pair-soft:var(--syllable-second-soft);--phonics-pair-hover:var(--syllable-second-hover)}.phonics-has-pair{grid-template-rows:auto 24px;row-gap:8px}.phonics-pair-bridge{grid-row:2;position:relative;min-height:24px;color:var(--phonics-pair-ink);pointer-events:none}.phonics-pair-bridge:before{content:"";position:absolute;top:0;bottom:8px;left:calc((100% - (var(--pair-span) - 1)*4px)/var(--pair-span)/2);right:calc((100% - (var(--pair-span) - 1)*4px)/var(--pair-span)/2);border:2px solid currentColor;border-top:0;border-radius:0 0 8px 8px}.phonics-part.phonics-paired-letter{color:var(--phonics-pair-ink);background:var(--phonics-pair-soft);--syllable-hover:var(--phonics-pair-hover);border-color:transparent}.phonics-paired-letter[data-playback=playing]{background:var(--phonics-pair-hover);box-shadow:none}.phonics-note-link{display:flex;align-items:center;gap:8px;width:100%;min-height:44px;text-align:left;color:var(--phonics-pair-ink);padding:4px 0;border-radius:8px}.phonics-note-link .icon{width:16px;height:16px;flex-shrink:0}.phonics-note-link:hover{background:var(--phonics-pair-soft)}:root,uni-page-body{--phonics-target-ink:var(--syllable-second);--phonics-target-soft:var(--syllable-second-soft)}.phonics-sound-heading,.phonics-sound-mapping .h2{color:var(--phonics-target-ink)}.phonics-spelling-target{color:var(--phonics-target-ink);background:transparent;font:inherit}.phonics-rule-page .page-heading .h1,.phonics-rule-page .phonics-title-sound{color:var(--phonics-target-ink)}.phonics-rule-word .phonics-part{color:var(--body);background:var(--canvas);--syllable-hover:var(--brand-soft)}.phonics-rule-word .phonics-part.phonics-rule-target{color:var(--phonics-target-ink);background:var(--phonics-target-soft);--syllable-hover:var(--syllable-second-hover)}.phonics-rule-target .strong{font-weight:800}.phonics-rule-word .phonics-syllable-caption{color:var(--muted)}.phonics-example-choices .word-chip{position:relative;isolation:isolate;display:inline-flex;align-items:center;justify-content:center;gap:0;min-width:44px;min-height:44px;padding:4px 8px;border-radius:8px;line-height:20px;text-align:center;white-space:nowrap;color:var(--ink);background:transparent}.phonics-example-choices .word-chip:before{content:"";position:absolute;top:4px;right:0;bottom:4px;left:0;border-radius:inherit;background:var(--surface);z-index:-1;pointer-events:none}.phonics-example-choices .word-chip.phonics-selected{background:transparent!important}.phonics-example-choices .word-chip.phonics-selected:before{background:var(--phonics-selected)}.upcoming-review{margin-top:16px}.review-page{padding-bottom:calc(96px + var(--safe-bottom))}.review-upcoming-row{display:flex;align-items:center;gap:8px;width:100%;min-height:64px;padding:12px 0;text-align:left}.review-upcoming-row .grow{min-width:0}.review-upcoming-row .strong{display:block;overflow-wrap:anywhere}.review-upcoming-row .small,.review-plan-row .small{display:block;font-size:12px;line-height:20px;color:var(--muted)}.review-upcoming-row .icon{width:16px;height:16px;color:var(--muted)}.review-upcoming-row:hover{color:var(--brand);background:var(--brand-soft);border-radius:8px}.review-upcoming-row:focus-visible{outline:3px solid var(--focus);outline-offset:0;border-radius:8px}.review-plan{margin-top:16px}.review-plan-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0}.review-plan-row>.strong{font-size:12px;line-height:20px;text-align:right;flex-shrink:0}@media (max-width:359px){.review-plan:not(.summary-plan) .review-plan-row{flex-direction:column;align-items:flex-start;gap:4px}.review-plan:not(.summary-plan) .review-plan-row>.strong{text-align:left}}.review-plan-note{margin-top:8px}.summary-plan{text-align:left;margin:16px 0 24px}.new-word-page{padding-top:12px;padding-bottom:16px}.learn-progress{display:flex;align-items:center;gap:16px;font-size:12px;line-height:20px;color:var(--muted);margin-bottom:8px}.learn-source{margin-bottom:12px;overflow-wrap:anywhere}.learn-word{padding:20px;border-radius:20px}.learn-word .word-title .h1{font-size:40px;line-height:48px}.learn-word .phonics-ipa-hint{margin-bottom:12px}.learn-word .example{margin-top:16px;padding-top:16px}.learn-word .example .english{font-size:18px;line-height:28px}.learn-tips{margin-top:12px}.learn-tips .summary{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:48px;cursor:pointer;font-size:14px;line-height:24px;color:var(--brand);list-style:none}.learn-tips .summary::-webkit-details-marker{display:none}.learn-tips .icon{width:16px;height:16px}.learn-tips[open] .summary .icon{transform:rotate(180deg)}.learn-tips .summary:focus-visible{outline:3px solid var(--focus);outline-offset:3px;border-radius:8px}.learn-tip{background:var(--brand-soft);padding:12px 16px;border-radius:12px;margin-bottom:8px}.learn-tip .h2{font-size:14px;line-height:24px}.learn-tip .p{font-size:14px;line-height:24px;margin-top:4px;overflow-wrap:anywhere}.new-word-page>.word-study-times{margin-top:12px}.learn-actions{position:sticky;bottom:0;background:var(--canvas);padding:16px 0 8px;margin-top:8px}.learn-actions .btn{min-height:52px}@media (max-width:359px){.learn-word{padding:16px}.learn-word .word-title .h1{font-size:36px;line-height:44px}}.review-page:not(.new-word-page){padding-bottom:16px;padding-top:8px}.review-page .practice-progress{margin:0 0 8px;gap:8px;min-height:24px}.review-page .segments{margin-bottom:8px}.practice-card{padding:16px;min-height:0}.practice-word{display:flex;align-items:center;justify-content:center;gap:8px;margin:8px 0}.practice-word .h1{margin:0;min-width:0;font-size:36px;line-height:44px;flex:0 1 auto}.practice-word .icon-button{flex-shrink:0}.practice-card .practice-answer{margin-top:4px}.practice-card .small{margin-top:4px!important}.review-page .rating-stack{margin-top:12px;gap:4px}.review-page .rating-stack .btn{min-height:44px;padding:8px 12px}.review-page .practice-controls{margin-top:4px}.review-page>.soft-note{margin-top:8px}.summary{padding-top:16px;padding-bottom:24px}.summary>.p{font-size:12px;line-height:20px;margin-top:8px}.summary .result-grid{margin:12px 0;gap:8px}.summary .result-grid .strong{font-size:24px;line-height:32px}.summary .word-checkin-notice{margin-top:0;min-height:44px}.summary .summary-daily-progress{margin:4px 0 12px}.summary-options,.summary-details{text-align:left;margin-top:8px}.summary-options>.summary,.summary-details>.summary{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;font-size:12px;color:var(--brand);cursor:pointer;list-style:none}.summary-options>.summary::-webkit-details-marker,.summary-details>.summary::-webkit-details-marker{display:none}.summary-options[open]>.summary>.icon,.summary-details[open]>.summary>.icon{transform:rotate(180deg)}.summary .summary-plan{margin:8px 0}.session-next-actions{gap:8px}@media (max-width:359px){.practice-card{padding:12px}.practice-word .h1{font-size:32px;line-height:40px}.practice-card .field{margin-top:8px}.practice-card .spell-input{min-height:44px}.summary{padding-top:12px}}body{min-height:100dvh;height:100dvh;overflow:hidden;display:flex;flex-direction:column}.app{width:100%;flex:1;height:auto;min-height:0;overflow-y:auto;scrollbar-width:none}.app::-webkit-scrollbar{display:none}.topbar uni-button.brand-mark{min-height:44px;padding:0}.segments>.segment{min-width:44px}.home-page{padding-top:8px;padding-bottom:24px}.home-study-heading{margin:0 0 12px}.home-study-heading .h1{font-size:18px;line-height:28px}.home-study-heading .p{margin-top:4px}.home-shortcuts{margin-top:16px}.home-review-source,.home-recover{margin-top:4px}#home-unit-form{margin-bottom:8px}#home-unit-form .btn{margin-top:12px}.sheet-header .h2{flex:1;min-width:0}body[data-view=reading-task] .voice-dock{display:none}.home-today{display:grid;gap:12px;margin-bottom:12px}.home-today-card .h2{font-size:18px;line-height:28px}.home-today-card .btn{padding:8px 12px;min-height:44px;flex-shrink:0;gap:4px}.home-today-card .btn .icon{width:16px;height:16px}.home-word-preview{font-size:14px;line-height:24px;overflow-wrap:anywhere}.home-batch-note,.home-study-empty{font-size:12px;line-height:20px;color:var(--muted);margin-top:8px}.home-batch-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:4px}.home-batch-footer .p{font-size:12px;line-height:20px;color:var(--muted)}.home-batch-footer uni-button{white-space:nowrap;flex-shrink:0}.home-study-pace{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:4px;font-size:12px;line-height:20px;color:var(--muted)}.home-today-card>.row+.home-word-preview{margin-top:8px}.today-list-start{display:flex;align-items:center;gap:12px;margin:0 0 16px}.today-word-source{display:block;font-size:12px;line-height:20px;color:var(--muted);margin:4px 0}.word-detail-source{margin-top:8px;line-height:20px;overflow-wrap:anywhere}.home-textbook-topic{display:block;margin-top:4px;font-size:12px;line-height:20px}.home-textbook-info>.p{line-height:20px}.home-textbook-sources{margin-top:16px}.home-textbook-sources .h3{font-size:14px;line-height:24px}.home-textbook-sources .anchor{display:flex;align-items:center;gap:8px;min-height:44px;font-size:12px;line-height:20px;color:var(--brand);overflow-wrap:anywhere}.home-textbook-sources .icon{width:16px;height:16px;flex-shrink:0}.home-shortcuts{margin-bottom:16px}.home-shortcuts .section-head{margin:0 0 8px}.home-shortcuts .h2,.home-recent .h2{font-size:16px;line-height:24px}.home-task-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.home-task-tile{position:relative;display:flex;align-items:center;gap:8px;min-height:88px;padding:16px 12px;background:var(--surface);border-radius:24px;text-align:left;width:100%}.home-task-tile:nth-child(1){border-bottom-right-radius:8px}.home-task-tile:nth-child(2){border-bottom-left-radius:8px}.home-task-tile:nth-child(3){border-top-right-radius:8px}.home-task-tile:nth-child(4){border-top-left-radius:8px}.home-task-tile .grow{min-width:0}.home-task-tile .strong{display:block;font-size:14px;line-height:24px}.home-task-tile .small{display:block;font-size:12px;line-height:20px;color:var(--muted);margin-top:4px;overflow-wrap:anywhere}.home-task-icon{color:var(--brand);padding-top:2px}.home-task-icon .icon{width:20px;height:20px}.home-pinned{position:absolute;right:8px;top:4px;font-size:10px;line-height:16px;color:var(--muted)}.home-task-tile:hover,.home-all-task:hover,.home-recent-row:hover{background:var(--brand-soft)}.home-task-links{display:flex;align-items:center;gap:4px}.home-task-links .icon-button{color:var(--brand)}.home-task-links .icon-button .icon{width:20px;height:20px}.home-next-row{display:flex;align-items:center;gap:8px;min-height:48px;width:100%;text-align:left;font-size:12px;color:var(--muted)}.home-next-row .icon{width:16px;height:16px}.home-next-row .strong{color:var(--brand);font-weight:500}.home-recent .section-head{margin:8px 0}.home-recent-row{display:flex;align-items:center;gap:12px;min-height:76px;background:var(--surface);border-radius:16px;padding:12px;width:100%;text-align:left}.home-recent-row .grow{min-width:0}.home-recent-row .strong{display:block;font-size:14px;line-height:24px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-recent-row .small{display:block;font-size:12px;line-height:20px;color:var(--muted)}.home-recent-row>.icon{width:16px;height:16px}.home-page .learning-context{margin-top:16px;margin-bottom:0;padding:12px 16px}.home-page .learning-context .eyebrow,.home-page .learning-context>.p{display:none}.home-page .learning-context .h3{font-size:14px;line-height:24px;margin:0}.home-page .learning-context .small{font-size:10px}.home-all-list{display:grid;gap:8px}.home-all-task{display:flex;align-items:center;gap:12px;padding:12px;width:100%;text-align:left;border-radius:16px;background:var(--canvas);min-height:76px}.home-all-task .grow{min-width:0}.home-all-task .strong,.home-all-task .small{display:block}.home-all-task .small{font-size:12px;line-height:20px;color:var(--muted)}.home-all-task>.icon{width:16px;height:16px}.home-library-links{display:flex;flex-wrap:wrap;gap:16px;margin-top:8px}.home-pin-options{border:0;margin:20px 0 16px;padding:0;min-width:0}.home-pin-options uni-label{display:flex;gap:12px;align-items:center;min-height:48px;cursor:pointer}.home-pin-options uni-input{width:20px;height:20px;accent-color:var(--brand)}.home-profile-links{margin-top:16px}.home-profile-links .setting-row{border-radius:12px}.voice-dock{position:relative;flex-shrink:0;display:flex;flex-direction:column;align-items:center;width:64px;min-height:64px;margin:8px auto calc(16px + var(--safe-bottom));z-index:6}.voice-dock.has-result{width:calc(100% - 32px);max-width:408px}.voice-dock .nav-voice{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;flex-shrink:0;width:64px;height:64px;border-radius:50%;background:var(--brand-soft);color:var(--brand);transition:background .15s,color .15s}.voice-dock .nav-voice .icon{background:none;width:24px;height:24px;padding:0;margin:0}.voice-dock .nav-voice:hover{background:var(--surface)}.voice-dock .voice-wave{display:none;width:40px;height:24px;flex-shrink:0;overflow:hidden;pointer-events:none}.voice-dock .nav-voice[data-state=recording]{background:var(--brand);color:var(--brand-on)}.voice-dock .nav-voice[data-state=recording]>.icon{display:none}.voice-dock .nav-voice[data-state=recording]>.voice-wave{display:block}@keyframes voice-button-wave{0%{transform:translate(0)}to{transform:translate(-20px)}}.dialog-open .voice-dock{visibility:hidden}.record-create{bottom:calc(20px + var(--safe-bottom))}.record-page{padding-bottom:calc(112px + var(--safe-bottom))}.voice-result-open .record-create{bottom:calc(var(--voice-result-space) + 16px + var(--safe-bottom))}.voice-result-open .toast{bottom:calc(var(--voice-result-space) + 80px + var(--safe-bottom))}.home-next-review{margin-top:8px}.home-next-row .strong{display:flex;align-items:center;gap:4px;white-space:nowrap}.word-repair{padding:20px;margin-top:16px}.word-repair>.p{margin-top:8px}.repair-actions{display:grid;gap:8px;margin-top:16px}.repair-actions>.btn{width:100%}.confirm-meaning{display:flex;gap:12px;align-items:flex-start;margin-top:16px;padding:8px 0;min-height:48px;cursor:pointer}.confirm-meaning uni-input{width:20px;height:20px;accent-color:var(--brand);flex-shrink:0}.record-meta{display:flex;align-items:center;gap:16px;margin-bottom:16px}.record-meta .field{margin:0;flex:1}.record-meta>.p{flex-shrink:0;margin-top:24px}.record-more{margin-top:16px}.record-more .summary{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:48px;color:var(--brand);cursor:pointer;list-style:none}.record-more .summary::-webkit-details-marker{display:none}.record-more[open] .summary .icon{transform:rotate(180deg)}.record-word-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:8px}.record-word-choice{display:flex;align-items:center;gap:8px;min-height:44px;min-width:0;padding:8px;background:var(--canvas);border-radius:12px;cursor:pointer}.record-word-choice uni-input{width:20px;height:20px;flex-shrink:0;accent-color:var(--brand)}.record-close-prompt{margin-top:12px;font-size:12px;line-height:20px}.record-close-prompt[hidden]{display:none}.record-close-prompt .row{margin-top:8px;gap:8px}.record-close-prompt .btn{flex:1;min-width:0;padding:12px 8px;font-size:12px}.study-order-row{display:flex;align-items:center;gap:12px;margin:16px 0 4px}.study-order-row uni-label{font-size:12px;color:var(--muted);flex-shrink:0}.study-order-row .select-input{flex:1;min-width:0}.study-order-note{margin-bottom:16px;line-height:20px}.textbook-plan{margin-bottom:16px;padding:16px}.textbook-plan .context-note{margin-top:8px}.word-study-times{display:grid;gap:4px;margin-top:8px;font-size:12px;line-height:20px;color:var(--muted)}.word-row{display:grid;grid-template-columns:minmax(0,1fr) auto 16px;gap:0 12px;align-items:start}.word-row .grow{display:contents}.word-row .strong{grid-column:1;grid-row:1;overflow-wrap:anywhere}.word-row .p{grid-column:1/-1;grid-row:2}.word-row .word-study-times{grid-column:1/-1;grid-row:3}.word-row .tag{grid-column:2;grid-row:1;flex-shrink:0;margin-top:4px}.word-row>.icon{grid-column:3;grid-row:1;margin-top:6px}#setup-general-wordbook[hidden]{display:none}.textbook-source{margin-top:8px}.textbook-source .summary{min-height:44px;display:flex;align-items:center;color:var(--brand);cursor:pointer}.textbook-source .p{margin-top:8px;overflow-wrap:anywhere}.textbook-source .anchor{display:inline-flex;align-items:center;min-height:44px;color:var(--brand)}.textbook-option-label{display:inline-block;white-space:nowrap}@media (max-width:359px){.home-task-tile{padding:12px;gap:8px;min-height:88px}}.activity-page .page-heading{margin-bottom:16px}.activity-list{display:grid;gap:12px;margin-top:16px}.activity-summary{margin-top:16px}.activity-task-row{display:flex;align-items:center;gap:4px;background:var(--surface);border-radius:16px}.activity-task-open{display:flex;align-items:center;gap:12px;min-width:0;flex:1;padding:16px;text-align:left;border-radius:16px;color:var(--ink)}.activity-task-open .grow{min-width:0}.activity-task-open .strong{display:block;font-size:14px;line-height:24px;overflow-wrap:anywhere}.activity-task-open .small{display:block;font-size:12px;line-height:20px;color:var(--muted);margin-top:4px}.activity-task-state{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--brand);white-space:nowrap}.activity-task-row>.icon-button{margin-right:8px;flex-shrink:0}.activity-task-open:hover{background:var(--brand-soft)}.activity-task-row.unavailable .activity-task-open{color:var(--muted);cursor:default}.activity-task-row.unavailable .activity-task-open:hover{background:transparent}.activity-task-row.unavailable .icon-box{color:var(--muted);background:var(--disabled)}.activity-detail-title{margin-top:16px}.activity-text{white-space:pre-wrap;overflow-wrap:anywhere;line-height:24px;margin:12px 0 16px}.activity-detail-actions{margin-top:12px}.activity-detail-actions .btn{flex:1}.mistake-photos{margin-bottom:16px}.mistake-photos .record-photo{-o-object-fit:contain;object-fit:contain;background:var(--canvas)}.mistake-correction{margin-top:16px}.activity-page .record-bottom{flex-wrap:wrap}.mistake-ai-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:12px 0 8px}.mistake-ai-actions .btn{font-size:12px;padding:8px 12px;min-height:44px}.mistake-ai-actions [hidden],#mistake-ai-confirm[hidden]{display:none}.mistake-candidate-list{display:grid;gap:8px;margin-top:12px}.mistake-candidate-list .home-all-task{background:var(--canvas);border-radius:12px}.mistake-candidate-list .grow{min-width:0;overflow-wrap:anywhere}.mistake-content-choice{display:flex;gap:8px;align-items:flex-start;min-height:44px;margin-top:12px;padding:8px 0;font-size:12px;line-height:20px;cursor:pointer}.mistake-content-choice uni-input{width:20px;height:20px;flex-shrink:0;accent-color:var(--brand)}.mistake-content-choice .small{display:block;color:var(--muted)}.activity-page .record-card{width:100%;min-width:0;overflow-wrap:anywhere}@media (max-width:359px){.activity-task-open{padding:12px;gap:8px}.activity-task-row>.icon-button{margin-right:4px}.activity-task-open .icon-box{display:none}}.related-mistakes{margin:24px 0}.related-mistakes .h2{font-size:16px;margin-bottom:8px}.mistake-candidate-row{display:flex;gap:8px;align-items:center}.mistake-candidate-row>.home-all-task{flex:1;min-width:0}.mistake-candidate-row>.link-button{min-width:44px;min-height:44px;flex-shrink:0}.photo-remove .mistake-photo-open{position:static;display:block;width:auto;height:auto;padding:0;background:transparent;border-radius:0;color:inherit}.photo-remove.expanded,.photo-remove.expanded .mistake-photo-open{width:100%}.photo-remove.expanded .record-photo{width:100%;height:auto;max-height:none;-o-object-fit:contain;object-fit:contain}.mistake-upload-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:16px}.mistake-upload-actions .photo-input{justify-content:center;min-height:56px;margin:0}.mistake-material-card{padding:12px}.mistake-material-open{display:flex;gap:12px;align-items:center;width:100%;min-height:72px;text-align:left;color:var(--ink)}.mistake-material-open .grow{min-width:0}.mistake-material-open .strong{display:block;overflow-wrap:anywhere;font-size:14px;line-height:20px}.mistake-material-open .small{display:block;color:var(--muted);font-size:12px;line-height:20px;margin-top:4px}.mistake-material-open>.record-photo{flex-shrink:0}.material-card-footer{margin-top:8px}.material-card-footer .btn{min-height:44px;padding:8px 12px;font-size:12px}.material-rule-summary,.material-saved-questions{margin-top:24px}.material-rule-summary .h3,.material-saved-questions .h3{font-size:14px;line-height:20px;margin-bottom:8px}.material-rule-summary .p{white-space:pre-wrap;overflow-wrap:anywhere;margin-top:8px}.mistake-upload-actions .btn{min-height:56px;display:flex;gap:8px;align-items:center;justify-content:center;padding:12px;font-size:14px}.activity-task-row>.btn{min-width:44px;min-height:44px;padding:8px;font-size:12px;flex-shrink:0}.reading-page{padding:24px 24px calc(112px + var(--safe-bottom));min-width:0}.reading-page .page-heading .h1{font-size:24px;line-height:32px;overflow-wrap:anywhere}.reading-page .page-heading .p{margin-top:8px}.reading-recorder{display:flex;flex-direction:column;align-items:center;gap:16px;margin:24px 0}.reading-mic{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;width:112px;height:112px;border-radius:50%;background:var(--brand-soft);color:var(--brand);font-size:14px;line-height:20px}.reading-mic>.icon{width:32px;height:32px}.reading-mic:hover{background:var(--surface)}.reading-mic:focus-visible{outline:2px solid var(--focus);outline-offset:4px}.reading-mic[data-state=recording]{background:var(--brand);color:var(--brand-on);animation:voice-listening .8s ease-in-out infinite alternate}.reading-mic[data-state=permission]{outline:2px solid var(--focus);outline-offset:4px}.reading-mic:disabled{opacity:.5;cursor:wait}#reading-status{text-align:center;line-height:20px;min-height:40px}#reading-playback{width:100%;max-width:336px;min-width:0}#reading-playback[hidden]{display:none}.reading-supplement>.summary{min-height:48px}.reading-save-actions{display:grid;gap:8px;margin-top:24px}.reading-save-actions .btn{width:100%;min-height:48px}.reading-save-actions [hidden]{display:none}.reading-page .record-close-prompt{margin-top:16px}.reading-page .photo-remove>uni-button{min-width:44px;min-height:44px}@media (prefers-reduced-motion:reduce){.reading-mic[data-state=recording]{animation:none}}.word-checkin-actions{display:grid;gap:8px}.word-checkin-actions .btn{width:100%}.word-checkin-notice{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px}.checkin-page .page-heading{margin-bottom:8px}.checkin-page .activity-summary{margin:0 0 16px}.checkin-manage{min-width:44px;justify-content:center;color:var(--muted)}.checkin-task-list{background:var(--surface);border-radius:16px;overflow:hidden}.checkin-page .activity-task-row{border-radius:0;border-bottom:1px solid var(--line)}.checkin-page .activity-task-row:last-child{border-bottom:0}.checkin-page .activity-task-open{width:100%;min-height:88px;padding:16px;border-radius:0;gap:12px}.checkin-page .activity-task-open .icon-box{display:grid;width:40px;height:40px;border-radius:12px;background:var(--brand-soft);color:var(--brand)}.checkin-page .activity-task-open .icon-box>.icon{width:20px;height:20px}.checkin-page .activity-task-state{flex-shrink:0}.checkin-page .activity-task-state .icon{width:16px;height:16px}.checkin-page .activity-task-row.unavailable .activity-task-open:disabled{background:transparent!important;color:var(--muted)!important}.checkin-page .activity-task-row.unavailable .icon-box{background:var(--canvas);color:var(--muted)}.checkin-history-entry{display:flex;justify-content:center;margin-top:16px}.checkin-preset-list .home-all-task:disabled{background:transparent!important;color:var(--muted)!important}.checkin-preset-list .home-all-task:hover:not(:disabled),.checkin-manage-list .home-all-task:hover{background:var(--brand-soft)}@media (max-width:359px){.checkin-page .activity-task-open{padding:12px;gap:8px}}.reading-page{padding:16px 20px 24px}.reading-page .page-heading{margin-bottom:12px}.reading-recorder{gap:8px;margin:16px 0}.reading-mic{width:88px;height:88px;gap:4px}#reading-status{min-height:24px}.reading-save-actions{margin-top:12px;position:sticky;bottom:0;background:var(--canvas);padding:8px 0}.mistake-core-field{margin-top:12px}.mistake-core-field uni-textarea{min-height:72px;resize:vertical}.mistake-link-summary{margin-top:12px;line-height:20px}.material-save-actions{display:grid;gap:8px}@media (max-width:359px){.reading-page{padding:12px 16px 24px}.reading-recorder{margin:12px 0}.reading-mic{width:80px;height:80px}}.wordbook-page{padding-bottom:calc(160px + var(--safe-bottom))}.wordbook-heading{margin:0 0 16px}.wordbook-title{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0;text-align:left;font:inherit;max-width:100%;overflow-wrap:anywhere}.wordbook-title .icon{width:20px;height:20px;color:var(--muted)}.wordbook-title:hover{color:var(--brand)}.wordbook-heading>.p{overflow-wrap:anywhere}.wordbook-unit-picker{display:flex;align-items:center;gap:8px;margin:0 0 8px}.wordbook-unit-picker uni-label{font-size:12px;color:var(--muted);flex-shrink:0}.wordbook-unit-picker .select-input{flex:1;min-width:0;min-height:44px;padding:8px;border:0;border-radius:12px;background:var(--surface);font-size:12px}.wordbook-unit-group+.wordbook-unit-group{margin-top:16px}.wordbook-group-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 8px}.wordbook-group-heading .h2{font-size:14px;line-height:20px;min-width:0}.wordbook-group-heading>.link-button{flex-shrink:0}.mistake-unit-associations{margin:16px 0}.wordbook-reference-words{margin-top:16px}.wordbook-search-row{display:flex;align-items:center;gap:8px;margin-bottom:8px}.wordbook-search-row .search{flex:1;min-width:0;margin:0;padding-right:4px}.wordbook-search-row uni-input::-webkit-search-cancel-button{display:none}.wordbook-search-row .icon-button{flex-shrink:0}.wordbook-search-row [hidden]{display:none}.wordbook-tools{color:var(--muted)}.wordbook-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;margin:0}.wordbook-filters .segment{display:flex;align-items:center;justify-content:center;gap:8px;padding:8px 4px;background:transparent;font-size:14px}.wordbook-filters .segment.active{background:var(--brand-soft);color:var(--brand);font-weight:600}.wordbook-filters .segment:hover{background:var(--brand-soft)}.wordbook-list-tools{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:44px;margin:4px 0 8px}.wordbook-list-tools .link-button{flex-shrink:0;font-weight:600}.wordbook-page .word-row{padding:12px 16px;gap:0 8px}.wordbook-page .word-row .p{margin-top:0;color:var(--body)}.wordbook-page .word-study-times{display:flex;flex-wrap:wrap;gap:0 16px;margin-top:8px}.wordbook-page .word-row .tag{background:transparent;padding:4px 0}.wordbook-page .word-row .tag.warm{color:var(--warm-ink)}.wordbook-page .word-row .tag:not(.warm){color:var(--muted)}.wordbook-page .empty .link-button{display:flex;margin:8px auto 0;width:-moz-max-content;width:max-content}.wordbook-tool-list{margin-top:16px}.wordbook-tool-list .setting-row{padding:12px 0}.wordbook-tool-list .setting-row:hover{background:var(--brand-soft)}.wordbook-tool-list+.study-order-note{margin-bottom:0}uni-page-body,:root{background:var(--canvas);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,sans-serif;font-size:14px;line-height:24px}body{background:var(--canvas)}uni-button{font:inherit;line-height:inherit;text-align:inherit;border:0;padding:0;margin:0;background:none;border-radius:0;overflow:visible;color:inherit}uni-button[disabled]{background:var(--disabled)!important;color:var(--muted)!important;cursor:default;box-shadow:none}uni-button:focus-visible,uni-input:focus-visible,uni-textarea:focus-visible{outline:3px solid var(--focus);outline-offset:3px}uni-input,uni-textarea{font:inherit;color:inherit}.icon{height:24px;width:24px;flex-shrink:0;display:inline-block;vertical-align:middle}.small{font-size:12px;line-height:20px}.muted{color:var(--muted)}.grow{flex:1;min-width:0}.strong{font-weight:600}.p,.h1,.h2,.h3{display:block}.shell{max-width:440px;min-height:100vh;margin:auto;background:var(--canvas);padding-top:env(safe-area-inset-top,0px)}.main{padding-bottom:24px}.home-page{padding-bottom:0}.word-row .grow{display:block}.word-row{display:flex}.word-row .p{display:block}.brand-icon .icon{width:24px;height:24px}.home-task-tile .strong,.home-task-tile .small{display:block}.home-task-tile .small{margin-top:4px}.voice-label{font-size:12px;line-height:20px}.voice-dock{margin-top:20px}.sheet-body{flex:1;min-height:0;max-height:68vh;height:auto;overflow-y:auto}.sheet .h2{font-size:18px;line-height:28px}.sheet .field:first-child{margin-top:0}.field>uni-text{display:block;font-size:14px;line-height:24px;font-weight:600;margin-bottom:8px}.input,.text-input{display:block;width:100%;min-height:48px;height:48px;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:12px;font-size:14px;line-height:24px}.textarea{height:112px;padding:12px}.select-control{display:flex;align-items:center;justify-content:space-between;gap:8px}.select-control .icon{width:16px;height:16px}.form-grid>.field{margin-top:16px}.status-banner{border-radius:12px;background:var(--brand-soft);font-size:12px;line-height:20px;padding:12px 16px;margin:8px 20px;overflow-wrap:anywhere}.status-banner.error{color:var(--danger);background:var(--danger-soft)}.content-status{margin:0 0 12px;padding:12px;background:var(--warm);color:var(--warm-ink);border-radius:12px;font-size:12px;line-height:20px}.content-status .link-button{min-height:32px;padding:4px 0}.page-actions{display:grid;gap:12px;margin-top:24px}.section-space{margin-top:20px}.setting-row .small{display:block;margin-top:4px}.settings-list{margin-top:16px}.inline-check{display:flex;align-items:center;gap:12px;min-height:48px;text-align:left}.check-mark{width:20px;height:20px;flex-shrink:0;border:1px solid var(--line);border-radius:4px;display:grid;place-items:center}.check-mark.checked{background:var(--brand-soft);border-color:var(--brand)}.check-mark .icon{width:16px;height:16px}.segmented,.segments{display:flex;flex-wrap:wrap;gap:8px}.segment{flex:1;white-space:nowrap}.search uni-input{flex:1;min-width:0;height:44px}.search .icon-button{width:32px;height:44px;flex-shrink:0}.wordbook-search-row .search{margin:0}.wordbook-title{display:flex;align-items:center;gap:4px;font-size:24px;font-weight:700;line-height:32px}.wordbook-title .icon{width:20px;height:20px}.word-detail .meaning{font-size:20px;line-height:32px;display:block;margin-top:16px}.word-title .h1{font-size:36px;line-height:44px;overflow-wrap:anywhere;font-family:Arial,sans-serif}.word-ipa{display:block;font-size:18px;line-height:28px;font-family:Arial,sans-serif;margin-top:4px;color:var(--muted)}.word-detail .example{display:block;margin-top:20px}.english{display:block;line-height:28px}.word-source{display:block;margin-top:8px;font-size:12px;line-height:20px;color:var(--muted)}.practice-word{display:flex;align-items:center;justify-content:center;gap:8px}.practice-word .h1{font:500 40px/48px Arial,sans-serif;margin:20px 0 12px;overflow-wrap:anywhere}.practice-word .spelling-meaning{font:700 24px/32px sans-serif}.practice-card .hint-button{margin-top:12px}.practice-card .meaning{display:block}.rating-stack .btn{width:100%}.result-grid .strong{display:block;font-size:28px;line-height:36px}.result-grid .small{color:var(--muted)}.summary-details{margin-top:24px;text-align:left}.detail-actions{display:grid;gap:12px;margin-top:24px}.memory-box .h3{margin-top:12px}.memory-box .p{margin-top:8px}.record-create{position:fixed;right:max(20px,calc((100vw - 400px)/2));z-index:8}.record-card .h3{margin-bottom:8px}.record-card .p{font-size:12px;line-height:20px;color:var(--muted)}.activity-task-open .strong,.activity-task-open .small{display:block}.profile-more-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;min-height:48px;padding:12px 8px;color:var(--muted)}.profile-more-toggle .icon{width:16px;height:16px}.photo-grid{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}.photo-grid uni-image{width:88px;height:88px;border-radius:12px}.photo-slot{position:relative}.photo-slot>.icon-button{position:absolute;right:-4px;top:-4px;width:28px;height:28px;background:var(--surface)}.photo-slot>.icon-button .icon{width:16px;height:16px}.phonics-rule-row .small,.phonics-rule-symbol .small{display:block}.phonics-rule-row .h3{font-size:16px;line-height:24px}.phonics-rule-symbol .small{font:14px/24px Arial}.phonics-part .strong{font-size:22px;line-height:28px}.phonics-part .small{font-size:16px;font-family:Arial,sans-serif}.phonics-part .phonics-silent{font:12px/20px sans-serif}.phonics-parts{display:flex;flex-wrap:wrap}.phonics-part{min-width:52px;min-height:88px;flex:1}.phonics-rule-symbol{min-width:56px}.phonics-question .h1{font-size:24px;line-height:36px;margin-top:12px}.phonics-score .strong{font-size:48px;line-height:56px;color:var(--brand)}.phonics-score .small{font-size:20px}.phonics-related{margin-top:8px}.phonics-question .btn{justify-content:center}.reading-header-title{font-size:18px}.record-audio-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}.list-empty{padding:24px 0}.busy-note{position:fixed;bottom:16px;left:50%;transform:translate(-50%);background:var(--ink);color:var(--surface);border-radius:24px;padding:8px 16px;font-size:12px;z-index:35}.reward-link{display:inline-flex;align-items:center;gap:8px;color:var(--brand)}@media (max-width:359px){.status-banner{margin-left:16px;margin-right:16px}.main{padding-left:16px;padding-right:16px}.home-task-tile{padding:12px;min-height:88px}.word-row{padding:12px}.word-title .h1{font-size:32px}.sheet .form-grid{grid-template-columns:1fr 1fr}}.home-today-card .h2 .small{font-size:12px;font-weight:400;color:var(--muted)}.phonics-rule-symbol>.small{display:block}uni-button:after{pointer-events:none}.sheet .form-grid>.field{margin-top:16px}.summary-word-row{width:100%;min-height:48px;text-align:left}.summary-word-row .icon{width:16px;height:16px}.test-content-note{display:block;text-align:center;padding:4px 16px;font-size:12px;line-height:20px;background:var(--warm);color:var(--warm-ink)}.home-topbar{display:flex;align-items:center;justify-content:space-between;padding:10px 16px 6px;min-height:48px;gap:12px}.topbar-book-btn{display:inline-flex;align-items:center;gap:6px;background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:6px 14px 6px 12px;font-size:14px;font-weight:600;color:var(--ink);max-width:calc(100% - 50px);cursor:pointer;transition:background-color .15s ease}.topbar-book-btn:active{background:var(--line)}.topbar-book-icon{width:16px;height:16px;color:var(--brand);flex-shrink:0}.topbar-book-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar-chevron{width:14px;height:14px;color:var(--muted);flex-shrink:0}.topbar-learner-badge{background:var(--brand-soft);color:var(--brand);font-size:11px;font-weight:500;padding:1px 6px;border-radius:10px;margin-left:4px;white-space:nowrap}.topbar-settings-btn{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--ink);background:transparent;flex-shrink:0}.topbar-settings-btn:active{background:var(--line)}.home-page{padding-top:4px}.home-today{display:grid;gap:12px;margin-bottom:16px}.home-today-card{padding:16px;border-radius:16px}.home-today-card .h2{font-size:18px;line-height:26px;display:flex;align-items:baseline;gap:6px}.home-today-card .btn{padding:8px 16px;min-height:40px;border-radius:20px;font-weight:600}.home-study-pace{font-size:12px;color:var(--muted);margin-top:8px;padding-top:8px;border-top:1px dashed var(--line)}.phonics-part .phonics-sound-link .small{line-height:24px;text-decoration:underline;text-underline-offset:4px}.phonics-part .phonics-sound-link .phonics-silent{line-height:20px;text-decoration:none}.phonics-related .grow{font-size:12px;color:var(--muted)}body{height:auto;min-height:100%;overflow:visible;display:block}.uni-sample-toast{width:-moz-max-content;width:max-content}uni-button:after{border:none}uni-button{font-family:inherit}
