:root{--bg:#edf3f7;--surface:#fff;--soft:#f6f8fb;--text:#182230;--muted:#607083;--line:#dbe4ec;--blue:#2867d6;--blue-soft:#eaf1ff;--green:#237a57;--amber:#8b5e16;--shadow:0 10px 30px rgba(30,50,70,.08);font-family:Inter,Arial,sans-serif;color-scheme:light}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-size:16px;line-height:1.45}button,a{font:inherit}.shell{max-width:760px;margin:auto;min-height:100vh;padding:0 16px 96px}.topbar{display:flex;justify-content:space-between;align-items:center;padding:20px 2px 14px}.brand{font-weight:800;font-size:1.08rem}.date{color:var(--muted);font-size:.9rem}.profile{display:flex;align-items:center;gap:10px}.avatar{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#dce8fb;font-weight:800}.card{background:var(--surface);border:1px solid var(--line);border-radius:22px;padding:20px;margin-bottom:14px;box-shadow:var(--shadow)}.eyebrow{text-transform:uppercase;letter-spacing:.13em;font-size:.74rem;font-weight:800;color:var(--muted);margin:0 0 7px}h1,h2,h3,p{margin-top:0}h1{font-size:2rem;line-height:1.1;margin-bottom:10px}h2{font-size:1.35rem;margin-bottom:8px}.now{border-top:7px solid var(--blue);padding-top:17px}.now-head,.next-head,.section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.subject-icon{font-size:2rem;background:var(--soft);border-radius:16px;padding:10px}.facts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0}.fact{background:var(--soft);padding:12px;border-radius:14px}.fact span{display:block;color:var(--muted);font-size:.78rem;margin-bottom:3px}.fact strong{display:block}.progress{height:8px;border-radius:20px;background:#e5ebf1;overflow:hidden;margin:8px 0}.progress>span{display:block;width:58%;height:100%;background:var(--blue);border-radius:inherit}.time-left{color:var(--muted);font-size:.9rem}.button{display:inline-flex;justify-content:center;align-items:center;border:0;border-radius:14px;padding:12px 16px;font-weight:750;cursor:pointer;text-decoration:none}.primary{background:var(--blue);color:#fff}.secondary{background:var(--soft);color:var(--text);border:1px solid var(--line)}.text-button{border:0;background:none;color:var(--blue);font-weight:750;padding:5px}.next{display:flex;justify-content:space-between;align-items:center}.next p{color:var(--muted);margin:0}.timeline{list-style:none;padding:0;margin:14px 0 0}.lesson{display:grid;grid-template-columns:54px 1fr auto;gap:12px;align-items:center;padding:13px 0;border-top:1px solid var(--line)}.lesson:first-child{border-top:0}.lesson .time{color:var(--muted);font-size:.88rem}.lesson .place{color:var(--muted);font-size:.85rem}.lesson.current{background:var(--blue-soft);margin:0 -10px;padding:13px 10px;border-radius:14px;border-top:0}.badge{font-size:.72rem;font-weight:800;color:var(--blue);text-transform:uppercase}.change{border-left:6px solid #d69b2d;background:#fffaf0}.change p:last-child{margin-bottom:0}.reassure{font-weight:750;color:var(--green)}.bottom-nav{position:fixed;bottom:0;left:0;right:0;background:rgba(255,255,255,.96);border-top:1px solid var(--line);display:flex;justify-content:center;z-index:5}.nav-inner{width:min(760px,100%);display:grid;grid-template-columns:repeat(3,1fr)}.nav{border:0;background:none;padding:13px 8px 15px;color:var(--muted);font-weight:700}.nav.active{color:var(--blue)}.day-tabs{display:flex;gap:8px;overflow:auto;padding:2px 0 12px}.day-tab{min-width:58px;border:1px solid var(--line);background:var(--surface);border-radius:13px;padding:10px}.day-tab.active{background:var(--blue);color:#fff;border-color:var(--blue)}.materials{display:grid;gap:9px;margin:16px 0}.check{display:flex;gap:11px;align-items:center;background:var(--soft);padding:13px;border-radius:13px}.check input{width:20px;height:20px}.menu{display:grid;gap:10px}.menu button{width:100%;text-align:left}.notice{background:#eef8f3;color:#245f47;padding:12px;border-radius:13px;margin-top:12px}dialog{border:0;border-radius:22px;padding:0;width:min(92vw,480px);box-shadow:0 20px 70px rgba(0,0,0,.24)}dialog::backdrop{background:rgba(15,25,35,.45)}.dialog-body{padding:22px}.dialog-head{display:flex;justify-content:space-between;gap:12px}.close{border:0;background:var(--soft);width:38px;height:38px;border-radius:50%;font-size:1.4rem}.choice{display:block;width:100%;border:1px solid var(--line);background:#fff;border-radius:13px;padding:14px;text-align:left;margin:9px 0;font-weight:700}.muted{color:var(--muted)}.empty{text-align:center;padding:34px 10px}.hidden{display:none!important}
@media(max-width:520px){.shell{padding-left:12px;padding-right:12px}.card{padding:17px;border-radius:18px}h1{font-size:1.75rem}.facts{grid-template-columns:1fr 1fr}.fact:last-child{grid-column:1/-1}.lesson{grid-template-columns:50px 1fr}.lesson .badge{grid-column:2}.profile-name{display:none}}
@media(prefers-reduced-motion:no-preference){.card{animation:enter .25s ease-out}@keyframes enter{from{opacity:0;transform:translateY(5px)}}}
:focus-visible{outline:3px solid #ffbf47;outline-offset:3px}

.current-mood{
  display:grid;
  place-items:center;
  min-width:32px;
  height:32px;
  font-size:1.35rem;
  border-radius:12px;
  background:var(--soft);
  border:1px solid var(--line);
}
.mood-picker{
  background:var(--surface);
  border:1px solid var(--line);
  border-radius:18px;
  padding:14px 16px 15px;
  margin-bottom:14px;
  box-shadow:var(--shadow);
}
.mood-picker .eyebrow{margin-bottom:10px}
.mood-options{
  display:grid;
  grid-template-columns:repeat(7,1fr);
  gap:7px;
}
.mood-option{
  border:1px solid transparent;
  background:var(--soft);
  border-radius:13px;
  min-width:0;
  padding:8px 3px 7px;
  cursor:pointer;
  color:var(--text);
}
.mood-option span{
  display:block;
  font-size:1.45rem;
  line-height:1.15;
}
.mood-option small{
  display:block;
  margin-top:4px;
  font-size:.66rem;
  color:var(--muted);
}
.mood-option:hover,.mood-option:focus-visible{
  border-color:var(--blue);
  background:var(--blue-soft);
}
@media(max-width:520px){
  .mood-picker{padding:13px 10px}
  .mood-options{gap:4px}
  .mood-option{padding:8px 1px 7px}
  .mood-option span{font-size:1.3rem}
  .mood-option small{font-size:.58rem}
}

.landing-shell{
  min-height:100vh;
  padding:clamp(24px,5vw,56px) 18px;
  background:var(--bg);
}
.landing-main{
  width:min(760px,100%);
  margin:0 auto;
}
.landing-heading{
  margin-bottom:22px;
}
.landing-heading h1{
  margin:.25rem 0 .45rem;
  font-size:clamp(1.8rem,5vw,2.7rem);
}
.landing-heading p:last-child{
  margin:0;
  color:var(--muted);
}
.student-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.student-card{
  display:grid;
  grid-template-columns:auto 1fr;
  align-items:center;
  gap:14px;
  width:100%;
  min-height:118px;
  padding:18px;
  border:1px solid var(--line);
  border-radius:20px;
  background:var(--surface);
  color:var(--text);
  text-align:left;
  cursor:pointer;
  box-shadow:var(--shadow);
}
.student-card:hover,.student-card:focus-visible{
  border-color:var(--blue);
  transform:translateY(-1px);
}
.student-avatar{
  display:grid;
  place-items:center;
  width:54px;
  height:54px;
  border-radius:18px;
  background:var(--blue-soft);
  color:var(--blue);
  font-weight:800;
  font-size:1.1rem;
}
.student-card-copy{
  display:flex;
  flex-direction:column;
  gap:4px;
}
.student-card-copy strong{
  font-size:1.15rem;
}
.student-card-copy small{
  color:var(--muted);
}
.student-clips{
  grid-column:1/-1;
  font-size:1.05rem;
  letter-spacing:.16rem;
  opacity:.8;
}
.demo-only{
  opacity:.72;
}
@media(max-width:560px){
  .student-grid{grid-template-columns:1fr}
  .student-card{min-height:104px}
}
@media(prefers-reduced-motion:reduce){
  .student-card{transition:none}
  .student-card:hover{transform:none}
}

.demo-title-row{
  display:flex;
  align-items:center;
  gap:8px;
  margin-bottom:4px;
}
.demo-title-row .eyebrow{
  margin:0;
}
.revision-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:30px;
  height:22px;
  padding:0 8px;
  border-radius:999px;
  background:var(--blue-soft);
  color:var(--blue);
  border:1px solid rgba(47,111,237,.18);
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.04em;
}

.landing-top-row{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
}
.refresh-button{
  flex:0 0 auto;
  border:1px solid var(--line);
  background:var(--surface);
  color:var(--text);
  border-radius:12px;
  padding:10px 13px;
  font:inherit;
  font-weight:700;
  cursor:pointer;
}
.refresh-button:hover,.refresh-button:focus-visible{
  border-color:var(--blue);
  background:var(--blue-soft);
}
@media(max-width:560px){
  .landing-top-row{
    align-items:center;
  }
  .refresh-button{
    padding:9px 11px;
    font-size:.9rem;
  }
}

.landing-actions{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.landing-dev-switch,.dev-switch{
  display:inline-flex;
  align-items:center;
  gap:7px;
  font-size:.86rem;
  font-weight:750;
  color:var(--muted);
  cursor:pointer;
}
.landing-dev-switch input,.dev-switch input{
  width:38px;
  height:22px;
  accent-color:var(--blue);
}
.dev-panel{
  display:grid;
  grid-template-columns:auto minmax(150px,1fr) auto auto;
  align-items:center;
  gap:12px;
  margin:10px auto 0;
  padding:10px 12px;
  border:1px dashed #9aabc2;
  border-radius:14px;
  background:#f7f9fc;
  max-width:760px;
}
.dev-home,.dev-now{
  border:1px solid var(--line);
  background:var(--surface);
  color:var(--text);
  border-radius:10px;
  min-height:40px;
  padding:8px 12px;
  font:inherit;
  font-weight:800;
  cursor:pointer;
}
.dev-home{
  width:42px;
  padding:8px;
  font-size:1.45rem;
  line-height:1;
}
.dev-home:hover,.dev-home:focus-visible,.dev-now:hover,.dev-now:focus-visible{
  border-color:var(--blue);
  background:var(--blue-soft);
}
.dev-time{
  min-width:0;
}
.dev-time-row{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  font-size:.78rem;
  color:var(--muted);
  margin-bottom:4px;
}
.dev-time-row output{
  color:var(--text);
  font-weight:800;
  font-variant-numeric:tabular-nums;
}
.dev-time input[type="range"]{
  width:100%;
  display:block;
  accent-color:var(--blue);
}
@media(max-width:600px){
  .landing-top-row{align-items:flex-start}
  .landing-actions{flex-direction:column;align-items:flex-end}
  .dev-panel{
    grid-template-columns:auto 1fr auto;
    gap:8px;
    margin-left:10px;
    margin-right:10px;
  }
  .dev-switch{
    grid-column:1/-1;
    justify-self:end;
  }
}

.dev-panel{
  position:relative;
}
.dev-panel.is-closed{
  display:flex;
  justify-content:flex-end;
  max-width:760px;
  margin:10px auto 0;
  padding:0;
  border:0;
  background:transparent;
}
.dev-panel.is-open{
  display:grid;
  grid-template-columns:auto auto minmax(180px,1fr) auto;
  align-items:center;
}
.persistent-dev-switch{
  white-space:nowrap;
}
.dev-panel.is-open .persistent-dev-switch{
  grid-column:1;
}
@media(max-width:600px){
  .dev-panel.is-open{
    grid-template-columns:auto auto 1fr;
  }
  .dev-panel.is-open .persistent-dev-switch{
    grid-column:1/-1;
    grid-row:2;
    justify-self:end;
  }
  .dev-panel.is-closed{
    margin-left:10px;
    margin-right:10px;
  }
}

.top-navigation{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:6px;
  width:min(760px,calc(100% - 20px));
  margin:0 auto 14px;
  padding:5px;
  border:1px solid var(--line);
  border-radius:14px;
  background:var(--surface);
}
.top-nav-button{
  min-height:42px;
  border:0;
  border-radius:10px;
  background:transparent;
  color:var(--muted);
  font:inherit;
  font-weight:800;
  cursor:pointer;
}
.top-nav-button:hover,.top-nav-button:focus-visible{
  background:var(--soft);
  color:var(--text);
}
.top-nav-button.active{
  background:var(--blue);
  color:white;
}
.inline-change{
  margin:14px 0;
  padding:12px 14px;
  border-radius:12px;
  background:var(--blue-soft);
  color:var(--text);
}
.bottom-nav{
  display:none !important;
}

.fun-fact{
  display:flex;
  align-items:flex-start;
  gap:10px;
  width:min(760px,calc(100% - 20px));
  margin:0 auto 10px;
  padding:10px 13px;
  border:1px solid var(--line);
  border-radius:13px;
  background:var(--surface);
  color:var(--text);
}
.fun-fact-icon{
  flex:0 0 auto;
  color:#b38213;
  line-height:1.25;
}
.fun-fact div{
  display:flex;
  gap:7px;
  align-items:baseline;
  min-width:0;
}
.fun-fact strong{
  flex:0 0 auto;
  font-size:.78rem;
}
.fun-fact span:last-child{
  font-size:.82rem;
  color:var(--muted);
  line-height:1.35;
}
.colour-card{
  position:relative;
  overflow:hidden;
  border-left:6px solid var(--subject-colour);
}
.colour-card::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(90deg,color-mix(in srgb,var(--subject-colour) 7%,transparent),transparent 38%);
}
.colour-card > *{
  position:relative;
  z-index:1;
}
.lesson.colour-coded{
  position:relative;
  grid-template-columns:5px 64px 1fr auto;
  gap:10px;
}
.subject-colour-bar{
  align-self:stretch;
  min-height:42px;
  border-radius:999px;
  background:var(--subject-colour);
}
.folder-label{
  display:flex;
  align-items:center;
  gap:6px;
  margin-top:5px;
  font-size:.72rem;
  font-weight:700;
  color:var(--muted);
}
.folder-dot{
  width:9px;
  height:9px;
  border-radius:50%;
  background:var(--subject-colour);
  box-shadow:0 0 0 2px color-mix(in srgb,var(--subject-colour) 18%,white);
}
@media(max-width:520px){
  .fun-fact div{
    display:block;
  }
  .fun-fact strong{
    display:block;
    margin-bottom:2px;
  }
  .lesson.colour-coded{
    grid-template-columns:5px 54px 1fr auto;
    gap:8px;
  }
}

.lesson.colour-coded{
  background:color-mix(in srgb,var(--subject-colour) 14%,white);
  border-color:color-mix(in srgb,var(--subject-colour) 30%,var(--line));
}
.lesson.colour-coded.current{
  background:color-mix(in srgb,var(--subject-colour) 22%,white);
  border-color:color-mix(in srgb,var(--subject-colour) 48%,var(--line));
}
.lesson.colour-coded .badge{
  background:color-mix(in srgb,var(--subject-colour) 16%,white);
  color:color-mix(in srgb,var(--subject-colour) 72%,black);
  border:1px solid color-mix(in srgb,var(--subject-colour) 34%,white);
}

/* r10: use the full transparent folder colour on current and next cards */
.colour-card{
  background:color-mix(in srgb,var(--subject-colour) 16%,white);
  border-color:color-mix(in srgb,var(--subject-colour) 38%,var(--line));
}
.colour-card.now{
  background:color-mix(in srgb,var(--subject-colour) 22%,white);
}
.colour-card.next{
  background:color-mix(in srgb,var(--subject-colour) 14%,white);
}
.colour-card::after{
  display:none;
}

.pack-list{
  display:grid;
  gap:9px;
}
.pack-item{
  display:grid;
  grid-template-columns:auto 10px 1fr;
  align-items:center;
  gap:11px;
  padding:11px 12px;
  border:1px solid color-mix(in srgb,var(--subject-colour) 32%,var(--line));
  border-radius:12px;
  background:color-mix(in srgb,var(--subject-colour) 12%,white);
  cursor:pointer;
}
.pack-item input{
  width:20px;
  height:20px;
  accent-color:var(--subject-colour);
}
.pack-colour{
  align-self:stretch;
  min-height:34px;
  border-radius:999px;
  background:var(--subject-colour);
}
.pack-copy{
  display:flex;
  flex-direction:column;
  gap:2px;
}
.pack-copy strong{
  font-size:.92rem;
}
.pack-copy small{
  color:var(--muted);
  font-size:.76rem;
  font-weight:700;
}
.pack-item:has(input:checked){
  opacity:.62;
}
.pack-item:has(input:checked) .pack-copy{
  text-decoration:line-through;
}
.time-left{
  display:none !important;
}

.pack-list-card{
  display:none !important;
}
.pack-bag-small{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-top:8px;
  min-height:34px;
  padding:6px 11px;
  border:1px solid color-mix(in srgb,var(--subject-colour) 42%,var(--line));
  border-radius:9px;
  background:color-mix(in srgb,var(--subject-colour) 18%,white);
  color:color-mix(in srgb,var(--subject-colour) 74%,black);
  font:inherit;
  font-size:.76rem;
  font-weight:800;
  cursor:pointer;
}
.pack-bag-small:hover,.pack-bag-small:focus-visible{
  background:color-mix(in srgb,var(--subject-colour) 26%,white);
}
.subject-pack-dialog{
  display:grid;
  gap:14px;
}
.pack-subject-heading{
  display:flex;
  align-items:center;
  gap:11px;
  padding:11px 12px;
  border:1px solid color-mix(in srgb,var(--subject-colour) 34%,var(--line));
  border-radius:12px;
  background:color-mix(in srgb,var(--subject-colour) 13%,white);
}
.pack-heading-colour{
  width:8px;
  align-self:stretch;
  min-height:38px;
  border-radius:999px;
  background:var(--subject-colour);
}
.pack-subject-heading div{
  display:flex;
  flex-direction:column;
  gap:2px;
}
.pack-subject-heading small{
  color:var(--muted);
  font-size:.78rem;
  font-weight:700;
}
.pack-dialog-list{
  display:grid;
  gap:9px;
}
.pack-check{
  display:flex;
  align-items:center;
  gap:10px;
  min-height:44px;
  padding:10px 12px;
  border:1px solid var(--line);
  border-radius:11px;
  background:var(--surface);
  cursor:pointer;
}
.pack-check input{
  width:20px;
  height:20px;
  flex:0 0 auto;
  accent-color:var(--subject-colour);
}
.pack-check span{
  font-weight:700;
}
.pack-check:has(input:checked){
  opacity:.58;
}
.pack-check:has(input:checked) span{
  text-decoration:line-through;
}
.pencil-case-details{
  border:1px solid var(--line);
  border-radius:11px;
  background:var(--surface);
  overflow:hidden;
}
.pencil-case-details summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  min-height:44px;
  padding:10px 12px;
  cursor:pointer;
  font-weight:800;
}
.pencil-case-details summary small{
  color:var(--muted);
  font-size:.72rem;
  font-weight:650;
}
.pencil-case-items{
  display:grid;
  gap:7px;
  padding:0 10px 10px;
}
.pencil-case-items .pack-check{
  background:color-mix(in srgb,var(--subject-colour) 7%,white);
}
.laptop-check{
  border-color:color-mix(in srgb,var(--subject-colour) 36%,var(--line));
  background:color-mix(in srgb,var(--subject-colour) 10%,white);
}

