*{box-sizing:border-box;margin:0;padding:0}:root{--bg:#0b0a1a;--ink:#ece7ff;--muted:#8f88b8;--accent:#c9a86a;--cover:#2a2352}body{min-height:100vh;overflow-x:hidden;background:radial-gradient(1200px 800px at 50% -10%,rgba(255,255,255,.06) 0,transparent 55%),var(--bg);color:var(--ink);font-family:Georgia,Times New Roman,serif;display:flex;align-items:center;justify-content:center;-webkit-font-smoothing:antialiased;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-touch-callout:none}input,textarea{-webkit-user-select:text;-moz-user-select:text;user-select:text}img{-webkit-user-drag:none}.oracle{position:relative;z-index:1;width:100%;max-width:680px;min-height:100dvh;padding:max(1.5rem,env(safe-area-inset-top)) 1rem calc(2rem + env(safe-area-inset-bottom));text-align:center;display:flex;flex-direction:column;align-items:center;pointer-events:none}.engage,.hint,.oracle h1,.subtitle,.transcript{position:relative;z-index:2}.arrow,.lang,.oracle button,.oracle input,.oracle label,.scene{pointer-events:auto}.arrow,.lang{z-index:3}.lang{position:relative;display:flex;gap:.25rem;justify-content:center;margin-bottom:.5rem}.lang button{background:transparent;color:var(--muted);border:1px solid transparent;font:inherit;font-size:.9rem;padding:.45rem .7rem;cursor:pointer;border-radius:6px}.lang button.on{color:var(--accent);border-color:rgba(201,168,106,.4)}h1{width:100%;font-size:clamp(1.5rem,6.4vw,2.7rem);font-weight:400;letter-spacing:.01em;margin-top:1rem;margin-bottom:.6rem;min-height:2.8em;display:flex;align-items:center;justify-content:center}.subtitle{color:var(--muted);margin-bottom:1.6rem;font-style:italic}.transcript{color:var(--ink);font-style:italic;font-size:1.35rem;line-height:1.4;max-width:32rem;margin:-.1rem auto .7rem;opacity:.9}.stage{position:relative;flex:1 1;width:100%}.arrow,.stage{display:flex;align-items:center;justify-content:center}.arrow{position:absolute;top:50%;z-index:2;height:60%;font:inherit;font-size:2.6rem;line-height:1;color:var(--muted);background:transparent;border:none;border-radius:12px;padding:0 .75rem;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;transform:translateY(-50%);transition:color .2s,transform .2s,opacity .4s}.arrow:first-of-type{left:-.3rem}.arrow:last-of-type{right:-.3rem}.arrow:hover:not(:disabled){color:var(--accent);transform:translateY(-50%) scale(1.15)}.arrow:disabled{opacity:.25;cursor:default}.stage:has(.phase-open) .arrow,.stage:has(.phase-opening) .arrow{opacity:0;pointer-events:none}.arrow:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.scene{position:fixed;inset:0;width:100vw;height:100dvh;z-index:0;cursor:pointer;touch-action:none;-moz-user-select:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;animation:scene-in .7s ease both}.scene:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:14px}@keyframes scene-in{0%{opacity:0}to{opacity:1}}.scene-fallback{position:absolute;inset:6% 22%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.9rem;text-align:center;padding:1rem;background:var(--cover);border:1px solid rgba(255,255,255,.14);border-left:4px solid var(--accent);border-radius:4px 10px 10px 4px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;-webkit-clip-path:inset(50%);clip-path:inset(50%);white-space:nowrap}.answer-float{position:absolute;left:7%;right:7%;top:5%;z-index:1;pointer-events:none;display:flex;justify-content:center;text-align:center}.cover-emblem{font-size:3.2rem;line-height:1}img.cover-emblem{width:3.4rem;height:3.4rem;object-fit:contain}.cover-title{color:var(--accent);font-size:1.15rem;letter-spacing:.04em;line-height:1.3}.hold-bar{position:absolute;left:26%;right:26%;bottom:6%;z-index:1;height:3px;border-radius:999px;background:rgba(255,255,255,.14);overflow:hidden;opacity:0;transition:opacity .2s}.hold-bar:after{content:"";display:block;height:100%;background:var(--accent);transform:scaleX(0);transform-origin:left}.scene.phase-hold .hold-bar{opacity:1}.scene.phase-hold .hold-bar:after{transform:scaleX(1);transition:transform 3s linear}.scene .cancel-hold{position:absolute;left:50%;bottom:calc(22% + env(safe-area-inset-bottom));transform:translateX(-50%);z-index:2;pointer-events:none;display:flex;align-items:center;justify-content:center;width:3.6rem;height:3.6rem;border-radius:50%;font:inherit;font-size:1.4rem;line-height:1;color:var(--ink);background:rgba(0,0,0,.5);border:1px solid rgba(255,255,255,.28);box-shadow:0 6px 20px rgba(0,0,0,.4);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:background .15s,border-color .15s,transform .15s,color .15s}.scene .cancel-hold.over{background:rgba(238,119,153,.92);border-color:#ee7799;color:#fff;transform:translateX(-50%) scale(1.12)}.hint{color:var(--muted);font-style:italic;line-height:1.4;min-height:2.8em;display:flex;align-items:center;justify-content:center}.mic-error{color:#ee7799;font-size:.95rem;margin-top:.5rem}.answer{font-size:1.35rem;line-height:1.55;font-style:italic;text-shadow:0 2px 16px rgba(0,0,0,.85),0 0 26px rgba(255,214,140,.4);animation:answer-rise 1.1s cubic-bezier(.2,.7,.3,1) both}.answer.error{color:#ee7799;font-size:1.05rem;font-style:normal}@keyframes answer-rise{0%{opacity:0;transform:translateY(14px);filter:blur(4px)}to{opacity:1;transform:none;filter:none}}@media (prefers-reduced-motion:reduce){.scene{animation:none}.answer{animation:fade-only .4s ease both}@keyframes fade-only{0%{opacity:0}to{opacity:1}}}.engage{margin-top:1.3rem;min-height:4rem;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.9rem}.remaining{color:var(--muted);font-size:.85rem;font-style:italic}.notice{color:var(--ink);font-size:.95rem;line-height:1.5;max-width:34rem}.error-notice{color:#ee7799}.upsell{font:inherit;font-size:.92rem;color:var(--accent);background:transparent;border:1px solid rgba(201,168,106,.35);border-radius:999px;padding:.45rem 1.1rem;cursor:pointer;transition:background .2s}.upsell:hover{background:rgba(201,168,106,.12)}.share{display:flex;flex-direction:column;align-items:center;gap:.55rem}.share-label{color:var(--muted);font-size:.8rem;font-style:italic;letter-spacing:.04em}.share-row{display:flex;gap:.6rem;flex-wrap:wrap;justify-content:center}.share-row button{padding:0;background:none;border:none;cursor:pointer;line-height:0;border-radius:999px;transition:transform .12s,opacity .2s}.share-row button:hover{transform:translateY(-2px)}.share-row button:active{transform:scale(.94)}.share-row button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.share-native{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;color:var(--accent);background:rgba(201,168,106,.12)!important;border:1px solid rgba(201,168,106,.45)!important}.share-native svg{width:20px;height:20px}.verify{width:min(24rem,92vw);text-align:center;padding:1.3rem 1.2rem;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.12);border-radius:12px;box-shadow:0 10px 30px rgba(0,0,0,.35)}.verify-title{font-size:1.1rem;font-weight:400;color:var(--accent);margin-bottom:.5rem}.verify-intro{color:var(--muted);font-size:.9rem;line-height:1.45;margin-bottom:.9rem}.verify input{width:100%;font:inherit;text-align:center;color:var(--ink);background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.14);border-radius:10px;padding:.7rem .9rem}.verify input:focus{outline:none;border-color:rgba(201,168,106,.5)}.verify input::placeholder{color:var(--muted)}.verify-actions{display:flex;gap:.6rem;justify-content:center;margin-top:.9rem}.verify-error{color:#ee7799;font-size:.9rem;margin-top:.8rem}.verify-success{color:var(--accent);font-size:1rem;font-style:italic}.get-app{display:flex;flex-direction:column;align-items:center;gap:.7rem}.store-links{display:flex;gap:.6rem;flex-wrap:wrap;justify-content:center}.store-link{font:inherit;font-size:.9rem;color:var(--accent);text-decoration:none;border:1px solid rgba(201,168,106,.35);border-radius:999px;padding:.45rem 1.1rem;transition:background .2s}.store-link:hover{background:rgba(201,168,106,.12)}.prompts{width:min(720px,92vw);padding:2.5rem 0 3.5rem;position:relative;text-align:left;align-self:flex-start}.prompts .subtitle,.prompts h1{text-align:center}.prompts .verify{margin:1.6rem auto 0}.back{display:inline-block;color:var(--muted);font-size:.9rem;margin-bottom:1rem;text-decoration:none}.back:hover{color:var(--accent)}.admin-bar{display:flex;justify-content:space-between;align-items:baseline;gap:1rem}.book-prompts{list-style:none;display:flex;flex-direction:column;gap:1.8rem}.book-prompt-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.6rem}.book-prompt-head h2{font-size:1.15rem;font-weight:400;color:var(--accent)}.prompt-text{font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:.85rem;line-height:1.55;white-space:pre-wrap;word-break:break-word;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);border-left:3px solid var(--accent);border-radius:6px;padding:1rem 1.1rem;color:var(--ink)}.cancel,.edit,.save{font:inherit;font-size:.85rem;cursor:pointer;border-radius:999px;padding:.35rem .95rem;border:1px solid rgba(201,168,106,.4);background:transparent;color:var(--accent)}.cancel:hover,.edit:hover{background:rgba(201,168,106,.12)}.save{background:var(--accent);color:var(--bg);border-color:var(--accent)}.cancel:disabled,.save:disabled{opacity:.6;cursor:wait}.edit-box textarea{width:100%;min-height:12rem;resize:vertical;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:.85rem;line-height:1.55;color:var(--ink);background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.12);border-radius:6px;padding:1rem 1.1rem}.edit-box textarea:focus{outline:none;border-color:rgba(201,168,106,.5)}.edit-actions{display:flex;gap:.6rem;margin-top:.7rem}.save-error{color:#ee7799;font-size:.9rem;margin-top:.6rem}.appended{margin-top:2.6rem;padding-top:1.6rem;border-top:1px solid rgba(255,255,255,.1)}.appended-label{color:var(--muted);font-size:.9rem;margin-bottom:.6rem}.oracle-config{margin-top:1.1rem;color:var(--muted);font-size:.92rem;display:flex;gap:.6rem;align-items:center;flex-wrap:wrap}.oracle-config code{color:var(--accent);font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace}