:root{--fg: #d7d7db;--fg-dim: #8a8a93;--danger: #e05f6a;--accent: #e8c069;--accent-soft: rgba(232, 192, 105, .18);--stroke: rgba(255, 255, 255, .12);--hover: rgba(255, 255, 255, .06);--glass-ultrathin: rgba(255, 255, 255, .04);--bg-raised: #1e1e22;--font-body: system-ui, sans-serif;--dur-fast: .12s;--ease-out: cubic-bezier(.2, 0, 0, 1);--dur-bubble-out: .18s;--dur-bubble-in: .42s}.player-overlay{position:fixed;inset:0;background:#05060a80;-webkit-backdrop-filter:blur(var(--blur-sm, 12px));backdrop-filter:blur(var(--blur-sm, 12px));display:grid;place-items:center;z-index:50}.player-frame{width:75vw;height:75vh;background:var(--glass-thick, rgba(24, 22, 19, .96));border:1px solid var(--stroke, #4a443a);border-radius:var(--r-xl, 5px);display:flex;flex-direction:column;overflow:hidden;box-shadow:var(--edge-hi, inset 0 1px 0 rgba(255, 255, 255, .06)),var(--shadow-4, 0 24px 70px rgba(0, 0, 0, .6));animation:player-in var(--dur-slow, .26s) var(--ease-spring, cubic-bezier(.34, 1.35, .64, 1));-webkit-user-select:none;user-select:none}@keyframes player-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.player-titlebar{display:flex;justify-content:space-between;align-items:center;padding:10px 16px;background:transparent;border-bottom:1px solid var(--stroke, #4a443a);flex-shrink:0}.player-transcript{flex:1;overflow-y:auto;padding:22px 26px 22px 136px;color:var(--fg);font-family:var(--font-body);font-size:15px;line-height:1.8;-webkit-overflow-scrolling:touch}.player-frame.mode-speaker{--ink: #1c1613;--paper: #faf5ec;--ink-shadow: rgba(26, 17, 11, .45);background:transparent;border-color:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;width:100%;height:100%;border-radius:0}.player-frame.mode-speaker .player-titlebar{border-bottom:none}.player-speech{flex:0 0 auto;height:19%;box-sizing:border-box;--speech-max: 560px;width:min(var(--speech-max),100%);padding:0 8px;align-self:center;display:flex;flex-direction:column-reverse;overflow-y:auto;scrollbar-gutter:stable}.player-tail{--tail-w: 34px;--tail-point: calc(var(--tail-w) * (.5 - var(--tail-lean, 1) * .28));position:relative;z-index:1;flex:none;align-self:flex-start;margin-left:clamp(0px,calc(var(--tail-x, .5) * 100% - var(--tail-point)),calc(100% - var(--tail-w)));width:var(--tail-w);height:30px}.player-tail:before,.player-tail:after{content:"";position:absolute;transform:scaleX(var(--tail-lean, 1))}.player-tail:before{inset:0;background:var(--ink);clip-path:path("M 4 0 L 30 0 C 25.5 10 16 20 7.5 30 C 10.5 20 7.6 10 4 0 Z")}.player-tail:after{inset:-5px 0 0;background:var(--paper);clip-path:path("M 7 0 L 27 0 C 23.3 13 15.6 23.5 8.9 32.4 C 11 22.5 9.2 12.5 7 0 Z")}.player-speech.has-speech{transform-origin:bottom center;animation:bubble-in var(--dur-bubble-in, .42s) linear both}@keyframes bubble-in{0%{opacity:0;transform:scale(.6) rotate(-2.4deg);animation-timing-function:cubic-bezier(.16,.84,.28,1)}40%{opacity:1;transform:scale(1.055) rotate(1.7deg);animation-timing-function:ease-in-out}64%{transform:scale(.976) rotate(-.85deg);animation-timing-function:ease-in-out}84%{transform:scale(1.012) rotate(.32deg);animation-timing-function:ease-in-out}to{opacity:1;transform:scale(1) rotate(0)}}.player-speech.has-speech.is-leaving{animation:bubble-out var(--dur-bubble-out, .18s) linear both}@keyframes bubble-out{0%{opacity:1;transform:scale(1) rotate(0);animation-timing-function:ease-out}26%{opacity:.96;transform:scale(1.03) rotate(1.1deg);animation-timing-function:cubic-bezier(.6,0,.9,.4)}to{opacity:0;transform:scale(.66) rotate(-2.2deg)}}@media(prefers-reduced-motion:reduce){.player-speech.has-speech,.player-speech.has-speech.is-leaving{animation:none}}.player-frame.mode-speaker .player-speech .player-flow{top:auto;bottom:0;z-index:1;padding:15px 32px 17px;text-align:left;line-height:1.55}.player-frame.mode-speaker .player-speech .line-speaker-name{display:inline-block;margin:0 0 8px;padding:3px 15px 2px;background:var(--speech-accent, var(--paper));color:#171310!important;font-size:.72em;font-weight:800;letter-spacing:.14em;text-transform:uppercase;border:2px solid var(--ink);border-radius:999px;transform:rotate(-2deg);box-shadow:2px 2px 0 var(--ink-shadow)}.player-frame.mode-speaker .player-speech .line-speaker-colon{display:none}.player-frame.mode-speaker .player-speech .player-flow>:last-child{margin-bottom:0}.player-frame.mode-speaker .player-speech .line-text.with-speaker{background:none!important;padding:0}.player-frame.mode-speaker .player-speech .player-box{flex:none;align-self:flex-start;width:var(--speech-w, 100%);margin-left:clamp(0px,calc(var(--tail-x, .5) * 100% - var(--speech-w, 100%) / 2),calc(100% - var(--speech-w, 100%)));color:var(--ink);background:var(--paper);border:none;border-radius:46px 52px 44px 56px/30px 26px 34px 24px;box-shadow:inset 0 0 0 3px var(--ink),5px 6px 0 var(--ink-shadow);transition:height var(--dur-slow, .26s) var(--ease-out, cubic-bezier(.2, 0, 0, 1)),width var(--dur-slow, .26s) var(--ease-out, cubic-bezier(.2, 0, 0, 1)),margin-left var(--dur-slow, .26s) var(--ease-out, cubic-bezier(.2, 0, 0, 1))}.player-frame.mode-speaker .player-speech.is-fresh .player-box{transition:none}.player-frame.mode-speaker .player-speech .line-text:after{content:"";display:inline-block;width:11px;height:13px;margin-left:7px;vertical-align:middle;background:var(--ink);clip-path:path("M 0 0.5 C 1.7 4 1.7 9 0 12.5 C 4.4 10 7.6 7.7 11 6.6 C 7.6 5.3 4.4 3 0 0.5 Z");opacity:0;transition:opacity var(--dur-fast) var(--ease-out)}.player-frame.mode-speaker .player-speech.awaits .line-text:after{opacity:1;animation:hint-mark-bob 1.5s var(--ease-out, ease-in-out) infinite}@keyframes hint-mark-bob{0%,to{transform:none;opacity:1}50%{transform:translate(3px);opacity:.45}}@media(prefers-reduced-motion:reduce){.player-frame.mode-speaker .player-speech.awaits .line-text:after{animation:none}}.player-stage{flex:1;position:relative;min-height:0;display:grid;grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr);align-items:end;justify-items:center;box-sizing:border-box;padding:20px 20px 0;overflow:visible}.player-stage-img{display:block;position:relative;z-index:1;transform:translate(calc(var(--mid-shift, 0) * 100%));width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;object-position:center bottom;-webkit-user-drag:none;pointer-events:none;filter:drop-shadow(0 2px 6px rgba(0,0,0,.55)) drop-shadow(0 10px 34px rgba(0,0,0,.45));animation:stage-in var(--dur-slow, .26s) var(--ease-out) both}@keyframes stage-in{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.player-stage-img{animation:none}}.player-frame.mode-speaker .player-transcript{flex:0 0 auto;height:21%;box-sizing:border-box;width:min(680px,100%);align-self:center;margin-top:8px;background:none;border:none;padding:0 8px;scrollbar-gutter:stable}.player-frame.mode-speaker .player-box{position:relative;box-sizing:content-box;color:var(--ink);border:none;border-radius:6px 14px 8px 16px/14px 7px 16px 8px;background:var(--paper);box-shadow:inset 0 0 0 3px var(--ink),5px 6px 0 var(--ink-shadow);overflow:hidden;transition:height var(--dur-slow, .26s) var(--ease-out, cubic-bezier(.2, 0, 0, 1))}.player-frame.mode-speaker .player-box.is-empty{background:none;box-shadow:none}.player-frame.mode-speaker .player-box:not(.is-empty) .player-hint{color:#1c16118c}.player-frame.mode-speaker .player-box:not(.is-empty) .player-hint.is-urgent,.player-frame.mode-speaker .player-transcript:hover .player-box:not(.is-empty) .player-hint{color:var(--ink)}.player-frame.mode-speaker .player-box.is-empty .player-hint,.player-frame.mode-speaker .player-transcript:hover .player-box.is-empty .player-hint{color:#f2ecdf;text-shadow:0 1px 3px rgba(0,0,0,.8)}.player-frame.mode-speaker .player-box.is-empty .player-hint{text-align:center;font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;opacity:.4}.player-frame.mode-speaker .player-transcript:hover .player-box.is-empty .player-hint{opacity:.75}.player-frame.mode-speaker .player-box.is-empty .player-hint.is-urgent .player-hint-pulse{animation:none}.player-speech.has-speech~.player-transcript .player-box.is-empty .player-hint,.player-speech.has-speech~.player-transcript:hover .player-box.is-empty .player-hint{color:transparent;text-shadow:none}.player-frame.mode-speaker .player-status,.player-frame.mode-speaker .line-end{color:#1c16118c}.player-frame.mode-speaker .line-client{color:#2f6b33}.player-frame.mode-speaker .line-error{color:#a3242f}@media(prefers-reduced-motion:reduce){.player-frame.mode-speaker .player-box,.player-frame.mode-speaker .player-speech .player-box{transition:none}}.player-frame.mode-speaker .player-flow{position:absolute;top:0;left:0;right:0;box-sizing:border-box;padding:15px 22px 13px}.player-frame.mode-speaker .player-choices{margin-top:10px}.player-frame.mode-speaker .choice-group{flex-direction:row;flex-wrap:wrap;margin:0;--shrink: clamp(.62, calc(1 - (var(--n, 3) - 3) * .09), 1);gap:calc(8px * var(--shrink))}.player-frame.mode-speaker .choice-option{flex:1 1 calc((100% - (var(--n, 3) - 1) * 8px * var(--shrink)) / var(--n, 3));min-width:calc(110px * var(--shrink));font-size:calc(1em * var(--shrink));align-items:flex-start;text-align:left;padding:calc(10px * var(--shrink)) calc(14px * var(--shrink));overflow-wrap:break-word;color:var(--ink);background:var(--paper);border:2px solid var(--ink);border-radius:8px 14px 9px 15px/14px 8px 16px 9px;box-shadow:4px 5px 0 var(--ink-shadow);transition:background var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out),opacity var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out),background-position .6s var(--ease-out)}.player-frame.mode-speaker .choice-option:not(.attached):hover:not(:disabled):not(.unavailable){background-color:#fffdf6;background-image:linear-gradient(90deg,transparent 0%,#fffdf6 26%,#fffdf6 74%,transparent 100%),repeating-linear-gradient(-45deg,rgba(28,22,17,.5) 0 1px,transparent 1px 7px);background-size:100% 100%,auto;border-color:var(--ink);transform:translateY(-2px);background-position:0 0,-34px 0;box-shadow:6px 8px 0 var(--ink-shadow)}.player-frame.mode-speaker .choice-option:not(.attached):active:not(:disabled):not(.unavailable){transform:translateY(0) scale(.985);box-shadow:3px 4px 0 var(--ink-shadow)}.player-frame.mode-speaker .choice-option.selected{background:var(--ink);border-color:var(--ink);color:var(--paper)}.player-frame.mode-speaker .choice-option.selected .choice-subtext{color:#faf5ecb8}.player-frame.mode-speaker .choice-subtext,.player-frame.mode-speaker .choice-unavailable-reason{color:#1c161199}.player-frame.mode-speaker .choice-ritual-tag{color:color-mix(in srgb,var(--rune, var(--accent)) 62%,var(--ink))}.player-frame.mode-speaker .choice-option.ritual{--ritual-rule: color-mix(in srgb, var(--rune, var(--accent)) 48%, var(--ink));padding-bottom:calc(6px * var(--shrink) + var(--ritual-line) + .35em)}.player-frame.mode-speaker .choice-option.spell{gap:calc(12px * var(--shrink))}.player-frame.mode-speaker .choice-rune svg{width:calc(40px * var(--shrink));height:calc(40px * var(--shrink))}.player-choices{overflow:visible}.player-frame.mode-speaker .choice-group.answered .choice-option{flex-basis:100%}.player-attached{position:absolute;inset:0;z-index:0;pointer-events:none}.player-attached .choice-option{pointer-events:auto}.player-attached-tips{position:absolute;inset:0;z-index:2;pointer-events:none}.player-attached-tips .choice-tip{bottom:auto;left:var(--tip-left, auto);right:var(--tip-right, auto);display:flex;opacity:1;transform:translateY(-100%)}@starting-style{.player-attached-tips .choice-tip{opacity:0;transform:translateY(calc(-100% + 4px))}}.choice-group.attached .choice-option .choice-tip{display:none}.player-frame.mode-speaker .choice-group.attached{display:block;position:absolute;inset:0;margin:0;--shrink: 1}.player-frame.mode-speaker .choice-option.attached{--attached-bg: var(--paper);--attached-rim: var(--ink);--tilt: 0deg;--dir: 1;position:absolute;min-height:0;min-width:0;width:max-content;font-size:inherit;padding:9px 16px;transform:translateY(-50%) rotate(var(--tilt));background:var(--attached-bg);border:2px solid var(--attached-rim);border-radius:0;box-shadow:calc(var(--dir) * 5px) 6px 0 var(--ink-shadow)}.player-frame.mode-speaker .choice-option.attached.ritual{padding-bottom:calc(5px + var(--ritual-line) + .35em)}.player-frame.mode-speaker .choice-option.attached-right{--dir: 1;padding-left:calc(var(--attach-clear, 26px) + 14px);transform-origin:0 50%;border-left-color:transparent}.player-frame.mode-speaker .choice-option.attached-left{--dir: -1;padding-right:calc(var(--attach-clear, 26px) + 14px);transform-origin:100% 50%;border-right-color:transparent}.choice-option.attached:after{content:"";position:absolute;top:0;bottom:0;width:16px;background:var(--attached-bg);pointer-events:none}.choice-option.attached-right:after{left:-16px;clip-path:polygon(100% 0,100% 100%,0 50%)}.choice-option.attached-left:after{right:-16px;clip-path:polygon(0 0,0 100%,100% 50%)}.player-frame.mode-speaker .choice-option.attached:hover:not(:disabled):not(.unavailable){--attached-bg: #fffdf6;background-color:var(--attached-bg);background-image:linear-gradient(90deg,transparent 0%,var(--attached-bg) 26%,var(--attached-bg) 74%,transparent 100%),repeating-linear-gradient(-45deg,rgba(28,22,17,.5) 0 1px,transparent 1px 7px);background-size:100% 100%,auto;background-position:0 0,-34px 0;border-color:var(--attached-rim);transform:translateY(-50%) rotate(calc(var(--tilt) * .35)) translate(calc(var(--dir) * 4px));box-shadow:calc(var(--dir) * 7px) 8px 0 var(--ink-shadow)}.player-frame.mode-speaker .choice-option.attached-right:hover{border-left-color:transparent}.player-frame.mode-speaker .choice-option.attached-left:hover{border-right-color:transparent}.choice-group.attached:not(.answered) .choice-option{animation:attached-in var(--dur-slow, .26s) var(--ease-out) both;animation-delay:calc(var(--i, 0) * .2s)}@keyframes attached-in{0%{opacity:0;transform:translateY(-50%) translate(calc(var(--dir) * -100%)) rotate(calc(var(--tilt) - var(--dir) * 9deg))}}@media(prefers-reduced-motion:reduce){.choice-group.attached:not(.answered) .choice-option{animation:none}}.line-text{margin:0 0 14px;white-space:pre-wrap}.line-image{display:block;max-width:100%;max-height:42vh;object-fit:contain;margin:0 0 14px;border-radius:var(--r, 3px);-webkit-user-drag:none}.line-word{display:inline-block;white-space:nowrap}.line-char{display:inline-block}.reveal-fade .line-char{animation:char-fade .22s var(--ease-out) both}@keyframes char-fade{0%{opacity:0}}.reveal-settle .line-char{transform-origin:50% 85%;animation:char-settle .26s var(--ease-spring) both}@keyframes char-settle{0%{opacity:0;transform:scale(1.6)}60%{opacity:1}}.reveal-rise .line-char{animation:char-rise .24s var(--ease-out) both}@keyframes char-rise{0%{opacity:0;transform:translateY(.35em)}}.reveal-focus .line-char{animation:char-focus .3s var(--ease-out) both}@keyframes char-focus{0%{opacity:0;filter:blur(.14em)}to{opacity:1;filter:blur(0)}}.reveal-ink .line-char{animation:char-ink .42s var(--ease-out) both}@keyframes char-ink{0%{opacity:0;filter:brightness(.35) blur(.05em)}40%{opacity:1}to{opacity:1;filter:brightness(1) blur(0)}}.line-caret{display:inline-block;position:relative;width:0;vertical-align:baseline;animation:caret-blink 1s steps(2,start) infinite}.line-caret:before{content:"​"}.line-caret:after{content:"";position:absolute;left:0;top:100%;width:.5em;border-bottom:2px solid currentColor}@keyframes caret-blink{to{visibility:hidden}}@media(prefers-reduced-motion:reduce){.line-caret{animation:none}.line-char{animation:none!important}}.line-text.with-speaker{border-radius:4px;padding:2px 10px}.line-text.with-speaker:not(.run-last){margin-bottom:0;padding-bottom:12px;border-bottom-left-radius:0;border-bottom-right-radius:0}.line-text.with-speaker:not(.run-first){padding-top:0;border-top-left-radius:0;border-top-right-radius:0}.line-speaker-name{margin-left:-116px;margin-bottom:4px;font-weight:600}.line-run{position:relative;margin-bottom:14px}.line-grow .line-text.with-speaker{margin-bottom:0}.line-grow{display:grid;grid-template-rows:1fr;animation:line-grow var(--dur-slow, .26s) var(--ease-out) both}@keyframes line-grow{0%{grid-template-rows:0fr}}.line-grow>.line-text{min-height:0;overflow:clip;overflow-clip-margin:.5em}@media(prefers-reduced-motion:reduce){.line-grow{animation:none}}.line-run.has-portrait{min-height:120px}.line-run.has-portrait .line-speaker-name{margin-left:0}.line-portrait{position:absolute;left:-132px;top:0;bottom:0;margin-top:auto;width:120px;height:120px;object-fit:cover;object-position:50% 15%;border-radius:6px;border:1px solid var(--stroke, #4a443a);background:#0000002e;-webkit-user-drag:none}@media(max-width:768px){.player-transcript{padding-left:64px}.line-speaker-name{margin-left:-48px}.line-portrait{left:-60px;width:52px;height:52px}.line-run.has-portrait{min-height:52px}}.line-client{margin:0 0 14px;border-left:2px solid var(--accent);padding-left:10px;color:#b5cea8}.line-client pre{margin:0;white-space:pre-wrap}.line-error{color:var(--danger);margin:0 0 14px}.line-end{color:var(--fg-dim);margin:0 0 14px}.choice-group{display:flex;flex-direction:column;gap:8px;margin:0 0 14px}.choice-group:not(.answered) .choice-option{animation:choice-in var(--dur-slow, .26s) var(--ease-out) both;animation-delay:calc(var(--i, 0) * 55ms)}@keyframes choice-in{0%{opacity:0;transform:translateY(6px)}}@media(prefers-reduced-motion:reduce){.choice-group:not(.answered) .choice-option{animation:none}}.choice-option{display:flex;flex-direction:column;align-items:flex-start;text-align:left;padding:12px 16px;min-height:44px;background:var(--glass-ultrathin, #2e2b26);border:1px solid var(--stroke, #4a443a);border-radius:var(--r, 3px);cursor:pointer;font-family:inherit;font-size:inherit;color:var(--fg);box-shadow:var(--edge-hi, inset 0 1px 0 rgba(255, 255, 255, .05));transition:background var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out),opacity var(--dur-fast) var(--ease-out);-webkit-tap-highlight-color:transparent}.choice-option:hover:not(:disabled):not(.unavailable){background:var(--hover);border-color:var(--accent)}.choice-option:active:not(:disabled):not(.unavailable){transform:scale(.985)}.choice-option.selected{background:var(--accent-soft);border-color:var(--accent);color:var(--fg)}.choice-option:disabled{opacity:.35;cursor:default}.choice-option.selected:disabled{opacity:1}.choice-option.unavailable{cursor:not-allowed;border-style:dashed}.choice-option.unavailable>:not(.choice-tip),.choice-option.unavailable:before{opacity:.6}.choice-headline{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 12px}.choice-text{line-height:1.5}.choice-option.unavailable .choice-text,.choice-option.unavailable .choice-subtext{text-decoration:line-through}.choice-subtext{font-size:.82em;color:var(--fg-dim);opacity:.75;margin-top:3px;line-height:1.4}.choice-unavailable-reason{font-size:.82em;color:var(--fg-dim);font-style:italic;line-height:1.4}.choice-option{position:relative}.choice-tip{position:absolute;bottom:calc(100% + 10px);--tip-x: -50%;left:var(--tip-left, 50%);right:var(--tip-right, auto);transform:translate(var(--tip-x)) translateY(4px);z-index:2;display:flex;flex-direction:column;gap:3px;width:max-content;max-width:min(280px,70vw);padding:7px 10px;background:var(--glass-opaque, #141416);border:1px solid var(--stroke, rgba(255, 255, 255, .14));border-radius:var(--r, 3px);box-shadow:0 8px 24px #00000080;color:var(--fg);font-size:.82em;font-style:normal;line-height:1.4;text-align:center;text-decoration:none;display:none;opacity:0;pointer-events:none;transition:opacity var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out),display var(--dur-fast) allow-discrete}.choice-tip:after{content:"";position:absolute;top:100%;left:var(--tip-stem, 50%);width:8px;height:8px;margin:-5px 0 0 -4px;background:inherit;border-right:inherit;border-bottom:inherit;transform:rotate(45deg)}.choice-option.tipped .choice-tip,.choice-option:focus-visible .choice-tip{display:flex;opacity:1;transform:translate(var(--tip-x)) translateY(0)}.player-frame.mode-speaker .choice-option:first-child .choice-tip{--tip-left: 0;--tip-x: 0;--tip-stem: 28px}.player-frame.mode-speaker .choice-option:last-child .choice-tip{--tip-left: auto;--tip-right: 0;--tip-x: 0;--tip-stem: calc(100% - 28px) }@starting-style{.choice-option.tipped .choice-tip,.choice-option:focus-visible .choice-tip{opacity:0;transform:translate(var(--tip-x)) translateY(4px)}}.choice-group.answered .choice-tip{display:none}.choice-option.unavailable .choice-tip{text-decoration:none}.player-frame.mode-speaker .choice-tip{background:var(--paper);border:2px solid var(--ink);border-radius:7px 11px 8px 12px/11px 7px 13px 8px;box-shadow:3px 4px 0 var(--ink-shadow);color:var(--ink)}.choice-option.spell{flex-direction:row;align-items:center;gap:12px}.choice-rune{flex:0 0 auto;display:flex;line-height:0}.choice-option.unavailable .choice-rune{filter:grayscale(1) brightness(.85)}.choice-body{display:flex;flex-direction:column;align-items:flex-start;min-width:0}.choice-option.ritual{--ritual-line: calc(8px * var(--shrink, 1));--ritual-rule: color-mix(in srgb, var(--rune, var(--accent)) 55%, transparent);padding-bottom:calc(var(--ritual-line) + .5em)}.player-frame.mode-speaker .choice-option.ritual .choice-body{flex:1 1 auto;align-items:center;text-align:center}.player-frame.mode-speaker .choice-option.ritual .choice-headline{justify-content:center}.player-frame:not(.mode-speaker) .choice-option.ritual{padding-top:calc(var(--ritual-line) + .5em)}.choice-option.ritual:before{content:"";position:absolute;inset:3px 3px var(--ritual-line);border:1px dashed var(--ritual-rule);border-bottom:none;border-radius:calc(var(--r, 3px) - 1px) calc(var(--r, 3px) - 1px) 0 0;pointer-events:none}.choice-ritual-tag{position:absolute;left:3px;right:3px;bottom:var(--ritual-line);transform:translateY(50%);display:flex;align-items:center;justify-content:center;gap:.6em;font-size:.62em;letter-spacing:.14em;text-transform:uppercase;color:var(--rune, var(--accent));opacity:.85;line-height:1;pointer-events:none}.choice-ritual-tag:before,.choice-ritual-tag:after{content:"";flex:1 1 0;border-top:1px dashed var(--ritual-rule)}.choice-option.unavailable .choice-ritual-tag{text-decoration:none}.freetext-group{display:flex;align-items:stretch;gap:8px;margin:0 0 14px}.freetext-input{flex:1;min-width:0;padding:12px 16px;min-height:44px;background:var(--glass-ultrathin, #2e2b26);border:1px solid var(--stroke, #4a443a);border-radius:var(--r, 3px);color:var(--fg);font-family:inherit;font-size:inherit;box-shadow:var(--edge-hi, inset 0 1px 0 rgba(255, 255, 255, .05));transition:border-color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out)}.freetext-input{-webkit-user-select:text;user-select:text}.freetext-input::placeholder{color:var(--fg-dim);opacity:.7}.freetext-input:hover{background:var(--hover)}.freetext-input:focus{outline:none;border-color:var(--accent);background:var(--hover)}.freetext-submit{flex:0 0 auto;min-width:44px;min-height:44px;padding:0 14px;background:var(--accent-soft);border:1px solid var(--accent);border-radius:var(--r, 3px);color:var(--fg);font-family:inherit;font-size:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background var(--dur-fast) var(--ease-out),opacity var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.freetext-submit:hover:not(:disabled){background:var(--hover)}.freetext-submit:active:not(:disabled){transform:scale(.985)}.freetext-submit:disabled{opacity:.35;cursor:default}.freetext-group.answered{border-left:2px solid var(--accent);padding-left:12px}.freetext-answer{color:var(--fg);line-height:1.5;overflow-wrap:anywhere}.player-frame.mode-speaker .freetext-input{background:#fff;border:2px solid var(--ink);border-radius:8px 12px 9px 13px/12px 8px 14px 9px;color:var(--ink);box-shadow:none}.player-frame.mode-speaker .freetext-input::placeholder{color:#1c161173;opacity:1}.player-frame.mode-speaker .freetext-input:hover,.player-frame.mode-speaker .freetext-input:focus{background:#fff}.player-frame.mode-speaker .freetext-submit{background:var(--ink);border:2px solid var(--ink);border-radius:8px 12px 9px 13px/12px 8px 14px 9px;color:var(--paper)}.player-frame.mode-speaker .freetext-submit:hover:not(:disabled){background:#33291f}.player-frame.mode-speaker .freetext-group.answered{border-left-color:var(--ink)}.player-frame.mode-speaker .freetext-answer{color:var(--ink)}.player-status{color:var(--fg-dim);margin-bottom:12px}.player-hint{margin:-6px 0 14px;min-height:20px;color:var(--fg-dim);font-family:var(--font-body);font-size:12px;letter-spacing:.4px;user-select:none;cursor:pointer;opacity:.5;transition:opacity var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.player-hint.is-urgent{opacity:1;color:var(--fg)}.player-transcript:hover .player-hint{color:var(--fg)}.player-hint-pulse{display:inline-block}.player-hint.is-urgent .player-hint-pulse{animation:hint-pulse 1.6s var(--ease-out, ease-in-out) infinite}@keyframes hint-pulse{0%,to{opacity:1}50%{opacity:.35}}.player-hint-text{display:inline-block;animation:hint-in var(--dur-slow, .26s) var(--ease-out) both}@keyframes hint-in{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.player-hint.is-urgent .player-hint-pulse,.player-hint-text{animation:none}}@media(pointer:coarse){.player-hint{min-height:44px;padding-top:8px}}.glossary-term{text-decoration:underline dotted;text-decoration-color:color-mix(in srgb,currentColor 65%,transparent);text-underline-offset:3px;cursor:help}.glossary-term:hover{text-decoration-style:solid}.glossary-tooltip{position:fixed;z-index:60;max-width:340px;background:var(--glass, rgba(24, 22, 19, .96));-webkit-backdrop-filter:blur(var(--blur, 0px)) saturate(var(--saturate, 100%));backdrop-filter:blur(var(--blur, 0px)) saturate(var(--saturate, 100%));border:1px solid var(--stroke, #4a443a);border-radius:var(--r-lg, 4px);box-shadow:var(--edge-hi, inset 0 1px 0 rgba(255, 255, 255, .06)),var(--shadow-2, 0 10px 30px rgba(0, 0, 0, .5));padding:8px 12px 6px;font-size:13px;line-height:1.5;font-family:var(--font-body);animation:glass-pop var(--dur, .2s) var(--ease-spring, cubic-bezier(.34, 1.35, .64, 1))}@keyframes glass-pop{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.glossary-tooltip-title{display:flex;align-items:center;justify-content:space-between;gap:10px;font-weight:700;font-size:12px;text-transform:uppercase;letter-spacing:.7px;margin-bottom:4px}.glossary-tooltip-pin{background:transparent;border:none;color:var(--fg-dim);cursor:pointer;padding:2px 4px;font-size:12px}.glossary-tooltip-pin:hover{color:var(--fg)}.glossary-tooltip-pin.pinned{color:var(--accent)}.glossary-tooltip-body{color:var(--fg)}.glossary-tooltip-hint{margin-top:6px;font-size:11px;color:var(--fg-dim)}.game-dialog-layer{position:fixed;inset:0;z-index:50;pointer-events:none}.game-dialog-layer>*{pointer-events:auto}.game-dialog-layer{opacity:1;transition:opacity .42s ease}.game-dialog-layer.is-hidden{opacity:0;visibility:hidden;transition:none}.game-dialog-layer.is-leaving{opacity:0}.game-dialog-layer.is-leaving>*{pointer-events:none}.game-dialog-layer .player-frame{transition:transform .42s cubic-bezier(.2,.7,.3,1)}.game-dialog-layer.is-hidden .player-frame,.game-dialog-layer.is-leaving .player-frame{transform:translateY(14px) scale(.985)}.game-dialog-layer.is-hidden .player-frame{transition:none}@media(prefers-reduced-motion:reduce){.game-dialog-layer .player-frame{transition:none}.game-dialog-layer.is-hidden .player-frame,.game-dialog-layer.is-leaving .player-frame{transform:none}}.game-dialog-layer .player-overlay{background:linear-gradient(to top,rgba(0,0,0,.55),transparent 45%);-webkit-backdrop-filter:none;backdrop-filter:none}.game-dialog-layer .player-frame{background:linear-gradient(#1e1b17f7,#141210f7);border:1px solid #4a443a;border-radius:4px;color:#d8d2c4;box-shadow:inset 0 1px #ffffff0f,0 18px 60px #000000a6}.game-dialog-layer .player-frame.mode-speaker{background:none;border-color:transparent;box-shadow:none}.game-dialog-layer .player-hint{font-family:Georgia,Times New Roman,serif;font-size:12.5px;color:#9a9284}.game-dialog-layer .player-hint.is-urgent,.game-dialog-layer .player-transcript:hover .player-hint{color:#efe9da}
