html{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}img,svg{-webkit-user-drag:none}input,textarea,[contenteditable]:not([contenteditable=false]),.selectable{-webkit-user-select:text;user-select:text;-webkit-touch-callout:default}html,body,#root{background:var(--game-background);height:100%;color:var(--game-text);font-family:var(--game-font);margin:0}.game{background:var(--game-backdrop-image) var(--game-background);height:100%;position:relative;overflow:hidden}.game[data-screen=go],.game[data-screen=warm-up],.game[data-screen=results]{background-image:none}.screen{box-sizing:border-box;max-width:520px;height:100%;padding:max(16px, env(safe-area-inset-top)) 16px calc(80px + env(safe-area-inset-bottom));flex-direction:column;align-items:stretch;gap:12px;margin:0 auto;display:flex;overflow-y:auto}h1,h2,h3{font-family:var(--game-heading-font);margin:0}button{font:inherit;border:2px solid var(--game-line);background:var(--game-panel);color:var(--game-text);cursor:pointer;border-radius:14px;padding:12px 18px;font-size:1rem}button:disabled{cursor:default}button.primary{border-color:var(--game-primary);background:var(--game-primary);color:var(--game-primary-text);font-weight:600}button:focus-visible{outline:3px solid var(--game-text);outline-offset:2px}.actions{flex-direction:column;gap:10px;display:flex}.face{display:block;overflow:visible}.face-eyes{transform-box:fill-box;transform-origin:50%;animation:4.2s infinite blink}@keyframes blink{0%,94%,to{transform:scaleY(1)}97%{transform:scaleY(.1)}}.face.talking .face-mouth{transform-box:fill-box;transform-origin:50% 30%;animation:.26s ease-in-out infinite alternate talk}@keyframes talk{to{transform:scale(1.08,1.7)}}@media (prefers-reduced-motion:reduce){.face-eyes,.face.talking .face-mouth{animation:none}}.title{text-align:center;justify-content:center}.logo{margin:0}.logo img{width:min(100%,380px);height:auto;margin:0 auto;display:block}.tagline{color:var(--game-muted);margin:0 0 12px}.title .copyright{color:var(--game-muted);margin:0;font-size:.75rem}.how-to-play ol{padding-left:1.4em;line-height:1.5}.how-to-play li{margin-bottom:10px}.screen.play{padding-bottom:max(16px, env(safe-area-inset-bottom));overflow:hidden}.dock{flex-direction:column;flex:none;justify-content:flex-end;gap:8px;display:flex}.dock button{min-height:46px;padding:8px 16px}.meeting .dock,.quiz:not(.who) .dock{min-height:calc(1.1rem + 216px)}.quiz.who .dock{min-height:52px}.hud{min-height:48px;color:var(--game-muted);text-align:center;flex:none;place-items:center;padding:0 56px;font-size:.85rem;display:grid;position:relative}.meeting,.quiz{flex-direction:column;flex:1;gap:12px;min-height:0;animation:.3s ease-out arrive;display:flex}@keyframes arrive{0%{opacity:0;transform:translateY(12px)}}.stage{background:var(--game-line) center / cover no-repeat;border-radius:20px;flex:0 auto;justify-content:center;align-items:flex-end;width:100%;height:clamp(120px,30vh,260px);min-height:96px;display:flex;position:relative;overflow:hidden}.stage:before{content:"";background:inherit;filter:brightness(var(--game-scene-brightness));position:absolute;inset:0}.stage>*{position:relative}.talk{flex:1 1 0;min-height:140px;display:flex;container-type:size}.talk .stage{--face:min(62cqh, 110cqw);flex:auto;height:auto;min-height:0}.meeting.many .talk .stage{--face:min(62cqh, 58cqw)}.guest-face{height:var(--face,92%);flex:none;width:auto;max-width:100%;margin:0 auto}.stage.banner{aspect-ratio:3/2;flex:0 auto;height:auto;min-height:72px;max-height:34vh}.meeting.many .guest-face{margin:0 -2%;transition:transform .2s,filter .2s}.meeting.many .guest-face.asking{transform:translateY(-6px)scale(1.06)}.meeting.many .guest-face.waiting{filter:saturate(.35)brightness(.85);transform:scale(.96)}.bubble{border-radius:18px;margin:0;padding:10px 14px;line-height:1.35;animation:.2s ease-out arrive}.bubble.them{background:var(--game-bubble-them);color:var(--game-bubble-them-text)}.bubble.you{background:var(--game-bubble-you);color:var(--game-bubble-you-text);border-bottom-right-radius:4px}.stage>.speech-layer{pointer-events:none;position:absolute;inset:0}.speech{padding:0 12px;display:flex;position:absolute;left:0;right:0}.speech.start{justify-content:flex-start}.speech.middle{justify-content:center}.speech.end,.speech.you{justify-content:flex-end}.speech:not(.you){top:10px;bottom:calc(var(--face) + 12px);align-items:safe flex-end}.speech.you{bottom:10px}.speech .bubble{box-sizing:border-box;max-width:100%;font-size:clamp(1.15rem,1rem + 2cqh,1.45rem);line-height:1.3;box-shadow:0 2px 6px #0000002e}.speech .bubble.you{max-width:80%;font-size:clamp(1.05rem,.95rem + 1.5cqh,1.25rem)}.speech-tail{bottom:calc(var(--face) + 1px);border:12px solid #0000;border-top-color:var(--game-bubble-them);border-bottom:0;width:0;height:0;animation:.2s ease-out arrive;position:absolute;transform:translate(-50%)}.choices{flex-direction:column;flex:none;gap:8px;display:flex}.prompt{color:var(--game-muted);margin:0;font-size:.9rem}.choices.names{grid-template-columns:1fr 1fr;display:grid}.choices.names .prompt,.choices.names .remind{grid-column:1/-1}.prompt.listening{text-align:center;padding:10px 0}.question{font:600 1.35rem var(--game-heading-font);text-align:center;margin:0}.question.caption{background:var(--game-panel);color:var(--game-text);border-radius:14px;padding:10px 14px;position:absolute;top:10px;left:12px;right:12px;box-shadow:0 2px 6px #0000002e}.choice.right,.face-choice.right{border-color:var(--game-right);background:var(--game-right);color:#fff}.choice.wrong,.face-choice.wrong{border-color:var(--game-wrong);background:var(--game-wrong);color:#fff}.choice.faded,.face-choice.faded{opacity:.45}.faces{flex:1 1 0;grid-template-rows:repeat(2,minmax(0,1fr));grid-template-columns:1fr 1fr;gap:10px;width:100%;max-width:400px;min-height:0;margin:0 auto;display:grid}.face-choice{justify-content:center;align-items:flex-end;min-height:0;padding:8px 8px 0;display:flex;overflow:hidden}.face-choice .face{width:auto;max-width:100%;height:100%}.next{flex:none;justify-content:space-between;align-items:center;gap:12px;min-height:52px;display:flex}.verdict{margin:0;font-weight:600}.verdict.right{color:var(--game-right)}.verdict.wrong{color:var(--game-wrong)}.stars{color:var(--game-line);gap:2px;font-size:1.2rem;line-height:1;display:inline-flex}.star.earned{color:var(--game-star)}.stars.big{justify-content:center;gap:8px;font-size:3rem}.level-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.level{text-align:left;align-items:center;gap:12px;width:100%;display:flex}.level-number{background:var(--game-primary);width:36px;height:36px;color:var(--game-primary-text);font:700 1.1rem var(--game-heading-font);border-radius:50%;flex:none;place-items:center;display:grid}.level-text{flex-direction:column;flex:1;display:flex}.level-title{font-weight:600}.level-people,.level-lock{color:var(--game-muted);font-size:.85rem}.level.locked{opacity:.55}.level.locked .level-number{background:var(--game-muted)}.scene{overflow:hidden}.later{flex-direction:column;flex:1;gap:12px;min-height:0;animation:.3s ease-out arrive;display:flex}.card{text-align:center;flex-direction:column;flex:1;justify-content:safe center;gap:12px;min-height:0;display:flex;overflow-y:auto}.scene-level,.later-label{color:var(--game-muted);margin:0;font-weight:600}.scene h2{font-size:1.8rem}.scene-text{margin:0;font-size:1.15rem;line-height:1.45}.scene-meet{margin:0 0 8px}.result-note{color:var(--game-muted);margin:0}.habit-tip{color:var(--game-muted);text-align:center;margin:2px 0 0;font-size:.85rem}.prompt-row{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.dock .skip-link{min-height:0;color:var(--game-muted);background:0 0;border:0;flex:none;padding:4px 6px;font-size:.9rem;text-decoration:underline}.choice.remind{border-style:dashed}.choice.remind.chosen{border-style:solid;border-color:var(--game-star)}.verdict.saved{color:var(--game-star)}.scene-warning{background:var(--game-panel);color:var(--game-text);border-radius:14px;margin:0;padding:10px 14px;font-weight:600}.meeting .guest-face.visitor{height:calc(var(--face) * .85);animation:.3s ease-out arrive;position:absolute;right:2%}.warm-up .skip-warm-up{color:var(--game-muted);background:0 0;border:0;padding:8px;text-decoration:underline;position:absolute;top:50%;left:0;transform:translateY(-50%)}.warm-up-done{text-align:center;justify-content:center}.habit-score{margin:0;font-weight:600}.coaching{background:var(--game-panel);text-align:left;border-radius:16px;flex-direction:column;gap:10px;padding:14px;display:flex}.tallies{color:var(--game-muted);flex-wrap:wrap;gap:6px 14px;margin:0;padding:0;font-size:.9rem;list-style:none;display:flex}.tallies strong{color:var(--game-text)}.tip{margin:0;font-weight:600}.names-chart{margin:0}.names-chart figcaption,.chart-summary{color:var(--game-muted);font-size:.85rem}.chart-summary{margin:4px 0 0}.names-chart svg{width:100%;height:auto;margin-top:6px;display:block}.names-chart .baseline{stroke:var(--game-line);stroke-width:1px}.names-chart .hit{fill:#0000}.names-chart .bar{fill:var(--game-muted);opacity:.5}.names-chart .bar.latest{fill:var(--game-primary);opacity:1}.names-chart g:hover .bar{opacity:1}.after{text-align:center}.met-link{margin:2px 0 0;font-size:.85rem;font-style:italic}.results{text-align:center}.met{text-align:left;flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.met li{background:var(--game-panel);border-radius:14px;align-items:center;gap:12px;padding:6px 12px 6px 6px;display:flex}.met .face{flex:none;width:56px}.met-name{margin:0;font-weight:600}.met-facts{color:var(--game-muted);margin:2px 0 0;font-size:.85rem}.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px;display:grid}.gallery figure{text-align:center;color:var(--game-muted);margin:0;font-size:.8rem}.back-button{bottom:max(16px, env(safe-area-inset-bottom));left:max(16px, env(safe-area-inset-left));z-index:2;position:absolute}.settings-button{bottom:max(16px, env(safe-area-inset-bottom));right:max(16px, env(safe-area-inset-right));z-index:2;border-radius:50%;place-items:center;width:48px;height:48px;padding:0;display:grid;position:absolute}.game[data-screen=go] .settings-button,.game[data-screen=warm-up] .settings-button{top:max(16px, env(safe-area-inset-top));bottom:auto}.settings-button svg{width:24px;height:24px}.settings-backdrop{z-index:3;background:#00000059;place-items:center;padding:16px;display:grid;position:absolute;inset:0}.settings-menu{box-sizing:border-box;background:var(--game-panel);width:min(100%,300px);color:var(--game-text);border-radius:20px;flex-direction:column;gap:12px;padding:20px 24px 24px;display:flex;position:relative}.settings-title{text-align:center;font:600 1.4rem var(--game-heading-font);margin:0}.settings-message{text-align:center;margin:0}.settings-version{opacity:.7;text-align:center;margin:4px 0 0;font-size:.75rem}.settings-toggles{grid-template-rows:1fr auto auto 1fr;grid-auto-columns:84px;grid-auto-flow:column;justify-content:center;column-gap:12px;height:84px;display:grid}.settings-toggle{grid-row:span 4;grid-template-rows:subgrid;justify-items:center;row-gap:4px;padding:0 4px 2px;font-size:.8rem;line-height:1.2;display:grid}.settings-toggle svg{grid-row:2;width:28px;height:28px}.settings-toggle-label{grid-row:3}button.settings-confirm{border-color:var(--game-primary);background:var(--game-primary);color:var(--game-primary-text)}.settings-close{background:0 0;border:0;width:36px;height:36px;padding:0;position:absolute;top:10px;right:10px}.unsaid{visibility:hidden}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.league{text-align:center}.league-intro,.league-empty{color:var(--game-muted);margin:0}.league-table{border-collapse:separate;border-spacing:0 6px;text-align:left;width:100%}.league-table td{background:var(--game-panel);padding:10px 12px}.league-table td:first-child{border-radius:12px 0 0 12px}.league-table td:last-child{border-radius:0 12px 12px 0}.league-table .rank{text-align:center;width:2.5em;font-weight:700}.league-table .name{overflow-wrap:anywhere}.league-table .where{color:var(--game-muted);text-align:right;white-space:nowrap;font-size:.9rem}.league-table .me td{background:var(--game-primary);color:var(--game-primary-text)}.league-table .gap td{color:var(--game-muted);text-align:center;background:0 0;padding:0}.league-note{flex-direction:column;align-items:center;gap:8px;display:flex}.league-note p{margin:0;font-weight:600}.board-scope{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 16px;display:flex}.board-scope-choices{gap:8px;display:flex}.board-scope button{border-radius:12px;padding:6px 14px;font-size:.95rem}.board-scope button[aria-pressed=true]{border-color:var(--game-primary);background:var(--game-primary);color:var(--game-primary-text)}.board-scope-add{color:var(--game-text)}.screen.scene{padding-bottom:max(16px, env(safe-area-inset-bottom))}.screen.scene .dock{grid-template-columns:auto 1fr 48px;align-items:center;gap:12px;display:grid}.screen.scene .dock .back-button{position:static}@media (width>=552px){.screen.scene{padding-bottom:calc(80px + env(safe-area-inset-bottom))}.screen.scene .dock{display:flex}.screen.scene .dock .back-button{position:absolute}}.bring-across{box-sizing:border-box;background:var(--game-panel);width:min(100% - 32px,360px);color:var(--game-text);text-align:center;border:0;border-radius:20px;padding:20px 24px 24px}.bring-across::backdrop{background:#00000059}.bring-across p{margin:12px 0 0}.bring-across-title{font-size:1.4rem}.bring-across-note{color:var(--game-muted);font-size:.9rem}.bring-across-failed{color:var(--game-wrong)}.bring-across-actions{flex-direction:column;gap:10px;margin-top:20px;display:flex}
