@font-face{font-family:Fraunces;src:url(/fonts/fraunces-light.ttf) format("truetype");font-style:normal;font-weight:300;font-display:swap}@font-face{font-family:IBM Plex Sans;src:url(/fonts/ibm-plex-sans-regular.ttf) format("truetype");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:IBM Plex Sans;src:url(/fonts/ibm-plex-sans-medium.ttf) format("truetype");font-style:normal;font-weight:500;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/fonts/ibm-plex-mono-regular.ttf) format("truetype");font-style:normal;font-weight:400;font-display:swap}:root{--ink: #1a1815;--paper: #faf7f1;--stage: #ece6d6;--muted: #706a62;--line: rgba(26, 24, 21, .16);--gold: #c8a94e;color:var(--ink);background:var(--ink);font-family:IBM Plex Sans,Arial,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}html,body{margin:0;min-width:320px;min-height:100%;background:var(--ink)}body{overflow:hidden}button,input{font:inherit}button{color:inherit}.experience-shell{display:grid;grid-template-columns:minmax(0,1fr) 370px;width:100vw;height:100dvh;overflow:hidden;background:var(--ink)}.experience-shell.no-guide{grid-template-columns:minmax(0,1fr)}.deck-shell{min-width:0;display:grid;grid-template-rows:minmax(0,1fr);background:#d8d1c2}.stage-wrap{min-width:0;min-height:0;display:flex;align-items:center;justify-content:center;overflow:hidden}.deck-frame-wrap{position:relative;aspect-ratio:16 / 9;width:min(100%,calc(100dvh * 16 / 9));max-height:100%;overflow:hidden;background:transparent}.deck-frame-wrap iframe{display:block;width:100%;height:100%;border:0;outline:0;background:transparent}.deck-curtain{position:absolute;inset:0;z-index:5;display:grid;place-items:center;background:var(--stage);opacity:1;pointer-events:none}.deck-curtain.is-clear{opacity:0;transition:opacity .16s ease-out}.deck-curtain img{width:clamp(72px,8vw,118px);height:auto;opacity:.9;transition:opacity .12s ease}.deck-frame-wrap.has-loaded .deck-curtain img{opacity:0}.deck-download{position:absolute;right:18px;bottom:18px;z-index:3;display:grid;place-items:center;width:42px;height:42px;border:.5px solid rgba(26,24,21,.18);border-radius:50%;color:var(--ink);background:#faf7f1eb;box-shadow:0 4px 18px #1a18151a;text-decoration:none;backdrop-filter:blur(8px);transition:background .18s ease,transform .18s ease}.deck-download:hover{background:#fff;transform:translateY(-2px)}.deck-download:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.chat-rail{position:relative;z-index:10;min-width:0;min-height:0;display:grid;grid-template-rows:auto auto minmax(0,1fr) auto auto auto;color:var(--paper);background:var(--ink);border-left:1px solid rgba(250,247,241,.12)}.chat-header{display:flex;align-items:center;gap:11px;padding:18px;border-bottom:1px solid rgba(250,247,241,.12)}.guide-avatar{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;color:var(--ink);background:var(--gold)}.chat-header>div:nth-child(2){display:grid;gap:3px;min-width:0}.chat-header strong{font:300 20px Fraunces,serif}.chat-header span{overflow:hidden;color:#a9a39b;font-size:10px;white-space:nowrap;text-overflow:ellipsis}.chat-close{display:none;margin-left:auto;border:0;color:var(--paper);background:transparent}.chat-context{display:flex;align-items:baseline;gap:8px;padding:11px 18px;border-bottom:1px solid rgba(250,247,241,.1)}.chat-context span{color:var(--gold);font:9px IBM Plex Mono,monospace;text-transform:uppercase}.chat-context strong{overflow:hidden;color:#c6c0b7;font-size:11px;font-weight:400;white-space:nowrap;text-overflow:ellipsis}.chat-messages{min-height:0;overflow-y:auto;padding:18px;scrollbar-width:thin;scrollbar-color:#554f48 transparent}.message{width:fit-content;max-width:90%;margin:0 0 12px}.message p{margin:0;padding:11px 13px;border-radius:12px;font-size:12px;line-height:1.48}.message.guide p{color:#ded8ce;background:#292622;border-bottom-left-radius:3px}.message.user{margin-left:auto}.message.user p{color:var(--ink);background:var(--gold);border-bottom-right-radius:3px}.message>button{display:flex;align-items:center;gap:5px;margin-top:6px;padding:4px 1px;border:0;color:var(--gold);background:transparent;cursor:pointer;font-size:9px}.typing{display:flex;gap:4px;padding:12px;border-radius:12px;background:#292622}.typing span{width:5px;height:5px;border-radius:50%;background:var(--gold);animation:blink 1.2s infinite}.typing span:nth-child(2){animation-delay:.15s}.typing span:nth-child(3){animation-delay:.3s}@keyframes blink{0%,70%,to{opacity:.3;transform:translateY(0)}35%{opacity:1;transform:translateY(-2px)}}.chat-suggestions{display:flex;flex-wrap:wrap;gap:6px;padding:0 18px 12px}.chat-suggestions button{padding:7px 9px;border:1px solid #4e4840;border-radius:999px;color:#c9c3ba;background:transparent;cursor:pointer;font-size:9px}.chat-suggestions button:hover{border-color:var(--gold);color:var(--gold)}.chat-form{display:grid;grid-template-columns:1fr 34px;gap:7px;margin:0 18px;padding:6px;border:1px solid #4a453f;border-radius:12px;background:#24211e}.chat-form input{min-width:0;border:0;outline:0;color:var(--paper);background:transparent;font-size:11px}.chat-form input::placeholder{color:#817b73}.chat-form button{display:grid;place-items:center;width:34px;height:34px;border:0;border-radius:8px;color:var(--ink);background:var(--gold);cursor:pointer}.chat-form button:disabled{opacity:.35;cursor:default}.prototype-note{padding:10px 18px 14px;color:#77716a;font:8px IBM Plex Mono,monospace;text-transform:uppercase;letter-spacing:.04em}.chat-backdrop{display:none}@media(max-width:1120px){.experience-shell{grid-template-columns:minmax(0,1fr) 330px}}@media(max-width:900px){.experience-shell{display:block}.deck-shell{height:100dvh}.deck-frame-wrap{width:min(100%,calc(100dvh * 16 / 9))}.chat-rail{position:fixed;inset:0 0 0 auto;width:min(390px,92vw);transform:translate(102%);box-shadow:-18px 0 60px #00000052;transition:transform .28s ease}.chat-rail.open{transform:translate(0)}.chat-close{display:block}.chat-backdrop{display:block;position:fixed;inset:0;z-index:9;border:0;background:#0000006b}}@media(max-width:560px){.deck-download{right:10px;bottom:10px;width:36px;height:36px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
