/* Guided practice: chooser, trainer console (tr-), and the full-screen monitor page (pr-).
   Every status is shown with color and words. Nothing relies on sound. */

.pr-mono{font-family:'IBM Plex Mono',monospace;font-weight:700;letter-spacing:1px;}
.vt-mode-go{cursor:pointer;}
.vt-mode-go:hover{border-color:var(--pine);}

/* Chooser */
.pr-choices{display:grid;grid-template-columns:1fr;gap:10px;margin-top:12px;}
@media(min-width:560px){.pr-choices{grid-template-columns:1fr 1fr;}}
.pr-choice{text-align:left;min-height:64px;padding:14px 16px;border-radius:12px;border:1.5px solid var(--line-strong);background:var(--paper);color:var(--ink);font-family:'Inter',sans-serif;cursor:pointer;display:flex;flex-direction:column;gap:4px;}
.pr-choice strong{font-size:1.1rem;}
.pr-choice span{font-size:0.88rem;color:var(--ink-soft);}
.pr-choice:hover:not([disabled]){border-color:var(--pine);background:var(--pine-tint);}
.pr-choice[disabled]{opacity:0.7;cursor:progress;}
.pr-choice:focus-visible,.tr-time:focus-visible,.pr-barbtn:focus-visible{outline:3px solid var(--focus);outline-offset:2px;}
.pr-join{display:grid;gap:12px;max-width:420px;}
.pr-code-input{font-family:'IBM Plex Mono',monospace !important;font-size:1.6rem !important;letter-spacing:3px;text-transform:uppercase;}
.pr-check{display:flex;align-items:center;gap:10px;min-height:44px;font-size:0.95rem;}
.pr-check input{width:22px;height:22px;}
.pr-rooms{list-style:none;padding:0 !important;margin:8px 0 0 !important;display:grid;gap:8px;}
.pr-rooms .vt-btn{width:100%;text-align:left;display:flex;gap:12px;align-items:center;flex-wrap:wrap;}

/* Trainer console */
.tr-head-top{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;align-items:flex-start;}
.tr-code{font-size:clamp(2.4rem,11vw,3.6rem);line-height:1;margin:2px 0 8px;color:var(--ink);letter-spacing:4px;}
.tr-head-side{display:flex;flex-direction:column;gap:6px;min-width:min(100%,260px);}
.tr-trainee{margin:0;padding:12px 14px;border-radius:10px;font-weight:700;font-size:1.15rem;border:2px solid;}
.tr-trainee[data-s="on"]{background:var(--live-tint);border-color:var(--live);color:var(--live);}
.tr-trainee[data-s="off"]{background:var(--clay-tint);border-color:var(--clay);color:var(--clay-text);}
.tr-trainee[data-s="wait"]{background:var(--paper);border-color:var(--line-strong);color:var(--ink-soft);}
.tr-self{margin:0;font-size:0.85rem;font-weight:600;color:var(--ink-soft);}
.tr-self[data-s="offline"],.tr-self[data-s="closed"]{color:var(--clay-text);}
.tr-self[data-s="online"]{color:var(--live);}

.tr-grid{display:grid;grid-template-columns:1fr;gap:0 14px;align-items:start;}
@media(min-width:960px){.tr-grid{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);}}
.tr-select{min-height:48px;border:1.5px solid var(--line-strong);border-radius:10px;background:var(--paper);color:var(--ink);font:600 1rem 'Inter',sans-serif;padding:0 10px;}
.tr-fill{margin:10px 0;}
.tr-startgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;}
@media(min-width:620px){.tr-startgrid{grid-template-columns:repeat(6,minmax(0,1fr));}}

