.deck-root{--color-paper:#f0ebde;--color-paper-alt:#e6e0ce;--color-ink:#1f2be0;--color-ink-soft:#5560e5;--color-ink-dark:#0d1677;--color-grid:#1f2be01a;--color-ink-faint:#1f2be02e;--font-display:var(--font-newsreader), Georgia, serif;--font-body:var(--font-hanken), -apple-system, BlinkMacSystemFont, sans-serif;--font-mono:var(--font-dm-mono), ui-monospace, SFMono-Regular, Menlo, monospace;--edge-margin:80px;--ease-out-expo:cubic-bezier(.16, 1, .3, 1);--duration-normal:.5s}.deck-root *{box-sizing:border-box;margin:0;padding:0}.deck-root .slide{visibility:hidden;opacity:0;pointer-events:none;background:var(--color-paper);width:1920px;height:1080px;transition:opacity .35s,visibility .35s;display:block;position:absolute;inset:0;overflow:hidden}.deck-root .slide.active,.deck-root .slide.visible{visibility:visible;opacity:1;pointer-events:auto;z-index:1}.deck-root img,.deck-root video,.deck-root canvas,.deck-root svg{max-width:100%;max-height:100%}@media (prefers-reduced-motion:reduce){.deck-root *,.deck-root :before,.deck-root :after{transition-duration:.2s!important;animation-duration:.01ms!important}}.deck-root .stage-canvas{box-sizing:border-box;width:100%;height:100%;padding:70px var(--edge-margin) 64px;color:var(--color-ink);flex-direction:column;justify-content:space-between;display:flex;position:relative}.deck-root .stage-canvas:before{content:"";background-image:linear-gradient(to right, var(--color-grid) 1px, transparent 1px), linear-gradient(to bottom, var(--color-grid) 1px, transparent 1px);pointer-events:none;z-index:1;background-size:32px 32px;position:absolute;inset:0}.deck-root .stage-canvas:after{content:"";left:var(--edge-margin);right:var(--edge-margin);border-top:1.5px solid var(--color-ink);border-bottom:1.5px solid var(--color-ink);pointer-events:none;z-index:2;position:absolute;top:30px;bottom:28px}.deck-root .masthead{z-index:3;border-bottom:1.5px solid var(--color-ink);font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;grid-template-columns:1.2fr auto 1.2fr;align-items:center;padding-bottom:14px;font-size:15px;display:grid;position:relative}.deck-root .masthead-center{text-align:center;border:1.5px solid var(--color-ink);background:var(--color-paper-alt);letter-spacing:.16em;padding:4px 20px;font-weight:700}.deck-root .masthead-right{text-align:right;justify-content:flex-end;align-items:center;gap:16px;display:flex}.deck-root .section-kicker{font-family:var(--font-body);letter-spacing:.2em;text-transform:uppercase;color:var(--color-ink);align-items:center;gap:16px;font-size:14px;font-weight:600;display:flex}.deck-root .section-kicker:before{content:"";background:var(--color-ink);width:36px;height:2px;display:inline-block}.deck-root .hero-title{font-family:var(--font-display);letter-spacing:-.015em;color:var(--color-ink);margin:0;font-size:96px;font-weight:400;line-height:.94}.deck-root .hero-title em{color:var(--color-ink-soft);font-style:italic;font-weight:400;display:block}.deck-root .hero-description{color:var(--color-ink);opacity:.92;max-width:860px;margin:0;font-size:24px;font-weight:400;line-height:1.55}.deck-root .slide-heading-sm{font-family:var(--font-display);color:var(--color-ink);letter-spacing:-.01em;margin:0;font-size:68px;font-weight:400;line-height:.98}.deck-root .slide-heading-sm em{color:var(--color-ink-soft);font-style:italic}.deck-root .hero-layout{z-index:3;grid-template-columns:1.28fr .72fr;align-items:center;gap:64px;margin:auto 0;display:grid;position:relative}.deck-root .hero-sidebar{background:var(--color-paper-alt);border:1.5px solid var(--color-ink);flex-direction:column;padding:34px 32px 30px;display:flex;position:relative;box-shadow:12px 12px #1f2be024}.deck-root .panel-topbar{border-bottom:1.5px solid var(--color-ink);font-family:var(--font-mono);letter-spacing:.08em;justify-content:space-between;align-items:center;padding-bottom:12px;font-size:14px;font-weight:700;display:flex}.deck-root .ledger-rows-container{flex-direction:column;margin-top:6px;display:flex}.deck-root .ledger-entry{border-bottom:1px solid var(--color-ink-faint);font-family:var(--font-mono);justify-content:space-between;align-items:baseline;padding:10px 0;font-size:15px;display:flex}.deck-root .ledger-entry .topic-name{color:var(--color-ink);font-weight:500}.deck-root .ledger-entry .topic-formula{opacity:.85;letter-spacing:.04em;font-size:14px}.deck-root .code-callout-box{border:1.5px solid var(--color-ink);font-family:var(--font-mono);color:var(--color-ink-dark);background:#fff;margin-top:16px;padding:16px 20px;font-size:14.5px;line-height:1.65}.deck-root .code-callout-header{letter-spacing:.14em;text-transform:uppercase;color:var(--color-ink);border-bottom:1px dashed var(--color-ink-faint);justify-content:space-between;margin-bottom:8px;padding-bottom:4px;font-size:12px;font-weight:700;display:flex}.deck-root .qr-mosaic-container{background:var(--color-paper);border:1.5px solid var(--color-ink);box-shadow:0 0 0 2px var(--color-paper);z-index:4;grid-template-rows:repeat(8,7px);grid-template-columns:repeat(8,7px);gap:1.5px;padding:4px;display:grid;position:absolute;top:-22px;right:-22px}.deck-root .qr-cell{background:var(--color-paper)}.deck-root .qr-cell.on{background:var(--color-ink)}.deck-root .pixel-glitch-column{opacity:.45;pointer-events:none;z-index:2;width:48px;position:absolute;top:100px;bottom:100px;left:0}.deck-root .slide-grid-2col{z-index:3;grid-template-columns:1.05fr .95fr;align-items:start;gap:56px;margin:auto 0;display:grid;position:relative}.deck-root .slide-col-left,.deck-root .slide-col-right{flex-direction:column;gap:20px;display:flex}.deck-root .rules-ledger{background:var(--color-paper-alt);border:1.5px solid var(--color-ink);flex-direction:column;margin-top:6px;display:flex}.deck-root .rules-ledger-header{border-bottom:1.5px solid var(--color-ink);font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;background:#1f2be014;justify-content:space-between;padding:12px 20px;font-size:13px;font-weight:700;display:flex}.deck-root .rule-row{border-bottom:1px solid var(--color-ink-faint);grid-template-columns:56px 1fr auto;align-items:center;gap:18px;padding:12px 20px;display:grid}.deck-root .rule-row:last-child{border-bottom:none}.deck-root .rule-num{font-family:var(--font-mono);color:var(--color-ink-soft);font-size:15px;font-weight:700}.deck-root .rule-text{color:var(--color-ink);font-size:16.5px;line-height:1.4}.deck-root .rule-code{font-family:var(--font-mono);border:1px solid var(--color-ink);white-space:nowrap;color:var(--color-ink-dark);background:#fff;padding:4px 10px;font-size:14.5px;font-weight:600}.deck-root .editor-container{border:1.5px solid var(--color-ink);background:#fff;box-shadow:12px 12px #1f2be01f}.deck-root .editor-topbar{border-bottom:1.5px solid var(--color-ink);background:var(--color-paper-alt);font-family:var(--font-mono);letter-spacing:.08em;justify-content:space-between;align-items:center;padding:12px 20px;font-size:14px;font-weight:700;display:flex}.deck-root .editor-body{font-family:var(--font-mono);color:var(--color-ink-dark);padding:22px 26px;font-size:18px;line-height:1.7}.deck-root .editor-body .kw{color:#8b008b;font-weight:700}.deck-root .editor-body .var{color:var(--color-ink);font-weight:600}.deck-root .editor-body .op{color:#c41e3a;font-weight:700}.deck-root .editor-body .str{color:green}.deck-root .editor-body .num{color:#d9531e;font-weight:600}.deck-root .editor-body .comment{color:#718096;font-size:15.5px;font-style:italic}.deck-root .terminal-box{background:var(--color-paper-alt);border:1.5px solid var(--color-ink);flex-direction:column;gap:10px;padding:16px 22px;display:flex}.deck-root .terminal-header{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;border-bottom:1px dashed var(--color-ink-faint);justify-content:space-between;padding-bottom:6px;font-size:13px;font-weight:700;display:flex}.deck-root .terminal-output{font-family:var(--font-mono);color:var(--color-ink);border:1px solid var(--color-ink);background:#fff;padding:10px 16px;font-size:19px;font-weight:700;line-height:1.5}.deck-root .note-strip{border:1px solid var(--color-ink);color:var(--color-ink);background:#1f2be00d;align-items:center;gap:14px;padding:12px 18px;font-size:15px;line-height:1.45;display:flex}.deck-root .note-tag{font-family:var(--font-mono);background:var(--color-ink);color:var(--color-paper);letter-spacing:.1em;white-space:nowrap;padding:2px 8px;font-size:12px;font-weight:700}.deck-root .formula-hero-box{background:var(--color-paper-alt);border:1.5px solid var(--color-ink);flex-direction:column;gap:10px;margin-top:4px;padding:18px 22px;display:flex}.deck-root .formula-line{font-family:var(--font-mono);color:var(--color-ink-dark);align-items:center;gap:12px;font-size:18.5px;font-weight:700;display:flex}.deck-root .formula-line .formula-tag{background:var(--color-ink);color:var(--color-paper);letter-spacing:.08em;text-transform:uppercase;padding:2px 8px;font-size:12px}.deck-root .step-ledger{flex-direction:column;gap:10px;margin-top:6px;display:flex}.deck-root .step-card{border:1.5px solid var(--color-ink);background:#fff;grid-template-columns:70px 1fr auto;align-items:center;gap:16px;padding:13px 18px;display:grid}.deck-root .step-badge{font-family:var(--font-mono);background:var(--color-paper-alt);border:1px solid var(--color-ink);text-align:center;letter-spacing:.06em;padding:4px 8px;font-size:13px;font-weight:700}.deck-root .step-desc{color:var(--color-ink);font-size:15.5px;line-height:1.35}.deck-root .step-desc strong{color:var(--color-ink-dark);margin-bottom:2px;display:block}.deck-root .step-calc{font-family:var(--font-mono);color:var(--color-ink);border:1px solid var(--color-ink-faint);white-space:nowrap;background:#1f2be00f;padding:6px 12px;font-size:15.5px;font-weight:700}.deck-root .matrix-box{background:var(--color-paper-alt);border:1.5px solid var(--color-ink);flex-direction:column;gap:10px;padding:16px 20px;display:flex}.deck-root .matrix-header{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;border-bottom:1px solid var(--color-ink);justify-content:space-between;padding-bottom:6px;font-size:13px;font-weight:700;display:flex}.deck-root .matrix-grid{grid-template-columns:repeat(6,1fr);gap:8px;display:grid}.deck-root .matrix-cell{border:1px solid var(--color-ink);text-align:center;font-family:var(--font-mono);color:var(--color-ink);background:#fff;padding:8px 4px;font-size:15px;font-weight:600}.deck-root .matrix-cell.target-event{background:var(--color-ink);color:#fff;box-shadow:0 0 0 2px var(--color-paper-alt), 0 0 0 3.5px var(--color-ink);font-weight:700}.deck-root .frequency-table-box{background:var(--color-paper-alt);border:1.5px solid var(--color-ink);flex-direction:column;gap:10px;padding:16px 20px 14px;display:flex}.deck-root .table-title-row{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;border-bottom:1.5px solid var(--color-ink);justify-content:space-between;padding-bottom:8px;font-size:13px;font-weight:700;display:flex}.deck-root .freq-table{border-collapse:collapse;width:100%;font-family:var(--font-mono);font-size:15px}.deck-root .freq-table th{text-align:left;letter-spacing:.08em;color:var(--color-ink-dark);border-bottom:1px solid var(--color-ink);text-transform:uppercase;padding:6px 8px;font-size:12.5px;font-weight:700}.deck-root .freq-table td{border-bottom:1px solid var(--color-ink-faint);color:var(--color-ink);padding:9px 8px}.deck-root .freq-table tr.highlight-row{background:#1f2be01f;font-weight:700}.deck-root .freq-table tr.highlight-row td{color:var(--color-ink-dark)}.deck-root .freq-table tr.total-row{border-top:1.5px solid var(--color-ink);font-weight:700}.deck-root .freq-table tr.total-row td{border-bottom:none;padding-top:10px}.deck-root .badge-target{background:var(--color-ink);color:var(--color-paper);letter-spacing:.06em;margin-left:6px;padding:2px 6px;font-size:11px;font-weight:700}.deck-root .slots-box{background:var(--color-paper-alt);border:1.5px solid var(--color-ink);flex-direction:column;gap:12px;padding:16px 18px 14px;display:flex}.deck-root .slots-row-container{grid-template-columns:repeat(8,1fr);align-items:center;gap:6px;display:grid}.deck-root .slot-card{border:1.5px solid var(--color-ink);text-align:center;background:#fff;flex-direction:column;gap:4px;padding:8px 4px;display:flex}.deck-root .slot-pos{font-family:var(--font-mono);color:var(--color-ink-soft);letter-spacing:.06em;font-size:10.5px;font-weight:700}.deck-root .slot-choices{font-family:var(--font-mono);color:var(--color-ink-dark);font-size:18px;font-weight:800}.deck-root .slots-calculation-banner{border:1px solid var(--color-ink);font-family:var(--font-mono);color:var(--color-ink);background:#fff;justify-content:space-between;align-items:center;padding:10px 14px;font-size:15.5px;font-weight:700;display:flex}.deck-root .sequence-flow-box{background:var(--color-paper-alt);border:1.5px solid var(--color-ink);justify-content:space-between;align-items:center;gap:14px;padding:16px 20px;display:flex}.deck-root .flow-card{border:1.5px solid var(--color-ink);text-align:center;background:#fff;flex-direction:column;flex:1;gap:4px;padding:12px 14px;display:flex}.deck-root .flow-card-title{font-family:var(--font-mono);color:var(--color-ink-soft);text-transform:uppercase;font-size:12px;font-weight:700}.deck-root .flow-card-prob{font-family:var(--font-mono);color:var(--color-ink-dark);font-size:20px;font-weight:800}.deck-root .flow-arrow{font-family:var(--font-mono);color:var(--color-ink);font-size:22px;font-weight:900}.deck-root .partition-bar-container{background:var(--color-paper-alt);border:1.5px solid var(--color-ink);flex-direction:column;gap:10px;padding:16px 20px;display:flex}.deck-root .bar-visual-split{border:1.5px solid var(--color-ink);height:36px;display:flex;overflow:hidden}.deck-root .bar-slice-pass{background:var(--color-ink);color:#fff;font-family:var(--font-mono);justify-content:center;align-items:center;width:99.66%;font-size:13px;font-weight:700;display:flex}.deck-root .bar-slice-fail{color:#fff;font-family:var(--font-mono);background:#c41e3a;justify-content:center;align-items:center;width:.34%;font-size:10px;font-weight:700;display:flex}.deck-root .slide-footer{z-index:3;border-top:1.5px solid var(--color-ink);justify-content:space-between;align-items:flex-end;padding-top:16px;display:flex;position:relative}.deck-root .instructor-card{flex-direction:column;gap:4px;display:flex}.deck-root .instructor-card h3{font-family:var(--font-display);letter-spacing:-.005em;margin:0;font-size:32px;font-weight:500}.deck-root .instructor-card p{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;opacity:.85;margin:0;font-size:14px}.deck-root .footer-specs{text-align:right;font-family:var(--font-mono);letter-spacing:.06em;font-size:14px;line-height:1.6}.deck-root .nav-controls{background:var(--color-paper-alt);border:1.5px solid var(--color-ink);z-index:1000;align-items:center;gap:16px;padding:8px 20px;display:flex;position:absolute;bottom:66px;left:50%;transform:translate(-50%);box-shadow:4px 4px #1f2be02e}.deck-root .nav-btn{background:var(--color-ink);color:var(--color-paper);border:1.5px solid var(--color-ink);font-family:var(--font-mono);cursor:pointer;letter-spacing:.08em;padding:8px 18px;font-size:15px;font-weight:700;transition:background .15s,color .15s,opacity .15s}.deck-root .nav-btn:hover:not(:disabled){background:var(--color-paper);color:var(--color-ink)}.deck-root .nav-btn:disabled{opacity:.3;cursor:not-allowed}.deck-root .nav-counter{font-family:var(--font-mono);color:var(--color-ink);letter-spacing:.14em;text-align:center;min-width:90px;font-size:16px;font-weight:700}.deck-root .reveal{opacity:0;transition:opacity var(--duration-normal) var(--ease-out-expo), transform var(--duration-normal) var(--ease-out-expo);transform:translateY(24px)}.deck-root .slide.visible .reveal:first-child{opacity:1;transition-delay:.1s;transform:translateY(0)}.deck-root .slide.visible .reveal:nth-child(2){opacity:1;transition-delay:.2s;transform:translateY(0)}.deck-root .slide.visible .reveal:nth-child(3){opacity:1;transition-delay:.3s;transform:translateY(0)}
.deck-root{height:100%;font-family:var(--font-body);color:var(--color-ink);background:#e4ddcf;position:relative;overflow:hidden}.deck-root .deck-viewport{background:#e4ddcf;position:absolute;inset:0;overflow:hidden}.deck-root .deck-stage{transform-origin:0 0;background:var(--color-paper);width:1920px;height:1080px;position:absolute;top:0;left:0;overflow:hidden}.deck-root .deck-exit{z-index:2000;background:var(--color-paper-alt);border:1.5px solid var(--color-ink);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;align-items:center;padding:7px 14px;font-size:13px;font-weight:700;transition:opacity .35s,transform .35s,visibility .35s;display:flex;position:absolute;top:18px;right:18px;box-shadow:4px 4px #1f2be02e}.deck-root .deck-exit.is-hidden{opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-6px)}.deck-root .deck-exit a{color:var(--color-ink);text-decoration:none;transition:color .15s}.deck-root .deck-exit a:hover{color:var(--color-ink-soft)}.deck-root .deck-exit a+a{border-left:1px solid #1f2be040;margin-left:12px;padding-left:12px}.deck-root .deck-exit-key{border:1px solid var(--color-ink);letter-spacing:.1em;opacity:.75;margin-left:8px;padding:1px 5px;font-size:10.5px;display:inline-block}.deck-root .formula-line.is-note{opacity:.85;font-size:16px}.deck-root .flow-card.is-inverse{background:var(--color-ink);color:#fff}.deck-root .flow-card.is-inverse .flow-card-title{color:#fffc}.deck-root .flow-card.is-inverse .flow-card-prob{color:#fff}.deck-root .row-split{font-family:var(--font-mono);justify-content:space-between;font-size:13.5px;display:flex}.deck-root .spec-callout{background:var(--color-paper-alt);border:1.5px solid var(--color-ink);padding:12px 18px}.deck-root .table-title-row.is-tight{margin-bottom:6px;padding-bottom:4px}.deck-root .spec-grid{font-family:var(--font-mono);grid-template-columns:1fr 1fr;gap:8px;font-size:13px;display:grid}.deck-root .editor-body.is-roomy{padding:14px 20px;font-size:15px;line-height:1.5}.deck-root .terminal-output.is-roomy{padding:8px 14px;font-size:15px}.deck-root .slide-title-lead{color:var(--color-ink);margin-top:4px;font-size:16px;line-height:1.45}.deck-root .hero-description code,.deck-root .step-desc code,.deck-root .note-strip code,.deck-root .rule-text code{font-family:var(--font-mono);border:1px solid var(--color-ink);color:var(--color-ink-dark);background:#fff;padding:1px 6px;font-size:.94em}
