.study-directory{gap:28px;display:grid}.tool-directory-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.compact-skill-directory{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)}.tool-directory-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);min-height:190px;padding:22px;text-decoration:none}.tool-directory-card.is-available{box-shadow:var(--shadow);border-color:#b8dcd4}.tool-directory-card>span{color:var(--brand);text-transform:uppercase;font-size:.76rem;font-weight:800}.tool-directory-card h2{margin:10px 0 8px;font-size:1.15rem}.tool-directory-card p{color:var(--muted)}.tool-directory-card strong{color:var(--brand-dark)}.study-tool-shell{gap:18px;display:grid}.tool-status-row,.tool-action-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.tool-status-row{color:var(--muted);font-size:.86rem}.flashcard{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--panel);cursor:pointer;min-height:360px;box-shadow:var(--shadow);align-content:center;place-items:center;gap:14px;padding:34px;display:grid}.flashcard strong{font-family:Noto Sans SC,sans-serif;font-size:clamp(3.4rem,10vw,6.5rem);line-height:1}.flashcard .reference-pinyin{color:var(--brand-dark);font-size:1.25rem;font-weight:750}.flashcard-answer{min-height:26px;color:var(--muted);font-size:1rem}.reading-shell{width:min(1040px,100% - 32px);padding-top:34px}.reading-shell .compact-heading{padding-bottom:0}.reading-shell .compact-heading h1{font-size:clamp(1.9rem,3.3vw,2.6rem)}.reading-shell .compact-heading p{max-width:820px;font-size:.94rem}.reading-practice-list{gap:12px;display:grid}.reading-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.reading-summary article{border:1px solid var(--line);background:#ffffffc7;border-radius:12px;align-items:baseline;gap:8px;min-height:64px;padding:10px 14px;display:flex}.reading-summary strong{color:var(--brand-dark);font-size:1.05rem}.reading-summary span{color:var(--muted);font-size:.74rem}.reading-progress-track{background:#e7eeea;border-radius:999px;height:5px;overflow:hidden}.reading-progress-track span{border-radius:inherit;background:var(--brand);height:100%;transition:width .2s;display:block}.reading-passage-card{border:1px solid var(--line);background:var(--panel);border-radius:15px;padding:17px 18px}.reading-passage-header{justify-content:space-between;align-items:end;gap:16px;display:flex}.reading-passage-header>div>span{color:var(--brand);letter-spacing:.04em;text-transform:uppercase;font-size:.66rem;font-weight:800}.reading-passage-header h2{margin:2px 0 9px;font-size:1.15rem;line-height:1.2}.reading-passage-header>strong{color:var(--muted);white-space:nowrap;margin-bottom:9px;font-size:.72rem;font-weight:750}.reading-text{background:#f8faf9;border-radius:11px;padding:11px 13px}.reading-text p{margin:0 0 5px}.reading-text .reference-pinyin{color:#4d5c55;font-size:.8rem;line-height:1.45}.reading-chinese{font-family:Noto Sans SC,sans-serif;font-size:1.05rem;line-height:1.55}.reading-text details{color:var(--muted);margin-top:3px;font-size:.74rem}.reading-text summary{cursor:pointer;width:fit-content}.reading-text details p{margin:6px 0 0}.reading-vocabulary{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:14px;min-height:46px;padding:8px 0;display:flex}.reading-vocabulary>div{align-items:baseline;gap:8px;min-width:0;display:flex}.reading-vocabulary strong{flex:none;font-size:.76rem}.reading-vocabulary span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;overflow:hidden}.reading-save-words.button{border-radius:9px;flex:none;min-height:32px;padding:0 10px;font-size:.7rem}.reading-question-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:10px;display:grid}.reading-question{border:1px solid var(--line);background:#fbfcfb;border-radius:11px;align-content:start;gap:8px;min-height:128px;padding:11px;display:grid}.reading-question h3{margin:0;font-size:.82rem;line-height:1.35}.reading-choices{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.reading-choices button,.calculator-questions button{border:1px solid var(--line);cursor:pointer;background:#fafcfb;border-radius:8px;min-height:36px;padding:7px 8px}.reading-choices button{font-size:.72rem;line-height:1.2;transition:border-color .15s,background .15s,box-shadow .15s,transform .15s}.reading-choices button:hover:not(:disabled){border-color:#9ccfc4;transform:translateY(-1px);box-shadow:0 5px 12px #1d342c0f}.reading-choices button:disabled{opacity:1;cursor:default}.reading-choices button.selected,.calculator-questions button.selected{border-color:var(--brand);background:var(--brand-soft)}.reading-choices button.correct{background:#e8f7ef;border-color:#2f946c}.reading-choices button.wrong{background:#fff0f0;border-color:#cf6262}.reading-answer-feedback{color:var(--muted);margin:0;padding-top:1px;font-size:.72rem;line-height:1.35}.reading-answer-feedback strong{color:var(--ink)}.reading-answer-feedback.is-correct strong{color:#237553}.reading-answer-feedback.is-wrong strong{color:#a74444}.calculator-layout{grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr);align-items:start;gap:22px;display:grid}.calculator-questions{gap:12px;display:grid}.calculator-questions fieldset{border:1px solid var(--line);background:var(--panel);border-radius:14px;margin:0;padding:20px}.calculator-questions legend{padding:0 6px;font-weight:740}.calculator-questions fieldset>div{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px;display:grid}.calculator-result{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);box-shadow:var(--shadow);padding:24px;position:sticky;top:92px}.calculator-result h2{margin:7px 0}.calculator-result small{color:var(--muted);margin-top:14px;display:block}.reference-workspace{gap:18px;display:grid}.reference-controls{border:1px solid var(--line);background:var(--panel);border-radius:15px;grid-template-columns:minmax(150px,.7fr) minmax(240px,1.3fr) auto auto;align-items:end;gap:10px;padding:14px;display:grid}.reference-controls label{gap:5px;display:grid}.reference-controls label>span{color:var(--muted);font-size:.72rem;font-weight:750}.reference-controls select,.reference-controls input{border:1px solid var(--line);min-height:42px;color:var(--ink);font:inherit;background:#fff;border-radius:10px;padding:0 10px}.reference-controls button{border:1px solid var(--line);min-height:42px;color:var(--brand-dark);cursor:pointer;background:#f8faf9;border-radius:10px;padding:0 12px;font-weight:750}.reference-filter-status{justify-items:end;gap:1px;min-width:118px;display:grid}.reference-filter-status strong{font-size:1.3rem}.reference-filter-status span{max-width:150px;color:var(--muted);text-align:right;font-size:.7rem}.reference-heading-row{justify-content:space-between;align-items:end;gap:16px;display:flex}.reference-heading-row h2{margin:3px 0 0}.reference-heading-row>a{color:var(--brand-dark);font-size:.82rem;font-weight:800}@media (max-width:900px){.reference-controls{grid-template-columns:1fr 1fr}.reference-filter-status{justify-items:start}.reference-filter-status span{text-align:left}}@media (max-width:820px){.tool-directory-grid,.compact-skill-directory{grid-template-columns:repeat(2,minmax(0,1fr))}.calculator-layout{grid-template-columns:1fr}.calculator-result{position:static}.reading-question-list{grid-template-columns:1fr}.reading-question{min-height:0}}@media (max-width:620px){.reference-controls{grid-template-columns:1fr}.reference-heading-row{flex-direction:column;align-items:start}.reading-summary{grid-template-columns:1fr;gap:6px}.reading-summary article{min-height:48px}.reading-passage-card{padding:14px}.reading-passage-header{align-items:start}.reading-vocabulary{flex-direction:column;align-items:flex-start}.reading-vocabulary>div{gap:1px;display:grid}.reading-vocabulary span{white-space:normal}}@media (max-width:560px){.tool-directory-grid,.compact-skill-directory,.reading-choices,.calculator-questions fieldset>div{grid-template-columns:1fr}.tool-action-row .button{flex:42%}.flashcard{min-height:300px}}