.tr-times{display:flex;gap:6px;flex-wrap:wrap;align-items:center;margin:4px 0 12px;}
.tr-times-label{font:700 11px 'IBM Plex Mono',monospace;text-transform:uppercase;color:var(--ink-soft);margin-right:2px;}
.tr-time{min-height:40px;min-width:56px;padding:0 12px;border-radius:999px;border:1.5px solid var(--line-strong);background:var(--paper);color:var(--ink);font:600 0.9rem 'Inter',sans-serif;cursor:pointer;}
.tr-time.active{background:var(--pine);border-color:var(--pine);color:#fff;}
.tr-rows{display:grid;gap:10px;}
.tr-row{border:1px solid var(--line);border-radius:10px;padding:10px 12px;background:var(--paper);}
.tr-row-head{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;margin-bottom:8px;}
.tr-row-label{font:700 12px 'IBM Plex Mono',monospace;text-transform:uppercase;color:var(--ink-soft);min-width:44px;}
.tr-now{font-size:1.6rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--ink);}
.tr-unit{font-size:0.8rem;color:var(--ink-soft);}
.tr-status{font-size:0.85rem;font-weight:600;color:var(--ink-soft);}
.tr-status[data-kind="trending"],.tr-status[data-kind="returning"]{color:var(--pine);}
.tr-status[data-kind="holding"]{color:var(--gold-text);}
.tr-row-form{display:flex;gap:8px;align-items:center;flex-wrap:wrap;}
.tr-target{width:96px;flex:none;}
.tr-target input{font-size:1.05rem;}
.tr-slash{font-weight:700;color:var(--ink-soft);}
.tr-go{min-width:64px;}
.tr-release[disabled]{opacity:0.45;cursor:default;}
.tr-row-note{margin:6px 0 0;font-size:0.8rem;color:var(--ink-soft);}
.vt-input input.empty{background:var(--gold-tint);}
.tr-row-head .vt-tag[hidden]{display:none;}

.tr-snap{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:8px 0 0;}
.tr-snap div{background:var(--paper);border:1px solid var(--line);border-radius:8px;padding:6px 8px;min-width:0;}
.tr-snap .tr-snap-wide{grid-column:1 / -1;}
.tr-snap dt{font:700 10.5px 'IBM Plex Mono',monospace;color:var(--ink-soft);text-transform:uppercase;}
.tr-snap dd{margin:2px 0 0;font-weight:700;font-size:1.2rem;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;}
.tr-snap .tr-snap-wide dd{font-size:0.95rem;}
.tr-log{list-style:none;padding:0 !important;margin:0 !important;max-height:340px;overflow:auto;font-size:0.9rem;}
.tr-log li{padding:5px 0;border-bottom:1px solid var(--line);}
.tr-log li:first-child{background:var(--pine-tint);border-radius:6px;padding:5px 6px;}
.tr-log-t{font-family:'IBM Plex Mono',monospace;font-size:0.8rem;color:var(--ink-soft);}
.tr-end{justify-content:space-between;margin-top:0;}
.tr-endbtn{border-color:var(--clay);color:var(--clay-text);}

/* Full-screen monitor page for the trainee or a viewer. The page under it stays put. */
body.pr-fullpage{overflow:hidden;}
body.pr-fullpage .bottom-nav{display:none;}
.pr-monpage{position:fixed;inset:0;z-index:50;background:#0B0F14;color:#F2F4F7;display:flex;flex-direction:column;
  padding:env(safe-area-inset-top,0px) env(safe-area-inset-right,0px) env(safe-area-inset-bottom,0px) env(safe-area-inset-left,0px);}
