@charset "UTF-8";@media(max-width:700px){body{min-height:100vh;min-height:100dvh}}body{overscroll-behavior:contain;-webkit-tap-highlight-color:transparent}#screen-settings .settings-panel{gap:24px}#screen-settings .setting-row{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;color:var(--ink);font-size:1rem}.setting-row select{width:100%;min-height:52px;border-radius:12px}.language-note{color:var(--muted);font-size:.875rem;font-weight:400}.theme-switch{display:flex;gap:8px}.theme-switch button{flex:1;min-height:48px;padding:8px 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface);cursor:pointer}.theme-switch button[aria-pressed=true]{border-color:var(--ink);background:var(--surface-soft);font-weight:700}.text-size-control input{min-height:48px}.text-size-example{color:var(--muted);font-size:1rem;font-weight:400}.setting-toggle{display:flex;min-height:48px;align-items:center;justify-content:space-between;gap:16px;cursor:pointer}.setting-toggle input{width:24px;height:24px;flex:0 0 24px;accent-color:var(--accent)}.settings-offline{margin:24px 0;color:var(--muted);font-size:.875rem;text-align:center}body.round-active .question-view{width:min(100%,560px)}.question-topline{gap:12px}.round-exit-button,body .speak-button{width:48px;height:48px;min-height:48px;flex:0 0 48px;justify-content:center;padding:0}.round-exit-button svg,.speak-button svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.question-topline .progress-track{height:4px;flex:1;margin:0}#question-count{white-space:nowrap}.question-topic,.question-language{display:inline-block;width:fit-content;margin:16px 0 0;padding:5px 10px;border:1px solid var(--line);border-radius:999px;color:var(--ink);font-size:.8125rem;font-weight:700;letter-spacing:0}.question-topic[data-level=b2]{color:var(--lvl-b2)}.question-topic[data-level=c1]{color:var(--lvl-c1)}.question-topic[data-level=c2]{color:var(--lvl-c2)}.word-card{padding:16px 0;background:transparent}.word-card .eyebrow,.word-card>p:last-child{display:none}body .word-line h2{font-size:clamp(2rem,9vw,2.75rem)}.answer-grid{grid-template-columns:1fr;gap:8px}body .answer-button{min-height:56px;border-radius:16px;font-size:1.0625rem}.answer-button:disabled:not(.is-correct):not(.is-wrong){opacity:.55}.answer-button.is-correct .answer-number,.answer-button.is-wrong .answer-number{font-size:0}.answer-button.is-correct .answer-number:after{content:"\2713";font-size:1rem}.answer-button.is-wrong .answer-number:after{content:"\2715";font-size:1rem}button:active:not(:disabled){transform:translateY(1px)}.saved-word-title{display:flex;min-width:0;align-items:center;flex-wrap:wrap;gap:8px}.saved-word-title strong{font-size:1.0625rem}.saved-word-language,.saved-word-part{width:fit-content;padding:2px 8px;border-radius:999px;background:var(--surface-soft);color:var(--ink);font-size:.8125rem}.saved-word-favorite{display:grid;width:48px;height:48px;flex:0 0 48px;place-items:center;border:0;border-radius:12px;background:transparent;color:var(--ink);cursor:pointer}.saved-word-favorite svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.saved-word-favorite[aria-pressed=true] svg{fill:currentColor}.remove-word{min-height:48px}@media(max-width:700px){.app-shell{width:min(100% - 24px,560px);padding-bottom:calc(76px + env(safe-area-inset-bottom))}.screen{padding-top:28px}.topbar{min-height:56px}.brand{font-size:calc(17px * var(--text-scale))}.brand-mark{width:31px;height:31px;border-radius:10px}.offline-label{font-size:calc(11px * var(--text-scale))}.screen{padding-top:20px}.intro,.screen-heading{margin-bottom:16px;text-align:left}.intro h1,.screen-heading h1{max-width:420px;font-size:calc(clamp(27px,8vw,36px) * var(--text-scale))}.intro-copy,.screen-heading>p:last-child{font-size:calc(14px * var(--text-scale))}.practice-card,.panel{border-radius:22px}.control-label select{width:100%;min-height:42px}.range-label{min-width:0}.range-inputs input{width:100%;min-width:0}.round-view{min-height:280px;padding:26px 14px}.round-view h2{font-size:calc(24px * var(--text-scale))}.round-copy{font-size:calc(14px * var(--text-scale))}.question-view{padding:20px 14px 16px}.progress-track{margin-bottom:20px}.question-navigator{gap:6px;margin-top:12px}.question-number{width:32px;height:32px;flex-basis:32px}.word-card{padding:12px 10px 13px}.word-line{gap:9px}.word-line h2{font-size:calc(clamp(27px,8vw,37px) * var(--text-scale))}.speak-button{width:39px;height:39px}.answer-grid{grid-template-columns:1fr;gap:8px;margin-top:12px}.answer-button{min-height:46px;padding:9px 11px}.keyboard-hint{font-size:calc(10px * var(--text-scale))}.question-footer{min-height:46px;gap:8px}.next-button{min-height:40px}.panel{padding:16px 13px}.favorites-start-button{width:100%;min-height:42px}#word-form{grid-template-columns:1fr;gap:8px}#word-form label{margin-top:6px}#word-form input,#word-form select{min-height:42px}.saved-word{padding:13px}.collection-controls{padding-inline:5px}.settings-panel{gap:14px}.setting-row{grid-template-columns:1fr;gap:7px}.stats-grid{grid-template-columns:1fr;gap:9px}.stat-card{min-height:90px;grid-template-columns:28px 1fr auto;justify-items:start;align-content:center;column-gap:10px;padding:0 17px}.stat-icon{grid-row:span 2}.stat-card strong{font-size:calc(23px * var(--text-scale))}.stat-card>span:last-child{grid-column:2}.bottom-nav{position:fixed;z-index:5;right:0;bottom:0;left:0;display:grid;width:auto;grid-template-columns:repeat(4,minmax(0,1fr));gap:3px;margin:0;padding:6px 8px calc(6px + env(safe-area-inset-bottom));border:0;border-top:1px solid var(--line);border-radius:0;background:var(--surface);box-shadow:0 -4px 16px #1d2c220a}.nav-tab{display:grid;min-width:0;min-height:48px;justify-items:center;align-content:center;gap:3px;padding:0 2px;border:0;border-radius:11px;background:transparent;color:var(--muted);cursor:pointer;font-size:calc(10px * var(--text-scale));font-weight:650}.nav-tab>span:first-child{font-size:calc(18px * var(--text-scale));line-height:1}.nav-tab>span:last-child{max-width:100%;overflow-wrap:anywhere;text-align:center}.nav-tab.is-active{background:var(--accent-soft);color:var(--accent)}}.app-shell{width:min(100% - 32px,480px);padding-bottom:calc(var(--nav-height, 96px) + 24px)}.topbar{min-height:calc(64px + env(safe-area-inset-top));padding-top:env(safe-area-inset-top);border:0}.screen,#screen-practice.screen{padding-top:16px;animation:none}.intro,.screen-heading,#screen-practice .intro{max-width:none;margin:0 0 24px;text-align:left}.intro h1,.screen-heading h1,#screen-practice .intro h1{font-size:1.75rem;line-height:1.2;font-weight:700;letter-spacing:-.035em}body:not(.round-active) #screen-practice .practice-card{display:none}body.round-active .level-cards{display:none}.level-cards{display:grid;gap:12px}.level-card{--lvl: var(--lvl-b2);display:flex;min-height:108px;align-items:center;gap:24px;padding:16px;border:1px solid var(--lvl);border-radius:20px;background:#1c7fa81f;background:color-mix(in srgb,var(--lvl) 12%,var(--surface));color:var(--ink);text-align:left;cursor:pointer;transition:transform .16s ease-out,border-color .16s ease-out}.level-card[data-level=c1]{--lvl: var(--lvl-c1);background-color:#9a6a001f;background-color:color-mix(in srgb,var(--lvl) 12%,var(--surface))}.level-card[data-level=c2]{--lvl: var(--lvl-c2);background-color:#c2483d1f;background-color:color-mix(in srgb,var(--lvl) 12%,var(--surface))}body[data-theme=dark] .level-card[data-level=b2]{background-color:#293d45;background-color:color-mix(in srgb,var(--lvl) 12%,var(--surface))}body[data-theme=dark] .level-card[data-level=c1]{background-color:#3a3b2c;background-color:color-mix(in srgb,var(--lvl) 12%,var(--surface))}body[data-theme=dark] .level-card[data-level=c2]{background-color:#3d3430;background-color:color-mix(in srgb,var(--lvl) 12%,var(--surface))}.level-code{min-width:64px;color:var(--lvl);font-size:2rem;font-weight:700}.level-info{display:grid;flex:1;min-width:0;gap:4px}.level-info strong{font-size:1.125rem}.level-count,.level-learned{color:var(--ink);font-size:.875rem}.level-track{display:block;height:4px;overflow:hidden;border-radius:999px;background:var(--line)}.level-track span{display:block;height:100%;background:var(--lvl)}.bottom-nav{position:fixed;z-index:5;right:0;bottom:0;left:0;display:grid;width:min(100%,512px);grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0 auto;padding:8px 12px calc(8px + env(safe-area-inset-bottom));border:0;border-top:1px solid var(--line);border-radius:0;background:var(--surface);box-shadow:none}.nav-tab{display:flex;min-width:0;min-height:56px;flex-direction:column;justify-content:center;gap:2px;padding:4px;border-radius:999px;font-size:.8125rem;line-height:1.15;text-align:center}.nav-tab.is-active{background:var(--accent-soft);color:var(--accent)}.nav-icon{width:24px;height:24px;stroke-width:1.75}.nav-tab.is-active .nav-icon{fill:none}.collection-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.icon-button{display:grid;width:48px;height:48px;flex:0 0 48px;place-items:center;padding:0;border:1px solid var(--line);border-radius:12px;background:var(--surface);cursor:pointer}.icon-button svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.collection-controls{display:block;margin:0;padding:0}.collection-tabs{display:flex;flex-wrap:nowrap;gap:8px}.collection-tab{flex:1;min-width:0;min-height:48px;padding:8px 4px;font-size:.875rem;overflow-wrap:anywhere}.collection-tab.is-active{background:var(--surface-soft);color:var(--ink);border-color:var(--ink);font-weight:700}.saved-words{gap:8px;margin:24px 0 0;padding-bottom:80px}.word-group{border:1px solid var(--line);border-radius:20px;background:var(--surface)}.group-heading{display:flex;min-height:64px;align-items:center;gap:12px;padding:12px 16px;border-radius:20px;font-size:1.125rem;font-weight:600;cursor:pointer;list-style:none}.group-heading::-webkit-details-marker{display:none}.group-heading>span:first-child{flex:1;min-width:0;overflow-wrap:anywhere}.group-count{color:var(--muted);font-size:.875rem;font-weight:600}.group-heading svg{width:24px;height:24px;flex:0 0 24px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round;transition:transform .16s ease-out}.word-group[open] .group-heading svg{transform:rotate(180deg)}.group-words{display:grid;gap:8px;padding:0 8px 8px}.saved-word{min-height:72px;gap:4px;padding:8px;border-radius:16px}.saved-word:hover{transform:none;box-shadow:none}.saved-word-copy{flex:1;gap:4px}.saved-word-meta{display:flex;align-items:center;flex-wrap:wrap;gap:4px 8px;color:var(--muted);font-size:.875rem;overflow-wrap:anywhere}.saved-word-group{font-size:.8125rem}.saved-word-part,.saved-word-language{font-size:.8125rem;color:var(--ink)}.word-menu{position:relative;flex:0 0 48px}.word-menu summary{display:grid;width:48px;height:48px;place-items:center;border-radius:12px;cursor:pointer;list-style:none;font-size:1.5rem}.word-menu svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.word-menu summary::-webkit-details-marker{display:none}.word-menu[open] .remove-word{position:absolute;z-index:3;right:0;min-width:120px;padding:8px 12px;border:1px solid var(--line);background:var(--surface)}.collection-range{margin:16px 0;padding:0;color:var(--ink)}.collection-range summary,.form-more summary{min-height:48px;display:flex;align-items:center;cursor:pointer;font-weight:600}.collection-range summary:after,.form-more summary:after{content:"\ff0b";margin-left:auto}.collection-range[open] summary:after,.form-more[open] summary:after{content:"\2212"}.collection-range .control-label{margin:8px 0;color:var(--ink);font-size:.875rem}.collection-range .control-label select,.range-inputs input{min-height:48px}.collection-range .check-label{min-height:48px;color:var(--ink);font-size:.875rem}.collection-range input[type=checkbox]{width:24px;height:24px}.collection-action{position:fixed;z-index:4;right:16px;bottom:calc(var(--nav-height, 96px) + 9px);left:16px;max-width:480px;margin:0 auto}.collection-action button{width:100%;min-height:52px;font-size:1rem}.empty-add{min-height:48px;padding:8px;color:var(--ink)}.list-empty{margin:16px 0 0;font-size:.875rem}.word-sheet{position:fixed;z-index:15;inset:0;display:flex;align-items:flex-end;justify-content:center;background:#0000008c}.sheet-open{overflow:hidden}.sheet-panel{width:min(100%,512px);max-height:92vh;max-height:92dvh;overflow-y:auto;overscroll-behavior:contain;padding:24px 16px calc(24px + env(safe-area-inset-bottom));border:1px solid var(--line);border-radius:20px 20px 0 0;background:var(--surface)}.sheet-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.sheet-heading h2{margin:0;font-size:1.375rem}#word-form{display:grid;grid-template-columns:1fr;gap:8px}#word-form label,#word-form>span{margin-top:8px;color:var(--ink);font-size:.875rem;font-weight:600}#word-form input,#word-form select{min-height:52px;font-size:1rem;border-radius:12px}.language-switch{display:flex;gap:8px}.language-switch button{flex:1;min-height:48px;border:1px solid var(--line);border-radius:12px;background:var(--surface);cursor:pointer}.language-switch button[aria-pressed=true]{border-color:var(--ink);background:var(--surface-soft);font-weight:700}.form-more label{display:block;margin:12px 0 8px}.form-submit{width:100%;min-height:52px;font-size:1rem}.form-message{min-height:1.25rem;font-size:.875rem}.settings-panel,.panel{box-shadow:none;border-radius:20px}.primary-button{box-shadow:none}.question-navigator .question-number{width:48px;height:48px;flex-basis:48px}.favorite-button{min-height:48px}body[data-theme=dark] .favorite-button.is-favorite{background:var(--surface-soft);border-color:var(--ink);color:var(--ink)}.favorite-button svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.favorite-button.is-favorite svg{fill:currentColor}.round-header{position:sticky;z-index:3;top:0;flex:0 0 auto;padding:max(8px,env(safe-area-inset-top)) 0 8px;background:var(--surface)}.round-header .question-navigator{margin-top:8px}.sheet-open .status-message{position:fixed;z-index:20;top:max(8px,env(safe-area-inset-top));right:16px;left:16px;margin:0 auto;max-width:480px}.round-stats,.keyboard-hint{font-size:.875rem}.nav-tab,.saved-word-language,.saved-word-part,.saved-word-group,#word-form label,#word-form>span,.language-note{font-size:max(.8125rem,12px)}summary:focus-visible{outline:3px solid var(--accent);outline-offset:3px}button,summary{transition:transform .16s ease-out,background-color .16s ease-out}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
