:root{--paper:#f6f4ed;--ink:#272b29;--muted:#71756d;--line:#dadbd1;--gold:#b89342;--teal:#287c70;--red:#ac625d;--orange:#c47b39;--pale:#eddda0;--r-background-color:var(--paper);--r-main-color:var(--ink);--r-main-font:Arial,Helvetica,sans-serif;--r-main-font-size:30px;--r-heading-font:Arial,Helvetica,sans-serif;--r-heading-color:var(--ink);--r-heading-text-transform:none;--r-link-color:var(--teal)}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif}.reveal{font-family:Arial,Helvetica,sans-serif}.reveal .slides{text-align:left}.reveal .slides>section{height:720px;padding:55px 74px 78px}.eyebrow,.reveal .eyebrow{font-size:12px;letter-spacing:2.5px;font-weight:600;line-height:1.5;color:var(--muted);margin:0 0 24px}.reveal h1,.reveal h2,.reveal p{margin:0;font-weight:400;text-transform:none}.reveal h1{font-size:71px;line-height:1.055;letter-spacing:-3.6px}.reveal h2{font-size:43px;line-height:1.15;letter-spacing:-1.5px;max-width:1100px}.reveal .subtitle{font-size:20px;color:var(--muted);line-height:1.5;margin-top:28px}.reveal .title-copy{position:absolute;left:74px;top:207px;width:550px;z-index:1}.reveal .title-slide .eyebrow{margin-top:8px}.reveal .title-slide .diagram{top:135px;height:480px}.reveal .title-slide .subtitle{max-width:360px}.reveal .diagram{position:absolute;left:74px;top:180px;width:1132px;height:432px;margin:0;overflow:visible}.diagram svg{width:100%;height:100%;overflow:visible}.reveal .formula-title{font-family:Georgia,'Times New Roman',serif;font-size:57px;letter-spacing:-1px;line-height:1.35}.formula-title sub{font-size:.55em}.reveal .formula-slide .formula-title{margin-top:9px}.fragment-tokens{position:absolute;pointer-events:none;width:1px;height:1px;overflow:hidden}.fragment-tokens .fragment{position:absolute;width:1px;height:1px}.svg-ink{stroke:var(--ink)}.svg-gold{stroke:var(--gold)}.svg-teal{stroke:var(--teal)}.svg-red{stroke:var(--red)}.svg-orange{stroke:var(--orange)}.graph-edge{stroke-width:3.4;fill:none;stroke-linecap:round;transition:opacity .45s,stroke .45s;}.host-edge{stroke:var(--line);stroke-width:1.35}.boundary{stroke:var(--line);fill:none;stroke-width:1.3;stroke-dasharray:3 7}.vertex{fill:var(--paper);stroke:var(--ink);stroke-width:2}.vertex.leaf{fill:var(--gold);stroke:var(--paper);stroke-width:2.8}.vertex.host{fill:var(--paper);stroke:#b4b9ad;stroke-width:1.5}.half-edge{stroke-width:9;stroke-linecap:round;fill:none}.root-halo{fill:var(--paper);stroke:var(--teal);stroke-width:2;stroke-dasharray:3 4}.diagram text{font-family:Arial,Helvetica,sans-serif;fill:var(--ink);font-size:22px}.diagram .math-label{font-family:Georgia,'Times New Roman',serif;font-style:italic;font-size:25px;paint-order:stroke;stroke:var(--paper);stroke-width:7;stroke-linejoin:round}.diagram .small{font-size:15px;letter-spacing:.2px}.diagram .micro{font-size:12px;letter-spacing:1.6px}.diagram .muted{fill:var(--muted)}.diagram .gold{fill:var(--gold)}.diagram .teal{fill:var(--teal)}.diagram .red{fill:var(--red)}.diagram .orange{fill:var(--orange)}.diagram .large{font-size:43px;letter-spacing:-1px}.diagram .math{font-family:Georgia,'Times New Roman',serif;font-size:34px}.diagram .rule{stroke:var(--line);stroke-width:1}.diagram [data-from],.diagram [data-until],.diagram [data-only]{transition:opacity .45s ease,transform .5s ease}.diagram .is-hidden{opacity:0;pointer-events:none}.diagram .dim{opacity:.15}.diagram .gap{fill:var(--pale);opacity:.48;stroke:none}.diagram .hull{fill:#dfe4d8;fill-opacity:.28;stroke:#97a293;stroke-dasharray:5 6;stroke-width:1.3}.diagram .travel{stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset .6s;stroke:var(--teal);stroke-width:5;fill:none}.diagram .travel.is-drawn{stroke-dashoffset:0}.diagram .order-line{stroke:var(--line);stroke-width:1.5;fill:none}.diagram .badge{fill:var(--paper);stroke:var(--line)}.diagram .restored{stroke-dasharray:1;stroke-dashoffset:0;transition:stroke-dashoffset .55s,opacity .45s}.diagram .is-hidden .restored{stroke-dashoffset:1}.reveal .slide-background{background:var(--paper)}
.deck-footer{position:fixed;bottom:0;left:0;right:0;height:69px;margin:0 5.8%;display:flex;align-items:center;justify-content:flex-end;gap:30px;z-index:10;background:var(--paper)}
.word-button{border:0;background:transparent;padding:10px 0;font:11px Arial,Helvetica,sans-serif;letter-spacing:1.3px;color:var(--muted);cursor:pointer;text-decoration:none}
#counter{font-size:12px;letter-spacing:1px;min-width:51px;text-align:right;font-variant-numeric:tabular-nums;color:var(--ink)}
.word-button:hover{color:var(--ink)}button:focus-visible,a:focus-visible{outline:2px solid var(--ink);outline-offset:5px}a{color:var(--ink)}
.step-controls{display:flex;gap:8px}
.arrow-button{display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid var(--line);border-radius:50%;background:transparent;color:var(--ink);cursor:pointer;transition:background .2s,opacity .2s}
.arrow-button svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.arrow-button:hover:not(:disabled){background:#e8e8de}
.arrow-button:disabled{opacity:.3;cursor:default}
.diagram .body-copy{font-size:22px;line-height:1.5;fill:var(--muted)}
.reveal .controls,.reveal .slide-number,.reveal .progress{display:none!important}
.fraction{display:inline-flex;vertical-align:middle;flex-direction:column;align-items:center;font-size:.75em;line-height:1.05;margin:0 9px}.fraction>span:first-child{border-bottom:1.5px solid currentColor;padding:0 10px 5px}.fraction>span:last-child{padding-top:5px}.implication{padding:0 16px}
@media(max-width:650px){.deck-footer{margin:0 4%;height:56px;gap:18px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001ms!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}
@media print{.deck-footer{display:none!important}.reveal .slides>section{height:720px!important}.diagram .is-hidden{opacity:0!important}}
