:root{
  color-scheme:light;
  --navy:#071d31;
  --navy-2:#0e2c46;
  --blue:#173f5f;
  --gold:#b77a2a;
  --gold-light:#f1cf8e;
  --paper:#f7edd9;
  --paper-deep:#ead6b2;
  --card:#fffaf0;
  --ink:#241b13;
  --muted:#6d5a46;
  --line:rgba(91,60,29,.28);
  --red:#8b3127;
  --green:#2f6849;
  --shadow:0 16px 42px rgba(10,21,31,.2);
  --header-h:68px;
  --sediment-h:68px;
  --lesson-nav-h:58px;
  --radius:18px;
  --reading-size:18px;
  --safe-top:env(safe-area-inset-top,0px);
  --safe-right:env(safe-area-inset-right,0px);
  --safe-bottom:env(safe-area-inset-bottom,0px);
  --safe-left:env(safe-area-inset-left,0px);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--navy)}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Georgia,"Times New Roman",serif;min-height:100vh}
body.study-mode{overflow:hidden}
body.font-large{--reading-size:20px}
body.font-huge{--reading-size:22px}
body[data-theme="night"]{
  color-scheme:dark;
  --paper:#142332;
  --paper-deep:#1d3142;
  --card:#1a2b3b;
  --ink:#f5ead7;
  --muted:#d7c7ad;
  --line:rgba(241,207,142,.28);
  --navy:#06131f;
  --navy-2:#0a2338;
  --blue:#8fb5cc;
  --gold:#e4b667;
  --gold-light:#f5dca9;
  --shadow:0 18px 50px rgba(0,0,0,.36);
}
button,input,textarea{font:inherit}
button{touch-action:manipulation}
a{color:inherit}
button:focus-visible,a:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:3px solid #1d77b5;outline-offset:3px}
.skip-link{position:fixed;left:1rem;top:-100px;background:#fff;color:#111;padding:.7rem 1rem;border-radius:0 0 10px 10px;z-index:1000}
.skip-link:focus{top:0}
.reading-progress{position:fixed;left:0;top:0;height:4px;background:linear-gradient(90deg,var(--gold),var(--gold-light));width:0;z-index:1000;transition:width .15s linear}
.app-header{
  position:sticky;top:0;z-index:100;height:calc(var(--header-h) + var(--safe-top));
  padding:calc(.55rem + var(--safe-top)) calc(.8rem + var(--safe-right)) .55rem calc(.8rem + var(--safe-left));
  display:grid;grid-template-columns:1fr minmax(0,2fr) 1fr;align-items:center;gap:.75rem;
  background:linear-gradient(180deg,#0b2942,#061827);color:#fff4dd;border-bottom:1px solid rgba(241,207,142,.45);
  box-shadow:0 8px 25px rgba(0,0,0,.22)
}
.header-title{text-align:center;min-width:0;line-height:1.05}
.header-title span{display:block;color:var(--gold-light);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;margin-bottom:.2rem}
.header-title strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:clamp(1rem,2vw,1.28rem);font-weight:600}
.header-actions{display:flex;justify-content:flex-end;gap:.35rem}
.header-btn{min-width:44px;min-height:44px;border:1px solid rgba(241,207,142,.32);border-radius:12px;background:rgba(255,255,255,.07);color:#fff4dd;padding:.45rem .7rem;display:inline-flex;align-items:center;justify-content:center;gap:.4rem;cursor:pointer}
.header-btn:hover{background:rgba(241,207,142,.15);border-color:var(--gold-light)}
.home-btn{justify-self:start}
.cover-view{min-height:calc(100vh - var(--header-h));padding:1.25rem max(1rem,var(--safe-right)) calc(2rem + var(--safe-bottom)) max(1rem,var(--safe-left));background:
  radial-gradient(circle at 12% 8%,rgba(183,122,42,.2),transparent 24rem),
  radial-gradient(circle at 88% 4%,rgba(139,49,39,.15),transparent 24rem),
  linear-gradient(180deg,#071d31 0,#0a2135 38%,#0d1d28 100%)}
.hero-shell{width:min(1086px,96vw);margin:auto;position:relative;border-radius:0 0 24px 24px;overflow:hidden;border:1px solid rgba(241,207,142,.45);box-shadow:0 22px 55px rgba(0,0,0,.42);background:#071d31}
.hero-img{display:block;width:100%;height:auto}
.hotspot{position:absolute;border:2px solid transparent;border-radius:16px;background:transparent;cursor:pointer}
.hotspot:hover,.hotspot:focus-visible{border-color:var(--gold-light);background:rgba(241,207,142,.18);box-shadow:0 0 0 4px rgba(7,29,49,.35),0 0 24px rgba(241,207,142,.55)}
.cover-intro,.resume-card,.cover-footer{width:min(1086px,96vw);margin-inline:auto}
.cover-intro{margin-top:1rem;padding:1.15rem 1.25rem;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;border:1px solid rgba(241,207,142,.4);border-radius:18px;background:rgba(7,29,49,.84);color:#fff4dd}
.eyebrow{display:inline-block;color:var(--gold);font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.cover-intro h1{margin:.3rem 0 .45rem;font-size:clamp(1.55rem,3.8vw,2.8rem);line-height:1.05;font-weight:500}
.cover-intro p{margin:0;color:#e8d9bf;line-height:1.55;max-width:760px}
.primary-btn,.secondary-btn{min-height:46px;border-radius:999px;padding:.7rem 1.1rem;border:1px solid #f4daa5;background:linear-gradient(180deg,#f1cf8e,#b77a2a);color:#1c1208;font-weight:700;cursor:pointer;white-space:nowrap}
.secondary-btn{background:transparent;color:var(--gold-light)}
.cover-index{width:min(1086px,96vw);margin:1rem auto 0;display:grid;grid-template-columns:repeat(3,1fr);gap:.65rem}
.cover-index button{min-height:94px;text-align:left;border:1px solid rgba(241,207,142,.36);border-radius:16px;padding:.8rem .9rem;color:#fff4dd;background:rgba(7,29,49,.82);cursor:pointer;display:grid;grid-template-columns:auto 1fr;column-gap:.7rem;align-content:center}
.cover-index button:hover{background:#123552;border-color:var(--gold-light);transform:translateY(-1px)}
.cover-index button>span{grid-row:1/3;color:var(--gold-light);font-size:1.4rem;align-self:center}
.cover-index strong{font-weight:600}.cover-index small{color:#d8c8ae;margin-top:.2rem}
.resume-card{margin-top:1rem;padding:1rem 1.15rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;color:#fff4dd;background:linear-gradient(135deg,rgba(139,49,39,.82),rgba(7,29,49,.9));border:1px solid rgba(241,207,142,.4);border-radius:16px}
.resume-card div{display:grid;gap:.25rem}.resume-card small{color:#e8d9bf}
.cover-footer{margin-top:1rem;padding:1rem 0;color:#e6d4b7;display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;font-size:.92rem}
.cover-footer a,.cover-footer button{border:0;background:transparent;color:var(--gold-light);text-decoration:underline;cursor:pointer}
.study-view{height:calc(100dvh - var(--header-h) - var(--safe-top));background:var(--paper)}
.study-grid{height:calc(100% - var(--lesson-nav-h) - var(--sediment-h) - var(--safe-bottom));display:grid;grid-template-columns:minmax(0,2fr) minmax(310px,1fr);grid-template-rows:minmax(0,1fr) minmax(0,1fr);gap:1px;background:var(--line)}
.lesson-pane{grid-row:1/3;background:var(--card);min-width:0;display:flex;flex-direction:column;overflow:hidden}
.lesson-heading{padding:1rem clamp(1rem,3vw,2rem) .75rem;background:linear-gradient(180deg,var(--paper),var(--card));border-bottom:1px solid var(--line)}
.lesson-heading>div{display:flex;align-items:center;gap:.65rem}
.section-number{display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--gold);border-radius:50%;color:var(--gold);font-weight:700}
.lesson-heading h1{margin:.35rem 0;font-size:clamp(1.9rem,3.6vw,3.2rem);line-height:1;color:var(--navy)}
.guiding-question{margin:.35rem 0 0;color:var(--muted);font-size:1rem;line-height:1.45;font-style:italic}
.reading-tools{display:flex;gap:.4rem;padding:.55rem .75rem;background:var(--navy);overflow-x:auto;scrollbar-width:thin;border-bottom:1px solid var(--gold)}
.reading-tools button{min-height:42px;border:1px solid rgba(241,207,142,.4);border-radius:999px;padding:.48rem .75rem;background:rgba(255,255,255,.07);color:#fff4dd;cursor:pointer;white-space:nowrap}
.reading-tools button:hover{background:rgba(241,207,142,.16)}
.count-badge{display:inline-grid;place-items:center;min-width:22px;height:22px;margin-left:.25rem;border-radius:999px;background:var(--gold-light);color:#1c1208;font-size:.78rem;font-weight:700}
.lesson-scroll{flex:1;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding:clamp(1rem,3vw,2rem)}
.lesson-content{max-width:850px;margin-inline:auto;font-size:var(--reading-size);line-height:1.78;user-select:text;-webkit-user-select:text;cursor:text}
.lesson-content h2{font-size:clamp(1.35rem,2.5vw,1.8rem);line-height:1.2;color:var(--blue);margin:1.5rem 0 .55rem}
.lesson-content p{margin:.75rem 0}
.lesson-content .thesis{font-size:1.08em;border-left:5px solid var(--gold);padding:.9rem 1rem;background:color-mix(in srgb,var(--gold) 10%,transparent);border-radius:0 12px 12px 0}
.lesson-block{scroll-margin-top:1rem}
.bridge-note{margin:1.5rem 0 .5rem;padding:1rem 1.1rem;background:var(--navy);color:#fff4dd;border:1px solid var(--gold);border-radius:14px;line-height:1.6}
mark.study-highlight{background:#ffe169;color:#211500;padding:.03em 0;border-radius:.18em;box-decoration-break:clone;-webkit-box-decoration-break:clone}
body[data-theme="night"] mark.study-highlight{background:#9a701a;color:#fff}
.lesson-summary{max-width:850px;margin:2rem auto 1rem;padding:1.15rem 1.25rem;border:1px solid var(--line);border-radius:16px;background:var(--paper)}
.lesson-summary h2{margin:.35rem 0 .6rem;color:var(--blue);font-size:1.35rem}
.lesson-summary p{font-size:calc(var(--reading-size) - 1px);line-height:1.65;margin:0}
.visual-pane{background:var(--paper-deep);padding:.8rem;display:flex;flex-direction:column;overflow:hidden;min-height:0}
.visual-stage{min-height:0;display:flex;flex-direction:column;align-items:stretch;flex:1}
.visual-meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;color:var(--muted);font-size:.8rem}
.image-button{position:relative;display:block;flex:1;min-height:0;border:1px solid var(--line);border-radius:14px;padding:0;overflow:hidden;background:var(--navy);cursor:zoom-in}
.image-button img{display:block;width:100%;height:100%;object-fit:contain;background:#20160e}
.image-button span{position:absolute;right:.55rem;bottom:.55rem;background:rgba(7,29,49,.9);color:#fff4dd;border:1px solid var(--gold);border-radius:999px;padding:.35rem .6rem;font-size:.75rem}
.visual-stage h2{font-size:1.15rem;margin:.55rem 0 .2rem;color:var(--blue)}
.visual-stage p{font-size:.88rem;line-height:1.35;margin:0;color:var(--muted)}
.visual-thumbs{display:flex;gap:.45rem;overflow-x:auto;padding-top:.65rem}
.visual-thumbs button{width:64px;height:54px;flex:0 0 auto;padding:0;border:2px solid transparent;border-radius:9px;overflow:hidden;background:var(--card);cursor:pointer}
.visual-thumbs button.active{border-color:var(--gold);box-shadow:0 0 0 2px var(--card)}
.visual-thumbs img{width:100%;height:100%;object-fit:cover}
.notes-pane{background:var(--card);padding:.8rem;overflow-y:auto;overscroll-behavior:contain;min-height:0;scrollbar-gutter:stable;display:block}
.notes-header,.citations-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem}
.notes-header h2{margin:.2rem 0 .65rem;color:var(--blue);font-size:1.3rem}
.save-status{font-size:.75rem;color:var(--green);padding:.2rem .45rem;border:1px solid color-mix(in srgb,var(--green) 45%,transparent);border-radius:999px}
.notes-pane label{font-weight:700;font-size:.9rem;color:var(--muted)}
#notesArea{display:block;width:100%;min-height:118px;margin:.35rem 0 .8rem;resize:vertical;border:1px solid var(--line);border-radius:12px;background:var(--paper);color:var(--ink);padding:.75rem;line-height:1.5}
.citations-header small{display:block;color:var(--muted);font-size:.76rem;margin-top:.1rem}
.citations{display:grid;gap:.6rem;margin:.5rem 0 1rem}
.empty-citations{padding:.8rem;border:1px dashed var(--line);border-radius:10px;color:var(--muted);font-size:.86rem}
.citation{position:relative;margin:0;padding:.7rem 2rem .7rem .75rem;border-left:3px solid var(--gold);background:var(--paper);border-radius:0 10px 10px 0;line-height:1.45;font-size:.9rem}
.citation button{position:absolute;right:.35rem;top:.35rem;width:28px;height:28px;border:0;border-radius:50%;background:transparent;color:var(--red);cursor:pointer}
.notes-actions{position:sticky;bottom:-.8rem;display:flex;gap:.5rem;padding:.65rem 0 .8rem;background:linear-gradient(180deg,transparent 0,var(--card) 22%)}
.notes-actions button,.dialog-footer button{min-height:42px;border:1px solid var(--line);border-radius:10px;background:var(--navy);color:#fff4dd;padding:.45rem .7rem;cursor:pointer}
.danger-btn{color:#fff!important;background:var(--red)!important;border-color:#a84b41!important}
.lesson-nav{height:var(--lesson-nav-h);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;background:var(--navy);color:#fff4dd;border-top:1px solid rgba(241,207,142,.35)}
.lesson-nav>button{height:100%;border:0;background:transparent;color:inherit;padding:0 1rem;cursor:pointer;display:flex;align-items:center;gap:.45rem}
.lesson-nav>button:last-child{justify-self:end}.lesson-nav>button:disabled{opacity:.35;cursor:not-allowed}
.lesson-nav>div{text-align:center;font-size:.78rem;color:#decbaa}
.dots{display:flex;gap:.25rem;justify-content:center;margin-top:.25rem}.dots i{width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,.28)}.dots i.done{background:var(--gold-light)}
.sediment-bar{height:calc(var(--sediment-h) + var(--safe-bottom));padding:0 var(--safe-right) var(--safe-bottom) var(--safe-left);display:grid;grid-template-columns:repeat(3,1fr);background:#04121e;border-top:1px solid var(--gold)}
.sediment-bar button{border:0;border-right:1px solid rgba(241,207,142,.2);background:transparent;color:#fff4dd;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.6rem;min-height:52px}
.sediment-bar button:last-child{border-right:0}.sediment-bar button:hover{background:rgba(241,207,142,.12);color:var(--gold-light)}
.mobile-tabs{display:none}
dialog{border:0;padding:0;background:transparent;color:var(--ink)}
dialog::backdrop{background:rgba(2,9,15,.78);backdrop-filter:blur(3px)}
.drawer-dialog{width:min(560px,96vw);max-height:92dvh}
.study-dialog{width:min(880px,96vw);max-height:92dvh}
.dialog-shell{max-height:92dvh;overflow-y:auto;background:var(--card);border:1px solid var(--gold);border-radius:18px;box-shadow:0 24px 70px rgba(0,0,0,.42)}
.dialog-header{position:sticky;top:0;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.1rem;background:var(--navy);color:#fff4dd;border-bottom:1px solid var(--gold)}
.dialog-header h2{margin:.25rem 0 0;font-size:clamp(1.4rem,3vw,2rem)}
.icon-btn{width:44px;height:44px;border:1px solid rgba(241,207,142,.5);border-radius:50%;background:transparent;color:#fff4dd;font-size:1.55rem;cursor:pointer}
.dialog-index-list{display:grid;padding:.75rem}
.dialog-index-list button{display:grid;grid-template-columns:48px 1fr auto;align-items:center;gap:.7rem;text-align:left;border:0;border-bottom:1px solid var(--line);padding:.8rem .5rem;background:transparent;color:var(--ink);cursor:pointer}
.dialog-index-list button:hover{background:var(--paper)}.dialog-index-list .index-num{color:var(--gold);font-size:1.3rem}.dialog-index-list small{color:var(--muted)}.completion-mark{color:var(--green);font-weight:700}
.dialog-footer{padding:.8rem 1rem 1rem;display:flex;justify-content:flex-end}
.study-dialog-body{padding:1.1rem}
.essentials-list{display:grid;gap:.75rem;list-style:none;padding:0;margin:0}
.essentials-list li{position:relative;padding:.8rem .9rem .8rem 2.4rem;border:1px solid var(--line);border-radius:12px;background:var(--paper);line-height:1.5}
.essentials-list li::before{content:"◆";position:absolute;left:.9rem;color:var(--gold)}
.vocab-list{display:grid;grid-template-columns:repeat(2,1fr);gap:.7rem;margin:0}
.vocab-list>div{padding:.8rem;border:1px solid var(--line);border-radius:12px;background:var(--paper)}
.vocab-list dt{font-weight:700;color:var(--blue);margin-bottom:.25rem}.vocab-list dd{margin:0;line-height:1.45;color:var(--muted)}
.quiz-intro{padding:.75rem .9rem;background:var(--paper);border:1px solid var(--line);border-radius:12px;line-height:1.5}
.quiz-list{display:grid;gap:1rem;margin-top:1rem}
.quiz-question{padding:1rem;border:1px solid var(--line);border-radius:14px;background:var(--paper)}
.quiz-question h3{font-size:1.05rem;line-height:1.4;margin:0 0 .7rem;color:var(--ink)}
.quiz-options{display:grid;gap:.5rem}
.quiz-option{display:grid;grid-template-columns:30px 1fr;align-items:start;gap:.55rem;text-align:left;border:1px solid var(--line);border-radius:10px;background:var(--card);color:var(--ink);padding:.65rem;cursor:pointer;line-height:1.4}
.quiz-option .letter{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;border:1px solid var(--gold);color:var(--gold);font-weight:700}
.quiz-option.selected{border-color:var(--blue);box-shadow:0 0 0 2px color-mix(in srgb,var(--blue) 22%,transparent)}
.quiz-option.correct{border-color:var(--green);background:color-mix(in srgb,var(--green) 12%,var(--card))}
.quiz-option.wrong{border-color:var(--red);background:color-mix(in srgb,var(--red) 12%,var(--card))}
.question-feedback{margin:.7rem 0 0;padding:.65rem;border-left:3px solid var(--blue);line-height:1.45}
.quiz-actions{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:1rem}
.quiz-actions button{min-height:44px;border:1px solid var(--line);border-radius:999px;padding:.55rem .9rem;background:var(--navy);color:#fff4dd;cursor:pointer}
.quiz-result{margin-top:1rem;padding:1rem;border:1px solid var(--gold);border-radius:14px;background:var(--paper)}
.score-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem;text-align:center;margin:.75rem 0}.score-grid strong{display:block;font-size:1.5rem;color:var(--blue)}.score-grid span{font-size:.78rem;color:var(--muted)}
.recovery-list{display:grid;gap:.8rem;margin-top:1rem}
.recovery-card{padding:.9rem;border:1px solid var(--line);border-radius:12px;background:var(--card)}
.recovery-card h4{margin:0 0 .45rem;color:var(--red)}.recovery-card p{margin:.35rem 0;line-height:1.45}.recovery-card a{color:var(--blue);font-weight:700}
.image-dialog{width:min(1180px,98vw);max-height:96dvh}
.image-dialog-shell{max-height:96dvh;display:flex;flex-direction:column;background:#101010;border:1px solid var(--gold);border-radius:16px;overflow:hidden;color:#fff}
.image-dialog img{display:block;max-width:100%;max-height:calc(96dvh - 125px);object-fit:contain;margin:auto;background:#1b130b}
.image-dialog p{margin:.5rem 1rem .8rem;color:#e7d8bf;text-align:center}
.toast{position:fixed;left:50%;bottom:calc(var(--sediment-h) + var(--safe-bottom) + 1rem);transform:translate(-50%,18px);z-index:500;max-width:min(90vw,620px);padding:.7rem 1rem;border:1px solid var(--gold);border-radius:999px;background:var(--navy);color:#fff4dd;box-shadow:var(--shadow);opacity:0;pointer-events:none;transition:.2s ease;text-align:center}
.toast.show{opacity:1;transform:translate(-50%,0)}
/* Il ponte condiviso resta disponibile in home, ma non deve coprire i
   comandi fissi dell'ambiente di studio. */
body.study-mode .ottocento-bridge-hub{display:none!important}
@media(max-width:1050px){
  .study-grid{grid-template-columns:minmax(0,1.85fr) minmax(285px,1fr)}
  .header-label{display:none}
}
@media(max-width:900px){
  body.study-mode{overflow:hidden}
  .app-header{grid-template-columns:auto minmax(0,1fr) auto}
  .mobile-tabs{height:48px;display:grid;grid-template-columns:repeat(3,1fr);background:var(--navy);border-bottom:1px solid var(--gold)}
  .mobile-tabs button{border:0;background:transparent;color:#e8d9bf;min-height:44px}
  .mobile-tabs button.active{color:var(--gold-light);box-shadow:inset 0 -3px var(--gold)}
  .study-grid{height:calc(100% - var(--lesson-nav-h) - var(--sediment-h) - var(--safe-bottom) - 48px);display:block;background:var(--paper)}
  [data-pane]{display:none!important;height:100%}
  [data-pane].active-pane{display:flex!important}
  .notes-pane.active-pane{display:block!important}
  .visual-pane{padding:1rem;max-width:720px;margin:auto}
  .image-button{min-height:0}
  .visual-stage h2{font-size:1.35rem}.visual-stage p{font-size:1rem}
  .cover-index{grid-template-columns:repeat(2,1fr)}
  .cover-intro{align-items:flex-start;flex-direction:column}
  .cover-intro .primary-btn{align-self:stretch;justify-content:center}
}
@media(max-width:600px){
  :root{--header-h:62px;--sediment-h:62px;--lesson-nav-h:54px;--reading-size:17px}
  .app-header{padding-inline:.45rem;gap:.4rem}
  .header-btn{padding:.35rem .5rem}.header-actions{gap:.2rem}.header-title span{font-size:.62rem}
  .cover-view{padding-inline:.5rem}.hero-shell,.cover-intro,.cover-index,.resume-card,.cover-footer{width:100%}
  .hero-shell{border-radius:0 0 16px 16px}.hotspot{border-radius:8px}
  .cover-index{grid-template-columns:1fr}.cover-index button{min-height:78px}
  .cover-footer{padding-inline:.5rem}
  .lesson-heading{padding:.7rem .9rem .6rem}.lesson-heading h1{font-size:1.8rem}.guiding-question{font-size:.9rem}
  .reading-tools{padding:.45rem}.lesson-scroll{padding:1rem .9rem}
  .lesson-nav>button{padding:0 .65rem}.lesson-nav>button span:not([aria-hidden]){font-size:.78rem}
  .sediment-bar button{font-size:.76rem;gap:.28rem;padding:.2rem}.sediment-bar button span{display:none}
  .vocab-list{grid-template-columns:1fr}.study-dialog-body{padding:.8rem}
  .score-grid{grid-template-columns:1fr 1fr 1fr}
}
@media(orientation:landscape) and (max-height:600px) and (min-width:901px){
  :root{--header-h:58px;--sediment-h:56px;--lesson-nav-h:48px}
  .lesson-heading{padding:.55rem 1rem}.lesson-heading h1{font-size:1.75rem}.guiding-question{display:none}
  .reading-tools{padding:.35rem .5rem}.reading-tools button{min-height:38px}
  .visual-pane,.notes-pane{padding:.55rem}
  #notesArea{min-height:80px}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}
}
@media print{
  .app-header,.reading-tools,.visual-pane,.notes-pane,.lesson-nav,.sediment-bar,.mobile-tabs{display:none!important}
  body,body.study-mode{overflow:visible;background:#fff;color:#000}
  .study-view,.study-grid,.lesson-pane,.lesson-scroll{display:block!important;height:auto!important;overflow:visible!important;background:#fff}
  .lesson-content,.lesson-summary{max-width:none}
}