/* r13: make Break and Lunch unmistakably different from class rows */
.lesson.break-row{
  display:grid;
  grid-template-columns:18px 64px 1fr auto;
  gap:10px;
  align-items:center;
  background:#1f2937;
  color:#ffffff;
  border:2px solid #111827;
  box-shadow:none;
}
.lesson.break-row.current{
  background:#111827;
  border-color:#000000;
}
.lesson.break-row .time,
.lesson.break-row .place,
.lesson.break-row .break-label{
  color:#e5e7eb;
}
.lesson.break-row strong{
  color:#ffffff;
}
.lesson.break-row .badge{
  background:#ffffff;
  color:#111827;
  border-color:#ffffff;
}
.break-marker{
  color:#fbbf24;
  font-size:.9rem;
  text-align:center;
}
.break-label{
  margin-top:3px;
  font-size:.76rem;
  font-weight:700;
}
@media(max-width:520px){
  .lesson.break-row{
    grid-template-columns:18px 54px 1fr auto;
    gap:8px;
  }
}

.pack-bag-small.is-packed,
.button.is-packed{
  background:color-mix(in srgb,#2f9e44 18%,white);
  border-color:color-mix(in srgb,#2f9e44 42%,var(--line));
  color:#176b2d;
}
.pack-complete-message{
  min-height:22px;
  margin:2px 0 0;
  color:#176b2d;
  font-weight:800;
  text-align:center;
}

.dev-time-row select{
  min-width:124px;
  border:1px solid var(--line);
  border-radius:8px;
  background:var(--surface);
  color:var(--text);
  padding:5px 8px;
  font:inherit;
  font-size:.78rem;
  font-weight:750;
}

.teacher-name{font-weight:700}
.substitute-small{
  display:inline-flex;align-items:center;margin-left:8px;padding:3px 7px;
  border:1px solid currentColor;border-radius:7px;background:rgba(255,255,255,.62);
  color:inherit;font:inherit;font-size:.68rem;font-weight:800;cursor:pointer;vertical-align:middle
}
.substitute-button{
  display:inline-flex;align-items:center;justify-content:center;margin-top:7px;min-height:34px;
  padding:6px 10px;border:1px solid color-mix(in srgb,var(--subject-colour,#64748b) 38%,var(--line));
  border-radius:9px;background:rgba(255,255,255,.68);color:var(--text);
  font:inherit;font-size:.76rem;font-weight:800;cursor:pointer
}
.teacher-control{display:flex;flex-direction:column;align-items:flex-start}
.teacher-control .substitute-button{margin-top:5px}
.substitute-dialog{display:grid;gap:10px}
.substitute-label{font-size:.82rem;font-weight:800}
.substitute-input{
  width:100%;min-height:44px;box-sizing:border-box;border:1px solid var(--line);
  border-radius:10px;padding:10px 12px;background:var(--surface);color:var(--text);font:inherit
}
.substitute-actions{display:flex;justify-content:flex-end;gap:9px;flex-wrap:wrap;margin-top:4px}
.break-row .substitute-small{display:none}

/* r22: dark-grey non-class rows; time above period/label */
.lesson.break-row{
  background:#374151 !important;
  border-color:#2f3947 !important;
}
.lesson.break-row.current{
  background:#2f3947 !important;
  border-color:#252d38 !important;
}
.lesson .time{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:1px;
}
.lesson .time strong{
  font-size:.82rem;
  line-height:1.1;
}
.lesson .time small{
  font-size:.67rem;
  line-height:1.15;
  font-weight:800;
}
.lesson.break-row .time strong,
.lesson.break-row .time small{
  color:#f3f4f6;
}

.prepare-next-button{margin-top:18px}
.prepare-help{margin:0 0 16px}
.prepare-back-button{margin-bottom:18px}

.holiday-name{font-size:1.25rem;font-weight:800;margin:.35rem 0 .4rem}
.holiday-timetable-row{display:grid;gap:5px;padding:22px;border-radius:18px;background:#eef2f7;margin-top:16px}
.holiday-timetable-row strong{font-size:1.15rem}
.holiday-timetable-row span{font-size:1.05rem}
.holiday-timetable-row small{color:#66758a}
.day-tab.holiday-tab{font-weight:850}

.reminder-card{
  display:flex;justify-content:space-between;align-items:center;gap:18px
}
.reminder-card h2,.reminder-card p{margin:.25rem 0}
.reminder-card.enabled{border-left:8px solid #2f9e44}
@media(max-width:640px){
  .reminder-card{align-items:flex-start;flex-direction:column}
  .reminder-card .button{width:100%}
}
