:root,:root[data-theme="light"]{color-scheme:light;--paper:#f5f3ec;--bg:#f5f3ec;--bg2:#eeeee5;--panel:#fffefa;--panel2:#eaece4;--panel3:#dce4da;--ink:#172f36;--ink2:#455d62;--muted:#5d706f;--faint:#6e7c77;--line:#daddd3;--line2:#c6cfc4;--teal:#087a78;--orange:#c35e30;--green:#287851;--red:#b84633;--gold:#98701a;--sans:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;--serif:Georgia,'Times New Roman',serif;--wide:100%;--col:100%;--shadow:0 5px 20px #132e3505}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:14px;line-height:1.6}a{color:var(--teal)}button{cursor:pointer}img{max-width:100%}[hidden]{display:none!important}.app-skip{position:fixed;top:-60px;left:20px;z-index:100;background:white;padding:12px}.app-skip:focus{top:10px}.app-sidebar{width:244px;position:fixed;inset:0 auto 0 0;background:#eceee5;border-right:1px solid var(--line);padding:30px 20px 20px;display:flex;flex-direction:column;z-index:50;overflow-y:auto}.app-brand{display:flex;align-items:center;gap:11px;color:var(--ink);font-family:var(--serif);font-size:20px;line-height:1.2;white-space:nowrap;margin-bottom:34px}.app-brand:hover{text-decoration:none}.app-brand small{display:block;font:600 8px var(--sans);letter-spacing:.08em;margin-top:8px;color:var(--muted)}.app-mark{width:31px;height:31px;display:grid;place-items:center;background:var(--ink);color:var(--paper);border-radius:50%;font-family:var(--sans);flex-shrink:0}.app-nav-label{font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);padding:14px 12px 8px}.app-sidebar nav>a{display:block;color:var(--ink2);padding:10px 12px;border-radius:6px;font-size:12px;margin-bottom:3px}.app-sidebar nav>a:hover,.app-topics a:hover{background:#e0e6db;text-decoration:none}.app-sidebar [aria-current=page]{background:#d8e6d9!important;color:#175f57!important;font-weight:650}.app-topics{border-left:1px solid #c9d3c6;margin:5px 0 0 12px;padding-left:8px}.app-topics a{display:flex;gap:8px;color:var(--muted);padding:7px;border-radius:4px;font-size:10px;line-height:1.4}.app-topics span{font:9px var(--mono);color:var(--faint);margin-top:3px}.app-sidebar-foot{margin-top:auto;padding:35px 12px 0;color:var(--ink2);font:italic 16px/1.5 var(--serif)}.app-sidebar-foot span{display:block;font:9px var(--sans);color:var(--muted);margin-top:15px}.app-workspace{margin-left:244px;min-width:0}.app-topbar{position:sticky;top:0;z-index:40;background:#f5f3ecf5;backdrop-filter:blur(10px);border-bottom:1px solid var(--line);height:62px;padding:0 36px;display:flex;justify-content:space-between;gap:18px;align-items:center}.app-crumb{display:flex;gap:14px;align-items:center;font-size:11px;min-width:0}.app-crumb b{font-weight:500;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.app-crumb a,.app-crumb>span{color:var(--muted);white-space:nowrap}.app-home{font-size:11px;white-space:nowrap}.app-menu{display:none}.app-content{padding:38px 36px 30px;max-width:1480px;margin:auto;width:100%;min-height:calc(100vh - 140px)}.app-footer{max-width:none;display:flex;justify-content:space-between;margin:0 36px;padding:22px 0;border-top:1px solid var(--line);font:10px var(--sans);letter-spacing:0;color:var(--muted)}.app-kicker{font:650 9px/1.6 var(--sans);letter-spacing:.13em;color:var(--teal);margin:0 0 14px;display:block}.app-hero{display:grid;grid-template-columns:1.1fr 1fr;gap:36px;align-items:center;padding:20px 0 42px}.app-hero h1{font:400 clamp(36px,3.55vw,62px)/1.08 var(--serif);letter-spacing:-.04em}.app-hero h1 em{color:var(--teal);font-weight:400}.app-lede{font:15px/1.75 var(--sans);color:var(--muted);max-width:64ch;margin:20px 0 24px}.app-actions{display:flex;gap:16px;align-items:center;flex-wrap:wrap}.app-primary{padding:12px 17px;background:var(--ink);color:#fffefa;border-radius:6px;font-size:11px}.app-secondary{font-size:11px}.app-hero-figure{margin:0;border-radius:10px;padding:12px;background:#e8ebdf;border:1px solid #d9dfd1}.app-hero-figure>div{display:grid;grid-template-columns:1fr 1fr;gap:7px;overflow:hidden;border-radius:5px}.app-hero-figure img{aspect-ratio:1;object-fit:cover;width:100%}.app-hero-figure figcaption{display:flex;gap:15px;font-size:9px;color:var(--muted);padding:14px 2px 2px}.app-hero-figure figcaption span{color:var(--teal);white-space:nowrap;font-weight:600}.app-section-title{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin:24px 0 17px}.app-section-title h2{font:400 23px/1.2 var(--serif)}.app-section-title>span{font-size:10px;color:var(--muted)}.app-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.app-card{position:relative;display:block;padding:24px 22px 34px;background:#fffefa;border:1px solid var(--line);border-radius:9px;transition:background .15s,border-color .15s;color:var(--ink);min-width:0}.app-card:hover{text-decoration:none;background:#f9fbf3;border-color:#a8bfa9}.app-card .app-kicker{font-size:8px;margin-bottom:15px}.app-card h2{font:400 23px/1.22 var(--serif);letter-spacing:-.02em}.app-card p{font:11px/1.7 var(--sans);color:var(--muted);margin:12px 0 0}.card-arrow{position:absolute;bottom:12px;right:18px;color:var(--teal);font-size:18px}.app-lab-banner{display:flex;gap:28px;align-items:center;background:#e7ecdf;border:1px solid #d4decc;border-radius:9px;padding:23px 28px;margin:26px 0 0;color:var(--ink)}.app-lab-banner:hover{text-decoration:none;background:#e0e8d8}.app-lab-banner .app-kicker{margin:0 0 7px}.app-lab-banner h2{font:400 25px var(--serif)}.app-lab-banner p{font-size:11px;color:var(--muted);margin:8px 0 0}.app-lab-banner>b{margin-left:auto}.puzzle-mark{font-size:26px;letter-spacing:6px;color:var(--teal);white-space:nowrap}.app-page-heading{padding:10px 0 20px;border-bottom:1px solid var(--line);margin-bottom:26px}.app-page-heading h1{font:400 clamp(30px,3.4vw,48px)/1.15 var(--serif);letter-spacing:-.025em;max-width:24ch}.app-page-heading .app-lede{margin-bottom:6px}.app-evidence{max-width:1000px;margin:auto}.app-evidence>.slide{border:0;margin:0;padding:8px 0}.app-evidence .slide h3{font-size:clamp(25px,3vw,36px);font-weight:400}.app-evidence .slide>.sub{font-size:15px;line-height:1.7;margin:18px 0 25px}.app-evidence img{max-height:65vh;object-fit:contain;margin-inline:auto;border-radius:5px}.app-evidence .slide-tag{margin-bottom:20px}.app-page-turn{display:flex;justify-content:space-between;gap:14px;font-size:11px;border-top:1px solid var(--line);padding-top:24px;margin-top:32px}.app-back{display:inline-block;margin:0 0 20px;font-size:11px}.app-content .explorer{width:100%;margin:0;border-radius:10px;box-shadow:none}.app-content .ex-title{font:400 29px/1.2 var(--serif)}.app-content .ex-head{padding:22px 24px}.app-content .ex-desc{font-size:12px;max-width:90ch}.app-content .ex-body{padding:20px 24px}.app-content .ex-foot{font-size:11px;line-height:1.7}.app-content .col,.app-content .wide{width:100%}.app-demo-status{display:flex;justify-content:space-between;gap:15px;font-size:10px;color:var(--muted)}.demo-page .intro{padding:28px 0}.demo-page .intro h1{font:400 clamp(32px,3.5vw,50px)/1.06 var(--serif);letter-spacing:-.03em}.demo-page .intro-copy>p{font-size:13px}.demo-page .workspace{grid-template-columns:minmax(240px,.8fr) minmax(380px,1.3fr);gap:16px}.demo-page .panel{padding:18px}.demo-page .intro-copy{padding:0}.demo-page .explanation{padding-bottom:0}.demo-page .app-content{max-width:1600px}.app-content .tbl-wrap{max-width:100%;overflow:auto}.app-content .ex-icon{display:none}
@media(min-width:1650px){.app-cards{gap:20px}.app-hero{gap:70px;padding-bottom:55px}.app-card{padding:30px}}
@media(max-width:1150px){.app-sidebar{width:220px;padding-inline:14px}.app-workspace{margin-left:220px}.app-content{padding:28px 25px}.app-topbar{padding-inline:25px}.app-hero{grid-template-columns:1fr;gap:26px}.app-hero-figure{max-width:620px}.app-hero h1{font-size:45px}.app-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.demo-page .workspace{grid-template-columns:1fr}.demo-page .sketch-wrap{max-width:440px;margin:auto}.demo-page .presets{max-width:440px;margin-inline:auto}.demo-page .intro{gap:25px}.app-content .two{grid-template-columns:1fr!important}}
@media(max-width:760px){.app-sidebar{transform:translateX(-100%);transition:transform .2s;width:270px;top:56px;box-shadow:10px 0 30px #132e3515}.app-sidebar.open{transform:translateX(0)}.app-workspace{margin-left:0}.app-topbar{height:56px;padding:0 18px;gap:15px}.app-menu{display:flex;align-items:center;gap:8px;border:0;background:transparent;padding:6px 0;color:var(--ink);font-size:17px}.app-menu span{font-size:10px}.app-home{display:none}.app-crumb{font-size:10px;gap:8px}.app-content{padding:24px 18px}.app-hero{padding-top:6px}.app-hero h1{font-size:41px}.app-lede{font-size:13px}.app-cards{gap:12px}.app-card{padding:20px 18px 30px}.app-card h2{font-size:21px}.app-section-title{display:block}.app-section-title>span{display:block;margin-top:8px}.app-lab-banner{padding:20px;gap:15px}.puzzle-mark{display:none}.app-footer{margin:0 18px;font-size:8px;line-height:1.5;gap:20px}.app-footer span{display:block!important}.app-content .ex-head,.app-content .ex-body{padding:18px}.app-content .ex-title{font-size:25px}.app-content .ex-tools{margin-left:auto}.app-content .ex-head{gap:10px;align-items:flex-start}.app-content .ex-desc{font-size:11px}.app-content .ctrl{gap:14px}.app-page-turn{font-size:10px}.demo-page .intro{grid-template-columns:1fr;gap:20px}.demo-page .intro h1{font-size:40px}.demo-page .panel{padding:16px}.app-demo-status{flex-wrap:wrap}.app-evidence .stats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:450px){.app-cards{grid-template-columns:1fr}.app-hero h1{font-size:38px}.app-hero-figure figcaption{font-size:8px;gap:8px}.app-brand{font-size:19px}.app-crumb>a,.app-crumb>span{display:none}.app-content .grid3,.app-content .grid2{grid-template-columns:1fr}.app-content .ex-tools{display:none}.app-page-turn{gap:8px}.app-content .btn{min-height:36px}.app-footer{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
body{padding:0}.app-content .explorer .ex-head .ex-title{font:400 29px/1.2 var(--serif)}
.app-content .explorer .legend{color:var(--muted)}
/* Follow the talk without leaving the shared navigation. */
.app-slide-follow{display:flex;align-items:center;gap:8px;flex-shrink:0;margin-left:auto;font:11px var(--sans)}
.app-slide-follow label{font-weight:600;color:var(--muted)}
.app-slide-follow select{width:174px;min-width:0;padding:9px 25px 9px 10px;border:1px solid #bfcfc0;border-radius:6px;color:var(--ink);background:#fffefa;font:11px var(--sans);text-overflow:ellipsis;cursor:pointer}
.app-slide-arrow{display:grid;place-items:center;width:30px;height:34px;border:1px solid var(--line);border-radius:5px;color:var(--teal);font-size:16px;background:var(--panel)}
.app-slide-arrow:hover{background:#e0ecdf;text-decoration:none}.app-slide-arrow.disabled{opacity:.3;background:transparent}
.app-follow-hint{display:flex;gap:8px 12px;flex-wrap:wrap;align-items:baseline;padding:12px 15px;margin:0 0 20px;background:#e9eee1;border:1px solid #d6dfce;border-radius:6px;font-size:11px;color:var(--muted)}
.app-follow-hint>span:first-child{font-weight:600}.app-follow-hint a{font-weight:600}.app-topbar>.app-crumb{flex:1}
@media(max-width:1150px){.app-slide-follow select{width:140px}.app-topbar{gap:12px}.app-topbar .app-crumb>a,.app-topbar .app-crumb>span{display:none}}
@media(max-width:760px){.app-slide-follow{gap:6px}.app-slide-follow select{width:152px;font-size:12px}.app-topbar .app-crumb{display:none}.app-topbar .app-menu span{display:none}.app-slide-arrow{width:30px}.app-follow-hint{font-size:10px}}
@media(max-width:380px){.app-topbar{padding-inline:12px;gap:8px}.app-slide-follow{gap:5px}.app-slide-follow select{width:135px}.app-slide-follow label{font-size:10px}.app-slide-arrow{width:27px}}

/* Evidence interactives are open on the page, with a separate focused view. */
.app-inline-explorer{margin:26px 0 32px;min-width:0}
.app-interactive-bar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 16px;padding:0 2px 10px;font-size:11px}
.app-interactive-bar>span{color:var(--muted)}
.app-interactive-bar>a{font-weight:600}
.app-inline-explorer .explorer{scroll-margin-top:80px}

/* Give the hands-on demos equal navigation weight. */
.app-demo-group{margin:4px 0 12px}
.app-demo-group-label{padding:6px 12px;font-size:9px;color:var(--muted);letter-spacing:.03em}
.app-demo-group a{display:block;padding:7px 12px;border-radius:6px;font-size:11px;line-height:1.4;color:var(--ink2)}
.app-demo-group a:hover{background:#e0e6db;text-decoration:none}
.app-sidebar nav,.app-brand{flex-shrink:0}
.app-sidebar{overscroll-behavior:contain}
.app-demo-cards .app-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
.app-section-title>a{font-size:11px}
@media(max-width:450px){.app-demo-cards .app-cards{grid-template-columns:1fr}}
