/* pages/trainer/today.css — Today: day header, trackers, stages, goals, teaching cards.
   Split from the pre-#149 monolith — rule ORDER preserved; see docs/architecture.md
   ("CSS layers") for the load-order contract each page's <head> follows. */
/* ============================================================ */
/* Today — day header, trackers, stages, lesson cards, zoom      */
/* ============================================================ */

.dayhead{
  display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap;
  background:var(--panel);border:1px solid var(--line);border-left:3px solid var(--accent);
  border-radius:0 12px 12px 0;padding:16px 18px;margin-bottom:6px;
}
.dh-kicker{font-size:11.5px;text-transform:uppercase;letter-spacing:1px;color:var(--accent);font-weight:650}
.dayhead h2{margin:6px 0 4px}
.dh-sub{font-size:13.5px;color:var(--dim);max-width:62ch}
.dh-date{text-align:right;flex:none}
.dh-date b{display:block;font-size:17px}
.dh-date span{font-size:11.5px;color:var(--dim)}

.tile.trk .n small{font-size:15px;font-weight:500;color:var(--dim);letter-spacing:0}
.tile.trk .bar{position:relative}
.tile.trk .bar>u{
  position:absolute;left:0;top:0;height:100%;background:var(--accent2);
  border-radius:99px;text-decoration:none;
}
.trk-note{font-size:11.5px;color:var(--dim);margin-top:6px}

/* ---- stage cards on the overview ---- */
.stagegrid{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}
.scard2{
  text-align:left;background:var(--panel);border:1px solid var(--line);border-radius:12px;
  padding:14px 15px;cursor:pointer;color:var(--ink);font:inherit;display:flex;
  flex-direction:column;gap:3px;transition:border-color .15s,transform .12s;
}
.scard2:hover{border-color:var(--accent);transform:translateY(-1px)}
.sc2-top{display:flex;justify-content:space-between;align-items:center;min-height:30px}
.sc2-n{font-size:26px;font-weight:680;letter-spacing:-.5px;line-height:1}
.sc2-tick{color:var(--good);font-size:17px}
.scard2 b{font-size:14.5px}
.sc2-v{font-size:12px;color:var(--dim);line-height:1.45}
.scard2.done{opacity:.72}
.scard2.done .sc2-n{color:var(--good)}

.stagecard h2{margin-bottom:6px}

/* ---- goals ---- */
.goal{
  display:flex;align-items:flex-start;gap:11px;width:100%;text-align:left;background:none;
  border:0;border-bottom:1px solid var(--line);padding:11px 2px;cursor:pointer;
  color:var(--ink);font:inherit;font-size:14px;
}
.goal:last-child{border-bottom:0}
.goal:hover span{color:var(--accent)}
.goal i{
  flex:none;width:18px;height:18px;border-radius:5px;border:1.5px solid var(--line);
  display:grid;place-items:center;font-style:normal;font-size:11px;color:#fff;margin-top:1px;
}
.goal.done i{background:var(--good);border-color:var(--good)}
.goal.done span{color:var(--dim);text-decoration:line-through}
.wgoal{display:flex;align-items:flex-start;gap:11px;padding:7px 2px;font-size:13.5px;color:var(--dim)}
.wgoal i{flex:none;width:5px;height:5px;border-radius:99px;background:var(--accent);margin-top:8px}
.wgoal-note{
  font-size:12.5px;color:var(--dim);border-top:1px solid var(--line);
  margin-top:9px;padding-top:9px;font-style:italic;
}

/* ---- teaching card ---- */
.teach{
  background:var(--panel);border:1px solid var(--line);border-radius:14px;
  padding:30px 24px;text-align:center;
}
.t-big{font:400 92px/1.05 var(--jp);cursor:zoom-in;display:inline-block;padding:0 10px}
.t-big:hover{color:var(--accent)}
.t-mid{font:400 40px/1.2 var(--jp);margin-bottom:4px}
.t-read{font:400 21px/1.3 var(--jp);color:var(--accent2);margin-top:6px}
.t-mean{font-size:18px;margin-top:6px}
.t-meta{font-size:12px;color:var(--dim);margin-top:6px;text-transform:uppercase;letter-spacing:.6px}
.t-say{font-size:13.5px;color:var(--dim);margin:16px auto 0;max-width:46ch}
.t-say b{color:var(--accent2)}
.t-forms{
  display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-top:16px;
  border-top:1px solid var(--line);padding-top:14px;
}
.t-forms span{
  background:var(--panel2);border:1px solid var(--line);border-radius:9px;padding:7px 13px;
  font:400 17px var(--jp);
}
.t-forms i{
  display:block;font:400 10.5px var(--display);color:var(--dim);
  font-style:normal;text-transform:uppercase;letter-spacing:.5px;margin-bottom:2px;
}
.t-ex{margin-top:16px;text-align:left}
.t-note{
  background:var(--panel2);border-radius:10px;padding:12px 15px;margin-top:16px;
  font-size:13px;color:var(--dim);line-height:1.6;text-align:left;
}
/* Only the note's own heading is a block; bold inside the body stays inline. */
.t-note>b{display:block;color:var(--ink);margin-bottom:4px}
.t-note div b{color:var(--ink)}
.t-warn{
  border:1px solid var(--warn);border-radius:10px;padding:11px 15px;margin-top:16px;
  font-size:12.5px;color:var(--dim);
}
.t-warn b{display:block;color:var(--warn);text-transform:uppercase;letter-spacing:.6px;
  font-size:11px;margin-bottom:6px}
.t-warn .jp{font-size:26px;color:var(--ink)}

