*{box-sizing:border-box}
/* Colour tokens (--bg, --fg, --muted, --line, --panel, --viz-a, --viz-b) live in brand.css and follow the system theme. */
html{--footer:88px;--pad-x:clamp(24px,4vw,80px);--pad-y:clamp(14px,3vh,44px)}
body{margin:0;background:var(--bg);color:var(--fg);font:20px/1.5 'Helvetica Neue',Arial,sans-serif;-webkit-font-smoothing:antialiased;height:100svh;overflow:hidden;isolation:isolate}
button,select{font:inherit;color:inherit;cursor:pointer}button,a,select{-webkit-tap-highlight-color:transparent}a{color:inherit}button:focus-visible,a:focus-visible,select:focus-visible{outline:2px solid var(--fg);outline-offset:5px}::selection{background:var(--accent,#d3e6ce);color:#101112}
#art-field{position:fixed;inset:0;width:100%;height:100%;z-index:-2;pointer-events:none}
/* A scrim behind the text column keeps projected copy legible over moving artwork. */
.art-wash{position:fixed;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,var(--bg) 6%,color-mix(in srgb,var(--bg) 62%,transparent) 46%,color-mix(in srgb,var(--bg) 30%,transparent) 100%);transition:opacity .8s}
html[data-slide=cover] .art-wash{opacity:.55}

main{height:calc(100svh - var(--footer));display:grid;place-items:center;padding:var(--pad-y) var(--pad-x);container-type:size;outline:none;overflow:auto}
.slide-content{--sw:min(100cqw,177.7cqh);width:var(--sw);height:calc(var(--sw)*9/16);animation:arrive 650ms cubic-bezier(.22,1,.36,1) both}
.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:calc(var(--sw)*.045);align-items:center}
.slide-text{min-width:0;max-height:100%;overflow:auto;text-shadow:0 0 18px var(--bg)}
h1{font:400 clamp(64px,calc(var(--sw)*.054),80px)/1.06 Georgia,'Times New Roman',serif;letter-spacing:-.03em;margin:0 0 .42em;text-wrap:balance}
.question-cue{display:block;border:0;padding:0;background:none;font:italic clamp(24px,calc(var(--sw)*.018),30px)/1.35 Georgia,'Times New Roman',serif;color:var(--muted);text-align:left;margin:0 0 .85em;max-width:36ch;text-shadow:inherit}.question-cue:hover{color:var(--fg)}
.answer{font:clamp(32px,calc(var(--sw)*.024),38px)/1.32 'Helvetica Neue',Arial,sans-serif;max-width:30ch;text-wrap:pretty}.answer p{margin:0 0 .6em}.answer p:last-child{margin-bottom:0}.answer .question{font-family:Georgia,serif}
/* Cover: event title, then the conversation's subject, then up to three quiet fact lines. */
.cover{display:flex;flex-direction:column;justify-content:center;text-shadow:0 0 18px var(--bg)}.cover h1{font-size:clamp(80px,calc(var(--sw)*.092),150px);line-height:.98;letter-spacing:-.045em;max-width:14ch;margin:0 0 .32em}.cover h1 em{font-weight:400}
.cover-subtitle{font-size:clamp(32px,calc(var(--sw)*.028),44px);line-height:1.25;color:var(--fg);max-width:30ch;margin:0 0 1.15em;text-wrap:balance}
.cover-meta{font-size:clamp(24px,calc(var(--sw)*.019),30px);line-height:1.4;color:var(--muted);margin:0;max-width:48ch}.cover-meta+.cover-meta{margin-top:.15em}

/* Drawings: user units in a 720-wide viewBox; labels are never under 32 units. Colours are
   theme tokens only, so every drawing follows the system light or dark theme. */
