.learning-tools{height:100%;min-height:0;display:flex;flex-direction:column;gap:14px;max-width:940px;margin:auto}
.learning-tools h1{font-size:32px;letter-spacing:0;margin:8px 0}
.learning-tools h2{font-size:21px;line-height:1.5;margin:0 0 10px}
.learning-tools p{line-height:1.8;font-size:14px;overflow-wrap:anywhere}
.learning-tools header{flex-shrink:0;border-bottom:1px solid var(--line);padding-bottom:12px}
.learning-scroll{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;padding:0 6px 20px 0}
body:has(.learning-tools){height:100dvh;overflow:hidden;display:flex;flex-direction:column}
body:has(.learning-tools) main{flex:1;min-height:0;width:100%;padding:16px 24px;overflow:hidden}
.backup-section{padding:18px 0;border-bottom:1px solid var(--line)}
.backup-section .secondary,.backup-section .primary{max-width:430px}
.backup-section input[type=file]{padding:12px;max-width:100%;font-size:13px}
.backup-preview{margin-top:16px;border-left:3px solid var(--orange);background:#22362a;padding:18px}
.backup-preview dl{display:flex;flex-wrap:wrap;gap:16px 28px;margin:12px 0 20px}
.backup-preview dl div{min-width:85px}.backup-preview dt{font-size:12px;color:var(--muted)}
.backup-preview dd{margin:6px 0 0;font:28px Georgia,serif;color:var(--paper)}
.backup-success{border-left:3px solid var(--good);padding:14px 18px;background:#22362a}
.notebook-toolbar{display:flex;flex-wrap:wrap;gap:8px;flex-shrink:0}
.notebook-toolbar button{width:auto;flex:1;min-width:130px;justify-content:center;padding:10px 12px}
.notebook .notebook-tools-row{display:flex;gap:18px;flex-wrap:wrap;margin:0}
.notebook>p.micro{margin:0}.notebook>h1{font-size:32px}
.pack-toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:10px 0}
.pack-toolbar .primary,.pack-toolbar .secondary{width:auto;flex:1;min-width:200px;justify-content:center}
.pack-list{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.pack-entry{border:1px solid var(--line);padding:16px;background:#213329}
.pack-entry h2{font-family:Georgia,serif;font-size:25px;display:flex;align-items:center;gap:12px}
.pack-entry .check{font-size:14px;margin:0 0 10px}.pack-entry .check input{width:18px;height:18px;flex:none}
.pack-entry p{margin:8px 0}.pack-entry details{font-size:14px;line-height:1.8;margin:10px 0}
.pack-entry summary{cursor:pointer;color:var(--muted)}.pack-entry blockquote{margin:10px 0;padding-left:12px;border-left:2px solid var(--line)}
.pack-entry blockquote small{display:block;color:var(--muted);font:13px/1.7 "Segoe UI","Microsoft YaHei",sans-serif}
.pack-entry .text-link{font-size:13px}.pack-caption{margin:0!important;color:var(--muted)}
.pack-selection{font-size:13px;color:var(--orange)}.review-screen .context-sentence{font-size:21px;line-height:1.7;color:var(--paper)}
.review-screen .answer-comparison{margin-top:14px}.review-screen .answer-comparison p{color:var(--paper)}
.review-screen .answer-option span:last-child{font:inherit;color:inherit;border:0;padding:0}
@media(max-width:680px){
  body:has(.learning-tools) .masthead{padding:12px 18px}
  body:has(.learning-tools) footer{display:none}
  body:has(.learning-tools) main{padding:12px 18px}
  .learning-tools h1{font-size:26px}.learning-tools{gap:10px}
  .pack-list{grid-template-columns:1fr}.pack-toolbar{gap:7px;padding:8px 0}
  .pack-toolbar .primary,.pack-toolbar .secondary{font-size:13px;min-width:150px;padding:10px 12px}
  .notebook-toolbar button{min-width:90px;font-size:12px;padding:9px 8px}
  .notebook .notebook-tools-row{gap:8px 14px}.notebook>p.micro{font-size:11px}
  .backup-preview{padding:13px}.backup-preview dl{gap:12px 18px}
  .review-screen .answers{grid-template-columns:1fr}.review-screen .context-sentence{font-size:18px}
}
