body.is-modal-open{overflow:hidden}.play-page.is-game-session-active>.back-link,.play-page.is-game-session-active>.play-header,.play-page.is-game-session-active>.topic-grid{display:none}.game-session{min-height:calc(100vh - 9rem);opacity:0;transform:translateY(.35rem);transition:opacity .18s ease,transform .18s ease}.game-session[hidden],.game-report[hidden],.game-session__problem-area[hidden],.game-problem[hidden]{display:none}.game-session.is-visible{opacity:1;transform:translateY(0)}.game-session:focus,.game-report:focus,.game-problem:focus{outline:none}.game-session__shell{width:min(62rem,100%);min-height:calc(100vh - 9rem);display:grid;grid-template-rows:auto 1fr;gap:clamp(2rem,7vh,4.5rem);margin:0 auto}.game-session__topbar{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:1rem;padding-bottom:.95rem;border-bottom:1px solid color-mix(in srgb,var(--border) 68%,transparent)}.game-session__status{display:flex;flex-wrap:wrap;gap:.2rem .55rem;margin:0;color:color-mix(in srgb,var(--muted) 88%,var(--text));font-size:.75rem;line-height:1.45}.game-session__status span{position:relative;display:inline-flex;align-items:baseline;flex-wrap:wrap;gap:.18rem}.game-session__status span[hidden]{display:none}.game-session__status>span:not(:last-child):after{content:"·";margin-left:.35rem;color:color-mix(in srgb,var(--muted) 58%,transparent)}.game-session__status strong{color:color-mix(in srgb,var(--text) 88%,var(--muted));font-weight:700}.game-session__score-value{display:inline-block;min-width:4ch;overflow:hidden;font-variant-numeric:tabular-nums;line-height:1;text-align:right;transform-origin:center center;will-change:opacity,transform}.game-session__score-value.is-updating{animation:score-roll .42s cubic-bezier(.2,.8,.2,1)}.game-session__score-value.is-decreasing.is-updating{animation-name:score-roll-down}.game-session__title{grid-column:2;margin:0;color:var(--text);font-size:clamp(1.35rem,2vw,1.85rem);line-height:1.1;text-align:center}.game-session p,.game-report p,.game-mode-modal p{margin:0}.game-session__problem-area{display:grid;align-content:center;gap:clamp(1.75rem,5vh,3rem);padding-bottom:clamp(2rem,6vh,4rem)}.game-session__problem-list{display:grid;min-height:25rem}.game-problem{width:min(54rem,100%);display:grid;align-content:center;gap:clamp(1.35rem,3.5vw,2.4rem);margin:0 auto}.game-problem__prompt{max-width:48rem;margin:0 auto;color:var(--text);font-size:clamp(1.55rem,3vw,2.45rem);font-weight:650;line-height:1.2;text-align:center}.game-problem__answer{display:grid;justify-items:center;gap:1rem}.game-problem__generated-values{width:min(38rem,100%);display:flex;flex-wrap:wrap;justify-content:center;gap:.6rem;margin:-.3rem auto 0}.game-problem__generated-values[hidden]{display:none}.game-problem__generated-value{min-width:min(10rem,100%);display:grid;gap:.2rem;padding:.58rem .72rem;border:1px solid color-mix(in srgb,var(--accent) 38%,var(--border));border-radius:8px;background:color-mix(in srgb,var(--surface-soft) 48%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--surface) 52%,transparent)}.game-problem__generated-label{color:color-mix(in srgb,var(--muted) 88%,var(--text));font-size:.68rem;font-weight:800;line-height:1.2;text-transform:uppercase}.game-problem__generated-output{color:var(--text);font-size:1rem;font-variant-numeric:tabular-nums;font-weight:850;line-height:1.2}.game-session__feedback{min-height:2.65rem;display:inline-flex;align-items:center;justify-content:center;justify-self:center;gap:.55rem;padding:.52rem .85rem;border:1px solid transparent;border-radius:8px;color:var(--muted);font-size:.9rem;font-weight:800;line-height:1.2;opacity:0;transform:translateY(.25rem);transition:opacity .18s ease,transform .18s ease,border-color .18s ease,background-color .18s ease,color .18s ease}.game-session__feedback.is-visible{opacity:1;transform:translateY(0)}.game-session__feedback[data-feedback-state=correct]{border-color:color-mix(in srgb,var(--accent) 52%,var(--border));background:color-mix(in srgb,var(--accent) 13%,transparent);color:var(--accent-strong)}.game-session__feedback[data-feedback-state=incorrect]{border-color:color-mix(in srgb,#b8863b 52%,var(--border));background:color-mix(in srgb,#b8863b 12%,transparent);color:color-mix(in srgb,var(--energy) 82%,var(--text))}.game-session__feedback[data-feedback-state=recorded]{border-color:color-mix(in srgb,var(--border) 82%,var(--muted));background:color-mix(in srgb,var(--surface-soft) 36%,transparent);color:color-mix(in srgb,var(--text) 88%,var(--muted))}.game-session__feedback-score{font-variant-numeric:tabular-nums;font-size:.82rem;font-weight:900}.game-session__feedback-score[data-score-delta-state=positive]{color:color-mix(in srgb,#2fbf71 88%,var(--text))}.game-session__feedback-score[data-score-delta-state=negative]{color:color-mix(in srgb,#ff6b6b 84%,var(--text))}.game-problem__note,.game-report__note{max-width:44rem;margin:0 auto;color:color-mix(in srgb,var(--muted) 88%,var(--text));font-size:.78rem;line-height:1.55;text-align:center}.answer-block{display:flex;flex-wrap:wrap;justify-content:center;gap:.75rem}.answer-choice,.scene-choice,.game-session__button,.game-mode-modal__cancel{min-height:2.75rem;border:1px solid var(--border);border-radius:8px;background:color-mix(in srgb,var(--surface) 82%,transparent);color:var(--text);cursor:pointer;font:inherit;font-size:.92rem;font-weight:700;transition:border-color .16s ease,box-shadow .16s ease,color .16s ease,transform .16s ease}.answer-choice{min-width:8.5rem;padding:.8rem 1.1rem}.answer-choice:hover,.scene-choice:hover,.game-session__button:hover,.game-mode-modal__cancel:hover,.answer-choice:focus-visible,.scene-choice:focus-visible,.game-session__button:focus-visible,.game-mode-modal__cancel:focus-visible{border-color:var(--accent);color:var(--accent-strong);transform:translateY(-1px)}.answer-choice:focus-visible,.scene-choice:focus-visible,.game-session__button:focus-visible,.game-mode-modal__cancel:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 32%,transparent);outline-offset:3px}.answer-choice.is-selected,.scene-choice.is-selected{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 24%,transparent),var(--shadow);color:var(--accent-strong)}.scene-choice-grid{width:min(38rem,100%);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.scene-choice{position:relative;min-height:10.5rem;display:grid;grid-template-rows:auto 1fr auto;gap:.65rem;padding:.8rem;text-align:left}.scene-choice__label{width:1.75rem;height:1.75rem;display:grid;place-items:center;border-radius:999px;background:color-mix(in srgb,var(--surface-soft) 76%,transparent);color:var(--text);font-size:.8rem;font-weight:800}.scene-choice__visual{min-height:4.7rem;display:grid;place-items:center;border-radius:8px;background:linear-gradient(145deg,color-mix(in srgb,var(--surface-soft) 68%,transparent),color-mix(in srgb,var(--surface) 86%,var(--accent)));overflow:hidden}.scene-choice__visual span{width:min(5.5rem,70%);height:2.4rem;border:2px solid color-mix(in srgb,var(--accent) 70%,var(--muted));border-radius:999px;transform:rotate(-9deg)}.scene-choice__caption{color:var(--muted);font-size:.82rem;font-weight:650;line-height:1.35}.numeric-slider,.numeric-input{width:min(34rem,100%);display:grid;gap:.9rem}.numeric-slider__readout{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.75rem;color:var(--muted);font-size:.82rem;font-weight:700}.numeric-slider__readout strong{color:var(--text);font-size:1.15rem}.numeric-slider input[type=range]{width:100%;accent-color:var(--accent)}.numeric-slider input[type=range]:focus-visible,.numeric-input input:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 32%,transparent);outline-offset:3px}.numeric-slider__limits{display:flex;justify-content:space-between;color:var(--muted);font-size:.76rem;font-weight:700}.numeric-input{color:var(--text);font-size:.9rem;font-weight:700}.numeric-input__row{display:flex;align-items:center;gap:.6rem}.numeric-input input{width:min(18rem,100%);border:1px solid var(--border);border-radius:8px;background:color-mix(in srgb,var(--surface) 86%,transparent);color:var(--text);font:inherit;font-weight:650;padding:.78rem .85rem}.numeric-input input[aria-invalid=true]{border-color:color-mix(in srgb,#b54747 72%,var(--border))}.numeric-input__unit{color:var(--energy);font-size:.95rem;font-weight:800}.game-session__controls,.game-report__actions{display:flex;flex-wrap:wrap;justify-content:center;gap:.7rem}.game-session__button,.game-mode-modal__cancel{position:relative;display:inline-flex;align-items:center;justify-content:center;padding:.72rem 1rem;text-decoration:none}.game-session__button--primary{border-color:color-mix(in srgb,var(--accent) 62%,var(--border));background:color-mix(in srgb,var(--accent) 13%,transparent);color:var(--accent-strong)}.game-session__button--quiet{color:var(--muted)}.game-session__button:disabled,.game-session__button.is-disabled{cursor:not-allowed;opacity:.48;transform:none}.game-session__button.is-disabled:hover,.game-session__button.is-disabled:focus-visible{border-color:var(--border);color:var(--muted);transform:none}.game-session__helper{width:min(34rem,100%);margin:-.25rem auto 0;color:color-mix(in srgb,var(--muted) 88%,var(--text));font-size:.78rem;font-weight:700;line-height:1.45;text-align:center}.game-session__helper[hidden]{display:none}.game-report{width:min(58rem,100%);display:grid;gap:1.1rem;margin:clamp(2rem,8vh,4rem) auto 0;padding:clamp(1rem,3vw,1.35rem);border:1px solid color-mix(in srgb,var(--border) 84%,transparent);border-radius:8px;background:color-mix(in srgb,var(--surface) 76%,transparent);box-shadow:var(--shadow)}.game-report__eyebrow,.game-mode-modal__eyebrow{margin:0;color:var(--energy);font-size:.74rem;font-weight:700;line-height:1.2;text-transform:uppercase}.game-report h2,.game-mode-modal h2{margin:0;color:var(--text);font-size:1.45rem;line-height:1.15}.game-report__stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,9rem),1fr));gap:.65rem;margin:0}.game-report__stats div{display:grid;align-content:center;gap:.25rem;min-height:4.35rem;padding:.8rem;border:1px solid color-mix(in srgb,var(--border) 74%,transparent);border-radius:8px;background:color-mix(in srgb,var(--surface-soft) 46%,transparent)}.game-report__stats div.is-featured{border-color:color-mix(in srgb,var(--energy) 58%,var(--border));background:color-mix(in srgb,var(--energy) 11%,var(--surface-soft))}.game-report__stats div[hidden]{display:none}.game-report__stats dt,.game-report__details-list dt{color:var(--muted);font-size:.72rem;font-weight:700;text-transform:uppercase}.game-report__stats dd,.game-report__details-list dd{margin:0;color:var(--text);font-size:.98rem;font-weight:700;line-height:1.25}.game-report__details{display:grid;gap:.65rem;padding-top:.15rem}.game-report__details[hidden]{display:none}.game-report__details h3{margin:0;color:var(--text);font-size:.96rem;line-height:1.25}.game-report__details-list{display:grid;gap:.55rem;margin:0}.game-report__details-list div{display:grid;grid-template-columns:minmax(8rem,.42fr) minmax(0,1fr);gap:.45rem .8rem;align-items:start;padding:.75rem;border:1px solid color-mix(in srgb,var(--border) 66%,transparent);border-radius:8px;background:color-mix(in srgb,var(--surface-soft) 30%,transparent)}.game-report__chips{display:flex;flex-wrap:wrap;gap:.4rem;min-width:0}.game-report__chip{max-width:100%;padding:.28rem .48rem;border:1px solid color-mix(in srgb,var(--accent) 34%,var(--border));border-radius:8px;background:color-mix(in srgb,var(--accent) 11%,transparent);color:color-mix(in srgb,var(--text) 92%,var(--accent));font-size:.78rem;line-height:1.25;overflow-wrap:anywhere}.game-mode-modal{position:fixed;inset:0;z-index:30;display:grid;place-items:center;padding:1rem;background:color-mix(in srgb,var(--bg) 58%,transparent);opacity:0;backdrop-filter:blur(10px);transition:opacity .18s ease}.game-mode-modal[hidden]{display:none}.game-mode-modal.is-open{opacity:1}.game-mode-modal__dialog{width:min(45rem,100%);max-height:min(44rem,calc(100vh - 2rem));display:grid;gap:1.2rem;overflow:auto;padding:clamp(1rem,3vw,1.45rem);border:1px solid color-mix(in srgb,var(--border) 82%,var(--accent));border-radius:8px;background:linear-gradient(145deg,color-mix(in srgb,var(--surface) 93%,var(--accent)),var(--surface));box-shadow:0 24px 80px #00000042;transform:translateY(.55rem) scale(.985);transition:transform .18s ease}.game-mode-modal.is-open .game-mode-modal__dialog{transform:translateY(0) scale(1)}.game-mode-modal__dialog:focus{outline:none}.game-mode-modal__header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.game-mode-modal__header>div{display:grid;gap:.45rem}.game-mode-modal__close{flex:0 0 auto;width:2.45rem;height:2.45rem;display:grid;place-items:center;border:1px solid var(--border);border-radius:8px;background:color-mix(in srgb,var(--surface-soft) 62%,transparent);color:var(--muted);cursor:pointer;font:inherit;font-size:1.7rem;line-height:1;transition:border-color .16s ease,color .16s ease,transform .16s ease}.game-mode-modal__close:hover,.game-mode-modal__close:focus-visible{border-color:var(--accent);color:var(--accent-strong);transform:translateY(-1px)}.game-mode-modal__close:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 32%,transparent);outline-offset:3px}.game-mode-modal__description{max-width:38rem;color:var(--muted);font-size:1rem;line-height:1.55}.game-mode-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem}.game-mode-card{min-height:13rem;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:.9rem;padding:1rem;border:1px solid var(--border);border-radius:8px;background:color-mix(in srgb,var(--surface) 86%,var(--surface-soft));color:var(--text);cursor:pointer;font:inherit;text-align:left;transition:border-color .16s ease,background-color .16s ease,transform .16s ease}.game-mode-card:hover,.game-mode-card:focus-visible{border-color:var(--accent);background:color-mix(in srgb,var(--surface) 78%,var(--accent));transform:translateY(-2px)}.game-mode-card:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 32%,transparent);outline-offset:3px}.game-mode-card__mark{width:2.45rem;height:2.45rem;display:grid;place-items:center;border:1px solid color-mix(in srgb,var(--accent) 56%,var(--border));border-radius:8px;background:color-mix(in srgb,var(--accent) 12%,transparent)}.game-mode-card__mark span{width:1.05rem;height:1.05rem;border:2px solid var(--accent);border-radius:50%;box-shadow:inset 0 0 0 .24rem color-mix(in srgb,var(--surface) 82%,transparent)}.game-mode-card--challenge .game-mode-card__mark{border-color:color-mix(in srgb,var(--energy) 64%,var(--border));background:color-mix(in srgb,var(--energy) 14%,transparent)}.game-mode-card--challenge .game-mode-card__mark span{border-color:var(--energy)}.game-mode-card__copy{min-width:0;display:grid;gap:.75rem}.game-mode-card__topline{display:flex;flex-wrap:wrap;align-items:flex-start;gap:.5rem}.game-mode-card__title{color:var(--text);font-size:1rem;font-weight:700;line-height:1.25}.game-mode-card__badge{display:inline-flex;align-items:center;min-height:1.55rem;padding:.22rem .48rem;border:1px solid color-mix(in srgb,var(--energy) 50%,var(--border));border-radius:8px;background:color-mix(in srgb,var(--energy) 13%,transparent);color:var(--energy);font-size:.72rem;font-weight:700;line-height:1.1;text-transform:uppercase}.game-mode-card__description{color:var(--muted);font-size:.9rem;line-height:1.5}.game-mode-modal__footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.8rem;padding-top:.2rem}.game-mode-modal__footer p{color:var(--muted);font-size:.9rem;line-height:1.45}@keyframes score-roll{0%{opacity:.58;transform:translateY(.42rem) rotateX(-48deg)}55%{opacity:1;transform:translateY(-.08rem) rotateX(7deg)}to{opacity:1;transform:translateY(0) rotateX(0)}}@keyframes score-roll-down{0%{opacity:.58;transform:translateY(-.42rem) rotateX(48deg)}55%{opacity:1;transform:translateY(.08rem) rotateX(-7deg)}to{opacity:1;transform:translateY(0) rotateX(0)}}@media(max-width:760px){.game-session__shell{gap:2rem}.game-session__topbar{grid-template-columns:1fr;justify-items:center}.game-session__title{grid-column:1;grid-row:1}.game-session__status{grid-row:2;justify-content:center;text-align:center}.game-problem__prompt{font-size:clamp(1.35rem,7vw,1.9rem)}.scene-choice-grid{grid-template-columns:1fr}.game-session__controls,.game-report__actions,.game-mode-modal__footer{align-items:stretch;flex-direction:column}.game-session__button,.game-mode-modal__cancel{width:100%}.game-report__details-list div{grid-template-columns:1fr}}@media(max-width:680px){.game-mode-modal{place-items:end center;padding:.75rem}.game-mode-modal__dialog{max-height:calc(100vh - 1.5rem)}.game-mode-options{grid-template-columns:1fr}.game-mode-card{min-height:10.6rem;padding:.9rem}}@media(max-width:520px){.game-session{min-height:calc(100vh - 7rem)}.game-session__shell{min-height:calc(100vh - 7rem);gap:1.45rem}.game-session__status{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.35rem .6rem;text-align:left}.game-session__status>span{align-items:flex-start;min-width:0}.game-session__status strong{min-width:0;overflow-wrap:anywhere}.game-session__status>span:not(:last-child):after{display:none}.game-session__problem-area{gap:1.35rem;padding-bottom:2rem}.game-session__feedback{width:min(100%,18rem);min-height:2.8rem;text-align:center}.game-session__problem-list{min-height:auto}.game-problem{gap:1.15rem}.game-problem__prompt{font-size:clamp(1.25rem,8vw,1.65rem);line-height:1.24}.scene-choice{min-height:7.9rem}.scene-choice__visual{min-height:3.7rem}.answer-choice,.game-session__button{min-height:3rem}.numeric-slider input[type=range]{min-height:2.8rem}.numeric-input__row{align-items:stretch;flex-direction:column}.numeric-input input{width:100%;min-height:2.8rem}}@media(max-width:380px){.game-session__status{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.game-session,.game-session__feedback,.game-session__score-value,.answer-choice,.scene-choice,.game-mode-modal,.game-mode-modal__dialog,.game-mode-card,.game-mode-modal__close,.game-session__button,.game-mode-modal__cancel{transition:none;animation:none}.answer-choice:hover,.answer-choice:focus-visible,.scene-choice:hover,.scene-choice:focus-visible,.game-mode-card:hover,.game-mode-card:focus-visible,.game-mode-modal__close:hover,.game-mode-modal__close:focus-visible,.game-session__button:hover,.game-session__button:focus-visible,.game-mode-modal__cancel:hover,.game-mode-modal__cancel:focus-visible{transform:none}}.custom-session-modal{align-items:start;overflow-y:auto;padding:max(1rem,env(safe-area-inset-top)) 1rem max(1rem,env(safe-area-inset-bottom))}.custom-session-modal__dialog{width:min(50rem,100%);max-height:calc(100dvh - 2rem)}.custom-session-form{display:grid;gap:1rem}.custom-session-fieldset{min-width:0;display:grid;gap:.7rem;margin:0;padding:0;border:0}.custom-session-fieldset legend,.custom-session-time-limit>span{margin:0 0 .55rem;color:var(--text);font-size:.86rem;font-weight:800}.custom-session-options,.custom-session-modes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.custom-session-toggle,.custom-session-mode{position:relative;min-height:2.9rem;display:flex;flex-wrap:wrap;align-items:flex-start;gap:.55rem .6rem;padding:.72rem;border:1px solid color-mix(in srgb,var(--border) 78%,transparent);border-radius:8px;background:color-mix(in srgb,var(--surface) 82%,transparent);color:var(--text);font-size:.86rem;font-weight:700;line-height:1.35}.custom-session-toggle.is-disabled{opacity:.62;cursor:not-allowed}.custom-session-toggle:not(.is-disabled),.custom-session-mode{cursor:pointer}.custom-session-toggle input,.custom-session-mode input{flex:0 0 auto;margin-top:.16rem;accent-color:var(--accent)}.custom-session-toggle input:disabled{cursor:inherit}.custom-session-tooltip{position:absolute;left:50%;top:50%;z-index:2;width:max-content;max-width:calc(100% - 1rem);padding:.42rem .62rem;border:1px solid color-mix(in srgb,#d34f4f 52%,var(--border));border-radius:8px;background:linear-gradient(145deg,color-mix(in srgb,var(--surface) 95%,#d34f4f),color-mix(in srgb,var(--surface) 88%,transparent));box-shadow:0 14px 34px #0003;color:color-mix(in srgb,var(--text) 88%,var(--muted));font-size:.72rem;font-weight:800;line-height:1.3;opacity:0;pointer-events:none;text-align:center;transform:translate(-50%,-50%) scale(.96);transition:opacity .14s ease,transform .14s ease}.custom-session-toggle.is-tooltip-visible .custom-session-tooltip{opacity:1;transform:translate(-50%,-50%) scale(1)}.custom-session-mode span{display:grid;gap:.22rem}.custom-session-mode small{color:var(--muted);font-size:.78rem;font-weight:600;line-height:1.4}.custom-session-time-limit{display:grid;gap:.45rem;color:var(--text)}.custom-session-time-limit[hidden]{display:none}.custom-session-time-limit__row{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem}.custom-session-time-limit input{min-height:2.85rem;width:min(10rem,100%);border:1px solid var(--border);border-radius:8px;background:color-mix(in srgb,var(--surface) 86%,transparent);color:var(--text);font:inherit;font-weight:700;padding:.65rem .75rem}.custom-session-time-limit input[aria-invalid=true]{border-color:color-mix(in srgb,#b54747 72%,var(--border))}.custom-session-time-limit small{color:color-mix(in srgb,#b54747 76%,var(--text));font-size:.78rem;font-weight:700;line-height:1.35}.custom-session-toggle:focus-within,.custom-session-toggle:focus,.custom-session-mode:focus-within,.custom-session-time-limit input:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 32%,transparent);outline-offset:3px}.custom-session-note{color:var(--muted);font-size:.84rem;line-height:1.55}.custom-session-actions{display:flex;flex-wrap:wrap;gap:.7rem}@media(max-width:680px){.custom-session-modal{place-items:start center;padding:max(.85rem,env(safe-area-inset-top)) .75rem max(.85rem,env(safe-area-inset-bottom))}.custom-session-modal__dialog{max-height:calc(100dvh - 1.7rem)}.custom-session-options,.custom-session-modes{grid-template-columns:1fr}.custom-session-time-limit input,.custom-session-actions,.custom-session-actions>button{width:100%}}.play-page[data-astro-cid-pnebxxf4]{width:min(1760px,calc(100vw - clamp(2rem,5vw,6rem)))}.play-header[data-astro-cid-pnebxxf4]{max-width:920px}.eyebrow[data-astro-cid-pnebxxf4]{margin:.75rem 0 1rem;color:var(--accent);text-transform:uppercase;letter-spacing:.12em;font-size:.8rem;font-weight:700}.topic-grid[data-astro-cid-pnebxxf4]{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr));gap:1rem;margin-top:2.5rem}.topic-card[data-astro-cid-pnebxxf4]{position:relative;min-height:17rem;display:grid;grid-template-rows:auto 1fr;gap:1.2rem;padding:1.1rem;overflow:hidden;border:1px solid var(--border);border-radius:8px;background:linear-gradient(145deg,color-mix(in srgb,var(--surface) 92%,var(--accent)),var(--surface));color:var(--text);box-shadow:var(--shadow);cursor:pointer;text-decoration:none;text-align:left;font:inherit;transition:border-color .16s ease,transform .16s ease,background-color .16s ease}.topic-card[data-astro-cid-pnebxxf4]:hover,.topic-card[data-astro-cid-pnebxxf4]:focus-visible{border-color:var(--accent);transform:translateY(-2px)}.topic-card[data-astro-cid-pnebxxf4]:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 32%,transparent);outline-offset:3px}.topic-card__content[data-astro-cid-pnebxxf4]{display:grid;gap:.6rem}.topic-card__meta[data-astro-cid-pnebxxf4]{color:var(--energy);font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em}.topic-card__title[data-astro-cid-pnebxxf4]{color:var(--text);font-size:1.2rem;font-weight:700;line-height:1.2}.topic-card__description[data-astro-cid-pnebxxf4]{color:var(--muted);font-size:.95rem;line-height:1.5}.topic-card__visual[data-astro-cid-pnebxxf4]{align-self:end;justify-self:end;width:min(8.25rem,70%);height:6.25rem;color:color-mix(in srgb,var(--accent) 72%,var(--muted));opacity:.62;pointer-events:none}.topic-card__visual--wide[data-astro-cid-pnebxxf4]{width:min(10.5rem,86%)}.topic-card__visual--venturi[data-astro-cid-pnebxxf4]{width:min(11.5rem,92%);height:6.8rem}.topic-card__visual--electrostatic[data-astro-cid-pnebxxf4]{width:min(12rem,94%);height:6.8rem}.topic-card__visual--double-pendulum[data-astro-cid-pnebxxf4]{width:min(13.25rem,96%);height:8.15rem}.topic-card__visual--em-wave[data-astro-cid-pnebxxf4]{width:min(14rem,98%);height:7.85rem}.topic-card__visual--orbit[data-astro-cid-pnebxxf4]{width:min(12.6rem,94%);height:7.1rem}.topic-card__visual[data-astro-cid-pnebxxf4] svg[data-astro-cid-pnebxxf4]{width:100%;height:100%;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:4.5}.topic-card__visual[data-astro-cid-pnebxxf4] circle[data-astro-cid-pnebxxf4]{fill:color-mix(in srgb,var(--accent) 14%,transparent)}.thermo-chamber[data-astro-cid-pnebxxf4],.thermo-piston-head[data-astro-cid-pnebxxf4],.thermo-piston-rod[data-astro-cid-pnebxxf4]{stroke-width:4.2}.thermo-piston-head[data-astro-cid-pnebxxf4] rect[data-astro-cid-pnebxxf4],.thermo-piston-rod[data-astro-cid-pnebxxf4] rect[data-astro-cid-pnebxxf4]{fill:color-mix(in srgb,var(--accent) 12%,var(--surface));stroke:color-mix(in srgb,var(--accent) 70%,var(--muted))}.thermo-gas-fill[data-astro-cid-pnebxxf4]{fill:color-mix(in srgb,var(--accent) 14%,transparent);opacity:.16;stroke:none}.thermo-piston-hatch[data-astro-cid-pnebxxf4]{stroke-width:3.2;opacity:.54;stroke:color-mix(in srgb,var(--accent) 74%,var(--muted))}[data-astro-cid-pnebxxf4][data-molecule]{fill:var(--text);stroke:color-mix(in srgb,var(--surface) 45%,transparent);stroke-width:.8;opacity:1}.venturi-tube-fill[data-astro-cid-pnebxxf4]{fill:color-mix(in srgb,var(--accent) 13%,transparent);stroke:none}.venturi-tube-wall[data-astro-cid-pnebxxf4]{stroke-width:4.2}.venturi-flow-line[data-astro-cid-pnebxxf4]{opacity:.52;stroke-width:2.2}.venturi-arrow[data-astro-cid-pnebxxf4]{fill:var(--energy);opacity:.72;stroke:var(--energy);stroke-width:1.4;will-change:transform}.venturi-pressure-pipe[data-astro-cid-pnebxxf4]{opacity:.7;stroke-width:3}.venturi-pressure-glass[data-astro-cid-pnebxxf4]{fill:color-mix(in srgb,var(--surface) 55%,transparent);opacity:.86;stroke-width:3}.venturi-pressure-liquid[data-astro-cid-pnebxxf4]{fill:color-mix(in srgb,var(--energy) 88%,var(--accent));opacity:.84;stroke:none}.topic-card[data-astro-cid-pnebxxf4].is-venturi-active .venturi-flow-line[data-astro-cid-pnebxxf4]{opacity:.82}.topic-card[data-astro-cid-pnebxxf4].is-venturi-active .venturi-arrow[data-astro-cid-pnebxxf4],.topic-card[data-astro-cid-pnebxxf4].is-venturi-active .venturi-pressure-liquid[data-astro-cid-pnebxxf4]{opacity:1}.electrostatic-line[data-astro-cid-pnebxxf4]{opacity:.48;stroke-width:1.65}.electrostatic-arrow[data-astro-cid-pnebxxf4]{fill:var(--energy);opacity:.72;stroke:var(--energy);stroke-width:1.4;will-change:transform}.electrostatic-charge[data-astro-cid-pnebxxf4]{will-change:transform}[data-astro-cid-pnebxxf4][data-electrostatic-negative]{opacity:0}.electrostatic-charge[data-astro-cid-pnebxxf4] circle[data-astro-cid-pnebxxf4]{stroke-width:2.6}.electrostatic-charge--positive[data-astro-cid-pnebxxf4] circle[data-astro-cid-pnebxxf4]{fill:color-mix(in srgb,var(--energy) 22%,transparent);stroke:var(--energy)}.electrostatic-charge--negative[data-astro-cid-pnebxxf4] circle[data-astro-cid-pnebxxf4]{fill:color-mix(in srgb,var(--accent) 18%,transparent);stroke:color-mix(in srgb,var(--accent) 72%,var(--muted))}.electrostatic-charge-symbol[data-astro-cid-pnebxxf4]{stroke:var(--text);stroke-width:2.55}.double-pendulum-rail[data-astro-cid-pnebxxf4]{opacity:.72;stroke-width:4.2}.double-pendulum-pivot[data-astro-cid-pnebxxf4]{fill:var(--energy);stroke:none}.double-pendulum-rod[data-astro-cid-pnebxxf4]{stroke-width:3.45}.double-pendulum-bob[data-astro-cid-pnebxxf4]{stroke-width:2.85;will-change:cx,cy}.double-pendulum-bob--first[data-astro-cid-pnebxxf4]{fill:color-mix(in srgb,var(--accent) 16%,transparent);stroke:color-mix(in srgb,var(--accent) 75%,var(--muted))}.double-pendulum-bob--second[data-astro-cid-pnebxxf4]{fill:color-mix(in srgb,var(--energy) 20%,transparent);stroke:var(--energy)}.em-wave-axis[data-astro-cid-pnebxxf4]{opacity:.58;stroke:color-mix(in srgb,var(--muted) 66%,var(--accent));stroke-width:2.3}.em-wave-axis-arrow[data-astro-cid-pnebxxf4]{opacity:.62;stroke:color-mix(in srgb,var(--muted) 66%,var(--accent));stroke-width:2.1}.em-wave-curve[data-astro-cid-pnebxxf4]{opacity:.76;stroke-width:2.45}.em-wave-curve--electric[data-astro-cid-pnebxxf4]{stroke:var(--energy)}.em-wave-curve--magnetic[data-astro-cid-pnebxxf4]{opacity:.68;stroke:var(--accent)}.orbit-path[data-astro-cid-pnebxxf4]{opacity:.58;stroke:color-mix(in srgb,var(--accent) 72%,var(--muted));stroke-dasharray:4.5 7;stroke-width:2.2}.orbit-planet[data-astro-cid-pnebxxf4] circle[data-astro-cid-pnebxxf4]{fill:color-mix(in srgb,var(--accent) 20%,var(--surface));stroke:color-mix(in srgb,var(--accent) 82%,var(--muted));stroke-width:3.1}.orbit-planet-glow[data-astro-cid-pnebxxf4]{opacity:.48;stroke:color-mix(in srgb,var(--energy) 52%,var(--accent));stroke-width:2.1}.orbit-planet-shade[data-astro-cid-pnebxxf4]{opacity:.42;stroke:color-mix(in srgb,var(--accent) 76%,var(--text));stroke-width:1.9}.orbit-planet-contour[data-astro-cid-pnebxxf4]{opacity:.34;stroke:color-mix(in srgb,var(--text) 46%,var(--accent));stroke-width:1.7}.orbit-satellite[data-astro-cid-pnebxxf4]{will-change:transform}.orbit-satellite-body[data-astro-cid-pnebxxf4]{fill:color-mix(in srgb,var(--energy) 18%,var(--surface));stroke:var(--energy);stroke-width:1.6}.orbit-satellite-panel[data-astro-cid-pnebxxf4]{fill:color-mix(in srgb,var(--accent) 22%,transparent);stroke:color-mix(in srgb,var(--accent) 84%,var(--muted));stroke-width:1.45}.orbit-satellite-antenna[data-astro-cid-pnebxxf4]{opacity:.72;stroke:var(--energy);stroke-width:1.35}.pendulum-stand[data-astro-cid-pnebxxf4]{stroke-width:5.5}.pendulum-arc[data-astro-cid-pnebxxf4]{opacity:.34;stroke-dasharray:4 8;stroke-width:2.4}.pendulum-swing[data-astro-cid-pnebxxf4]{will-change:transform}.pendulum-cord[data-astro-cid-pnebxxf4]{stroke-width:4.2}.pendulum-pivot[data-astro-cid-pnebxxf4]{fill:color-mix(in srgb,var(--accent) 76%,var(--surface));stroke:color-mix(in srgb,var(--surface) 42%,transparent);stroke-width:1.4}.pendulum-bob[data-astro-cid-pnebxxf4]{fill:color-mix(in srgb,var(--accent) 13%,var(--surface));stroke:color-mix(in srgb,var(--accent) 76%,var(--muted));stroke-width:4.2}.pendulum-bob-highlight[data-astro-cid-pnebxxf4]{fill:color-mix(in srgb,var(--accent) 62%,var(--surface));opacity:.68;stroke:none}.topic-card[data-astro-cid-pnebxxf4]:hover .topic-card__visual[data-astro-cid-pnebxxf4],.topic-card[data-astro-cid-pnebxxf4]:focus-visible .topic-card__visual[data-astro-cid-pnebxxf4],.topic-card[data-astro-cid-pnebxxf4].is-pendulum-active .topic-card__visual[data-astro-cid-pnebxxf4],.topic-card[data-astro-cid-pnebxxf4].is-thermo-active .topic-card__visual[data-astro-cid-pnebxxf4],.topic-card[data-astro-cid-pnebxxf4].is-venturi-active .topic-card__visual[data-astro-cid-pnebxxf4],.topic-card[data-astro-cid-pnebxxf4].is-electrostatic-active .topic-card__visual[data-astro-cid-pnebxxf4],.topic-card[data-astro-cid-pnebxxf4].is-double-pendulum-active .topic-card__visual[data-astro-cid-pnebxxf4],.topic-card[data-astro-cid-pnebxxf4].is-em-wave-active .topic-card__visual[data-astro-cid-pnebxxf4],.topic-card[data-astro-cid-pnebxxf4].is-orbit-active .topic-card__visual[data-astro-cid-pnebxxf4]{opacity:.72}@media(prefers-reduced-motion:reduce){.pendulum-swing[data-astro-cid-pnebxxf4],.venturi-arrow[data-astro-cid-pnebxxf4],.electrostatic-arrow[data-astro-cid-pnebxxf4],.electrostatic-charge[data-astro-cid-pnebxxf4],.double-pendulum-bob[data-astro-cid-pnebxxf4],.em-wave-curve[data-astro-cid-pnebxxf4],.orbit-satellite[data-astro-cid-pnebxxf4]{will-change:auto}}
