@font-face{font-family:Alfa Slab One;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/alfa-slab.woff2) format("woff2")}@font-face{font-family:Anton;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/anton.woff2) format("woff2")}@font-face{font-family:Big Shoulders Display;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/big-shoulders.woff2) format("woff2")}@font-face{font-family:Bodoni Moda;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/bodoni-moda.woff2) format("woff2")}@font-face{font-family:Cinzel;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/cinzel.woff2) format("woff2")}@font-face{font-family:Cutive;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/cutive.woff2) format("woff2")}@font-face{font-family:Fjalla One;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/fjalla.woff2) format("woff2")}@font-face{font-family:Josefin Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/josefin.woff2) format("woff2")}@font-face{font-family:League Gothic;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/league-gothic.woff2) format("woff2")}@font-face{font-family:Libre Franklin;font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/libre-franklin.woff2) format("woff2")}@font-face{font-family:Space Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/space-mono.woff2) format("woff2")}@font-face{font-family:Space Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/space-mono-700.woff2) format("woff2")}@font-face{font-family:Special Elite;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/elite.woff2) format("woff2")}:root{--bg: #f6f4ef;--panel: #ffffff;--panel-sunk: #eceadf;--line: #dedad0;--line-bright: #a9a396;--text: #16181c;--muted: #6c6a62;--guide: #c0431c;--mono: "Space Mono", "Courier New", Courier, monospace;color-scheme:light}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--mono);font-size:13px;line-height:1.5;-webkit-font-smoothing:antialiased}:focus-visible{outline:2px solid var(--text);outline-offset:2px}button,input,select{font:inherit;color:inherit;border-radius:0}button{background:transparent;border:1px solid var(--line);cursor:pointer;padding:0}button:hover:not(:disabled){border-color:var(--line-bright)}button:disabled{cursor:not-allowed;opacity:.45}.app{display:flex;flex-direction:column;height:100%}.masthead,.footer{flex:none}.masthead{display:flex;flex-wrap:wrap;align-items:center;gap:8px 20px;padding:8px 20px;border-bottom:1px solid var(--line);background:var(--panel-sunk)}.masthead .spacer{flex:1}.masthead h1{margin:0;font-size:13px;font-weight:700;letter-spacing:.22em;text-transform:uppercase}.masthead .sub{color:var(--muted);font-size:11px;letter-spacing:.14em}.viewswitch{display:flex;gap:20px}.viewswitch button{border:none;border-bottom:2px solid transparent;padding:2px 0 4px;color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.viewswitch button[aria-pressed=true]{color:var(--text);border-bottom-color:var(--text)}.viewswitch button:hover:not([aria-pressed=true]){color:var(--text)}.body{display:grid;grid-template-columns:var(--pane, 330px) 5px minmax(0,1fr);flex:1;min-height:0}.controls{overflow-y:auto;overscroll-behavior:contain;background:var(--panel-sunk);border-right:1px solid var(--line)}.stage{padding:24px;min-width:0;overflow-y:auto}.controls,.stage,.hits,.about{scrollbar-width:none;-ms-overflow-style:none}.controls::-webkit-scrollbar,.stage::-webkit-scrollbar,.hits::-webkit-scrollbar,.about::-webkit-scrollbar{width:0;height:0}.resizer{border-left:1px solid var(--line);background:transparent;cursor:col-resize;touch-action:none}.resizer:hover,.resizer:focus-visible{border-left-color:var(--line-bright)}@media(max-width:900px){.app{height:auto;min-height:100%}.body{grid-template-columns:minmax(0,1fr);min-height:0}.controls{border-bottom:1px solid var(--line);overflow-y:visible}.stage{overflow-y:visible}.resizer{display:none}}.wordmark{border:none;padding:0;font:inherit;letter-spacing:inherit;text-transform:inherit;color:inherit}.band+.band{margin-top:14px}.band-label{margin:0 0 6px;color:var(--muted);font-size:9px;letter-spacing:.2em;text-transform:uppercase}.group+.group{border-top:1px solid var(--line-bright)}.group>h2{margin:0}.group>h2>button{display:flex;gap:10px;width:100%;padding:14px 20px;border:none;background:transparent;color:var(--text);font-size:10px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;text-align:left}.group>h2>button:hover{color:var(--muted)}.group>h2>button>span{width:8px;color:var(--muted)}.group[data-open=true]>h2>button{border-bottom:1px solid var(--line)}.group .section:last-child{border-bottom:none}.section{padding:16px 20px;border-bottom:1px solid var(--line)}.section>h2{margin:0 0 10px;color:var(--muted);font-size:10px;font-weight:400;letter-spacing:.2em;text-transform:uppercase}.hint{margin:8px 0 0;color:var(--muted);font-size:10px;letter-spacing:.1em;line-height:1.6}.hint[data-tone=error]{color:var(--guide)}input[type=text]::placeholder{color:var(--muted);opacity:1;text-transform:none;letter-spacing:.08em}.hits{list-style:none;margin:6px 0 0;padding:0;max-height:244px;overflow-y:auto;border:1px solid var(--line)}.hits li+li{border-top:1px solid var(--line)}.hits .opt{border:none}.hits .elev{text-transform:none;letter-spacing:.08em}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:5px}.row{display:flex;gap:6px}.row>*{flex:1}.stack{display:flex;flex-direction:column;gap:6px}.opt{display:block;width:100%;padding:7px 8px;text-align:left;font-size:11px;letter-spacing:.08em}.opt[aria-pressed=true]{background:var(--text);border-color:var(--text);color:var(--bg)}.opt .elev{display:block;font-size:9px;letter-spacing:.12em;opacity:.7}.opt.preset{padding:6px 8px;font-size:10px;letter-spacing:.1em}.opt.centre{text-align:center;text-transform:uppercase;letter-spacing:.14em}.swatchrow{display:flex;align-items:center;gap:8px}.swatches{display:flex;gap:2px;flex:none}.swatch{width:12px;height:12px;border:1px solid rgb(0 0 0 / 16%)}.theme-opt{padding:8px}.theme-opt .swatches{display:flex;gap:2px}.theme-opt .swatch{flex:1;height:14px}.theme-name{display:block;margin-top:6px;font-size:9px;letter-spacing:.12em}input[type=date],input[type=text],input[type=color]{width:100%;padding:6px 8px;background:var(--panel);border:1px solid var(--line);font-size:11px;letter-spacing:.08em}input[type=color]{padding:2px;height:28px;cursor:pointer}input[type=range]{width:100%;height:22px;margin:2px 0 0;background:transparent;appearance:none;cursor:pointer}input[type=range]::-webkit-slider-runnable-track{height:1px;background:var(--line-bright)}input[type=range]::-webkit-slider-thumb{appearance:none;width:3px;height:15px;margin-top:-7px;background:var(--text);border:none;border-radius:0}input[type=range]::-moz-range-track{height:1px;background:var(--line-bright)}input[type=range]::-moz-range-thumb{width:3px;height:15px;background:var(--text);border:none;border-radius:0}label.check{display:flex;align-items:center;gap:8px;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);cursor:pointer}label.check input{accent-color:var(--text)}.action{padding:11px 8px;font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.action.primary{background:var(--text);border-color:var(--text);color:var(--bg)}.action.primary:hover:not(:disabled){border-color:var(--text)}.linkish{border:none;padding:0;color:var(--muted);font-size:10px;letter-spacing:.14em;text-transform:uppercase;text-decoration:underline;text-underline-offset:3px}.linkish:hover{color:var(--text)}.colorrow{display:grid;grid-template-columns:60px 34px minmax(0,1fr);align-items:center;gap:8px;margin-bottom:6px}.colorrow>span{color:var(--muted);font-size:10px;letter-spacing:.12em;text-transform:uppercase}.contrast{font-size:10px;letter-spacing:.1em;color:var(--muted)}.contrast[data-pass=false]{color:var(--guide)}.workbench{display:flex;align-items:flex-start;gap:28px}.sheet-col{flex:1;min-width:0;display:flex;justify-content:center}.poster-frame{max-width:100%;border:1px solid var(--line)}.rail{flex:none;width:230px}.rail-block+.rail-block{margin-top:18px}.rail-block>h2{margin:0 0 8px;color:var(--muted);font-size:10px;font-weight:400;letter-spacing:.2em;text-transform:uppercase}.rail .action{display:block;width:100%}.rail .action+.action,.rail .action+.row{margin-top:6px}.rail .check+.check{margin-top:8px}.rail .status{margin-top:12px}.size-opt{display:flex;justify-content:space-between;gap:10px;text-transform:none;letter-spacing:.1em}.size-opt .price{opacity:.75}.size-opt[aria-pressed=true] .price{opacity:.85}.rail-links{display:flex;gap:16px;margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}@media(max-width:1100px){.workbench{flex-direction:column}.rail{width:100%;max-width:560px;margin:0 auto}}.status{color:var(--muted);font-size:11px;letter-spacing:.18em;text-transform:uppercase}.status[data-tone=error]{color:var(--guide)}.terrain-wrap{position:relative;height:min(74vh,760px);border:1px solid var(--line)}.terrain-host{position:absolute;inset:0;overflow:hidden}.terrain-host canvas{display:block}.terrain-labels{position:absolute;inset:0;pointer-events:none}.terrain-label{color:var(--label-color, #f2e9d8);font-family:var(--mono);font-size:10px;font-weight:700;letter-spacing:.16em;white-space:nowrap}.terrain-fallback{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;gap:8px;padding:32px;text-align:center;font-size:11px;letter-spacing:.16em}.terrain-fallback .muted{color:var(--muted);letter-spacing:.08em;text-transform:none;max-width:46ch;margin:0 auto}.toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px 20px;margin-top:12px}.toolbar .spacer{flex:1}.metabar{display:flex;flex-wrap:wrap;align-items:center;margin-top:12px;color:var(--muted);font-size:10px;letter-spacing:.1em}.metabar>*{padding:2px 14px}.metabar>*+*{border-left:1px solid var(--line)}.metabar>*:first-child{padding-left:0;color:var(--text)}.metabar .spacer{flex:1;padding:0;border-left:none}.home>*{max-width:1500px;margin-inline:auto}.home{min-height:100%;padding:0 0 48px;background:var(--bg);color:var(--text)}.home-head{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:24px 48px;align-items:start;padding:40px 40px 28px;border-bottom:1px solid var(--line)}.home-head h1{margin:0;font-size:15px;font-weight:700;letter-spacing:.28em;text-transform:uppercase}.home-head p{margin:10px 0 0;max-width:46ch;color:var(--muted);font-size:12px;line-height:1.7;letter-spacing:.04em}.home-search{padding-top:2px}.home-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1px;padding:1px;background:var(--line)}.card{display:block;border:none;padding:22px 22px 18px;background:var(--bg);text-align:left}.card:hover{background:var(--panel)}.card-sheet{display:block}.card-meta{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding-top:12px}.card-name{font-size:11px;font-weight:700;letter-spacing:.16em}.card-elev{color:var(--muted);font-size:10px;letter-spacing:.12em}.home-foot{display:flex;flex-wrap:wrap;padding:0 40px;color:var(--muted);font-size:10px;letter-spacing:.1em}.home-foot>*{padding:20px 16px}.home-foot>*+*{border-left:1px solid var(--line)}.home-foot>*:first-child{padding-left:0}@media(max-width:720px){.home-head{grid-template-columns:minmax(0,1fr);padding:28px 20px 20px}.home-foot{padding:0 20px}}.zoom{display:flex;align-items:center}.zoom{border:1px solid var(--line)}.zoom button{min-width:26px;height:24px;padding:0 6px;font-size:12px;line-height:1;color:var(--muted)}.zoom button:hover:not(:disabled){color:var(--text)}.zoom button+button{border-left:none}.zoom-level{min-width:54px;font-size:10px;letter-spacing:.1em}.colophon{margin:28px 0 0;color:var(--muted);font-size:9px;line-height:1.7;letter-spacing:.08em;text-align:right}.wall{max-width:900px;margin:0 auto;border:1px solid var(--line);container-type:inline-size}.wall-scene{position:relative;width:100%;aspect-ratio:1200 / 760;overflow:hidden}.wall-face,.wall-floor,.wall-skirting,.wall-table,.wall-frame,.wall-dim,.wall-note{position:absolute}.wall-face{left:0;right:0;background:#e8e6e1}.wall-floor{left:0;right:0;bottom:0;background:#d6d2cb}.wall-skirting{left:0;right:0;height:1px;background:#00000038}.wall-table{border:1px solid rgb(0 0 0 / 28%);border-bottom:none}.wall-frame{box-sizing:content-box;border:.6cqw solid #f7f6f3;outline:.34cqw solid #2a2c31;background:#f7f6f3}.wall-frame>svg{display:block;width:100%;height:100%}.wall-dim{width:1px;background:#0000004d}.wall-dim span{position:absolute;left:.7cqw;top:50%;transform:translateY(-50%);color:#4a4740;font-size:1cqw;letter-spacing:.14em;white-space:nowrap}.wall-dim-floor span{left:auto;right:.7cqw}.wall-note{left:0;right:0;text-align:center;color:#4a4740;font-size:1.1cqw;letter-spacing:.16em}.confirm{min-height:100%;padding:56px 40px;background:var(--bg)}.confirm-inner{display:grid;grid-template-columns:300px minmax(0,1fr);gap:48px;align-items:start;max-width:900px;margin:0 auto}.confirm-sheet{border:1px solid var(--line)}.confirm-eyebrow{margin:0 0 14px;color:var(--muted);font-size:10px;letter-spacing:.24em;text-transform:uppercase}.confirm-body h1{margin:0;font-size:22px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.confirm-sub{margin:6px 0 26px;color:var(--muted);font-size:11px;letter-spacing:.14em}.confirm-facts{margin:0;font-size:11px}.confirm-facts>div{display:grid;grid-template-columns:96px minmax(0,1fr);gap:12px;padding:10px 0;border-top:1px solid var(--line)}.confirm-facts dt{color:var(--muted);letter-spacing:.16em;text-transform:uppercase;font-size:10px}.confirm-facts dd{margin:0;line-height:1.6}.confirm-facts code{font-size:10px;word-break:break-all}.confirm-note{margin:22px 0 0;padding-top:18px;border-top:1px solid var(--line);color:var(--muted);font-size:11px;line-height:1.75}.confirm-actions{margin-top:26px}.confirm-actions .action{min-width:200px}@media(max-width:760px){.confirm{padding:32px 20px}.confirm-inner{grid-template-columns:minmax(0,1fr);gap:28px}.confirm-sheet{max-width:300px}}.snippet{max-width:560px;margin:12px auto 0;border:1px solid var(--line)}.snippet-bar{display:flex;align-items:center;gap:16px;padding:8px 12px;border-bottom:1px solid var(--line);color:var(--muted);font-size:10px;letter-spacing:.14em}.snippet-bar .spacer{flex:1}.snippet pre{margin:0;padding:12px;max-height:220px;overflow:auto;scrollbar-width:none;background:var(--panel);color:var(--text);font-family:var(--mono);font-size:11px;line-height:1.6;white-space:pre-wrap}.snippet pre::-webkit-scrollbar{width:0;height:0}.snippet .hint{padding:0 12px 12px}.snippet code{color:var(--text)}.footer{display:flex;flex-wrap:wrap;gap:0;padding:0 24px;border-top:1px solid var(--line);color:var(--muted);font-size:10px;letter-spacing:.1em}.footer>*{padding:12px 16px}.footer>*+*{border-left:1px solid var(--line)}.footer>*:first-child{padding-left:0}.about{max-width:560px;margin:0 auto 16px;padding:18px 20px;background:var(--panel);border:1px solid var(--line)}.about h2{margin:0 0 4px;font-size:11px;font-weight:700;letter-spacing:.2em;text-transform:uppercase}.about h3{margin:16px 0 4px;color:var(--muted);font-size:10px;font-weight:400;letter-spacing:.18em;text-transform:uppercase}.about p{margin:0 0 6px;font-size:11px;line-height:1.65;color:var(--text)}.about p.muted{color:var(--muted)}.about dl{margin:0;font-size:11px;line-height:1.6}.about dt{color:var(--text);letter-spacing:.1em}.about dd{margin:0 0 10px;color:var(--muted)}.about a{color:var(--text)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.legal{min-height:100%;background:var(--bg);color:var(--text)}.legal-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:12px 24px;max-width:820px;margin-inline:auto;padding:32px 32px 18px;border-bottom:1px solid var(--line)}.legal-head nav{display:flex;gap:18px}.legal-head a{color:var(--muted);font-size:10px;letter-spacing:.16em;text-transform:uppercase;text-decoration:none}.legal-head a:hover,.legal-head a[aria-current=page]{color:var(--text)}.legal-body{max-width:820px;margin-inline:auto;padding:36px 32px 96px}.legal-body h1{margin:0 0 4px;font-size:13px;font-weight:700;letter-spacing:.22em;text-transform:uppercase}.legal-body h2{margin:32px 0 8px;color:var(--muted);font-size:10px;font-weight:400;letter-spacing:.2em;text-transform:uppercase}.legal-body p,.legal-body li{font-size:12px;line-height:1.85;max-width:68ch}.legal-body ul{margin:0 0 12px;padding-left:18px}.legal-body li{margin-bottom:4px}.legal-draft{margin:12px 0 0;padding:10px 12px;border:1px solid var(--guide);color:var(--guide);font-size:10px;letter-spacing:.12em;text-transform:uppercase}.legal-updated{margin-top:40px;color:var(--muted);font-size:10px;letter-spacing:.12em}.legal-table{border-collapse:collapse;margin:8px 0 12px;font-size:12px}.legal-table th,.legal-table td{padding:7px 22px 7px 0;text-align:left;border-bottom:1px solid var(--line)}.legal-table th{color:var(--muted);font-weight:400;font-size:10px;letter-spacing:.14em;text-transform:uppercase}.colophon a,.home-foot a{color:var(--muted)}.colophon a:hover,.home-foot a:hover{color:var(--text)}
