@font-face {
  font-family: "Gveret Levin";
  src: url("./fonts/gveret-levin.ttf") format("truetype");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}
:root { --gold: #9f6d32; --gold-soft: #d8bd91; --terracotta: #93634d; }
.lesson-content.is-opening h2 {
  font-family: "Noto Sans Hebrew", "Assistant", sans-serif;
  font-weight: 600;
  line-height: 1.3;
}
.course-sidebar { background: linear-gradient(165deg, rgba(255,253,249,.97), rgba(228,214,195,.97)); }
.lesson-card { min-height: 660px; }
.lesson-content { width: min(100%, 680px); }
.lesson-content h2 { font-size: clamp(2.25rem, 5vw, 4.1rem); }
.deep-note { margin: 25px 0; padding: 20px 22px; border-radius: 16px; background: rgba(147,99,77,.09); color: var(--brown); line-height: 1.75; }
.quote-list { display: grid; gap: 11px; margin: 22px 0; }
.quote-item { padding: 14px 17px; border: 1px solid rgba(85,59,49,.12); border-radius: 14px; background: rgba(255,255,255,.58); font-size: 1.02rem; line-height: 1.55; }
.check-list { display: grid; gap: 11px; margin: 23px 0; }
.check-option { position: relative; display: grid; grid-template-columns: 25px 1fr; gap: 12px; align-items: start; padding: 15px 16px; border: 1px solid rgba(85,59,49,.13); border-radius: 15px; background: rgba(255,255,255,.6); cursor: pointer; line-height: 1.5; }
.check-option input { width: 20px; height: 20px; margin: 2px 0 0; accent-color: var(--gold); }
.inline-fields { display: grid; gap: 15px; }
.inline-field { padding: 16px; border: 1px solid rgba(85,59,49,.12); border-radius: 15px; background: rgba(255,255,255,.56); }
.inline-field label { display: block; margin-bottom: 9px; color: var(--brown); font-weight: 600; line-height: 1.45; }
.inline-field input { width: 100%; min-height: 46px; padding: 10px 12px; color: var(--ink); border: 0; border-bottom: 1px solid rgba(85,59,49,.25); background: transparent; }
.belief-set { margin: 0 0 22px; padding: 20px; border: 1px solid rgba(159,109,50,.2); border-radius: 18px; background: rgba(255,255,255,.56); }
.belief-set h4 { margin: 0 0 15px; color: var(--gold); font-size: 1rem; }
.belief-set .question-field { margin-top: 14px; }
.energy-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; margin: 23px 0; }
.energy-card { padding: 21px; border: 1px solid rgba(85,59,49,.13); border-radius: 18px; background: rgba(255,255,255,.58); }
.energy-card h4 { margin: 0 0 12px; color: var(--brown); font-family: "Frank Ruhl Libre", serif; font-size: 1.25rem; }
.energy-card p { font-size: .98rem; }
.letter-field textarea { min-height: 330px; }
.need-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; margin-top: 22px; }
.need-option { display: block; cursor: pointer; }
.need-option input { position: absolute; opacity: 0; pointer-events: none; }
.need-body { height: 100%; padding: 16px; border: 1px solid rgba(85,59,49,.13); border-radius: 16px; background: rgba(255,255,255,.56); transition: .2s ease; }
.need-body strong { display: block; margin-bottom: 5px; color: var(--brown); }
.need-body span { color: var(--muted); font-size: .9rem; line-height: 1.45; }
.need-option input:checked + .need-body { border-color: var(--gold); background: rgba(216,189,145,.25); box-shadow: 0 8px 22px rgba(85,59,49,.08); }
.sentence-builder { display: grid; gap: 16px; margin: 24px 0; }
.sentence-row { display: grid; grid-template-columns: auto 1fr auto; gap: 9px; align-items: center; font-size: 1.08rem; }
.sentence-row input { min-width: 0; padding: 9px 8px; border: 0; border-bottom: 1px solid rgba(85,59,49,.3); background: transparent; }
.mini-save { margin-top: 8px; color: var(--muted); font-size: .82rem; }
@media(max-width:680px){.energy-grid,.need-grid{grid-template-columns:1fr}.sentence-row{grid-template-columns:1fr}.sentence-row span{font-weight:600}.lesson-card{min-height:calc(100svh - 184px)}}

.need-text{padding:15px 0;border-bottom:1px solid rgba(85,59,49,.12);line-height:1.65}.need-text strong{color:var(--brown);font-size:1.12rem}.need-text p{margin:5px 0 0;color:var(--muted);font-size:1rem}.letter-field textarea{min-height:470px;}
