:root{color:#20233a;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-optical-sizing:auto;--ink:#20233a;--muted:#788096;--blue:#5b65dc;--line:#e8ebf3;background:#f5f7fb;font-family:system-ui,-apple-system,BlinkMacSystemFont,Noto Sans TC,sans-serif;font-weight:400}*{box-sizing:border-box}body{background:radial-gradient(at 9% 9%,#dde4ff99,#0000 34rem),radial-gradient(at 90% 86%,#e3f2f0a6,#0000 30rem),#f5f7fb;min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,a:focus-visible,.flashcard:focus-visible,.question-card:focus-visible{outline-offset:3px;outline:3px solid #9299f6}button:disabled{cursor:not-allowed;opacity:.55}.page-shell{width:min(100% - 40px,700px);min-height:100vh;margin:0 auto;padding:28px 0 34px}.topbar,.brand,.local-badge,.deck-top,.deck-progress,.group-button,.card-actions,.toggle-row,.quiz-progress-copy,.choice-button,.answer-feedback,.result-metrics{align-items:center;display:flex}.topbar{justify-content:space-between}.header-actions,.account-control{align-items:center;gap:10px;display:flex}.account-control{min-width:0}.account-copy{gap:3px;min-width:0;display:grid}.account-copy strong{color:#50576d;text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.account-copy small,.account-notice{color:var(--muted);font-size:10px}.account-notice{margin:0}.account-login{justify-content:flex-end}.brand{color:var(--ink);gap:10px;font-size:15px;font-weight:700;text-decoration:none}.brand-mark,.deck-icon{color:var(--blue);background:#e9eaff;place-items:center;font-weight:700;display:grid}.brand-mark{border-radius:10px;width:31px;height:31px;font-size:17px}.local-badge{color:#626b81;background:#ffffffb3;border:1px solid #e6e9f2;border-radius:999px;gap:7px;padding:8px 12px;font-size:12px;font-weight:600}.local-badge>span{background:#69b895;border-radius:50%;width:7px;height:7px}.welcome{margin:60px 0 28px}.eyebrow{color:#7e85a4;letter-spacing:.14em;margin:0 0 10px;font-size:11px;font-weight:700}.welcome h1,.study-heading h1,.question-card h1,.results-card h1,.error-screen h1{color:var(--ink);letter-spacing:-.045em;margin:0;font-size:clamp(26px,5vw,36px);line-height:1.25}.welcome-copy,.study-heading>p:not(.eyebrow),.results-subtitle{color:var(--muted);margin:12px 0 0;font-size:14px;line-height:1.7}.deck-card,.flashcard,.question-card,.results-card{background:#ffffffe0;border:1px solid #e2e6f1d9;border-radius:24px;box-shadow:0 18px 55px #30395b12}.deck-card{padding:26px}.deck-top{justify-content:space-between}.deck-icon{letter-spacing:-.08em;border-radius:15px;width:46px;height:46px;font-size:20px}.deck-tag{color:#6d73cb;background:#f0f0ff;border-radius:999px;padding:6px 10px;font-size:11px;font-weight:600}.deck-card h2{letter-spacing:-.03em;margin:20px 0 5px;font-size:21px}.deck-description{color:var(--muted);margin:0;font-size:13px}.deck-progress{color:#697189;justify-content:space-between;margin:24px 0 10px;font-size:12px}.progress-track{background:#eef0f6;border-radius:999px;height:7px;overflow:hidden}.progress-track>span{border-radius:inherit;background:linear-gradient(90deg,#777bea,#a2a4f5);height:100%;transition:width .25s;display:block}.group-list{gap:8px;margin-top:21px;display:grid}.group-button{border:1px solid var(--line);width:100%;min-height:65px;color:var(--ink);text-align:left;background:#fff;border-radius:15px;gap:13px;padding:10px 13px;transition:border-color .2s,transform .2s,background .2s}.group-button:hover{background:#fdfdff;border-color:#b7bcf2;transform:translateY(-1px)}.group-button.is-complete .group-number{color:#499b73;background:#eaf7f0}.group-number{color:#777cae;background:#f1f2fb;border-radius:12px;flex:none;place-items:center;width:37px;height:37px;font-size:12px;font-weight:700;display:grid}.group-copy{flex:1;gap:3px;display:grid}.group-copy strong{font-size:13px}.group-copy small{color:var(--muted);font-size:11px}.group-arrow{color:#9ba1b5;font-size:18px}.page-footer{color:#969caf;justify-content:space-between;gap:14px;margin:17px 5px 0;font-size:10px;display:flex}.backup-controls{background:#ffffffc2;border:1px solid #e2e6f1d9;border-radius:18px;grid-template-columns:1fr auto;align-items:center;gap:12px;margin:18px 0;padding:18px 20px;display:grid}.backup-controls h2{color:#454c63;margin:0;font-size:13px}.backup-controls p{color:var(--muted);margin:5px 0 0;font-size:11px;line-height:1.5}.backup-actions{flex-wrap:wrap;gap:8px;display:flex}.backup-message{grid-column:1/-1}.backup-message.is-error{color:#a8474d}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.shortcut-hint{color:var(--muted);margin:12px 4px;font-size:11px;line-height:1.6}.update-prompt{z-index:10;border:1px solid var(--line);color:#626b83;background:#fff;border-radius:14px;justify-content:space-between;align-items:center;gap:14px;padding:12px 14px;font-size:12px;display:flex;position:fixed;bottom:16px;left:max(16px,50vw - 350px);right:max(16px,50vw - 350px);box-shadow:0 8px 28px #30395b29}.study-shell{max-width:610px}.text-button{color:#727a91;background:0 0;border:0;padding:8px 0;font-size:13px;font-weight:600}.study-heading{margin:44px 0 24px}.study-heading h1{font-size:31px}.study-heading>p:not(.eyebrow){margin-top:8px}.flashcard{min-height:325px;padding:25px}.card-label{color:#868da3;font-size:11px;font-weight:600}.word-card-content{padding:29px 0 10px}.word-card-content h2{letter-spacing:-.055em;margin:0 0 18px;font-size:clamp(35px,8vw,52px)}.meaning-list p{color:#50576d;gap:9px;margin:7px 0;font-size:14px;display:flex}.meaning-list span{color:#8389a1}blockquote{background:#f6f7ff;border-left:3px solid #aaaef4;border-radius:0 12px 12px 0;margin:20px 0 0;padding:15px 17px}blockquote p{color:#3d445d;margin:0;font-size:14px;line-height:1.6}blockquote cite{color:#8188a0;margin-top:5px;font-size:12px;font-style:normal;display:block}.card-actions{flex-wrap:wrap;justify-content:flex-end;gap:9px;margin-top:10px}.secondary-button,.icon-button,.audio-button{color:#626b83;background:#fff;border:1px solid #e5e8f1;border-radius:12px;min-height:42px;font-size:12px;font-weight:600}.secondary-button{padding:0 16px}.icon-button{width:42px;color:var(--blue)}.icon-button svg{width:20px;height:20px;margin:0 auto;display:block}.toggle-row{justify-content:space-between;gap:16px;margin:18px 3px}.toggle-row span{gap:3px;display:grid}.toggle-row strong{color:#454c63;font-size:12px}.toggle-row small{color:#9399aa;font-size:11px}.toggle-row input{width:38px;height:20px;accent-color:var(--blue)}.primary-button{color:#fff;background:linear-gradient(100deg,#6870df,#7d7de9);border:0;border-radius:14px;min-height:50px;padding:0 20px;font-size:14px;font-weight:700;box-shadow:0 9px 22px #656dde33}.primary-button span{margin-left:9px}.wide-button{width:100%;margin-top:10px}.notice{color:#737b91;margin:14px 0;font-size:12px;line-height:1.6}.quiz-progress{margin:47px 0 19px}.quiz-progress-copy{color:#7b8298;justify-content:space-between;margin-bottom:9px;font-size:11px}.question-card{padding:clamp(21px,5vw,32px)}.question-card h1{min-height:48px;margin-bottom:17px;font-size:clamp(23px,5vw,31px)}.question-hint{color:#858ba0;font-size:12px}.audio-button{color:var(--blue);padding:0 14px}.audio-button span{margin-right:6px}.choice-list{gap:9px;margin-top:20px;display:grid}.choice-button{color:#4b526a;text-align:left;background:#fff;border:1px solid #e8eaf2;border-radius:13px;gap:12px;width:100%;min-height:54px;padding:9px 12px;font-size:13px}.choice-button:not(:disabled):hover{background:#fafaff;border-color:#b5baf1}.choice-button.is-correct{background:#f3fbf6;border-color:#9ed5b9}.choice-key{color:#8289a0;background:#f2f3f8;border-radius:9px;flex:none;place-items:center;width:29px;height:29px;font-size:11px;font-weight:700;display:grid}.answer-feedback{color:#488c68;flex-wrap:wrap;justify-content:space-between;gap:10px;margin-top:16px;font-size:12px;font-weight:600}.answer-feedback button{color:#fff;background:#61ab80;border:0;border-radius:9px;padding:8px 12px;font-size:11px;font-weight:600}.missed-card{margin-bottom:15px}.results-card{text-align:center;margin:55px 0 17px;padding:35px 25px}.result-sparkle{color:#777de0;background:#f0f0ff;border-radius:18px;place-items:center;width:55px;height:55px;margin:0 auto 17px;font-size:29px;display:grid}.results-card h1{font-size:clamp(23px,5vw,31px)}.results-subtitle{margin-top:9px;font-size:13px}.result-metrics{justify-content:center;gap:clamp(30px,13vw,90px);margin:30px 0 22px}.result-metrics div{gap:5px;display:grid}.result-metrics strong{color:#6269d2;letter-spacing:-.04em;font-size:32px}.result-metrics span{color:#848ba0;font-size:11px}.save-status{color:#9d6943;background:#fff7ec;border-radius:11px;margin:0;padding:12px;font-size:11px;line-height:1.5}.save-status.is-saved{color:#498b69;background:#f2faf5}.loading-screen{color:#777f95;place-items:center;min-height:100vh;font-size:14px;display:grid}.error-screen{padding-top:20vh}.error-screen p[role=alert]{color:#727a91;margin:15px 0 22px;font-size:14px;line-height:1.7}@media (width<=520px){.backup-controls{grid-template-columns:1fr}.backup-actions .secondary-button{flex:1}.header-actions{flex-direction:column;align-items:flex-end;gap:6px}.account-copy{display:none}.page-shell{width:min(100% - 28px,700px);padding-top:18px}.welcome{margin-top:43px}.deck-card{border-radius:20px;padding:20px 16px}.flashcard{padding:20px 17px}.page-footer{flex-direction:column;gap:5px}}
