:root{--paper:#ffffff;--ink:#252b28;--muted:#68716a;--accent:#28786b;--rule:#e2e5e9;--wash:#f5f7f8;--sans:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:2rem}body{margin:0;background:var(--paper);color:var(--ink);font-family:Georgia,"Times New Roman",serif;font-size:19px;line-height:1.72;-webkit-font-smoothing:antialiased}a{color:var(--accent);text-decoration-thickness:1px;text-underline-offset:3px}a:hover{color:#164d43}button,select{font:inherit}button,select,summary{font-family:var(--sans);font-size:.85rem}button{cursor:pointer;border:1px solid #b8c9bd;background:transparent;color:var(--accent);border-radius:3px;padding:.55rem .9rem}button:hover{background:var(--wash)}button:focus-visible,select:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #bc873c;outline-offset:4px}select{max-width:100%;padding:.55rem .7rem;background:var(--paper);color:var(--ink);border:1px solid #b8c9bd;border-radius:3px}.quarto-container, #quarto-content{display:block;max-width:none}main.content{width:min(720px,calc(100% - 48px));margin:0 auto;padding:82px 0 90px}.quarto-title-block{margin-bottom:2rem}#title-block-header h1.title{font-size:clamp(3.1rem,7vw,5rem);line-height:1.05;letter-spacing:-.05em;font-weight:400;margin:0 0 .6rem}.subtitle{font-size:clamp(1.35rem,3vw,1.85rem);line-height:1.3;color:var(--muted);margin:.5rem 0 1.5rem}.quarto-title-meta{display:flex;gap:2.5rem;flex-wrap:wrap;margin:1.6rem 0;font-family:var(--sans);font-size:.78rem}.quarto-title-meta-heading{font-size:.65rem;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}.quarto-title-meta p{margin:.1rem 0}.abstract-title{font-family:var(--sans);font-size:.75rem;text-transform:uppercase;letter-spacing:.13em;color:var(--muted);margin:2.3rem 0 .7rem}.abstract p{font-size:1.02rem;line-height:1.75}.article-links,.draft-note{font-family:var(--sans);font-size:.78rem;line-height:1.8}.article-links{margin:1.6rem 0 .65rem}.draft-note{color:var(--muted);margin-bottom:3rem}h1,h2,h3{font-weight:400;line-height:1.3;scroll-margin-top:2rem}main.content>h1{font-size:1.95rem;letter-spacing:-.025em;margin:4rem 0 1.1rem}h2{font-size:1.35rem;margin:2.5rem 0 .7rem}.header-section-number{color:var(--muted);margin-right:.3em}.anchorjs-link{font-size:.6em;text-decoration:none;margin-left:.4rem;opacity:0}h1:hover .anchorjs-link,h2:hover .anchorjs-link,.anchorjs-link:focus{opacity:1}p{margin:0 0 1.2rem}strong{font-weight:600}/* The contents rail stays at the viewport edge, separate from article layout. */
#TOC{position:fixed;inset:0 auto 0 0;width:260px;height:100dvh;padding:38px 20px 28px 28px;background:#fff;z-index:10;display:flex;flex-direction:column;font-family:var(--sans);font-size:13px;line-height:1.55}
#TOC h2{flex:none;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.18em;color:#64748b;margin:0 0 20px}
#TOC ul{list-style:none;margin:0;padding:0}
#TOC>ul,#TOC .toc-tree>ul{border-left:2px solid #e2e8f0}
#TOC ul ul{padding-left:18px;font-size:12px}
#TOC li{margin:0}
#TOC a{display:block;padding:7px 0 7px 16px;color:#64748b;text-decoration:none;transition:color 160ms ease}
#TOC a:hover{color:#1e293b}
#TOC .header-section-number{color:#94a3b8;margin-right:.15em}
#TOC a.active{color:#0f172a;font-weight:600}
#TOC a.active .header-section-number{color:#2444e5}
.toc-tree{position:relative;min-height:0;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#e2e8f0 transparent}
.toc-indicator{position:absolute;top:0;left:0;width:3px;border-radius:0;background:#2444e5;pointer-events:none;transition:transform 280ms cubic-bezier(.22,.68,0,1),height 280ms cubic-bezier(.22,.68,0,1);will-change:transform}
.quarto-figure{margin:2.6rem 0}.quarto-float figure{margin:0}figure img{display:block;max-width:100%;height:auto;margin:0 auto}figcaption,.quarto-float-caption{font-family:var(--sans);font-size:.77rem;line-height:1.7;color:var(--muted);text-align:left;margin-top:1rem}.quarto-float-caption p{margin:0}.interactive-figure{text-align:left;font-family:var(--sans);font-size:.88rem;line-height:1.6;width:100%;padding:1.4rem 0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}.widget-controls{display:flex;align-items:center;justify-content:space-between;gap:.8rem;flex-wrap:wrap;margin-bottom:1.5rem}.widget-controls label{color:var(--muted);font-size:.76rem}.eyebrow{text-transform:uppercase;letter-spacing:.13em;font:600 .65rem var(--sans);color:var(--accent);margin-bottom:1rem}.hand-layout{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.cards{display:flex;gap:.45rem;flex-wrap:wrap;margin:.5rem 0 1.1rem}.playing-card{display:inline-flex;align-items:center;justify-content:center;min-width:43px;height:59px;background:white;box-shadow:0 1px 4px #253d2814;border:1px solid var(--rule);border-radius:4px;font-family:Georgia,serif;font-size:1.25rem}.red{color:#a33f3f}.card-label{font-size:.65rem;color:var(--muted);text-transform:uppercase;letter-spacing:.09em}.context-text{font-size:.78rem;color:var(--muted);line-height:1.8;overflow-wrap:anywhere}.probability-row{margin-bottom:.9rem}.probability-label{display:flex;justify-content:space-between;gap:1rem;font-size:.8rem}.bar-track{height:7px;background:#e9eee6;margin-top:.35rem}.bar-fill{height:100%;background:var(--accent)}.prediction-note{font-size:.75rem;margin-top:1.2rem}.reference{color:var(--accent);font-size:.8rem;margin-top:.8rem}.source-note{font-size:.64rem;color:var(--muted);margin:1rem 0 0;overflow-wrap:anywhere}details{font-family:var(--sans);font-size:.77rem;margin-top:1rem}summary{cursor:pointer;color:var(--accent)}details pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:.73rem;background:var(--wash);padding:1rem}.architecture-flow{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin:1.5rem 0}.architecture-step{background:var(--wash);padding:1rem .6rem;font-size:.75rem;text-align:center;position:relative}.architecture-step:not(:last-child)::after{content:'→';position:absolute;right:-.8rem;top:35%;color:var(--muted)}.candidate-spans{display:flex;gap:.5rem;flex-wrap:wrap;margin:1rem 0}.candidate-spans button[aria-pressed=true]{background:var(--accent);color:white}.diagram-explanation{font-size:.78rem;color:var(--muted);min-height:3.5em}.figure-table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-family:var(--sans);font-size:.76rem;line-height:1.6;margin:1.3rem 0}th,td{padding:.55rem .5rem;border-bottom:1px solid var(--rule);text-align:left;vertical-align:top}thead th{font-weight:600;color:var(--muted)}.table-caption{font-family:var(--sans);font-size:.76rem;color:var(--muted)}.live-demo{margin:2rem 0;padding:1.6rem 0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);font-family:var(--sans);font-size:.85rem}.live-demo iframe{width:100%;height:850px;border:0;display:block;background:white;margin-top:1.5rem}.live-demo p{margin-bottom:1rem}.references{font-size:.9rem}.references>div{margin-bottom:1rem}.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.math.display{display:block;overflow-x:auto;padding:.4rem 0}#quarto-back-to-top,.quarto-title-meta-author,.quarto-title-meta-contents hr{display:none}code{font-size:.85em}img{max-width:100%}
@media(min-width:1400px){main.content>.quarto-figure{width:960px;max-width:calc(100vw - 320px);margin-left:-120px}main.content>.quarto-figure>.quarto-float-fig>.quarto-float-caption{max-width:720px;margin-left:auto;margin-right:auto}.live-demo:has(iframe){width:960px;margin-left:-120px}}
@media(min-width:1200px){main.content{margin-left:calc(260px + (100% - 260px - 720px)/2);margin-right:0}}
@media(max-width:1199px){#TOC{position:static;width:auto;height:auto;display:block;margin:2rem 0;padding:0;background:transparent;font-size:12px}#TOC h2{margin-bottom:.8rem}#TOC>ul,#TOC .toc-tree>ul{border-left:0}#TOC>ul,#TOC .toc-tree>ul{display:flex;flex-wrap:wrap;gap:.2rem 1rem}#TOC a{padding:.3rem 0}#TOC ul ul{display:none}.toc-tree{overflow:visible}.toc-indicator{display:none}main.content{padding-top:42px}}
@media(max-width:640px){body{font-size:17px}main.content{width:calc(100% - 36px);padding-top:34px}main.content>h1{font-size:1.65rem;margin-top:3rem}.hand-layout{grid-template-columns:1fr;gap:1.2rem}.widget-controls{align-items:flex-start;flex-direction:column}.widget-controls select{width:100%}.architecture-flow{grid-template-columns:1fr 1fr;gap:.7rem}.architecture-step::after{display:none}table{font-size:.65rem}th,td{padding:.4rem .3rem}.live-demo iframe{height:1050px}#TOC{font-size:11px;padding:0}#TOC h2{margin-bottom:.4rem}.quarto-title-meta{gap:1.3rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media print{#TOC,.article-links,.draft-note,.live-demo,.widget-controls{display:none}main.content{width:auto;padding:0}.quarto-float,.quarto-figure{width:auto;max-width:100%;margin-left:0}body{background:white;font-size:11pt}.interactive-figure{break-inside:avoid}a{color:inherit}}

#title-block-header .author,#title-block-header .date{font-family:var(--sans);font-size:.8rem;color:var(--muted);margin:.25rem 0}#title-block-header .author{margin-top:1.5rem}#title-block-header .abstract{margin-top:2rem}.quarto-figure figure.quarto-float{width:100%;margin:0}.quarto-figure .quarto-float-caption{width:auto}.quarto-figure .quarto-figure{margin:0} [hidden]{display:none!important}

.serialized-sequence{font: .75rem/1.9 var(--sans);padding:1rem;background:var(--wash);margin:1rem 0;overflow-wrap:anywhere}.serialized-sequence mark{background:var(--accent);color:white;padding:.2rem .3rem;border-radius:2px}

@media(prefers-reduced-motion:reduce){.toc-indicator,#TOC a{transition:none}}

/* Center the research masthead; keep the abstract at reading width. */
.project-brand{text-align:center;text-transform:uppercase;letter-spacing:.2em;font:600 .85rem var(--sans);color:#64748b;margin:0 0 2.4rem}
#title-block-header{text-align:center}
#title-block-header h1.title{font-family:var(--sans);font-weight:650;letter-spacing:-.055em;color:#0f172a}
#title-block-header .subtitle{font-family:var(--sans);font-size:clamp(1.45rem,3vw,2.1rem);color:#334155;text-wrap:balance}
#title-block-header .author{font-size:1rem;line-height:1.9;color:#1e293b;margin:2rem auto 1rem;text-wrap:balance}
#title-block-header .date{color:#64748b;font-size:.9rem;margin-bottom:3rem}
#title-block-header .abstract{text-align:left}
.chart-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.8rem 1.2rem}
.chart-panel{min-width:0}.chart-panel h3{font:600 .85rem var(--sans);margin:0 0 .6rem}
.chart-panel svg{display:block;max-width:100%;height:auto;overflow:visible;font-family:var(--sans)}
.chart-gridline{stroke:var(--rule);stroke-width:1}.chart-tick{font-size:11px;fill:var(--muted)}.chart-axis-label{font-size:11px;fill:var(--muted)}
.chart-legend{display:flex;flex-wrap:wrap;gap:.3rem 1rem;font-size:.68rem;min-height:1.8rem;align-items:flex-start}
.chart-legend span::before{content:'';display:inline-block;width:7px;height:7px;background:var(--series-color);border-radius:50%;margin-right:.4rem}
.chart-legend .diamond::before{border-radius:0;transform:rotate(45deg)}
.chart-point{cursor:pointer;outline:none}.chart-mark{stroke:white;stroke-width:1.5;transition:opacity 130ms ease}
.has-selection .chart-point:not(.is-selected) .chart-mark{opacity:.25}
.chart-point.is-selected .chart-mark,.chart-point:focus-visible .chart-mark{stroke:#0f172a;stroke-width:2.5;opacity:1}
.chart-help{font-size:.73rem;color:var(--muted);margin-bottom:1.4rem}
.chart-readout{padding:1rem;background:var(--wash);border-left:3px solid var(--accent);margin:1rem 0 .6rem;font-size:.75rem;min-height:7.5rem;line-height:1.8}
.chart-readout strong{display:block;margin-bottom:.25rem}.chart-placeholder{color:var(--muted)}.chart-readout-line>span:first-child{font-weight:600}
.chart-reset{font-size:.7rem;padding:.3rem .6rem}.chart-explorer tr.is-selected{background:#eaf3ef}
@media(min-width:1400px){.project-brand{width:960px;margin-left:-120px}#title-block-header>h1,#title-block-header>.subtitle,#title-block-header>.author{width:960px;margin-left:-120px;margin-right:0}}
@media(max-width:700px){.chart-grid{grid-template-columns:1fr;gap:1.6rem}.chart-readout{min-height:8rem}#title-block-header .author{font-size:.9rem;line-height:1.9}.project-brand{font-size:.75rem;margin-bottom:2rem}}
@media(prefers-reduced-motion:reduce){.chart-mark{transition:none}}

.member-name{white-space:nowrap}
@media(min-width:1400px){#title-block-header h1.title{margin-left:-120px}}

/* Print metadata uses line breaks; the browser wraps intact names naturally. */
#title-block-header .author br{display:none}

.references{list-style:none;padding-left:0}
