.lm-track{--track-done:var(--lm-color-fg-default);--track-line:var(--lm-color-border-default);justify-content:center;inline-size:100%;min-inline-size:0;padding-block-start:1rem;display:flex;position:relative}:is(.lm-track[data-station=dilution],:has(>.lm-room[data-station=dilution]) .lm-track){--track-done:var(--lm-lab-accent-dilution)}:is(.lm-track[data-station=differential],:has(>.lm-room[data-station=differential]) .lm-track){--track-done:var(--lm-lab-accent-differential)}:is(.lm-track[data-station=qc],:has(>.lm-room[data-station=qc]) .lm-track){--track-done:var(--lm-lab-accent-qc)}:is(.lm-track[data-station=call],:has(>.lm-room[data-station=call]) .lm-track){--track-done:var(--lm-lab-accent-call)}:is(.lm-track[data-station=chemistry],:has(>.lm-room[data-station=chemistry]) .lm-track){--track-done:var(--lm-lab-accent-chemistry)}:is(.lm-track[data-station=bloodbank],:has(>.lm-room[data-station=bloodbank]) .lm-track){--track-done:var(--lm-lab-accent-bloodbank)}:is(.lm-track[data-station=gram],:has(>.lm-room[data-station=gram]) .lm-track){--track-done:var(--lm-lab-accent-micro)}.lm-track-list{grid-auto-columns:minmax(0,8.5rem);grid-auto-flow:column;justify-content:center;min-inline-size:0;display:grid}.lm-track-list>li{grid-template-rows:1.125rem auto;grid-template-columns:minmax(0,1fr);justify-items:center;row-gap:.125rem;min-inline-size:0;display:grid;position:relative}.lm-track-list>li+li:before{content:"";background:var(--track-line);block-size:2px;inline-size:100%;transition:background-color var(--lm-motion-duration-base) var(--lm-motion-easing-standard);position:absolute;inset-block-start:calc(.5625rem - 1px);inset-inline-end:50%}.lm-track-list>li[data-reached]+li[data-reached]:before{background:var(--track-done)}.lm-track-list>.lm-track-fold+li:before,.lm-track-list>li+.lm-track-fold:before{background:repeating-linear-gradient(to right, var(--track-line) 0 4px, transparent 4px 7px)}.lm-track-dot{z-index:1;box-sizing:border-box;border:1.5px solid var(--lm-color-border-strong);background:var(--lm-color-bg-surface);block-size:.875rem;inline-size:.875rem;color:var(--lm-color-fg-on-accent);transition:background-color var(--lm-motion-duration-base) var(--lm-motion-easing-standard), border-color var(--lm-motion-duration-base) var(--lm-motion-easing-standard);border-radius:50%;align-self:center;place-items:center;display:grid;position:relative}.lm-track-dot>svg{block-size:.75rem;inline-size:.75rem}li[data-major]>.lm-track-dot{block-size:1.125rem;inline-size:1.125rem}li[data-major]>.lm-track-dot>svg{block-size:.9375rem;inline-size:.9375rem}li:is([data-tone=done],[data-tone=correct])>.lm-track-dot{border-color:var(--track-done);background:var(--track-done)}li[data-tone=check]>.lm-track-dot{border-color:var(--lm-color-status-warn-fg);background:var(--lm-color-status-warn-fg)}li[aria-current]>.lm-track-dot{border:2px solid var(--lm-color-bg-accent);box-shadow:0 0 0 3px color-mix(in oklab, var(--lm-color-bg-accent) 16%, transparent)}li[aria-current]>.lm-track-dot:after{content:"";background:var(--lm-color-bg-accent);border-radius:50%;block-size:.3125rem;inline-size:.3125rem}.lm-track-fold>.lm-track-dot{background:var(--lm-color-border-strong);border:0;block-size:.375rem;inline-size:.375rem}.lm-track-name{max-inline-size:100%;color:var(--lm-color-fg-muted);font-size:var(--lm-font-size-xs);white-space:nowrap;text-overflow:ellipsis;padding-inline:.25rem;line-height:1.15;overflow:hidden}.lm-track-back{border-radius:var(--lm-radius-xs);min-inline-size:0;max-inline-size:100%;font:inherit;font-size:var(--lm-font-size-xs);cursor:pointer;background:0 0;border:0;padding:0;line-height:1.15;display:block}.lm-track-back:after{content:"";position:absolute;inset:-.25rem 0}.lm-track-back:hover .lm-track-name{color:var(--lm-color-fg-default);text-underline-offset:.2em;text-decoration-line:underline}.lm-track-back:focus-visible{outline:var(--lm-focus-width) solid var(--lm-color-focus-ring);outline-offset:2px}li[aria-current]>.lm-track-name{max-inline-size:none;color:var(--lm-color-fg-default);font-weight:600;overflow:visible}.lm-track-tube{block-size:.9375rem;translate:calc(var(--tube-x,0px) - 50%) 0;pointer-events:none;display:block;position:absolute;inset-block-start:0;inset-inline-start:0}.lm-track-tube:not([data-placed]){visibility:hidden}.lm-track-tube>svg{block-size:100%;inline-size:auto;display:block}@container (width<40rem){.lm-track-list>li:not([aria-current])>.lm-track-name{clip-path:inset(50%);block-size:1px;inline-size:1px;position:absolute;overflow:hidden}.lm-track-list{grid-auto-columns:minmax(0,4.5rem)}}@media (prefers-reduced-motion:no-preference){.lm-track-tube[data-placed]{transition:translate var(--lm-motion-duration-slow) var(--lm-motion-easing-enter)}li[data-just]>.lm-track-dot>svg{animation:lm-track-check var(--lm-motion-duration-base) var(--lm-motion-easing-enter) backwards}}@keyframes lm-track-check{0%{opacity:0;scale:.4}}@media (forced-colors:active){li:is([data-tone=done],[data-tone=correct],[data-tone=check])>.lm-track-dot{color:canvas;background:canvastext;border-color:canvastext}li[aria-current]>.lm-track-dot{border-color:highlight}li[aria-current]>.lm-track-dot:after{background:highlight}.lm-track-list>li+li:before{background:canvastext}}.gram-workspace,.gram-record{--gram-violet:var(--lm-specimen-gram-violet);--gram-complex:var(--lm-specimen-gram-complex);--gram-pink:var(--lm-specimen-gram-pink);--gram-iodine:var(--lm-specimen-gram-iodine);--gram-rinse:var(--lm-specimen-gram-rinse);--lm-gram-wall:color-mix(in srgb, var(--lm-color-bg-raised) 30%, var(--lm-dept-micro-tint));--lm-gram-tail:light-dark(#9ebcac,#729883);--lm-gram-strand:light-dark(#618873,#91b49f);--lm-gram-cytoplasm:light-dark(#e4f0ea,#53675c);--lm-gram-steel:light-dark(#b9c3cd,#6b767d);--lm-gram-plastic:light-dark(#f4f6f3,#8e9893)}.gram-workspace{z-index:2;height:100%;color:var(--lm-color-fg-default);grid-template-rows:minmax(0,1fr);grid-template-columns:420px minmax(0,1fr);gap:24px 38px;padding:42px 44px 18px;display:grid;position:relative}.gram-paper{background:var(--lm-lab-paper);border:1px solid var(--lm-color-border-default);box-shadow:var(--lm-shadow-card);border-radius:5px;align-self:start;gap:20px;padding:26px 28px;font-size:17px;line-height:1.55;display:grid}.gram-paper h2{font-size:24px;font-weight:650}.gram-paper h3{font-size:24px;font-weight:560;line-height:1.4}.gram-order>p{color:var(--lm-color-fg-muted);font-size:15px}.gram-order dl{gap:12px;margin:24px 0 20px;display:grid}.gram-order dl>div{grid-template-columns:100px 1fr;gap:10px;display:grid}.gram-order dt{color:var(--lm-color-fg-muted)}.gram-line{gap:12px;display:grid}.gram-role{color:var(--lm-color-fg-muted);margin-bottom:-6px;font-size:14px;font-weight:600}.gram-cue:focus{outline:none}.gram-paper a:not(.h-button){color:inherit;text-underline-offset:.2em;text-decoration:underline}.gram-clock{border-top:1px solid var(--lm-color-border-default);gap:4px;padding-top:18px;font-size:14px;display:grid}.gram-clock strong{font-variant-numeric:tabular-nums;font-size:30px;font-weight:550}.gram-clock svg{width:100%;height:18px;margin:12px 0 4px}.gram-clock small,.gram-mode,.gram-sources{color:var(--lm-color-fg-muted);font-size:var(--lm-font-size-sm)}.gram-question,.gram-choices{gap:10px;display:grid}.gram-choices{border:0;min-width:0;padding:0}.gram-choices .lm-choice{min-block-size:2.75rem;padding:.5rem .875rem}.gram-paper[data-sheet]{gap:14px}.gram-paper-end{align-items:baseline;gap:24px;display:flex}.gram-paper-end details[open]{flex:1}.gram-mistakes{gap:10px;padding:0;font-size:15px;line-height:1.45;list-style:none;display:grid}.gram-mistakes li{border-top:1px solid var(--lm-color-border-default);gap:4px;padding-top:10px;display:grid}.gram-mistakes li:focus{outline:none}.gram-mistakes h4{font-size:17px;font-weight:600;line-height:1.35}.gram-mistakes dl{grid-template-columns:max-content minmax(0,1fr);align-items:baseline;gap:4px 10px;display:grid}.gram-mistakes dd{font-size:16px}.gram-why{color:var(--lm-color-fg-muted)}.gram-paper-actions{flex-wrap:wrap;gap:10px;display:flex}.gram-feedback{gap:14px;display:grid}.gram-visual{flex-direction:column;min-width:0;min-height:0;display:flex}.gram-scene{background:radial-gradient(ellipse at 50% 44%, color-mix(in srgb, var(--lm-dept-micro-tint) 48%, transparent), transparent 70%);width:100%;height:100%;min-height:400px;position:relative}.gram-model,.gram-diagram{width:100%;height:calc(100% - 80px);position:absolute;top:46px;left:0}.gram-model canvas{width:100%;height:100%;display:block}.gram-model{opacity:0;transition:opacity var(--lm-motion-duration-slow) var(--lm-motion-easing-enter)}.gram-scene[data-renderer=ready] .gram-model{opacity:1}.gram-scene[data-renderer=ready]>.gram-diagram{visibility:hidden}.gram-wall-headings{text-align:center;z-index:2;grid-template-columns:1fr 1fr;gap:30px;width:90%;display:grid;position:absolute;top:12px;left:5%}.gram-wall-headings h3{font-size:21px;font-weight:600}.gram-wall-keys{text-align:center;pointer-events:none;grid-template-columns:1fr 1fr;gap:35px;width:88%;font-size:15px;line-height:1.45;display:grid;position:absolute;top:50px;left:6%}.gram-wall-keys b{font-weight:550}.gram-wall-keys span{color:var(--lm-color-fg-muted);margin-top:5px;display:block}.gram-scene-actions{position:absolute;bottom:0;right:0}.gram-controls{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.gram-readout{justify-content:center;gap:48px;padding:10px;font-size:21px;display:flex}.gram-run-picker{font-size:var(--lm-font-size-sm);align-items:center;gap:8px;display:flex}.gram-run-picker select{background:var(--lm-color-bg-surface);border:1px solid var(--lm-color-border-default);border-radius:4px;padding:4px 8px}.gram-error{color:var(--lm-color-fg-default);gap:12px;display:grid}.gram-record{font-size:17px;line-height:1.6}.gram-record h3{margin:16px 0 8px;font-size:21px}.gram-record h4{margin-top:14px;font-weight:600}.gram-record section{margin-top:20px}.gram-record .gram-print-diagram{width:100%;height:auto;position:static}.lm-illo-gram-cyto{fill:var(--lm-gram-cytoplasm)}.lm-illo-gram-tail{fill:var(--lm-gram-tail)}.lm-illo-gram-head{fill:var(--lm-dept-micro-tint);stroke:var(--lm-gram-tail);stroke-width:1px}.lm-illo-gram-periplasm{fill:var(--lm-dept-micro-tint);fill-opacity:.28}.lm-illo-s-gram-wall{stroke:var(--lm-gram-tail)}.lm-illo-s-gram-strand{stroke:var(--lm-gram-strand)}[data-state=cv] .lm-illo-gram-cyto,.gram-spot-cv{fill:var(--gram-violet)}[data-state=complex] .lm-illo-gram-cyto,[data-state=purple] .lm-illo-gram-cyto,.gram-spot-complex,.gram-spot-purple{fill:var(--gram-complex)}[data-state=pink] .lm-illo-gram-cyto,.gram-spot-pink{fill:var(--gram-pink)}[data-state=mixed] .lm-illo-gram-cyto,.gram-spot-mixed{fill:color-mix(in srgb, var(--gram-pink) 50%, var(--gram-complex))}.gram-spot-unstained,.gram-spot-clear{fill:var(--lm-gram-cytoplasm)}[data-state=clear] .lm-illo-gram-outer,[data-state=pink] .lm-illo-gram-outer{opacity:.15}@media (width<=1500px){.gram-workspace{grid-template-columns:360px minmax(0,1fr);gap:18px;padding:26px 26px 12px}.gram-paper{gap:16px;padding:20px 22px;font-size:16px}.gram-paper h3{font-size:21px}.gram-wall-headings h3{font-size:18px}.gram-wall-keys{font-size:var(--lm-font-size-sm);top:44px}.gram-order dl{margin:16px 0}}@media (width<64rem),(height<37.5rem){.gram-workspace{grid-template-rows:none;grid-template-columns:minmax(0,1fr);gap:16px;block-size:auto;inline-size:min(100%,52rem);margin-inline:auto;padding:16px 16px 24px}.gram-paper{padding:18px 20px;font-size:16px}.gram-scene{aspect-ratio:16/10;flex:none;height:auto;min-height:0}.gram-wall-headings h3{font-size:15px}.gram-wall-keys{font-size:var(--lm-font-size-sm);gap:12px}}@media (width<48rem){.gram-scene{aspect-ratio:5/7}.gram-model,.gram-diagram{height:calc(100% - 214px);top:40px}.gram-wall-keys{width:100%;top:auto;bottom:44px;left:0}.gram-visual{gap:4px}}@media (prefers-reduced-motion:reduce){.gram-workspace *,.gram-workspace :before,.gram-workspace :after{transition:none!important;animation:none!important}}@media print{.gram-record{color:var(--lm-color-fg-default);--lm-gram-cytoplasm:#e4f0ea;--lm-gram-wall:#dbeadf;--lm-gram-tail:#9ebcac;--lm-gram-strand:#618873;font-size:12pt}.gram-record section,.gram-record-answers>div{break-inside:avoid}.gram-record h3{font-size:16pt}.gram-record .gram-print-diagram{height:110mm}.gram-record-mechanism{break-before:page}.gram-record-answers{break-inside:auto}body[data-lab] :is(div,main):has(>.lm-room[data-station=gram]),body[data-lab] .lm-room[data-station=gram]{display:none}.gram-record footer{margin-top:8mm;font-size:9pt}}.lm-illo-gram-cv{fill:var(--gram-violet)}.lm-illo-gram-complex,.lm-illo-gram-purple{fill:var(--gram-complex)}.lm-illo-gram-pink,.lm-illo-gram-mixed{fill:var(--gram-pink)}.gram-order dd{font-size:15px}.gram-order dt{white-space:nowrap}.lm-room[data-scene=gram-bench]{--lm-station:var(--lm-dept-micro-tint);background:var(--lm-lab-counter-layers), var(--lm-lab-wall)}.gram-cleared .lm-illo-gram-outer{opacity:.15}.gram-damaged [data-part=gram-wall-positive]:first-of-type .lm-illo-s-gram-wall{stroke-dasharray:90 24}
