.reading-main{max-width:1400px;margin:auto;padding:24px}.reading-tag{font-size:12px;letter-spacing:.12em;color:#62735c}.reading-hero{max-width:940px;margin:24px 0 20px}.reading-hero h1{font-size:clamp(30px,4vw,44px);line-height:1.16;margin:16px 0}.reading-hero h1 span{font-size:.58em;font-weight:500;color:#68765e}.reading-hero>p{font-size:15px;line-height:1.8;max-width:840px}.level-guide{border:1px solid #d5deca;background:#fbfcf3;border-radius:18px;padding:12px 16px;margin-top:14px}.level-guide summary{font-weight:700;cursor:pointer;min-height:28px}.level-guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.level-guide-grid h2{font-size:20px}.level-guide-grid p{font-size:14px;line-height:1.8}.reading-controls{display:grid;grid-template-columns:1fr 1fr 1fr 1.4fr;gap:16px;padding:22px;margin:20px 0}.reading-controls label{font-size:14px}.reading-controls select,.reading-controls input{margin:0;min-height:48px}.reading-layout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:28px;align-items:start}.reading-shelf h2{font-size:20px;margin:0 0 10px}.reading-shelf{position:sticky;top:20px;max-height:85vh;overflow:auto;padding-right:6px}.reading-card{display:block;width:100%;text-align:left;background:#fdfcf6;color:#284337;border:1px solid #d8dfcb;border-radius:15px;padding:16px;margin:10px 0;box-shadow:none;white-space:normal}.reading-card[aria-current=true]{background:#e3edcb;border:2px solid #557b42;padding:15px}.reading-card strong,.reading-card small{display:block}.reading-card strong{font-size:16px;line-height:1.5}.reading-card small{font-size:12px;line-height:1.6;color:#64745d;margin-top:5px}.reading-paper{padding:clamp(20px,4vw,45px);min-height:400px;scroll-margin-top:20px}.reading-paper h2{font-size:clamp(26px,3vw,39px);line-height:1.2;margin:16px 0 12px}.reading-subtitle{color:#6d785f;font-size:16px;line-height:1.7}.reading-meta{display:flex;gap:12px;flex-wrap:wrap;font-size:13px;font-weight:700;color:#657751}.reading-body{font-size:20px;line-height:1.95;max-width:74ch}.reading-body p{margin:22px 0}.reading-guide{background:#edf2df;border-left:4px solid #7b9951;padding:16px 20px;margin:25px 0;line-height:1.9}.reading-guide h3{font-size:16px;margin:0 0 8px}.reading-guide p{margin:0;font-size:15px}.reading-words{display:flex;flex-wrap:wrap;gap:9px}.reading-word{padding:10px 14px;background:#f2eddd;border-radius:12px;font-size:15px}.reading-word small{display:block;font-size:12px;color:#6d705e;margin-top:4px}.reading-paper details{margin:20px 0;padding:16px;border:1px solid #dce2cc;border-radius:14px}.reading-paper summary{cursor:pointer;font-weight:700;min-height:26px}.reading-paper details .reading-body{font-size:17px}.discussion-prompt{padding:20px;background:#f8eccf;border-radius:15px;font-size:18px;line-height:1.7}.discussion-prompt small{display:block;font-size:14px;margin-top:8px}.reading-task{font-size:16px;line-height:1.8}.reading-empty{font-size:18px;padding:20px}.reading-footer{color:#6a745f;font-size:13px;line-height:1.8;margin-top:40px}.reading-home-link{display:block;background:#edf2dc;padding:18px;border-radius:15px;margin:20px 0;line-height:1.7;font-weight:700}.dossier-level{padding:14px;background:#edf2dc;border-radius:12px;margin:18px 0}.dossier-level label{font-size:14px}.dossier-level select{min-height:44px}.dossier-level p{font-size:13px;line-height:1.6}
@media(max-width:900px){.reading-controls{grid-template-columns:1fr 1fr}.reading-layout{grid-template-columns:230px minmax(0,1fr)}.reading-paper{padding:23px}.reading-body{font-size:18px}.reading-hero{margin-top:30px}}
@media(max-width:650px){.reading-main{padding:14px}.reading-tag{display:none}.reading-layout{display:block}.reading-shelf{position:static;max-height:none;padding:0}.reading-shelf #reading-list{display:flex;gap:10px;overflow-x:auto;padding-bottom:12px}.reading-card{flex:0 0 225px;margin:0}.reading-controls{gap:12px;padding:16px}.reading-controls label{font-size:12px}.reading-controls select{font-size:13px}.level-guide-grid{display:block}.reading-paper{margin-top:15px}.reading-hero h1{font-size:36px}.reading-hero>p{font-size:15px}}
#reading-content{scroll-margin-top:105px}.reading-shelf{top:100px;max-height:calc(100vh - 115px)}
@media(max-width:650px){.reading-shelf{max-height:none}}