.pr-monbar{display:flex;align-items:center;gap:10px;padding:6px 12px;min-height:48px;font-size:0.9rem;flex-wrap:wrap;}
.pr-monbar-code{font-size:1rem;color:#B9C3D0;}
.pr-monbar-role{color:#B9C3D0;}
.pr-spacer{flex:1;}
.pr-conn{font-weight:700;padding:4px 10px;border-radius:999px;font-size:0.82rem;}
.pr-conn[data-s="online"]{background:#16442A;color:#7EE2A3;}
.pr-conn[data-s="connecting"]{background:#2A3340;color:#D5DCE5;}
.pr-conn[data-s="offline"],.pr-conn[data-s="closed"]{background:#5A1E1E;color:#FFB4B4;animation:prblink 1.4s step-end infinite;}
@keyframes prblink{50%{opacity:0.55;}}
@media(prefers-reduced-motion:reduce){.pr-conn{animation:none !important;}}
.pr-barbtn{min-height:40px;padding:0 14px;border-radius:8px;border:1.5px solid #4A5566;background:#18202B;color:#F2F4F7;font:600 0.9rem 'Inter',sans-serif;cursor:pointer;}
.pr-monwrap{flex:1;min-height:0;padding:0 8px 8px;display:flex;flex-direction:column;justify-content:center;}
.pr-monwrap #monHost{width:100%;max-width:1400px;margin:0 auto;}
.pr-monpage .mon-grid{height:max(240px,calc(100dvh - 200px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px)));}
.pr-wait{max-width:520px;margin:0 auto;text-align:center;padding:24px;}
.pr-wait .vt-waiting{justify-content:center;color:#F2F4F7;font-size:1.1rem;}
.pr-wait .vt-muted{color:#B9C3D0;}
.pr-ended{position:absolute;inset:0;background:rgba(5,8,12,0.88);display:grid;place-items:center;padding:16px;}
.pr-ended[hidden]{display:none;}
.pr-ended .vt-card{max-width:460px;color:var(--ink);}

/* Join QR code beside the room code; tap for a big one a class can scan. */
.tr-codebox{display:flex;gap:16px;align-items:flex-start;flex-wrap:wrap;}
.tr-qr{flex:none;width:132px;height:132px;padding:0;border:1.5px solid var(--line-strong);border-radius:10px;background:#fff;cursor:zoom-in;overflow:hidden;}
.tr-qr svg,.tr-qrbig svg{display:block;width:100%;height:100%;}
.tr-qr:focus-visible{outline:3px solid var(--focus);outline-offset:2px;}
.tr-qrbig{position:fixed;inset:0;z-index:1000;background:rgba(5,8,12,0.88);display:grid;place-items:center;padding:16px;}
.tr-qrbig[hidden]{display:none;}
.tr-qrbig-card{background:#fff;border-radius:16px;padding:20px;display:flex;flex-direction:column;align-items:center;gap:12px;width:min(92vw,calc(100dvh - 150px),560px);max-height:calc(100dvh - 32px);box-sizing:border-box;}
.tr-qrbig-card svg{width:100%;height:auto;}
.tr-qrbig-card .tr-code{color:#111;margin:0;}

/* Real vent readings */
.tr-ventgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:8px;}
@media(min-width:620px){.tr-ventgrid{grid-template-columns:repeat(4,minmax(0,1fr));}}
.tr-ventnote{margin-top:10px;}

/* ---------- Build step 2a: the full sim ---------- */

/* Trainee: the room bar at the top of the left column. */
.pr-simbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:8px 10px;margin:-4px 0 12px;border:1px solid var(--line);border-radius:10px;background:var(--paper);font-size:0.9rem;}
.pr-simbar .pr-conn[data-s="online"]{background:var(--live-tint);color:var(--live);}
.pr-simbar .pr-conn[data-s="connecting"]{background:var(--pine-tint);color:var(--ink);}
.pr-simbar .pr-conn[data-s="offline"],.pr-simbar .pr-conn[data-s="closed"]{background:var(--clay-tint);color:var(--clay-text);}
.pr-simbar-role{color:var(--ink-soft);}
.pr-monpage[hidden]{display:none;}

/* Trainer console: tabs and panes. Phones show one pane; the tab bar sits at the bottom. */
@media(max-width:959px){body.tr-open .bottom-nav{display:none;}}
.tr-console{padding-bottom:calc(76px + env(safe-area-inset-bottom,0px));}
.tr-tabs{position:fixed;left:0;right:0;bottom:0;z-index:40;display:grid;grid-template-columns:repeat(4,1fr);gap:4px;
  padding:6px 8px calc(6px + env(safe-area-inset-bottom,0px));background:var(--paper-raised);border-top:1px solid var(--line-strong);box-shadow:0 -2px 8px rgba(0,0,0,0.08);}
.tr-tab{min-height:52px;border-radius:10px;border:1.5px solid transparent;background:transparent;color:var(--ink-soft);font:700 0.95rem 'Inter',sans-serif;cursor:pointer;}
.tr-tab.active{background:var(--pine);color:#fff;}
.tr-tab:focus-visible,.tr-strip:focus-visible{outline:3px solid var(--focus);outline-offset:2px;}
.tr-pane[hidden],.tr-tab[hidden],.tr-strip[hidden],.tr-row[hidden]{display:none !important;}

/* The strip pinned above everything on phones: numbers and the top alarm. */
.tr-strip{position:sticky;top:0;z-index:30;display:flex;align-items:stretch;gap:6px;width:100%;margin:0 0 12px;padding:6px;border-radius:12px;border:1.5px solid var(--line-strong);
  background:#0B0F14;color:#F2F4F7;cursor:pointer;font-family:'Inter',sans-serif;text-align:left;flex-wrap:wrap;}
.tr-strip-num{display:flex;flex-direction:column;min-width:48px;padding:0 4px;}
.tr-strip-num small{font:700 10px 'IBM Plex Mono',monospace;color:#B9C3D0;text-transform:uppercase;}
.tr-strip-num b{font-size:1.25rem;font-variant-numeric:tabular-nums;line-height:1.1;}
.tr-strip-num:nth-child(1) b{color:#F2E61C;}
.tr-strip-num:nth-child(2) b{color:#4BE14B;}
.tr-strip-num:nth-child(3) b{color:#62CFF4;}
.tr-strip-num[hidden]{display:none;}
.tr-strip-alarm{flex:1 1 120px;min-width:0;display:flex;align-items:center;padding:4px 8px;border-radius:8px;font-weight:700;font-size:0.85rem;overflow-wrap:anywhere;}
.tr-strip-alarm[data-pri="none"]{background:#16442A;color:#7EE2A3;}
.tr-strip-alarm[data-pri="low"],.tr-strip-alarm[data-pri="medium"]{background:#F3D417;color:#111;}
.tr-strip-alarm[data-pri="high"]{background:#D8262C;color:#fff;animation:prblink 1.2s step-end infinite;}

/* Wide screens: Live on the left, the chosen pane on the right, tabs on top. */
@media(min-width:960px){
  .tr-console{padding-bottom:0;}
  .tr-console.tr-wide .tr-panes{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:0 14px;align-items:start;}
  .tr-console.tr-wide .tr-pane-live{grid-column:1;grid-row:1 / span 3;}
  .tr-console.tr-wide .tr-pane:not(.tr-pane-live){grid-column:2;}
  .tr-tabs{position:static;display:flex;justify-content:flex-end;gap:6px;padding:0;margin:0 0 12px;background:none;border:0;box-shadow:none;}
  .tr-tab{min-height:44px;padding:0 18px;border-color:var(--line-strong);background:var(--paper);color:var(--ink);}
  .tr-tab.active{background:var(--pine);border-color:var(--pine);color:#fff;}
}

/* Live pane */
.tr-fresh{font-weight:700;font-size:0.85rem;padding:3px 10px;border-radius:999px;}
.tr-fresh[data-s="ok"]{background:var(--live-tint);color:var(--live);}
.tr-fresh[data-s="stale"]{background:var(--clay-tint);color:var(--clay-text);}
.tr-ventstate{margin:4px 0 10px;font-size:1.25rem;font-weight:700;}
.tr-ventstate[data-s="ventilating"]{color:var(--live);}
.tr-pending{animation:prblink 1.4s step-end infinite;}
@media(prefers-reduced-motion:reduce){.tr-pending,.tr-strip-alarm{animation:none !important;}}
.tr-subhead{margin:12px 0 4px;font:700 11px 'IBM Plex Mono',monospace;text-transform:uppercase;color:var(--ink-soft);}
.tr-snap .tr-warn dd{color:var(--clay-text);}
.tr-alarms{list-style:none;padding:0 !important;margin:0 !important;display:grid;gap:6px;}
.tr-alarm{padding:8px 10px;border-radius:8px;font-weight:600;overflow-wrap:anywhere;}
.tr-alarm[data-pri="high"]{background:#D8262C;color:#fff;}
.tr-alarm[data-pri="medium"],.tr-alarm[data-pri="low"]{background:#F3D417;color:#111;}
.tr-alarm-pri{font:700 11px 'IBM Plex Mono',monospace;text-transform:uppercase;margin-right:6px;}
.tr-alarm-none{color:var(--ink-soft);}
.tr-livemon{pointer-events:none;border-radius:10px;overflow:hidden;}
.tr-livemon .mon-grid{height:clamp(220px,52vw,340px);}
.tr-plain{margin:0 !important;padding-left:18px !important;}
.tr-plain li{margin:2px 0;overflow-wrap:anywhere;}
.tr-plain .tr-bad{color:var(--clay-text);}
.tr-meds{margin-top:10px;}
.tr-awake{font-weight:700;}
.tr-log .tr-log-alarm{color:var(--gold-text);}
.tr-log .tr-log-high{color:var(--clay-text);font-weight:600;}
.tr-row-hold{margin:6px 0 0;font-size:0.85rem;font-weight:600;color:var(--gold-text);}

/* Patient pane: session type and the presentation push */
.tr-typenow{margin:0;font-weight:600;}
.tr-seedrow{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap;margin-bottom:10px;}
.tr-seedrow .vt-field{flex:1 1 160px;min-width:0;}
.tr-preview{border:1px solid var(--line);border-radius:10px;padding:10px 12px;background:var(--paper);margin-bottom:10px;}
.tr-preview p{margin:0 0 6px;}
.tr-preview ul{margin:6px 0 !important;}
.tr-preview-vitals{grid-template-columns:repeat(4,minmax(0,1fr));}
.tr-console .tr-select{max-width:100%;width:100%;}
.tr-snap.tr-snap2{grid-template-columns:repeat(2,minmax(0,1fr));}
.tr-ventset .tr-snap-wide,.tr-snap2 .tr-snap-wide{grid-column:1 / -1;}
@media(max-width:420px){.tr-ventset,.tr-snap#ventMeas{grid-template-columns:repeat(2,minmax(0,1fr));}}

/* Build step 2b: the trainee's Z Vent, live. */
.tr-livevent{margin:8px 0 12px;}
.tr-livevent-wait{margin:0;padding:14px;border:1px dashed var(--line-strong);border-radius:10px;color:var(--ink-soft);text-align:center;}
.tr-livevent-wait[hidden]{display:none;}
.tr-ventnums summary{cursor:pointer;font-weight:600;min-height:40px;display:flex;align-items:center;}

/* ---------- Build step 2c: info cards, the reply box, presentation editing ---------- */

/* Trainee */
.pr-infos,.pr-reply{margin:0 0 12px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--paper);}
.pr-infos[hidden]{display:none;}
.pr-infos-title{margin:0 0 6px;font:700 11px 'IBM Plex Mono',monospace;text-transform:uppercase;color:var(--ink-soft);}
.pr-infolist{list-style:none;margin:0 !important;padding:0 !important;display:grid;gap:8px;max-height:320px;overflow:auto;}
.pr-info{padding:8px 10px;border-radius:8px;border:1.5px solid var(--line-strong);background:var(--paper-raised);}
.pr-info p{margin:0;}
.pr-info-head{font-size:0.85rem;color:var(--ink-soft);}
.pr-info-head strong{color:var(--ink);text-transform:uppercase;letter-spacing:0.3px;}
.pr-info-text{font-size:1rem;overflow-wrap:anywhere;}
.pr-info-new{border-color:var(--gold);background:var(--gold-tint);animation:prinfo 1s ease-in-out 6;}
@keyframes prinfo{50%{box-shadow:0 0 0 4px var(--gold);}}
.pr-quick{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px;}
.pr-replyform{display:flex;gap:6px;align-items:center;}
.pr-replyform .vt-input{flex:1;min-width:0;}
.pr-replynote{margin:6px 0 0;font-size:0.85rem;color:var(--live);min-height:1em;overflow-wrap:anywhere;}
.pr-infobanner{position:fixed;top:calc(8px + env(safe-area-inset-top,0px));left:8px;right:8px;z-index:60;max-width:640px;margin:0 auto;display:flex;gap:8px;align-items:center;flex-wrap:wrap;
  padding:10px 12px;border-radius:12px;background:#F3D417;color:#111;font-weight:700;box-shadow:0 4px 16px rgba(0,0,0,0.3);}
.pr-infobanner-text{flex:1 1 200px;min-width:0;overflow-wrap:anywhere;}
.pr-infobanner .vt-btn{background:#fff;color:#111;border-color:#111;}
@media(prefers-reduced-motion:reduce){.pr-info-new{animation:none;box-shadow:0 0 0 3px var(--gold);}}

/* Trainer */
.tr-edit{margin:0 0 10px;border:1px solid var(--line);border-radius:10px;padding:8px 12px;background:var(--paper);}
.tr-edit summary{cursor:pointer;font-weight:600;min-height:40px;display:flex;align-items:center;}
.tr-edit .vt-field{margin-top:8px;}
.tr-editgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;}
.tr-editgrid [hidden]{display:none;}
.tr-editvitals{grid-template-columns:repeat(3,minmax(0,1fr));}
@media(min-width:620px){.tr-editgrid{grid-template-columns:repeat(4,minmax(0,1fr));}.tr-editvitals{grid-template-columns:repeat(5,minmax(0,1fr));}}
.tr-text{width:100%;box-sizing:border-box;border:1.5px solid var(--line-strong);border-radius:10px;background:var(--paper-raised);color:var(--ink);font:400 1rem 'Inter',sans-serif;padding:8px 10px;resize:vertical;}
.tr-chips{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 6px;}
.tr-chip{min-height:36px;padding:0 12px;border-radius:999px;border:1.5px solid var(--line-strong);background:var(--paper);color:var(--ink);font:600 0.85rem 'Inter',sans-serif;cursor:pointer;}
.tr-infos{list-style:none;padding:0 !important;margin:0 !important;display:grid;gap:6px;font-size:0.9rem;}
.tr-infos li{padding:6px 8px;border:1px solid var(--line);border-radius:8px;overflow-wrap:anywhere;}
.tr-badge{display:inline-block;min-width:20px;margin-left:6px;padding:0 6px;border-radius:999px;background:#D8262C;color:#fff;font-size:0.8rem;line-height:20px;}
.tr-badge[hidden]{display:none;}
.tr-strip-msg{flex:1 1 100%;padding:4px 8px;border-radius:8px;background:#7EE2A3;color:#0B1F12;font-weight:700;font-size:0.85rem;overflow-wrap:anywhere;}
.tr-strip-msg[hidden]{display:none;}
.tr-log .tr-log-msg{background:var(--live-tint);border-radius:6px;padding:5px 6px;font-weight:600;}
.tr-replybtn{margin-left:4px;}

/* Monitor page: Info and Message sheets (info cards and the reply box beside a real Z Vent). */
.pr-sheet{position:absolute;top:56px;right:8px;left:8px;z-index:55;max-width:460px;margin-left:auto;max-height:calc(100% - 72px);overflow:auto;
  padding:12px;border-radius:12px;background:var(--paper-raised);color:var(--ink);border:1.5px solid var(--line-strong);box-shadow:0 8px 24px rgba(0,0,0,0.45);}
.pr-sheet[hidden]{display:none;}
.pr-sheet .pr-barbtn{background:var(--paper);color:var(--ink);border-color:var(--line-strong);}
.pr-sheet .pr-infolist{max-height:none;}
.pr-reply-sheet{margin:0;border:0;padding:0;background:none;}
.pr-info-none{color:var(--ink-soft);}
.pr-barbtn[hidden]{display:none;}
.pr-count{display:inline-block;min-width:18px;margin-left:4px;padding:0 5px;border-radius:999px;background:#2A3340;font-size:0.8rem;line-height:18px;}
.pr-barbtn-new{background:#F3D417;color:#111;border-color:#F3D417;animation:prblink 1.4s step-end 6;}
.pr-barbtn-new .pr-count{background:#111;color:#F3D417;}
@media(prefers-reduced-motion:reduce){.pr-barbtn-new{animation:none;}}

/* The trainee's info card list folds up (details/summary). */
.pr-infos-sum{display:flex;align-items:center;gap:6px;cursor:pointer;min-height:40px;list-style:none;}
.pr-infos-sum::-webkit-details-marker{display:none;}
.pr-infos-sum::before{content:'\25B8';font-size:0.9rem;color:var(--ink-soft);}
.pr-infos[open] > .pr-infos-sum::before{content:'\25BE';}
.pr-infos-sum .pr-infos-title{margin:0;}
.pr-infos .pr-count{background:var(--line-strong);color:var(--ink);}
.pr-newtag{padding:1px 8px;border-radius:999px;background:var(--gold-tint);color:var(--gold-text);border:1.5px solid var(--gold);font-weight:700;font-size:0.8rem;}
.pr-newtag[hidden]{display:none;}
.pr-infos[open] .pr-newtag{display:none;}

/* ---------- Build step 3a: events, coming up, scripts ---------- */
.tr-events{display:grid;gap:8px;margin-bottom:6px;}
.tr-event{display:flex;align-items:center;gap:10px;justify-content:space-between;padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:var(--paper);}
.tr-event-text{display:flex;flex-direction:column;gap:2px;min-width:0;}
.tr-event-text span{font-size:0.85rem;color:var(--ink-soft);}
.tr-event .vt-btn{flex:none;}
.tr-plainlist{list-style:none;padding:0 !important;margin:0 !important;display:grid;gap:6px;}
.tr-evrow{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 8px;border:1px solid var(--line);border-radius:8px;overflow-wrap:anywhere;}
.tr-evrow[data-st="building"],.tr-evrow[data-st="on"]{border-color:var(--clay);background:var(--clay-tint);}
.tr-evstate{font-size:0.85rem;color:var(--ink-soft);}
.tr-countdown{font:700 0.95rem 'IBM Plex Mono',monospace;margin-right:4px;}
.tr-steps{list-style:none;padding:0 !important;margin:8px 0 !important;display:grid;gap:8px;counter-reset:step;}
.tr-step{border:1px solid var(--line);border-radius:10px;padding:8px 10px;background:var(--paper);}
.tr-step-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:6px;}
.tr-step-min{display:flex;align-items:center;gap:6px;font-weight:600;}
.tr-step-min .vt-input{width:84px;}
.tr-step-kind{width:auto !important;flex:1 1 120px;}
.tr-step-body{display:flex;gap:8px;flex-wrap:wrap;align-items:center;}
.tr-step-body .tr-select{width:auto;flex:1 1 140px;}
.tr-step-body .vt-input{flex:1 1 140px;}
.tr-step-body .tr-text{flex:1 1 100%;}
.tr-steps-add{margin-top:0;}

/* ---------- Build step 3b: checks and treatments in the Patient panel ---------- */
.vt-ptgroup{margin-top:10px;}
.vt-pt-sub{margin:8px 0 4px;font:700 11px 'IBM Plex Mono',monospace;text-transform:uppercase;color:var(--ink-soft);}
.vt-ptbtns{display:flex;flex-wrap:wrap;gap:6px;}
#ptExamOut .vt-callout{margin-top:8px;}
