:root{--paper:#f3eee2;--paper-glass:#f3eee2f0;--ink:#1e2225;--muted:#5b605d;--rule:#1e222529;--accent:#4f5a2c;--gold:#c99a3c;--gold-fill:#e8c67747;--display:"Iowan Old Style", "Palatino Linotype", Palatino, Georgia, serif;--sans:-apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--mono:ui-monospace, "SF Mono", Menlo, Consolas, monospace}*{box-sizing:border-box}html,body{height:100%;color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;background:#c8d3d6;margin:0;overflow:hidden}[hidden]{display:none!important}button{font:inherit;color:inherit;cursor:pointer}kbd{font:10px/1.4 var(--mono);opacity:.75;vertical-align:1px;border:1px solid #ffffff59;border-radius:3px;margin-left:8px;padding:1px 5px;display:inline-block}.experience{position:fixed;inset:0}.scene{touch-action:none;cursor:grab;outline:none;width:100%;height:100%;display:block;position:absolute;inset:0}.scene:active{cursor:grabbing}.scene.part-hover{cursor:pointer}.scene-loading{text-align:center;font:17px var(--display);color:var(--ink);position:absolute;inset:45% 20% auto}.overlays{pointer-events:none;opacity:0;transition:opacity .6s;position:absolute;inset:0}.overlays.ready{opacity:1}.overlays>*{pointer-events:auto}.overlays .leaders,.overlays .labels{pointer-events:none}.masthead{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#f3eee2c7;border-radius:6px;flex-direction:column;gap:2px;padding:7px 12px 8px;display:flex;position:absolute;top:12px;left:14px;pointer-events:none!important}.wordmark{font:600 19px/1.1 var(--display);letter-spacing:.01em;color:inherit;pointer-events:auto;text-decoration:none}.wordmark:hover{text-underline-offset:3px;text-decoration:underline}.wordmark-sub{font:12px/1.3 var(--sans);color:var(--muted)}.leaders{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.leader{fill:none;stroke:#1e22258c;stroke-width:1px}.leader.selected{stroke:var(--gold);stroke-width:1.5px}.leader-dot{fill:var(--paper);stroke:var(--ink);stroke-width:1.2px}.leader-dot.selected{fill:var(--gold)}.popover-leader{fill:none;stroke:var(--gold);stroke-width:1.4px;stroke-dasharray:3 4}.popover-dot{fill:var(--gold-fill);stroke:var(--gold);stroke-width:1.6px}.labels{position:absolute;inset:0}.part-label{pointer-events:auto;border:1px solid var(--rule);background:var(--paper-glass);font:12.5px/1.25 var(--sans);white-space:nowrap;border-radius:3px;padding:4px 9px;position:absolute;top:0;left:0;box-shadow:0 2px 10px #00000014}.part-label:hover,.part-label.selected{border-color:var(--gold);background:#fbf3dc}.dimension-label{background:var(--ink);color:#f4efe3;font:12.5px/1.4 var(--mono);white-space:nowrap;border-radius:3px;padding:2px 8px;position:absolute;top:0;left:0}.tour-card{background:var(--paper-glass);border:1px solid var(--rule);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);will-change:transform;border-radius:6px;width:min(360px,100vw - 24px);padding:20px 22px 14px;transition:opacity .35s;position:absolute;top:0;left:0;box-shadow:0 10px 40px #14181a2e}.tour-card.moving{opacity:.9}.tour-card h1{font:600 25px/1.12 var(--display);margin:0 0 4px}.tour-card .term,.inspector .term{font:italic 14px/1.4 var(--display);color:var(--muted);margin:0 0 10px}.tour-card .body{font:15px/1.55 var(--display);margin:8px 0 0}.tour-card .prompt{font:13px/1.45 var(--sans);color:var(--muted);margin:10px 0 0}.tour-card footer{align-items:center;gap:10px;margin-top:16px;display:flex}.progress{flex-wrap:wrap;gap:4px;margin-right:auto;display:flex}.progress i{background:#1e222533;border-radius:50%;width:6px;height:6px}.progress i.done{background:#1e222573}.progress i.on{background:var(--accent)}.tour-card .back{color:var(--muted);background:0 0;border:0;padding:8px 4px;font-size:13px}.tour-card .primary{white-space:nowrap;background:var(--ink);color:#f4efe3;border:0;border-radius:4px;padding:9px 14px;font-size:14px}.tour-card .primary:hover{background:#33393d}.tour-card .explore{color:var(--muted);text-underline-offset:3px;background:0 0;border:0;margin:10px 0 0;padding:0;font-size:12px;text-decoration:underline;display:block}.resume{border:1px solid var(--rule);background:var(--paper-glass);text-align:left;border-radius:4px;max-width:calc(100vw - 44px);padding:9px 14px;font-size:13px;position:absolute;bottom:78px;left:22px}.toolbar{background:var(--paper-glass);border:1px solid var(--rule);border-radius:6px;align-items:center;gap:6px;padding:5px;display:flex;position:absolute;top:14px;right:14px}.toolbar button{background:0 0;border:1px solid #0000;border-radius:4px;padding:6px 10px;font-size:13px}.toolbar button:hover{background:#1e22250f}.toolbar button.on{border-color:var(--rule);background:#fff8e8}.toolbar .xray{color:var(--muted);align-items:center;gap:6px;padding:0 6px;font-size:12px;display:flex}.toolbar input[type=range]{width:74px;accent-color:var(--ink)}.inspector{background:var(--paper-glass);border:1px solid var(--rule);border-radius:6px;width:min(330px,100vw - 28px);max-height:calc(100vh - 150px);padding:18px 20px;position:absolute;top:66px;right:14px;overflow:auto;box-shadow:0 10px 40px #14181a29}.inspector h2{font:600 21px/1.15 var(--display);margin:0 28px 4px 0}.inspector h3{font:600 12px/1.3 var(--sans);text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:14px 0 4px}.inspector p{font:14px/1.55 var(--display);margin:6px 0}.inspector .group{font:12px var(--sans);color:var(--muted)}.inspector .links{font:13px/1.4 var(--sans);margin:4px 0 0;padding:0;list-style:none}.inspector .links li{margin:5px 0}.inspector .links a{color:var(--accent);text-underline-offset:2px;text-decoration:underline;text-decoration-thickness:1px}.inspector .links a:after{content:" ↗";font-size:11px}.close{width:28px;height:28px;color:var(--muted);background:0 0;border:0;font-size:22px;line-height:1;position:absolute;top:10px;right:12px}.parts-index{background:var(--paper-glass);border:1px solid var(--rule);z-index:3;border-radius:6px;flex-direction:column;width:min(300px,100vw - 28px);display:flex;position:absolute;top:66px;bottom:74px;right:14px;box-shadow:0 10px 40px #14181a29}.parts-index header{padding:14px 16px 6px;position:relative}.parts-index h2{font:600 19px var(--display);margin:0}.parts-index input{border:1px solid var(--rule);font:13px var(--sans);background:#fffdf7;border-radius:4px;margin:0 16px 8px;padding:7px 9px}.parts-index .groups{padding:0 8px 12px;overflow:auto}.parts-index h3{font:600 11px var(--sans);text-transform:uppercase;letter-spacing:.07em;color:var(--muted);margin:12px 8px 4px}.parts-index ul{margin:0;padding:0;list-style:none}.parts-index li button{text-align:left;background:0 0;border:0;border-radius:3px;width:100%;padding:5px 8px;font-size:13.5px}.parts-index li button:hover,.parts-index li button.on{background:var(--gold-fill)}.chapters{background:var(--paper-glass);border:1px solid var(--rule);scrollbar-width:none;border-radius:6px;gap:2px;max-width:calc(100vw - 24px);padding:4px;display:flex;position:absolute;bottom:14px;left:50%;overflow-x:auto;transform:translate(-50%)}.chapters button{white-space:nowrap;background:0 0;border:0;border-radius:4px;align-items:center;gap:7px;padding:7px 12px;font-size:13.5px;display:flex}.chapters button:hover{background:#1e22250f}.chapters button.on{background:var(--ink);color:#f4efe3}.chapters .num{font:11px var(--mono);opacity:.6}@media (max-width:760px){.masthead{top:12px;left:14px}.wordmark{font-size:16px}.wordmark-sub{display:none}.toolbar{gap:2px;top:8px;right:8px}.toolbar .xray{display:none}.toolbar button{padding:6px 8px;font-size:12px}.tour-card{padding:14px 16px 10px}.tour-card h1{font-size:21px}.tour-card .body{font-size:14px}.chapters{bottom:8px}.chapters button{padding:7px 9px;font-size:12.5px}.inspector,.parts-index{max-height:55vh;top:auto;bottom:62px}}@media (max-width:480px){.toolbar button{padding:5px 7px}}@media (prefers-reduced-motion:reduce){.overlays,.tour-card{transition:none}}.controls-panel .groups{padding:0 16px 14px}.controls-panel h3{margin:14px 0 6px}.control-row{flex-direction:column;gap:5px;margin:0 0 10px;display:flex}.control-label{font:13px var(--sans)}.control-value{color:var(--muted);font-variant-numeric:tabular-nums}.segmented{border:1px solid var(--rule);border-radius:4px;display:flex;overflow:hidden}.segmented button{border:0;border-left:1px solid var(--rule);font:12.5px var(--sans);background:#fffdf7;flex:1;padding:5px 4px}.segmented button:first-child{border-left:0}.segmented button.on{background:var(--gold-fill);font-weight:600}.controls-panel input[type=range]{width:100%;accent-color:var(--ink);background:0 0;border:0;margin:0;padding:0}.control-reset{border:1px solid var(--rule);font:12.5px var(--sans);background:#fffdf7;border-radius:4px;padding:5px 8px}.readout{border:1px solid var(--rule);background:#fffdf7;border-radius:4px;grid-template-columns:1fr 1fr;gap:4px 12px;margin:0 0 12px;padding:8px 10px;display:grid}.readout div{flex-direction:column;display:flex}.readout dt{font:600 10.5px var(--sans);text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.readout dd{font:13px var(--sans);font-variant-numeric:tabular-nums;margin:0}.control-reset:disabled{opacity:.45}.controls-panel .control-reset{margin:0 0 10px}.overlays.intro .masthead,.overlays.intro .toolbar,.overlays.intro .chapters,.overlays.intro .labels,.overlays.intro .leaders{display:none}.introduction{position:absolute;inset:0;pointer-events:none!important}.intro-panel{pointer-events:auto;background:var(--paper-glass);border:1px solid var(--rule);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:6px;width:min(530px,100vw - 36px);max-height:calc(100% - 2*clamp(18px,6vh,56px));position:absolute;top:clamp(18px,6vh,56px);left:clamp(18px,4vw,64px);overflow-y:auto;box-shadow:0 10px 40px #14181a29}.intro-copy{padding:26px 28px 14px}.intro-copy h1{font:600 clamp(30px, 3.4vw, 42px)/1.02 var(--display);text-wrap:balance;outline:none;margin:0 0 6px}.intro-copy .term{font:italic 14px/1.4 var(--display);color:var(--muted);margin:0 0 12px}.intro-body{font:16px/1.55 var(--display);margin:0}.intro-action{background:var(--ink);color:#f4efe3;border-radius:4px;justify-content:space-between;align-items:center;gap:16px;min-height:48px;margin-top:18px;padding:12px 18px;font-size:16px;text-decoration:none;display:flex}.intro-action:hover{background:#33393d}.intro-links{flex-wrap:wrap;gap:0 20px;margin:4px 0 0;display:flex}.intro-link{width:fit-content;min-height:34px;color:var(--ink);text-underline-offset:3px;align-items:center;margin-top:4px;font-size:14px;text-decoration:underline;display:flex}@media (max-width:760px){.intro-panel{border-width:1px 0 0;border-radius:10px 10px 0 0;width:100%;max-height:66%;top:auto;bottom:0;left:0;box-shadow:0 -10px 40px #14181a29}.intro-copy{padding:20px 18px 6px}}.wordmark .short{display:none}@media (max-width:600px){.wordmark .full{display:none}.wordmark .short{display:inline}}.intro-body+.intro-body{margin-top:10px}.intro-credit{border-top:1px solid var(--rule);font:12.5px/1.5 var(--sans);color:var(--muted);padding:12px 28px 16px}.intro-credit p{margin:0}.intro-credit a{color:inherit;text-underline-offset:2px}.intro-policies{margin-top:6px!important}.tour-card .card-links{gap:16px;margin:10px 0 0;display:flex}.tour-card .card-links .explore{margin:0}.tour-card .explore:disabled{opacity:.55;cursor:default;text-decoration:none}.tour-card a.primary{text-decoration:none}.chapters .chapter-link{border-left:1px solid var(--rule);color:var(--ink);text-underline-offset:3px;white-space:nowrap;align-items:center;margin-left:4px;padding:7px 12px;font-size:13.5px;text-decoration:underline;display:flex}@media (max-width:760px){.chapters .chapter-link{padding:7px 9px;font-size:12.5px}.intro-credit{padding:10px 18px 16px}}
