@font-face{font-family:Literata;src:url(./Literata-Di9Y-kl9.ttf) format("truetype");font-weight:200 900;font-display:swap}:root{--desk: #1c1713;--surface: #fff8f3;--surface-low: #fff2e1;--surface-high: #f4e6d3;--parch: #f5efeb;--vellum: #eadcc9;--ink: #2a241e;--muted: #5a4e44;--terra: #914b2a;--brass: #c59b27;--brass-dark: #6f4c12;--line: #d3c3ad;--player: #fdebd9;--green: #4e7a3a;--yellow: #d8b34a;--scale: 1;--shadow: 0 2px 5px rgba(42, 36, 30, .18)}*{box-sizing:border-box}[hidden]{display:none!important}html,body{margin:0;height:100%;background:var(--desk);color:var(--ink);font-family:Literata,Georgia,Times New Roman,serif;font-size:calc(16px * var(--scale));line-height:1.45;-webkit-text-size-adjust:100%}#app{height:100%;display:flex;justify-content:center}.page{position:relative;width:100%;max-width:640px;height:100%;display:flex;flex-direction:column;background:var(--surface);overflow:hidden}.header{display:flex;align-items:center;gap:8px;padding:10px 12px;padding-top:max(10px,env(safe-area-inset-top));background:var(--desk);color:var(--surface-high);flex:none}.header h1{flex:1;margin:0;font-size:1.05rem;text-align:center;font-weight:700;letter-spacing:.02em}.util{min-width:48px;min-height:40px;padding:0 12px;border:1px solid var(--brass-dark);border-radius:8px;background:transparent;color:var(--surface-high);font:inherit;font-size:.9rem;white-space:nowrap;cursor:pointer}.util:active{background:var(--brass-dark)}.spacer{min-width:76px}.scroll{flex:1;overflow-y:auto;overscroll-behavior:contain;padding:14px 14px 24px;display:flex;flex-direction:column;gap:12px}.speaker,.meta,.chip{margin:0}.speaker{font-size:.78rem;font-weight:700;letter-spacing:.08em;color:var(--terra);text-transform:uppercase}.meta{font-size:.85rem;color:var(--muted)}.title{margin:0;font-size:1.15rem;font-weight:700}.chip{font-size:.72rem;letter-spacing:.06em;padding:2px 8px;border:1px solid var(--line);border-radius:4px;background:#e5d7c2;white-space:nowrap}p{margin:0}.card{display:flex;flex-direction:column;gap:8px;padding:14px;border-radius:8px;border:1px solid var(--line);background:var(--parch);box-shadow:var(--shadow)}.card.hero{background:var(--surface-low);border:3px solid var(--brass);padding:16px}.card.note{background:var(--surface-high);box-shadow:none}.card.relic{background:var(--surface-low);border:2px solid var(--brass);box-shadow:none}.row{display:flex;gap:12px;align-items:flex-start}.row.head{align-items:center;justify-content:space-between}.col{flex:1;display:flex;flex-direction:column;gap:6px;min-width:0}.seal{flex:none;display:grid;place-items:center;width:56px;height:56px;border-radius:50%;border:2px solid var(--brass-dark);background:var(--vellum);font-weight:700;font-size:1.15rem}.seal.done{background:var(--brass)}.seal.big{width:76px;height:76px;border-width:4px;background:var(--brass);align-self:center}.btn{min-height:52px;padding:10px 14px;border:1px solid var(--line);border-radius:8px;background:var(--parch);color:var(--ink);font:inherit;text-align:center;cursor:pointer;touch-action:manipulation}.btn:active{filter:brightness(.94)}.btn.brass{min-height:56px;background:var(--brass);border-color:var(--brass-dark);color:#2a1d05;font-weight:700}.btn[disabled]{opacity:.45;cursor:default}.btn:focus-visible,.util:focus-visible,.hotspot:focus-visible{outline:3px solid var(--terra);outline-offset:2px}.contact{display:flex;align-items:center;gap:12px;padding:10px 14px;background:var(--surface-high);border-bottom:1px solid #cfc5bc;flex:none}.avatar{flex:none;display:grid;place-items:center;width:52px;height:52px;border-radius:50%;border:2px solid var(--terra);background:var(--vellum);font-weight:700;font-size:1.15rem}.messages{display:flex;flex-direction:column;gap:10px}.bubble{display:flex;flex-direction:column;gap:4px;padding:14px;border-radius:8px;border:1px solid var(--line);background:var(--parch);box-shadow:var(--shadow);margin-right:40px;animation:pop .18s ease-out}.bubble.player{background:var(--player);margin-right:0;margin-left:40px}.typing{display:inline-flex;align-items:center;gap:4px;align-self:flex-start;padding:10px 14px;border-radius:12px;border:1px solid var(--line);background:var(--surface-high)}.typing i{width:10px;height:10px;border-radius:50%;background:var(--terra);animation:blink 1.2s infinite}.typing i:nth-of-type(2){animation-delay:.2s}.typing i:nth-of-type(3){animation-delay:.4s}@keyframes blink{0%,to{opacity:1}50%{opacity:.25}}@keyframes pop{0%{opacity:0;transform:translateY(6px)}}@media (prefers-reduced-motion: reduce){.bubble,.typing i{animation:none}}.picture{width:100%;height:230px;object-fit:cover;border-radius:6px;border:1px solid var(--line);display:block}.choices{flex:none;max-height:50%;overflow-y:auto;padding:12px 14px;padding-bottom:max(12px,env(safe-area-inset-bottom));background:var(--surface-high);border-top:3px solid var(--brass);display:flex;flex-direction:column;gap:8px}.choices[hidden]{display:none}.choice{display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:2px}.choice small{color:var(--muted);font-size:.85em}.choice.wrong{text-decoration:line-through}.cells{display:flex;gap:6px}.cells i{width:36px;height:36px;border-radius:4px}.cells .g{background:var(--green)}.cells .y{background:var(--yellow)}.center{text-align:center;align-self:stretch}.overlay{position:absolute;inset:0;z-index:10;background:#000000c7;padding:12px;display:flex}.viewer{flex:1;min-width:0;display:flex;flex-direction:column;gap:10px;padding:12px;background:var(--surface);border:3px solid var(--brass);border-radius:8px;min-height:0}.pane{flex:1;min-width:0;width:100%;overflow:auto;border-radius:6px;min-height:0;-webkit-overflow-scrolling:touch}.canvas{position:relative}.canvas img{width:100%;height:100%;display:block;user-select:none;-webkit-user-drag:none}.hotspot{position:absolute;padding:0;border:4px solid var(--brass);border-radius:6px;background:#c59b271a;cursor:pointer}.hotspot:active{background:#c59b2773}
