/* EduWatch page — roles, school day, module tiers, trust, pilot. */
.ew-note { margin: 14px 0 0; font-size: 12.5px; color: #7b8a8c; text-align: center; }
.ew-shot { background: #fff; }
.ew-shot img { object-fit: contain; object-position: center; max-height: 600px; }
.ew-roles { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1px; background: #dfe8ea; border: 1px solid #dfe8ea; }
.ew-role { background: #fff; padding: 20px 20px 18px; display: grid; gap: 10px; align-content: start; }
.ew-role small { font: 600 10.5px "IBM Plex Mono", monospace; letter-spacing: 0.1em; text-transform: uppercase; color: #0b8fa8; }
.ew-role__q { margin: 0; font: 500 17px/1.3 "Newsreader", Georgia, serif; color: #2f3a3d; }
.ew-role p:not(.ew-role__q) { margin: 0; font-size: 14px; line-height: 1.5; color: #55605f; }
.ew-role__m { margin-top: 4px; padding-top: 10px; border-top: 1px solid #e6ecee; display: flex; justify-content: space-between; align-items: baseline; gap: 8px; }
.ew-role__m span { font-size: 12px; color: #7b8a8c; }
.ew-role__m b { font: 600 15px "IBM Plex Mono", monospace; color: #0b8fa8; white-space: nowrap; }
.ew-day { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); position: relative; }
.ew-day::before { content: ""; position: absolute; left: 0; right: 0; top: 30px; height: 2px; background: linear-gradient(90deg, #0b8fa8, #5cc8d6); }
.ew-day li { position: relative; padding: 0 14px 0 0; display: grid; gap: 8px; align-content: start; }
.ew-day time { font: 600 13px "IBM Plex Mono", monospace; color: #7ae9ff; }
.ew-day li::before { content: ""; width: 12px; height: 12px; border-radius: 50%; background: #fff; box-shadow: 0 0 0 4px rgba(122, 233, 255, 0.25); order: 1; }
.ew-day b { order: 2; font: 500 18px/1.2 "Newsreader", Georgia, serif; color: #fff; }
.ew-day span { order: 3; font-size: 13.5px; line-height: 1.45; color: rgba(227, 246, 250, 0.75); }
.ew-tiers { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.ew-tier { background: #fff; border: 1px solid #dfe8ea; border-top: 3px solid var(--t); padding: 18px 20px; }
.ew-tier--urgent { --t: #b42318; } .ew-tier--watch { --t: #e08a00; } .ew-tier--stable { --t: #12805c; }
.ew-tier h3 { margin: 0 0 12px; display: flex; justify-content: space-between; font: 500 20px "Newsreader", Georgia, serif; color: #2f3a3d; }
.ew-tier h3 span { font: 600 13px "IBM Plex Mono", monospace; color: var(--t); }
.ew-tier ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 6px; }
.ew-tier li { position: relative; padding-left: 16px; font-size: 14.5px; color: #2f3a3d; }
.ew-tier li::before { content: ""; position: absolute; left: 0; top: 0.55em; width: 7px; height: 7px; border-radius: 50%; background: var(--t); }
.ew-trust, .ew-risks { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; background: rgba(255, 255, 255, 0.12); border: 1px solid rgba(255, 255, 255, 0.12); }
.ew-trust li, .ew-risks li { padding: 18px 20px; display: grid; gap: 6px; background: rgba(9, 20, 24, 0.35); }
.ew-trust b { font: 500 18px/1.25 "Newsreader", Georgia, serif; color: #fff; }
.ew-trust span, .ew-risks b { font-size: 14px; line-height: 1.5; color: rgba(255, 255, 255, 0.82); font-weight: 400; }
.ew-risks span { font: 600 11px "IBM Plex Mono", monospace; letter-spacing: 0.08em; text-transform: uppercase; color: #ffd2cc; }
.ew-sub { margin: 32px 0 14px; font: 500 22px "Newsreader", Georgia, serif; color: #fff; }
.ew-pilot { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0; counter-reset: p; }
.ew-pilot li { counter-increment: p; padding: 20px 22px; border-top: 3px solid #0b8fa8; background: #fff; border-right: 1px solid #e3ecee; display: grid; gap: 8px; }
.ew-pilot li:nth-child(2) { border-top-color: #1aa5bf; } .ew-pilot li:nth-child(3) { border-top-color: #3197a8; } .ew-pilot li:nth-child(4) { border-top-color: #0a6f83; }
.ew-pilot small { font: 600 12px "IBM Plex Mono", monospace; color: #0b8fa8; }
.ew-pilot small::before { content: "Phase " counter(p) " · "; }
.ew-pilot span { font-size: 15px; line-height: 1.5; color: #2f3a3d; }
@media (max-width: 1100px) { .ew-roles { grid-template-columns: repeat(2, minmax(0, 1fr)); } .ew-day { grid-template-columns: repeat(4, minmax(0, 1fr)); row-gap: 28px; } .ew-day::before { display: none; } }
@media (max-width: 860px) { .ew-tiers, .ew-trust, .ew-risks, .ew-pilot { grid-template-columns: 1fr; } }
@media (max-width: 560px) { .ew-roles, .ew-day { grid-template-columns: 1fr; } }
/* this site renders "dark" sections light: use ink, not white */
.ew-day time { color: #0b8fa8; }
.ew-day li::before { background: #0b8fa8; box-shadow: 0 0 0 4px rgba(11, 143, 168, 0.18); }
.ew-day b { color: #2f3a3d; }
.ew-day span { color: #55605f; }
.ew-trust, .ew-risks { background: #dfe8ea; border-color: #dfe8ea; }
.ew-trust li, .ew-risks li { background: #fff; }
.ew-trust b { color: #2f3a3d; }
.ew-trust span, .ew-risks b { color: #55605f; }
.ew-risks span { color: #b42318; }
.ew-sub { color: #2f3a3d; }