.slide-visual{margin:0;min-width:0;height:100%;display:grid;place-items:center}
.viz{width:100%;height:100%;max-height:calc(var(--sw)*9/16);overflow:visible}
.viz text{font:500 32px var(--font-sans,'Helvetica Neue',Arial,sans-serif);fill:var(--fg);stroke:none;paint-order:stroke}
.viz .mute{fill:var(--muted)}.viz .em,.viz .em2{fill:var(--fg);font-weight:600}
.viz path,.viz circle{fill:none;stroke-width:3.5;stroke-linecap:round;stroke-linejoin:round}
.viz .ink{stroke:var(--fg)}.viz .soft{stroke:var(--muted);stroke-width:2.5}.viz .acc{stroke:var(--viz-a,var(--fg))}.viz .acc2{stroke:var(--viz-b,var(--muted))}
.viz .thick{stroke-width:6}.viz .ribbon{stroke-width:14}.viz .fade{opacity:.4}.viz .dashed{stroke-dasharray:10 12}
.viz .tint{fill:color-mix(in srgb,var(--viz-a,var(--fg)) 18%,transparent)}.viz .acc2.tint{fill:color-mix(in srgb,var(--viz-b,var(--fg)) 18%,transparent)}.viz .ink.tint{fill:color-mix(in srgb,var(--fg) 8%,transparent)}
.viz .fill-acc{fill:var(--viz-a,var(--fg));stroke:none}.viz .fill-acc2{fill:var(--viz-b,var(--fg));stroke:none}.viz .fill-ink{fill:var(--fg);stroke:none}
/* Opaque page-colour fill or stroke, so a shape can sit cleanly over the lines behind it. */
.viz .solid-bg{fill:var(--bg)}.viz .solid-bg-stroke{stroke:var(--bg)}
.viz .arrowhead{fill:currentColor;stroke:none}.viz marker{color:var(--muted)}
.viz g.ink circle,.viz g.ink path{stroke:var(--fg)}.viz g.acc circle,.viz g.acc path{stroke:var(--viz-a,var(--fg))}
.viz .flow{stroke-dasharray:14 12;animation:flow 22s linear infinite}.viz .dots{stroke-width:11;stroke-dasharray:0 26;animation:flow 14s linear infinite}.viz .dots.sparse{stroke-dasharray:0 74;animation:flow-sparse 26s linear infinite}
.viz .sway{transform-box:view-box;transform-origin:360px 360px;animation:sway 70s ease-in-out infinite alternate}
.viz .bob{animation:bob 50s ease-in-out infinite alternate}
.viz .orbit{transform-box:view-box;transform-origin:560px 190px;animation:spin 120s linear infinite}
.viz .spin{transform-box:view-box;animation:spin 160s linear infinite}
.viz .drift{animation:drift 40s ease-in-out infinite alternate}
.viz .needle{transform-box:view-box;transform-origin:540px 220px;animation:needle 60s ease-in-out infinite alternate}
.viz .tilt{transform-box:view-box;transform-origin:360px 332px;animation:tilt 50s ease-in-out infinite alternate}
.viz .breathe{transform-box:view-box;transform-origin:360px 255px;animation:breathe 50s ease-in-out infinite alternate}
@keyframes flow{to{stroke-dashoffset:-52}}@keyframes flow-sparse{to{stroke-dashoffset:-74}}@keyframes sway{from{transform:rotate(-2.5deg)}to{transform:rotate(2.5deg)}}@keyframes bob{to{transform:translate(-8px,10px)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes drift{from{transform:translate(-22px,-14px)}to{transform:translate(-4px,-2px)}}@keyframes needle{from{transform:rotate(-14deg)}to{transform:rotate(10deg)}}@keyframes tilt{from{transform:rotate(-2deg)}to{transform:rotate(2deg)}}@keyframes breathe{to{transform:scale(1.06)}}

.model-math{font-size:clamp(28px,calc(var(--sw)*.022),38px);margin:0 0 .7em;max-width:100%;overflow-x:auto}.model-math .katex-display{margin:.2em 0}.model-math .katex{color:var(--accent,var(--fg))}.model-math .katex-display>.katex{text-align:left}.model-compact{display:none}

footer{height:var(--footer);padding:0 var(--pad-x);display:flex;align-items:center;gap:28px;position:relative;z-index:3;font-size:20px;background:linear-gradient(transparent,var(--bg) 40%)}
#jump{appearance:none;border:0;border-bottom:1px solid var(--line);background:transparent;padding:6px 2px;max-width:min(520px,40vw);min-width:0;font-size:20px;text-overflow:ellipsis}#jump option{background:var(--panel);color:var(--fg)}
#position{color:var(--muted);font-size:20px;white-space:nowrap;font-variant-numeric:tabular-nums}
.controls{display:flex;gap:10px;align-items:center;margin-left:auto}.controls button,#close-notes{border:1px solid var(--line);border-radius:50%;width:52px;height:52px;padding:0;display:grid;place-items:center;background:var(--bg);font-size:26px;line-height:1}.controls button:hover,#close-notes:hover{background:var(--panel)}.controls button:disabled{opacity:.3;cursor:default}.divider{height:26px;width:1px;background:var(--line);margin:0 6px}

#notes{position:fixed;right:0;top:0;bottom:0;width:min(620px,100vw);z-index:10;padding:90px 40px 40px;background:var(--panel);box-shadow:-20px 0 80px #0006;overflow:auto;font-size:20px;line-height:1.55}#notes[hidden]{display:none}#close-notes{position:absolute;top:24px;right:26px;font-size:30px}#notes h2{font:400 36px/1.15 Georgia,serif;margin:0 0 22px}#notes h3{font-size:20px;font-weight:600;margin:32px 0 10px}#notes p{margin:0 0 16px}#notes .pending{color:var(--muted)}#notes a{display:block;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere;margin-bottom:4px}
.art-formulas{margin-top:36px;border-top:1px solid var(--line);padding-top:20px}.art-formulas summary{cursor:pointer}.formula{overflow:auto;padding:4px 0}.katex-display>.katex{text-align:left}
#svg-source{position:fixed;left:-20000px;top:0;width:1200px;height:780px;visibility:hidden;pointer-events:none}
#svg-source.static-art{left:0;top:0;width:100%;height:100%;z-index:-2;visibility:visible}#svg-source.static-art svg{width:100%;height:100%}
#status{position:fixed;z-index:20;right:24px;bottom:110px;padding:12px 20px;border:1px solid var(--line);border-radius:8px;background:var(--panel);font-size:20px;max-width:calc(100vw - 48px)}#status[hidden]{display:none}
.no-js{position:fixed;inset:8%;overflow:auto;display:flex;flex-direction:column;justify-content:center;background:var(--bg);padding:24px;z-index:11;font-size:24px}.no-js h1{font:400 clamp(28px,5vw,56px)/1.12 Georgia,'Times New Roman',serif;letter-spacing:-.02em;margin:0 0 .5em}.no-js p{margin:0;max-width:52ch}
@keyframes arrive{from{transform:translateY(6px)}to{transform:none}}

/* Phones and narrow or portrait windows: one readable, scrollable column. */
@media (max-width:900px),(max-aspect-ratio:1/1){
  html{--footer:auto}
  body{height:auto;min-height:100svh;overflow:auto}
  main{height:auto;min-height:calc(100svh - 150px);container-type:normal;overflow:visible;padding:40px 24px 32px;place-items:start stretch}
  .slide-content{--sw:100vw;width:100%;height:auto}
  .split{grid-template-columns:1fr;gap:36px}
  h1{font-size:clamp(40px,9vw,60px)}.cover h1{font-size:clamp(54px,14vw,96px)}.cover-subtitle{font-size:24px}.cover-meta{font-size:20px}
  .question-cue{font-size:20px}.answer{font-size:clamp(22px,5vw,28px);max-width:none}
  .slide-visual{height:auto}.viz{height:auto;max-height:none}
  .model-math{font-size:22px}
  footer{position:sticky;bottom:0;height:auto;flex-wrap:wrap;gap:10px 18px;padding:12px 20px 18px;background:var(--bg)}
  #jump{flex:1;max-width:none}.controls{width:100%;justify-content:flex-end;margin:0}.controls button{width:46px;height:46px}
  #notes{padding:80px 24px 28px}
}
@media (max-width:520px){.model-wide{display:none}.model-compact{display:block}}
@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
@media print{#art-field,.art-wash,footer,#notes{display:none!important}html{--bg:#fff;--fg:#111;--muted:#555}body{height:auto;overflow:visible}main{height:auto;padding:20px}.slide-content{--sw:100%;width:100%;height:auto}h1{font-size:40pt}.answer{font-size:20pt}}

/* Scene redesign: fine construction strokes and label halos over fills. */
.viz .hair{stroke-width:1.75}
.viz text.halo{stroke:var(--bg);stroke-width:10px;stroke-linejoin:round;paint-order:stroke}

/* Draft2: plain concept slides, with no new illustration work. */
.text-only{display:flex;align-items:center}.text-only .slide-text{max-width:min(100%,50rem)}.text-only .answer{max-width:40ch}

#notes-window{position:absolute;top:30px;left:40px;width:auto;font-size:20px}html[data-view=notes] #slide,html[data-view=notes] footer,html[data-view=notes] canvas,html[data-view=notes] .art-wash,html[data-view=notes] #svg-source,html[data-view=notes] #notes-window{display:none}html[data-view=notes] #notes{position:fixed;inset:0;width:100%;height:100svh;box-shadow:none;padding:90px clamp(24px,5vw,64px) 40px;overflow:auto;overflow-wrap:anywhere}

/* Full community question opens each topic above the answer. */
.topic-opening{display:flex;align-items:center}.topic-opening .slide-text{width:100%;max-width:none}.topic-question{font:400 clamp(32px,calc(var(--sw)*.031),48px)/1.24 Georgia,'Times New Roman',serif;letter-spacing:-.015em;max-width:58ch;margin:0 0 .6em;text-wrap:pretty}.topic-opening h1{font:400 clamp(32px,calc(var(--sw)*.035),54px)/1.16 'Helvetica Neue',Arial,sans-serif;letter-spacing:-.02em;max-width:50ch;margin:0 0 .4em;color:var(--fg)}
@media(max-width:900px){.topic-question{font-size:clamp(28px,5.5vw,40px)}.topic-opening h1{font-size:clamp(25px,4.5vw,34px)}}

.topic-opening .answer{font-size:clamp(28px,calc(var(--sw)*.026),38px);max-width:65ch;line-height:1.25}.topic-opening .answer p{margin:0 0 .35em}.topic-opening .model-math{font-size:clamp(26px,calc(var(--sw)*.025),36px);margin:0 0 .4em}

/* Consistent optical alignment, independent of the system's Unicode font. */
.controls button,#close-notes{display:grid;place-items:center;padding:0;line-height:1}.controls button svg,#close-notes svg{display:block;width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.closing{display:flex;flex-direction:column;justify-content:center;align-items:center}.closing h1{font-size:clamp(64px,calc(var(--sw)*.07),112px);margin:0 0 .55em}.closing-row{display:flex;align-items:center;justify-content:center;gap:clamp(40px,6vw,110px)}.qr-tile{display:block;position:relative;flex:none;background:white;line-height:0;isolation:isolate}.qr-tile img{display:block;width:min(38vh,330px);height:auto;image-rendering:pixelated}.qr-tile:after{content:'';position:absolute;inset:-14px;border:2px solid var(--fg);border-radius:4px;z-index:-1;pointer-events:none;animation:qr-energy 32s ease-in-out infinite}.closing-links{display:flex;flex-direction:column;gap:.45em;font-size:clamp(28px,calc(var(--sw)*.029),44px);line-height:1.25}.closing-links a{text-decoration-thickness:1px;text-underline-offset:.18em}.closing-links a:first-child{margin-bottom:.4em}
@keyframes qr-energy{0%,100%{opacity:0;transform:scale(1)}50%{opacity:.35;transform:scale(1.04)}}
@media(max-width:900px){.closing-row{flex-direction:column;gap:38px}.closing-links{font-size:28px}.closing h1{font-size:60px}.qr-tile img{width:240px}}
@media(prefers-reduced-motion:reduce){.qr-tile:after{animation:none;opacity:.18}}
.closing{animation:none}.topic-opening .model-math .katex{color:var(--fg)}
/* The system theme stays automatic; projected text uses pure foreground contrast. */
html[data-view][data-theme=dark]{--fg:#fff;--text-halo:#000}
html[data-view][data-theme=light]{--fg:#000;--text-halo:#fff}
.slide-text,.cover,.closing h1,.closing-links{text-shadow:0 1px 3px var(--text-halo),0 0 12px var(--text-halo)}
.topic-question{line-height:1.34;margin-bottom:1em}.topic-opening h1{margin-bottom:.6em}.topic-opening .answer{max-width:60ch;line-height:1.4}.topic-opening .answer p{margin-bottom:.55em}.topic-opening .answer p:last-child{margin-bottom:0}.topic-opening .model-math{margin-bottom:.65em}
@media(min-width:901px) and (min-aspect-ratio:1/1){.text-only .slide-text{max-width:min(100%,48rem)}.text-only .answer{line-height:1.4}}
@media(max-width:900px),(max-aspect-ratio:1/1){
  main{min-height:calc(100svh - 150px);padding:30px 24px 48px}
  .slide-content{min-width:0}.slide-text{max-height:none;overflow:visible}
  h1{font-size:clamp(34px,7.4vw,44px);line-height:1.16;margin-bottom:.65em}
  .cover h1{font-size:clamp(42px,10vw,58px);line-height:1.07}.cover-subtitle{font-size:22px;line-height:1.4}.cover-meta{font-size:20px;line-height:1.45}
  .answer,.topic-opening .answer{font-size:21px;line-height:1.5;max-width:none}.answer p,.topic-opening .answer p{margin-bottom:.7em}
  .topic-question{font-size:23px;line-height:1.48;letter-spacing:0;margin-bottom:1.1em;max-width:none}.topic-opening h1{font-size:27px;line-height:1.28;margin-bottom:.65em}.topic-opening .model-math{font-size:21px;margin-bottom:.85em}
  footer{position:static;padding:18px 24px calc(22px + env(safe-area-inset-bottom));gap:14px 18px;background:var(--bg)}#jump,#position{font-size:18px}
  .closing-links{font-size:24px;gap:.6em}.closing h1{font-size:48px}.qr-tile img{width:220px}
  html[data-view=slides] .art-wash{background:var(--bg);opacity:.68}
}

/* Marck Script, Google Fonts official Latin WOFF2; SIL Open Font License. */
@font-face{font-family:'Marck Script';font-style:normal;font-weight:400;font-display:swap;src:url('vendor/marck-script/latin.woff2') format('woff2')}
.slide-content .topic-question,.slide-content .question-cue{font-family:'Marck Script',cursive;font-style:normal;letter-spacing:0}
@media(max-width:900px),(max-aspect-ratio:1/1){.slide-content .topic-question{font-size:22px}.slide-content .question-cue{font-size:20px}}

/* A fixed, compact navigation strip; slide titles and notes actions live in the menu. */
html{--footer:72px}html[data-view=slides] body{height:100svh;overflow:hidden}
html[data-view=slides] main{overflow:hidden}.slide-text{overflow:visible}
footer{position:fixed;inset:auto 0 0;height:calc(64px + env(safe-area-inset-bottom));padding:8px 20px calc(8px + env(safe-area-inset-bottom));display:flex;justify-content:center;z-index:6;background:color-mix(in srgb,var(--bg) 55%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-top:1px solid color-mix(in srgb,var(--fg) 10%,transparent)}
.controls{width:auto;margin:0;gap:12px;justify-content:center}.controls button{width:44px;height:44px;background:transparent}.controls button svg,#close-menu svg{display:block;width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
#menu{position:fixed;inset:auto auto calc(82px + env(safe-area-inset-bottom)) 50%;transform:translateX(-50%);margin:0;width:min(420px,calc(100vw - 40px));max-height:calc(100svh - 120px);overflow:auto;border:1px solid var(--line);border-radius:12px;background:var(--panel);color:var(--fg);padding:62px 24px 24px;font:20px/1.4 var(--font-sans)}#menu::backdrop{background:#0005}#menu label{display:block;margin-bottom:12px}#menu #jump{display:block;width:100%;max-width:none;font-size:20px;margin:0 0 24px}#menu>button:not(#close-menu){display:block;width:100%;padding:12px 0;border:0;background:none;text-align:left;font:inherit}#close-menu{position:absolute;right:14px;top:12px;width:36px;height:36px;border:0;background:none;display:grid;place-items:center;padding:0;color:inherit}
@media(max-width:900px),(max-aspect-ratio:1/1){html[data-view=slides] body{height:auto;min-height:100svh;overflow:auto}html[data-view=slides] main{height:auto;min-height:100svh;overflow:visible;padding:30px 24px calc(104px + env(safe-area-inset-bottom))}.slide-text{max-height:none}footer{flex-wrap:nowrap;gap:0}.controls{width:auto}.controls button{width:44px;height:44px}#menu{inset:auto 16px calc(80px + env(safe-area-inset-bottom)) 16px;transform:none;width:auto;max-height:calc(100svh - 112px)}}
html[data-view=notes] #menu{display:none}
#menu>button[hidden]{display:none!important}

/* Restrained motion pass. Slide content settles in a short stagger (opacity and a few
   pixels of rise only), controls answer hover quietly, and nothing animates layout, so
   desktop fit and mobile scroll are unchanged. Reduced motion removes all of it above. */
.slide-content{animation:none}
.slide-text>*,.cover>*,.closing>*{animation:settle 620ms cubic-bezier(.22,1,.36,1) both}
.slide-text>:nth-child(2),.cover>:nth-child(2),.closing>:nth-child(2){animation-delay:70ms}
.slide-text>:nth-child(3),.cover>:nth-child(3){animation-delay:140ms}
.slide-text>:nth-child(n+4),.cover>:nth-child(n+4){animation-delay:200ms}
.slide-visual{animation:settle-visual 1100ms cubic-bezier(.22,1,.36,1) 160ms both}
@keyframes settle{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@keyframes settle-visual{from{opacity:0;transform:scale(.985)}to{opacity:1;transform:none}}
.question-cue{transition:color .3s ease}
.closing-links a{text-decoration-color:color-mix(in srgb,currentColor 40%,transparent);transition:text-decoration-color .3s ease}.closing-links a:hover{text-decoration-color:currentColor}

/* Glass navigation: the same fixed buttons, with a hairline that fades at both
   ends instead of a full-width rule, and soft hover and press states. */
footer{border-top:0;background-image:linear-gradient(90deg,transparent,color-mix(in srgb,var(--fg) 9%,transparent) 30%,color-mix(in srgb,var(--fg) 9%,transparent) 70%,transparent);background-size:100% 1px;background-repeat:no-repeat;background-position:top}
.controls button{border-color:color-mix(in srgb,var(--fg) 16%,transparent);transition:background-color .25s ease,border-color .25s ease,opacity .25s ease,transform .25s cubic-bezier(.22,1,.36,1)}
.controls button:hover:not(:disabled){background:color-mix(in srgb,var(--fg) 7%,transparent);border-color:color-mix(in srgb,var(--fg) 32%,transparent)}
.controls button:active:not(:disabled){transform:scale(.94)}
#menu[open]{animation:fade-in .22s ease both}@keyframes fade-in{from{opacity:0}}

/* The closing QR keeps its slow breath, as a fine, faint outline rather than a bright frame. */
.qr-tile:after{border-width:1px;border-color:color-mix(in srgb,var(--fg) 60%,transparent);animation-name:qr-halo}
@keyframes qr-halo{0%,100%{opacity:0;transform:scale(1)}50%{opacity:.22;transform:scale(1.03)}}

/* Formulas can still scroll on narrow screens, but never show a scrollbar track: a
   classic-scrollbar setting otherwise draws a light line under the equation. */
.model-math{scrollbar-width:none}.model-math::-webkit-scrollbar{display:none}

/* Keep the speaker prominent on the cover; the event remains its own smaller line. */
.cover .cover-event{font:400 clamp(26px,calc(var(--sw)*.027),42px)/1.2 var(--font-sans);margin:0 0 .5em;max-width:34ch;text-wrap:balance}
.cover h1{font-size:clamp(80px,calc(var(--sw)*.092),150px);max-width:none;margin:0 0 .2em}
.cover-role{font-size:clamp(22px,calc(var(--sw)*.021),30px);line-height:1.3;margin:0 0 1em}
.cover .cover-subtitle{margin-bottom:.65em}
/* Notes text is 1/1.4 of its former size; controls keep their existing hit targets. */
#notes{font-size:calc(20px / 1.4)}#notes h2{font-size:calc(36px / 1.4)}#notes h3{font-size:calc(20px / 1.4)}
#notes-tools{position:absolute;top:30px;left:40px;right:88px;display:flex;align-items:center;gap:24px;flex-wrap:wrap}
#notes-tools #notes-window{position:static;margin:0;width:auto;font-size:20px}
#notes-timer{font-size:14px;white-space:nowrap;font-variant-numeric:tabular-nums}#elapsed-time{margin-left:.4em}
@media(max-width:900px),(max-aspect-ratio:1/1){.cover .cover-event{font-size:22px}.cover h1{font-size:clamp(48px,12vw,72px)}.cover-role{font-size:20px}#notes-tools{left:24px;gap:12px}}

html[data-theme=light] .model-math .katex{color:var(--fg)}
#notes{width:var(--notes-width,620px);padding:0;overflow:visible;display:flex;flex-direction:column}#notes[hidden]{display:none}
#notes-header{position:relative;flex:none;padding:22px 80px 16px 28px;border-bottom:1px solid var(--line);background:var(--panel)}#notes-tools{position:static;display:flex;align-items:center;gap:18px;flex-wrap:wrap}#notes-header #jump{display:block;max-width:100%;width:100%;font-size:14px;margin-top:14px}#notes-body{min-height:0;overflow:auto;padding:24px 28px 32px;flex:1}#countdown{font-size:14px;font-variant-numeric:tabular-nums;white-space:nowrap}#countdown[data-state=soon]{color:#00843d}#countdown[data-state=over]{color:#d92d25}html[data-theme=dark] #countdown[data-state=soon]{color:#54e58b}html[data-theme=dark] #countdown[data-state=over]{color:#ff7771}
#notes-resize{position:absolute;left:-7px;top:0;bottom:0;width:14px;cursor:ew-resize;touch-action:none;z-index:2}#notes-resize:after{content:'';position:absolute;left:5px;top:45%;width:4px;height:44px;border-radius:3px;background:var(--muted)}#notes-resize:focus-visible{outline:2px solid var(--fg)}
html[data-view=notes] #notes{padding:0;overflow:hidden}html[data-view=notes] footer{display:flex}html[data-view=notes] #notes{bottom:72px;height:calc(100svh - 72px)}html[data-view=notes] #notes-resize{display:none}
html[data-view=slides][data-notes-window=true]{--footer:0px}html[data-view=slides][data-notes-window=true] footer{display:none}
@media(min-width:901px) and (min-aspect-ratio:1/1){html[data-view=slides][data-notes-open=true] main{width:calc(100% - var(--notes-width,620px));padding-left:20px;padding-right:20px}html[data-view=slides][data-notes-open=true] footer{right:var(--notes-width,620px)}html[data-view=slides][data-notes-open=true] .slide-content h1{font-size:clamp(22px,calc(var(--sw)*.054),80px)}html[data-view=slides][data-notes-open=true] .answer{font-size:clamp(15px,calc(var(--sw)*.024),38px)}html[data-view=slides][data-notes-open=true] .topic-question{font-size:clamp(18px,calc(var(--sw)*.031),48px)}html[data-view=slides][data-notes-open=true] .topic-opening h1{font-size:clamp(20px,calc(var(--sw)*.035),54px)}html[data-view=slides][data-notes-open=true] .cover h1{font-size:clamp(36px,calc(var(--sw)*.092),150px)}html[data-view=slides][data-notes-open=true] .cover-event{font-size:clamp(18px,calc(var(--sw)*.027),42px)}html[data-view=slides][data-notes-open=true] .cover-role{font-size:clamp(15px,calc(var(--sw)*.021),30px)}html[data-view=slides][data-notes-open=true] .cover-subtitle{font-size:clamp(18px,calc(var(--sw)*.028),44px)}html[data-view=slides][data-notes-open=true] .cover-meta{font-size:clamp(14px,calc(var(--sw)*.019),30px)}}
@media(max-width:900px),(max-aspect-ratio:1/1){#notes{width:100vw}#notes-resize{display:none}#notes-header{padding-left:24px}#notes-tools{left:auto;right:auto}}

@media(min-width:901px) and (min-aspect-ratio:1/1){html[data-view=slides][data-notes-open=true] .slide-content{width:100%;height:100%;--sw:100cqw}}

.concept-link{color:inherit;text-decoration-line:underline;text-decoration-thickness:1px;text-underline-offset:.16em}.concept-link:hover{text-decoration-thickness:2px}

/* Home shares the presentation controls' icon target and glass styling. */
.controls .home-control{display:grid;place-items:center;flex:none;width:44px;height:44px;padding:0;border:1px solid color-mix(in srgb,var(--fg) 16%,transparent);border-radius:50%;color:var(--fg);background:transparent;text-decoration:none;line-height:1;transition:background-color .25s ease,border-color .25s ease,transform .25s cubic-bezier(.22,1,.36,1)}
.controls .home-control svg{display:block;width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.controls .home-control:hover{background:color-mix(in srgb,var(--fg) 7%,transparent);border-color:color-mix(in srgb,var(--fg) 32%,transparent)}
.controls .home-control:active{transform:scale(.94)}
@media(max-width:400px){footer{padding-left:16px;padding-right:16px}.controls{gap:4px}.controls button,.controls .home-control{flex:none;width:44px;height:44px}}
