@import url("../../../assets/vervenveda-parchment.css");
:root{
  --midnight:#08111f;--navy:#10243b;--navy2:#17334f;--parchment:#f4eddf;--paper:#fffaf0;
  --ink:#1a2430;--muted:#66717d;--gold:#c7a45a;--gold2:#ead39a;--rust:#9d4b3e;--teal:#357b78;
  --green:#34765a;--red:#a23d42;--line:rgba(24,35,48,.18);--darkline:rgba(255,255,255,.15);
  --shadow:0 18px 44px rgba(2,10,20,.22);--radius:7px;--font-display:Georgia,"Times New Roman",serif;
  --font-body:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:
  radial-gradient(circle at 15% 0%,rgba(199,164,90,.13),transparent 31rem),
  linear-gradient(145deg,#07101c 0%,#0d2035 52%,#07101c 100%);
  color:var(--parchment);font-family:var(--font-body);font-size:16px;line-height:1.62;min-height:100vh}
body.light{background:#e9e1d3;color:var(--ink)}
button,input,select,textarea{font:inherit}
button,a.button{border:1px solid rgba(255,255,255,.12);border-radius:var(--radius);padding:.72rem 1rem;
  background:linear-gradient(135deg,var(--gold2),var(--gold));color:#251d10;cursor:pointer;
  font-weight:700;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:.4rem}
button:hover,a.button:hover{transform:translateY(-1px);filter:brightness(1.04)}
button.secondary,a.button.secondary{background:#213a55;color:#fff;border-color:rgba(255,255,255,.18)}
button.ghost,a.button.ghost{background:transparent;color:var(--gold2);border-color:rgba(234,211,154,.48)}
button.danger{background:#572d32;color:#fff;border-color:#8a454d}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{
  outline:3px solid rgba(234,211,154,.5);outline-offset:3px}
input,textarea,select{width:100%;background:#071321;color:#fff;border:1px solid var(--darkline);
  border-radius:var(--radius);padding:.75rem}
textarea{min-height:130px;resize:vertical}
label{display:block;color:#d8dfeb;font-size:.9rem;margin:.3rem 0}
a{color:#8fd2ff}
h1,h2,h3,h4{font-family:var(--font-display);font-weight:444;letter-spacing:.01em;line-height:1.18}
h1{font-size:clamp(2.1rem,5vw,4.2rem);margin:.25rem 0}
h2{font-size:clamp(1.55rem,3vw,2.45rem)}
h3{font-size:1.35rem}
p{max-width:85ch}
ul,ol{padding-left:1.25rem}
.app{display:grid;grid-template-columns:300px minmax(0,1fr);min-height:100vh}
.sidebar{position:sticky;top:0;height:100vh;overflow:auto;background:rgba(5,14,25,.94);
  border-right:1px solid var(--darkline);padding:18px;backdrop-filter:blur(12px);z-index:20}
.brand{text-align:center;padding:10px 6px 18px}
.seal{width:70px;height:70px;border:2px solid var(--gold);border-radius:50%;display:grid;place-items:center;
  margin:0 auto 10px;background:radial-gradient(circle,rgba(199,164,90,.2),transparent 66%);
  color:var(--gold2);font-family:var(--font-display);font-size:1.6rem}
.brand h2{font-size:1.15rem;margin:.3rem 0}.brand p{margin:0;color:#aeb9c7;font-size:.86rem}
.breadcrumbs{display:flex;flex-wrap:wrap;justify-content:center;gap:.4rem;font-size:.82rem;margin-top:.8rem}
.panel{background:rgba(255,255,255,.045);border:1px solid var(--darkline);border-radius:var(--radius);padding:14px;margin:12px 0}
.panel h3{margin:.1rem 0 .65rem;font-size:1rem}
.inline{display:flex;gap:8px;align-items:center}.inline>*{flex:1}
.navBtn{width:100%;justify-content:flex-start;margin:4px 0;background:#11243a;color:#fff;border-color:var(--darkline)}
.navBtn.active{background:linear-gradient(135deg,#284e6f,#1a354f);border-color:var(--gold);color:var(--gold2)}
.weekList{display:grid;gap:5px;max-height:38vh;overflow:auto;padding-right:3px}
.weekBtn{display:grid;grid-template-columns:1fr auto;gap:8px;text-align:left;background:#0b1b2d;color:#f8f1e4;
  border:1px solid var(--darkline);padding:9px;border-radius:var(--radius)}
.weekBtn.active{border-color:var(--gold);background:#19354f}.weekBtn small{color:#aeb9c7}
.main{width:100%;max-width:1380px;margin:0 auto;padding:24px}
.hero{position:relative;overflow:hidden;background:linear-gradient(120deg,rgba(244,237,223,.98),rgba(235,220,187,.96));
  color:var(--ink);border:1px solid rgba(199,164,90,.65);border-radius:var(--radius);padding:clamp(24px,5vw,54px);
  box-shadow:var(--shadow);text-align:center}
.hero:before{content:"";position:absolute;inset:0;background:
  linear-gradient(90deg,transparent 49.6%,rgba(157,75,62,.08) 50%,transparent 50.4%),
  radial-gradient(circle at 50% -20%,rgba(199,164,90,.3),transparent 40%);pointer-events:none}
.hero>*{position:relative}.hero .eyebrow{color:#7c5b25;text-transform:uppercase;letter-spacing:.22em;font-size:.8rem}
.hero p{margin:.6rem auto;max-width:900px}.hero .subtitle{font-size:1.12rem;color:#44505c}
.heroActions{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:16px}
.tabs{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}
.tab{background:#122941;color:#fff;border-color:var(--darkline)}.tab.active{background:var(--gold);color:#211a0f}
.grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:14px}
.card{background:rgba(244,237,223,.98);color:var(--ink);border:1px solid rgba(199,164,90,.36);
  border-radius:var(--radius);padding:20px;box-shadow:0 12px 30px rgba(0,0,0,.13)}
.card.dark{background:rgba(11,28,45,.95);color:var(--parchment);border-color:var(--darkline)}
.card h2,.card h3,.card h4{margin:.2rem 0 .7rem}.card p,.card li{color:#34404c}
.card.dark p,.card.dark li{color:#d6deea}.card a{color:#176c98}.card.dark a{color:#9ed9ff}
.col12{grid-column:span 12}.col9{grid-column:span 9}.col8{grid-column:span 8}.col6{grid-column:span 6}
.col4{grid-column:span 4}.col3{grid-column:span 3}
.kpi{text-align:center}.kpi strong{font-family:var(--font-display);display:block;font-size:2.1rem;color:#8a682c}
.kpi span{color:var(--muted);font-size:.88rem}
.progress{height:12px;background:#d8cfbf;border-radius:99px;overflow:hidden;border:1px solid var(--line)}
.progress span{display:block;height:100%;background:linear-gradient(90deg,var(--rust),var(--gold),var(--green));width:0}
.pills{display:flex;flex-wrap:wrap;gap:6px}.pill{display:inline-flex;border:1px solid var(--line);border-radius:999px;
  padding:.25rem .62rem;font-size:.8rem;color:#596573;background:rgba(255,255,255,.4)}
.pill.good{color:#1e6549;border-color:#6ca78c;background:#edf8f1}.pill.warn{color:#755615;border-color:#cdb36d;background:#fff7de}
.pill.bad{color:#8f3036;border-color:#cf7d83;background:#fff0f1}
.notice{border-left:4px solid var(--gold);padding:12px 14px;background:#fff6dc;color:#5f4a1e;border-radius:var(--radius)}
.lesson,.assignment,.quizQ,.readingSection{border:1px solid var(--line);background:#fffdf7;border-radius:var(--radius);padding:16px;margin:12px 0}
.lessonHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.lessonHeader h3{margin:.1rem 0}.checkline{display:flex;gap:7px;align-items:center;color:var(--green);font-weight:700}
.checkline input{width:auto}
.readingSection h4{color:#785d2d}.sourceBox{border-left:4px solid var(--teal);background:#eef8f7;padding:14px;border-radius:var(--radius)}
.vocabGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.vocabItem{border:1px solid var(--line);background:#fffaf0;padding:10px;border-radius:var(--radius)}
.vocabItem strong{display:block;color:#7a5b24}
.assignment textarea,.quizQ textarea{background:#fff;color:var(--ink);border-color:var(--line)}
.assignmentStatus{font-size:.85rem;color:var(--muted)}
.choice{display:block;padding:10px;margin:7px 0;background:#f7f1e6;border:1px solid var(--line);border-radius:var(--radius)}
.choice input{width:auto;margin-right:8px}
.feedback{padding:10px;border-radius:var(--radius);margin:8px 0;border-left:4px solid var(--teal);background:#eef7f7}
.feedback.good{border-color:var(--green);background:#edf8f1}.feedback.bad{border-color:var(--red);background:#fff0f1}
.score{font-family:var(--font-display);font-size:1.8rem;color:#785d2d}
.actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
table{width:100%;border-collapse:collapse}th,td{padding:.68rem;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
th{color:#72551f;font-size:.84rem}td{color:#34404c}
.tableWrap{overflow:auto}
details{border:1px solid var(--line);border-radius:var(--radius);padding:10px;background:#fffaf0;margin:8px 0}
summary{cursor:pointer;font-weight:700;color:#765b29}
.small{font-size:.87rem;color:var(--muted)}.muted{color:var(--muted)}.hidden{display:none!important}
.footer{text-align:center;color:#aab5c4;padding:30px 8px;font-size:.86rem}
.reportSheet{background:#fff;color:#111;padding:28px;border:1px solid #bbb}.reportSheet h1,.reportSheet h2{color:#111}
.examNav{display:flex;flex-wrap:wrap;gap:6px}.examNav button{min-width:42px}
.lockScreen{max-width:560px;margin:40px auto}
@media(max-width:980px){.app{grid-template-columns:1fr}.sidebar{position:relative;height:auto}.weekList{max-height:230px}.main{padding:14px}
.col9,.col8,.col6,.col4,.col3,.col12{grid-column:span 12}}
@media(max-width:620px){.vocabGrid{grid-template-columns:1fr}.inline{flex-direction:column}.main{padding:8px}.card{padding:14px}.hero{padding:24px 14px}}
@media print{
  body{background:#fff!important;color:#111!important}
  .sidebar,.tabs,.noPrint,.heroActions,button,a.button,input,select,textarea{display:none!important}
  .app{display:block}.main{max-width:none;padding:0}.hero,.card,.lesson,.assignment,.quizQ,.readingSection,details{
    box-shadow:none!important;background:#fff!important;color:#111!important;border:1px solid #999!important;break-inside:avoid}
  .hero{padding:18px}.hero p,.card p,.card li,.card.dark p,.card.dark li,td{color:#111!important}
  .col12,.col9,.col8,.col6,.col4,.col3{grid-column:span 12}.grid{display:block}.card{margin:10px 0}
  a{color:#111;text-decoration:none}.footer{color:#111}
}

/* Calm student typography; titles and controls retain normal weight. */
h1,h2,h3,h4,summary,label,th,strong,b,.button,button{font-weight:400}body{font-weight:333}
button,a.button,.button,.checkline{font-weight:400}
h1{font-size:clamp(1.6rem,4vw,2.1rem)}h2{font-size:1.4rem}
[hidden]{display:none!important}
