.app-shell{background:linear-gradient(var(--color-paper-2), var(--color-paper-2)) top / 100% .35rem no-repeat, var(--color-paper);min-height:100dvh}.nav-slab{z-index:var(--z-sticky);border-block-end:var(--rule-strong);background:var(--color-paper);align-items:stretch;min-height:4rem;display:flex;position:sticky;inset-block-start:0}.slab-mark{align-items:center;gap:var(--space-sm);min-width:0;padding-inline:var(--space-md);border:0;border-inline-end:var(--rule-strong);font-family:var(--font-display);font-size:var(--text-base);letter-spacing:.035em;cursor:pointer;background:0 0;font-weight:800;display:flex}.slab-mark__glyph{border-radius:var(--radius-sm);background:var(--color-amber);width:2rem;height:2rem;color:var(--color-accent-ink);box-shadow:var(--shadow-contact);flex:0 0 2rem;place-items:center;display:grid}.slab-mark>span:last-child{display:none}.slab-nav{flex:1;align-items:stretch;gap:10px;min-width:0;margin-left:15px;display:none}.slab-nav button{min-height:3rem;margin-block:var(--space-2xs);padding-inline:var(--space-sm);border:0;border-radius:var(--radius-sm);font-size:var(--text-sm);letter-spacing:.03em;cursor:pointer;transition:background-color var(--dur-short) var(--ease-out);background:0 0;border-inline-end:none;font-weight:700}.nav-actions{align-items:center;gap:var(--space-xs);padding-inline:var(--space-sm);margin-inline-start:auto;display:flex}.nav-create,.profile-button,.auth-button{display:none}.profile-button{align-items:center;gap:var(--space-xs);max-width:14rem;min-height:2.75rem;padding:var(--space-2xs) var(--space-xs);color:var(--color-ink);cursor:pointer;background:0 0;border:0;text-decoration:none}.profile-button__avatar{border-radius:var(--radius-pill);background:var(--color-coral-soft);flex:0 0 2rem;place-items:center;width:2rem;height:2rem;font-weight:800;display:grid}.profile-button__name{text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-sm);font-weight:750;overflow:hidden}.profile-button svg{flex:0 0 1rem;width:1rem}.auth-button{align-items:center;gap:var(--space-xs);min-height:2.75rem;padding-inline:var(--space-sm);border:var(--rule-hairline);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-ink);font-size:var(--text-sm);white-space:nowrap;font-weight:750;text-decoration:none}.auth-button svg{width:1rem}.mobile-menu-button,.icon-button{border:var(--rule-hairline);border-radius:var(--radius-sm);background:var(--color-surface);cursor:pointer;width:2.75rem;height:2.75rem;transition:background-color var(--dur-short) var(--ease-out), transform var(--dur-micro) var(--ease-out);flex:none;place-items:center;display:grid}.mobile-menu-button svg,.icon-button svg{width:1.2rem;height:1.2rem}.mobile-navigation{z-index:var(--z-dropdown);padding:var(--space-xs);border-block-end:var(--rule-strong);background:var(--color-paper);box-shadow:var(--shadow-raised);display:grid;position:absolute;inset:4rem 0 auto}.mobile-navigation button,.mobile-navigation a{min-height:3rem;padding-inline:var(--space-md);border:0;border-block-end:var(--rule-hairline);border-radius:var(--radius-sm);color:var(--color-ink);text-align:start;background:0 0;align-items:center;font-weight:700;text-decoration:none;display:flex}.mobile-navigation form{display:contents}.auth-page{background:var(--color-paper);grid-template-rows:auto minmax(0,1fr);min-height:100dvh;display:grid}.auth-brand{align-items:center;gap:var(--space-sm);width:fit-content;min-height:4rem;padding-inline:var(--space-lg);border-inline-end:var(--rule-strong);border-block-end:var(--rule-strong);font-family:var(--font-display);letter-spacing:.035em;display:inline-flex}.auth-brand>span{border-radius:var(--radius-sm);background:var(--color-amber);width:2rem;height:2rem;box-shadow:var(--shadow-contact);place-items:center;display:grid}.auth-panel{width:min(100% - 2rem,62rem);margin-block:var(--space-xl);border:var(--rule-strong);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-board);grid-template-columns:minmax(0,1fr);place-self:center;display:grid;overflow:hidden}.auth-panel>*{min-width:0}.auth-panel__intro{align-content:center;gap:var(--space-md);padding:var(--space-lg) var(--space-md);background:var(--color-amber-soft);display:grid}.auth-panel__intro>svg{width:2.5rem;height:2.5rem;color:var(--color-indigo-deep)}.auth-panel__intro h1{max-width:16ch;font-size:clamp(var(--text-xl), 5vw, var(--text-3xl))}.auth-panel__intro>p{max-width:52ch;color:var(--color-ink-soft)}.auth-panel__intro ul{gap:var(--space-xs);margin:var(--space-sm) 0 0;color:var(--color-ink-soft);font-size:var(--text-sm);padding:0;list-style:none;display:grid}.auth-panel__intro li{align-items:center;gap:var(--space-xs);display:flex}.auth-panel__intro li svg{width:1rem;color:var(--color-success);flex:0 0 1rem}.teacher-auth{align-content:center;gap:var(--space-lg);min-width:0;padding:var(--space-lg) var(--space-md);display:grid}.teacher-auth__error{min-height:1.55em;font-size:var(--text-xs);color:var(--color-error);font-weight:700}.teacher-auth--oauth{align-content:center}.teacher-auth__oauth-intro{gap:var(--space-2xs);display:grid}.teacher-auth__oauth-intro strong{font-family:var(--font-display);font-size:var(--text-lg);line-height:1.12}.teacher-auth__oauth-intro span{color:var(--color-muted);font-size:var(--text-sm)}.teacher-auth__oauth-error{padding:var(--space-xs) var(--space-sm);border:1px solid var(--color-error);border-radius:var(--radius-sm);background:var(--color-error-soft);margin:0}.google-oauth-button{justify-content:center;align-items:center;gap:var(--space-xs);min-height:3.5rem;padding-inline:var(--space-md);border:2px solid var(--color-rule-strong);outline-offset:2px;border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-ink);font-size:var(--text-base);text-align:center;white-space:nowrap;transition:background-color var(--dur-short) var(--ease-out), transform var(--dur-micro) var(--ease-out);border-block-end-width:4px;outline:2px solid #0000;font-weight:800;line-height:1;text-decoration:none;display:inline-flex}.google-oauth-button__label--wide{display:none}.google-oauth-button:hover{background:var(--color-indigo-soft)}.google-oauth-button:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}.google-oauth-button:active{transform:translateY(1px)}.google-oauth-button__mark{aspect-ratio:1;border:1px solid var(--color-rule);border-radius:var(--radius-pill);background:var(--color-paper);width:1.8rem;color:var(--color-indigo-deep);font-family:var(--font-display);flex:none;place-items:center;font-weight:900;display:grid}.button{justify-content:center;align-items:center;gap:var(--space-xs);min-height:2.75rem;padding-inline:var(--space-md);border:var(--rule-hairline);border-radius:var(--radius-sm);font-size:var(--text-sm);cursor:pointer;transition:background-color var(--dur-short) var(--ease-out), color var(--dur-short) var(--ease-out), transform var(--dur-micro) var(--ease-out);font-weight:750;display:inline-flex}.button svg{width:1.05rem;height:1.05rem}.button--primary{border-color:var(--color-indigo-deep);background:var(--color-amber);color:var(--color-accent-ink);box-shadow:0 3px 0 var(--color-indigo-deep)}.button--quiet{background:var(--color-surface);color:var(--color-ink)}.button--outline{border-color:var(--color-indigo-deep);color:var(--color-indigo-deep);background:0 0}.button--ink{border-color:var(--color-ink);background:var(--color-ink);color:var(--color-inverse)}.button--danger{border-color:var(--color-error);background:var(--color-error-soft);color:var(--color-error);margin-inline-end:auto}.button--full{width:100%}.text-button{align-items:center;gap:var(--space-xs);min-height:2.75rem;margin-inline:calc(var(--space-2xs) * -1);padding:var(--space-2xs) var(--space-sm);border-radius:var(--radius-sm);color:var(--color-indigo-deep);cursor:pointer;transition:background-color var(--dur-short) var(--ease-out), transform var(--dur-micro) var(--ease-out);background:0 0;border:0;font-weight:750;display:inline-flex}.text-button svg{width:1rem}.dashboard-shell{gap:var(--space-lg);width:min(100%,96rem);padding:var(--space-lg) var(--space-md) var(--space-3xl);grid-template-areas:"intro""board""games""session";margin-inline:auto;display:grid}.workspace-intro{gap:var(--space-lg);padding-block:var(--space-sm) var(--space-md);grid-area:intro;align-items:end;display:grid}.workspace-intro h1,.library-hero h1{margin-block:var(--space-xs);font-size:clamp(2rem,5vw,3.4rem);font-weight:760}.workspace-intro p,.library-hero p{max-width:62ch;color:var(--color-ink-soft)}.workspace-date{font-family:var(--font-label);font-size:var(--text-sm);letter-spacing:.02em;font-weight:650}.workspace-intro__actions{gap:var(--space-sm);flex-wrap:wrap;display:flex}.game-library-panel{gap:var(--space-md);min-width:0;padding:var(--space-md);border:var(--rule-hairline);border-radius:var(--radius-card);background:var(--color-surface);flex-direction:column;grid-area:games;display:flex}.panel-heading,.board-workbench__header,.workbench-actions,.library-results__head,.question-editor__head,.editor-board__head{justify-content:space-between;align-items:flex-start;gap:var(--space-md);flex-wrap:wrap;display:flex}.board-workbench__header>div:first-child,.question-editor__head>div:first-child,.editor-board__head>div:first-child{min-width:0}.board-workbench__header h2,.question-editor__head h2,.editor-board__head h2{overflow-wrap:anywhere}.question-editor__head>span,.editor-board__head>span{flex:none}.board-workbench__header>div:first-child>p,.question-editor__head>div:first-child>p{overflow-wrap:anywhere}.panel-heading>div{align-items:center;gap:var(--space-xs);display:flex}.panel-heading h2,.board-workbench h2,.question-editor h2,.editor-board h2,.library-results h2{font-size:var(--text-lg);font-weight:760}.panel-heading span,.library-results__head span,.editor-board__head span{color:var(--color-muted);font-size:var(--text-sm)}.game-list{gap:var(--space-xs);display:grid}.game-list-item{border-radius:var(--radius-md);min-width:0;transition:border-color var(--dur-short) var(--ease-out);border:1px solid #0000;grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.game-list-item__select{align-items:center;gap:var(--space-xs);min-width:0;min-height:4.25rem;padding:var(--space-xs);border-radius:var(--radius-md);text-align:start;cursor:pointer;font:inherit;color:inherit;transition:background-color var(--dur-short) var(--ease-out), transform var(--dur-micro) var(--ease-out);background:0 0;border:none;grid-template-columns:2.75rem minmax(0,1fr) auto;display:grid}.game-list-item__delete{width:2.25rem;height:2.25rem;border-radius:var(--radius-sm);color:var(--color-muted);cursor:pointer;transition:background-color var(--dur-short) var(--ease-out), color var(--dur-short) var(--ease-out);background:0 0;border:none;place-items:center;margin-inline-end:var(--space-2xs);display:grid}.game-list-item__delete svg{width:.95rem;height:.95rem}.game-list-item.is-selected{border-color:var(--color-indigo);background:var(--color-indigo-soft)}.game-list-item.is-selected .game-list-item__select{background:0 0}.game-list-item__map{border-radius:var(--radius-sm);place-items:center;width:2.75rem;height:2.75rem;display:grid}.game-list-item__map svg{width:1.2rem}.map-swatch--campus{background:var(--color-amber-soft);color:var(--color-indigo-deep)}.map-swatch--space_lab{background:var(--color-indigo-soft);color:var(--color-indigo-deep)}.map-swatch--eco_expedition{background:var(--color-teal-soft);color:var(--color-success)}.game-list-item__copy{gap:var(--space-3xs);min-width:0;display:grid}.game-list-item__copy strong{-webkit-line-clamp:2;white-space:normal;font-size:var(--text-sm);overflow-wrap:anywhere;-webkit-box-orient:vertical;line-height:1.35;display:-webkit-box;overflow:hidden}.game-list-item__copy span{color:var(--color-muted);font-size:var(--text-xs);overflow-wrap:anywhere}.game-list-item__meta{justify-items:center;gap:var(--space-xs);display:grid}.game-list-item__meta svg{width:.85rem;height:.85rem;color:var(--color-muted)}.status-dot,.online-dot{border-radius:var(--radius-pill);background:var(--color-muted);width:.55rem;height:.55rem;display:inline-block}.status-dot--draft{background:var(--color-indigo)}.status-dot--published,.online-dot{background:var(--color-success)}.status-dot--pending_review{background:var(--color-amber);box-shadow:0 0 0 1px var(--color-rule-strong)}.board-workbench{min-width:0;padding:var(--space-md);border:var(--rule-hairline);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-raised);grid-area:board}.play-stage{isolation:isolate;min-width:0;position:relative}.play-stage__overlay{z-index:var(--z-modal);padding:clamp(var(--space-sm), 3vw, var(--space-xl));border-radius:var(--radius-card);background:var(--color-overlay);animation:dice-overlay-in var(--dur-short) var(--ease-out) both;place-items:center;display:grid;position:absolute;inset:0;overflow-y:auto}.play-stage__overlay:empty{display:none}.play-stage__overlay.is-dismissed{pointer-events:none}.play-stage__overlay>.room-prompt,.play-stage__overlay>.preview-action{width:min(100%,44rem);max-height:calc(100% - var(--space-md));box-shadow:var(--shadow-raised);margin:0;overflow-y:auto}.board-workbench__header{margin-block-end:var(--space-md)}.board-workbench__header>div:first-child{min-width:0}.board-workbench__header .workbench-actions__buttons{align-items:flex-start}.board-workbench__header .workbench-actions__buttons .button{flex:none}.board-workbench__header h2{margin-block:var(--space-xs);font-size:clamp(1.45rem,3vw,2.15rem)}.board-workbench__header p{max-width:65ch;color:var(--color-ink-soft);font-size:var(--text-sm)}.status-line{align-items:center;gap:var(--space-xs);color:var(--color-muted);font-size:var(--text-xs);flex-wrap:wrap;display:flex}.status-badge{min-height:1.7rem;padding-inline:var(--space-xs);border-radius:var(--radius-pill);align-items:center;font-weight:750;display:inline-flex}.status-badge--draft{background:var(--color-indigo-soft);color:var(--color-indigo-deep)}.status-badge--published{background:var(--color-success-soft);color:var(--color-success)}.status-badge--pending_review{background:var(--color-amber-soft);color:var(--color-ink-soft)}.board-controls{justify-content:space-between;gap:var(--space-sm);flex-wrap:wrap;margin-block-end:var(--space-md);display:flex}.segmented-control{width:100%;padding:var(--space-2xs);border:var(--rule-hairline);border-radius:var(--radius-md);background:var(--color-paper-2);grid-template-columns:repeat(2,minmax(0,1fr));display:inline-grid}.segmented-control button,.filter-chips button{min-height:2.25rem;padding-inline:var(--space-sm);border-radius:var(--radius-sm);font-size:var(--text-xs);cursor:pointer;background:0 0;border:0;font-weight:750}.segmented-control button{white-space:nowrap}.select-label{align-items:center;gap:var(--space-xs);min-height:2.75rem;padding-inline:var(--space-sm);border:var(--rule-hairline);border-radius:var(--radius-sm);background:var(--color-surface);display:flex}.select-label svg{width:1rem}.select-label select{width:auto;min-height:2rem;font-size:var(--text-sm);background-color:#0000;border:0;padding-inline-end:1.5rem;font-weight:650}.board-display-options{gap:var(--space-xs);flex-wrap:wrap;width:100%;display:flex}.board-view-toggle{min-height:2.75rem;padding:var(--space-3xs);border:2px solid var(--color-rule-strong);border-radius:var(--radius-sm);background:var(--color-paper-2);box-shadow:var(--shadow-contact);flex:13rem;grid-template-columns:repeat(2,minmax(0,1fr));display:inline-grid}.board-view-toggle button{justify-content:center;align-items:center;gap:var(--space-2xs);min-width:0;min-height:2.5rem;padding-inline:var(--space-xs);border-radius:var(--radius-xs);color:var(--color-ink-soft);font-family:var(--font-display);font-size:var(--text-xs);white-space:nowrap;cursor:pointer;transition:background-color var(--dur-short) var(--ease-out), color var(--dur-short) var(--ease-out), transform var(--dur-micro) var(--ease-out);background:0 0;border:0;font-weight:800;display:inline-flex}.board-view-toggle button svg{flex:none;width:1rem;height:1rem}.board-view-toggle button[aria-pressed=true]{background:var(--color-indigo-deep);color:var(--color-inverse)}.board-view-toggle button:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}.board-view-toggle button:active{transform:translateY(1px)}.board-view-toggle button:disabled{cursor:not-allowed;opacity:.55}.board-display-options .select-label,.board-display-options .filter-dropdown{flex:10rem;justify-content:center}.board-display-options .filter-dropdown{max-width:none}.board-display-options .filter-dropdown__trigger{justify-content:center}.game-board-frame{gap:var(--space-sm);min-width:0;display:grid}.game-board-frame--compact{gap:0}.game-board-visual{min-width:0;position:relative}.game-board-scroll{min-width:0;scrollbar-color:var(--color-indigo) var(--color-paper-2);scrollbar-width:thin;padding-block-end:var(--space-xs);overflow-x:auto}.game-board-scroll:focus-visible{outline:3px solid var(--color-focus);outline-offset:var(--space-2xs)}.game-board{isolation:isolate;aspect-ratio:1;gap:var(--space-board-gap);width:100%;padding:var(--space-board-pad);border:1px solid var(--color-rule-strong);border-radius:var(--radius-card);background:var(--color-paper-2);box-shadow:var(--shadow-board);display:grid;position:relative}.game-board--view-2d{transition:transform var(--dur-long) var(--ease-in-out)}.game-board:before{content:"";inset:var(--space-sm);z-index:-1;border-radius:var(--radius-md);opacity:.55;background-size:1.2rem 1.2rem;position:absolute}.game-board--campus:before{background-image:radial-gradient(circle, var(--color-amber) .08rem, transparent .1rem)}.game-board--space_lab:before{background-image:radial-gradient(circle, var(--color-indigo) .07rem, transparent .1rem)}.game-board--eco_expedition:before{background-image:radial-gradient(circle, var(--color-teal) .07rem, transparent .1rem)}.board-tile{align-content:center;place-items:center;gap:var(--space-3xs);border:1px solid var(--color-rule-strong);border-radius:var(--radius-sm);background:var(--color-surface);min-width:0;min-height:0;color:var(--color-ink);transition:transform var(--dur-step) var(--ease-out), opacity var(--dur-micro) var(--ease-out);border-block-end-width:3px;display:grid;position:relative;overflow:visible}.board-tile.is-current-step{z-index:var(--z-raised);transform:translateY(calc(var(--space-2xs) * -1))}.board-tile.is-landed{z-index:var(--z-raised);outline:3px solid var(--color-focus);outline-offset:2px;animation:tile-arrival var(--dur-long) var(--ease-out) both}.board-tile--finish:before{content:"GOAL";font-family:var(--font-label);letter-spacing:.08em;color:var(--color-indigo-deep);font-size:clamp(.38rem,.7vw,.58rem);font-weight:800;position:absolute;inset-block-end:var(--space-3xs);inset-inline-start:var(--space-2xs)}.board-tile--start{background:var(--color-indigo-soft);border-style:solid}.board-tile--quiz:after{content:"";border:1px dashed var(--color-indigo);border-radius:var(--radius-xs);pointer-events:none;position:absolute;inset:.18rem}.board-tile--event:after{content:"";inset-inline:var(--space-xs);background:var(--color-coral);height:.12rem;position:absolute;inset-block-end:var(--space-xs)}.board-tile__number{font-family:var(--font-label);color:var(--color-muted);font-size:clamp(.42rem,.85vw,.64rem);font-weight:700;position:absolute;inset-block-start:.1rem;inset-inline-start:.22rem}.board-tile__icon{width:clamp(.72rem,2.1vw,1.25rem);height:clamp(.72rem,2.1vw,1.25rem)}.board-tile__label{white-space:nowrap;font-size:clamp(.5rem,.9vw,.72rem);font-weight:750;display:none}.token-stack{z-index:var(--z-raised);filter:drop-shadow(0 .08rem 0 var(--color-shadow));align-items:center;display:flex;position:absolute;inset-block-end:-.25rem;inset-inline-end:-.2rem}.token,.token-overflow{border:1px solid var(--color-ink);border-radius:var(--radius-pill);background:var(--color-amber);width:clamp(.78rem,2.1vw,1.35rem);height:clamp(.78rem,2.1vw,1.35rem);color:var(--color-accent-ink);font-family:var(--font-label);place-items:center;margin-inline-start:-.22rem;font-size:clamp(.42rem,.85vw,.66rem);font-weight:800;display:grid}.token--bulb{background:var(--color-coral)}.token--compass{background:var(--color-indigo-soft)}.token--leaf{background:var(--color-teal)}.token--rocket{background:var(--color-paper-3)}.token--active{outline:2px solid var(--color-focus);outline-offset:1px;width:clamp(1rem,2.6vw,1.6rem);height:clamp(1rem,2.6vw,1.6rem)}.token.is-moving{width:clamp(1.4rem,3.4vw,2rem);height:clamp(1.4rem,3.4vw,2rem);box-shadow:0 0 0 .25rem var(--color-surface), var(--shadow-raised);margin:0}.moving-token{z-index:var(--z-sticky);opacity:0;pointer-events:none;will-change:left, top, transform;display:block;position:absolute;transform:translate(-50%,-68%)}.moving-token.is-ready{opacity:1}.token-overflow{background:var(--color-ink);color:var(--color-inverse)}.board-stage{z-index:var(--z-base);align-content:center;place-items:center;gap:var(--space-sm);border-radius:var(--radius-md);background:var(--color-amber-soft);text-align:center;grid-area:2/2/7/7;min-width:0;display:grid;position:relative;overflow:hidden}.game-board--space_lab .board-stage{background:var(--color-indigo-soft)}.game-board--eco_expedition .board-stage{background:var(--color-teal-soft)}.board-stage:before,.board-stage:after{content:"";border:1px dashed var(--color-rule-strong);border-radius:var(--radius-pill);opacity:.5;width:38%;height:38%;position:absolute}.board-stage:before{inset:-12% auto auto -8%}.board-stage:after{inset:auto -10% -18% auto}.board-stage__copy{z-index:var(--z-raised);gap:var(--space-3xs);display:grid}.board-stage__copy strong{font-family:var(--font-display);font-size:clamp(.75rem,2.5vw,1.55rem);line-height:1.1}.board-stage__copy>span:last-child{color:var(--color-ink-soft);font-size:var(--text-xs);display:none}.dice-button{z-index:var(--z-raised);align-items:center;gap:var(--space-xs);min-height:3.75rem;padding:var(--space-xs) var(--space-md);border:1px solid var(--color-ink);border-radius:var(--radius-sm);background:var(--color-ink);color:var(--color-inverse);font-size:var(--text-xs);cursor:pointer;white-space:nowrap;transition:background-color var(--dur-short) var(--ease-out), color var(--dur-short) var(--ease-out), transform var(--dur-micro) var(--ease-out), opacity var(--dur-micro) var(--ease-out);font-weight:750;display:flex;position:relative}.board-roll-control{inset:auto auto var(--space-md) 50%;z-index:var(--z-raised);position:absolute;transform:translate(-50%)}.game-board--loop_24 .board-roll-control{grid-area:2/2/7/7;place-self:end center;margin-block-end:var(--space-lg);position:relative;inset:auto;transform:none}.board-roll-control .dice-button{min-height:3.25rem;padding-inline:var(--space-lg);box-shadow:0 0 0 var(--space-2xs) var(--color-surface), var(--shadow-raised)}.board-roll-control .dice-button>svg{width:1.35rem;height:1.35rem}.dice-button:active:not(:disabled){transform:translateY(1px)}.dice-button:disabled{cursor:not-allowed;opacity:.55}.dice-button[data-state=error]{border-color:var(--color-error);background:var(--color-error);color:var(--color-inverse)}.dice-roll-overlay{z-index:var(--z-dropdown);align-content:center;place-items:center;gap:var(--space-md);border-radius:inherit;background:var(--color-overlay);color:var(--color-inverse);pointer-events:none;animation:dice-overlay-in var(--dur-short) var(--ease-out) both;display:grid;position:absolute;inset:0;overflow:hidden}.dice-roll-overlay>strong{padding:var(--space-xs) var(--space-sm);border:1px solid var(--color-rule-strong);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-ink);font-family:var(--font-display);font-size:var(--text-md);box-shadow:var(--shadow-raised)}.physics-die-stage{perspective:44rem;perspective-origin:50% 36%;place-items:center;width:min(58%,19rem);height:clamp(9rem,28vw,14rem);display:grid;position:relative}.physics-die-stage__floor{border:1px solid var(--color-rule-strong);border-radius:var(--radius-pill);background:var(--color-paper-2);opacity:.76;height:38%;position:absolute;inset:auto 2% 4%;transform:rotateX(68deg)}.physics-die-stage__shadow{border-radius:var(--radius-pill);background:var(--color-shadow);filter:blur(.55rem);height:14%;animation:die-shadow var(--dur-dice) var(--ease-out) both;position:absolute;inset:auto 31% 14%}.physics-die-orbit,.physics-die{width:var(--size-dice);height:var(--size-dice);transform-style:preserve-3d;display:block;position:relative}.physics-die-orbit{animation:physics-die-orbit var(--dur-dice) var(--ease-out) both}.physics-die-orbit.is-rolling .physics-die{animation:physics-die-spin var(--dur-dice) linear backwards}.physics-die-orbit.is-settling .physics-die{animation:physics-die-settle .45s var(--ease-out) both}.physics-die__face{gap:var(--space-3xs);padding:var(--space-2xs);border:1px solid var(--color-rule-strong);border-radius:calc(var(--radius-card) * 1.6);background:var(--color-paper);box-shadow:inset 0 0 0 .22rem var(--color-paper-3), var(--shadow-dice);-webkit-backface-visibility:hidden;backface-visibility:hidden;grid-template-rows:repeat(3,minmax(0,1fr));grid-template-columns:repeat(3,minmax(0,1fr));display:grid;position:absolute;inset:0}.physics-die__face i{border-radius:var(--radius-pill);background:var(--color-ink);opacity:0;display:block}.physics-die__face i.is-visible{opacity:1}.physics-die__face--front{transform:translateZ(calc(var(--size-dice) * .5))}.physics-die__face--back{transform:rotateY(180deg) translateZ(calc(var(--size-dice) * .5))}.physics-die__face--right{transform:rotateY(90deg) translateZ(calc(var(--size-dice) * .5))}.physics-die__face--left{transform:rotateY(-90deg) translateZ(calc(var(--size-dice) * .5))}.physics-die__face--top{transform:rotateX(90deg) translateZ(calc(var(--size-dice) * .5))}.physics-die__face--bottom{transform:rotateX(-90deg) translateZ(calc(var(--size-dice) * .5))}.board-console{align-items:center;gap:var(--space-md);padding:var(--space-sm) var(--space-md);border:var(--rule-hairline);border-radius:var(--radius-card);background:var(--color-surface);color:var(--color-ink);grid-template-columns:minmax(0,1fr);display:grid}.board-console__status{gap:var(--space-3xs);min-width:0;display:grid}.board-console__status strong,.board-console__status>span:last-child{overflow-wrap:anywhere}.board-console__status strong{font-family:var(--font-display);font-size:var(--text-md)}.board-console__status>span:last-child{color:var(--color-ink-soft);font-size:var(--text-sm)}@keyframes dice-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes die-shadow{0%,27%{opacity:.18;transform:scale(.46)}40%{opacity:.72;transform:scale(1.12,.72)}52%{opacity:.24;transform:scale(.62)}63%{opacity:.76;transform:scale(1.08,.76)}73%,to{opacity:.6;transform:scale(.94,.7)}}@keyframes tile-arrival{0%{transform:translateY(-2px)scale(.92)}55%{transform:translateY(-11px)scale(1.08)}to{transform:translateY(-5px)scale(1)}}.landmark{border:1px solid var(--color-rule-strong);border-radius:var(--radius-xs) var(--radius-xs) 0 0;background:var(--color-coral);opacity:.65;width:14%;height:24%;position:absolute;inset-block-end:8%}.landmark:before{content:"";border:1px solid var(--color-rule-strong);background:var(--color-amber);height:40%;position:absolute;inset:-35% 18% auto;transform:rotate(45deg)}.landmark--left{inset-inline-start:8%}.landmark--right{background:var(--color-teal);height:18%;inset-inline-end:8%}.stage-spark{width:1.25rem;color:var(--color-indigo-deep);position:absolute;inset:12% 12% auto auto}.game-board--compact{gap:var(--space-3xs);padding:var(--space-2xs);border-radius:var(--radius-sm);box-shadow:none}.game-board--compact .board-tile__label,.game-board--compact .board-tile__number,.game-board--compact .token-stack,.game-board--compact .landmark,.game-board--compact .stage-spark,.game-board--compact .dice-button,.game-board--compact .board-stage__copy>span:last-child{display:none}.game-board--compact .board-tile__icon{width:clamp(.35rem,1.2vw,.65rem);height:clamp(.35rem,1.2vw,.65rem)}.game-board--compact .board-stage__copy strong{font-size:clamp(.38rem,1.3vw,.75rem)}.game-board--compact .mono-label{font-size:clamp(.3rem,.7vw,.5rem)}.workbench-actions{flex-direction:column;align-items:stretch;margin-block-start:var(--space-md)}.content-counts{gap:var(--space-sm) var(--space-md);color:var(--color-muted);font-size:var(--text-xs);flex-wrap:wrap;display:flex}.content-counts span{align-items:center;gap:var(--space-2xs);display:inline-flex}.content-counts svg{width:.9rem}.workbench-actions__buttons{gap:var(--space-xs);display:flex}.workbench-actions__buttons .button{flex:1}.foot-marquee{border-block:var(--rule-strong);background:var(--color-indigo-soft);overflow:hidden}.foot-marquee__track{gap:var(--space-2xl);width:max-content;padding-block:var(--space-sm);white-space:nowrap;animation:32s linear infinite foot-marquee;display:flex}.foot-marquee__track span{font-family:var(--font-display);letter-spacing:.06em;font-weight:800}@keyframes foot-marquee{to{transform:translate(-50%)}}.library-page{width:min(100%,90rem);padding:var(--space-xl) var(--space-md) var(--space-3xl);margin-inline:auto}.library-hero{gap:var(--space-lg);padding-block:var(--space-md) var(--space-xl);align-items:end;display:grid}.library-hero__mark{border:1px solid var(--color-ink);border-radius:var(--radius-card);background:var(--color-coral);width:3rem;height:3rem;box-shadow:var(--shadow-contact);place-items:center;display:grid}.library-hero__mark svg{width:1.4rem}.library-tools{gap:var(--space-md);padding-block:var(--space-md);border-block:var(--rule-hairline);display:grid}.search-field{align-items:center;gap:var(--space-sm);min-width:0;min-height:3rem;padding-inline:var(--space-md);border:1px solid var(--color-rule-strong);outline-offset:1px;border-radius:var(--radius-sm);background:var(--color-surface);outline:2px solid #0000;display:flex}.search-field:focus-within{outline-color:var(--color-focus)}.search-field svg{width:1.1rem;color:var(--color-muted)}.search-field input{background:0 0;border:0;outline:0;flex:1;min-width:0}.filter-chips{gap:var(--space-xs);flex-wrap:wrap;display:flex}.filter-chips button{border:var(--rule-hairline);border-radius:var(--radius-pill);min-height:2.5rem}.library-results{padding-block:var(--space-xl)}.library-grid{gap:var(--space-lg);grid-template-columns:minmax(0,1fr);display:grid}.library-card{border:var(--rule-hairline);border-radius:var(--radius-card);background:var(--color-surface);min-width:0;transition:transform var(--dur-short) var(--ease-out);grid-template-rows:auto minmax(0,1fr) auto;display:grid;overflow:hidden}.library-card--1{transform:translateY(var(--space-sm))}.library-card__preview{padding:var(--space-lg);border-block-end:var(--rule-hairline)}.library-card__preview--campus{background:var(--color-amber-soft)}.library-card__preview--space_lab{background:var(--color-indigo-soft)}.library-card__preview--eco_expedition{background:var(--color-teal-soft)}.library-card__body{align-content:start;gap:var(--space-sm);padding:var(--space-lg);display:grid}.library-card__body h3{font-size:var(--text-md);font-weight:760}.library-card__body p{color:var(--color-ink-soft);font-size:var(--text-sm)}.tag-row,.library-card__meta,.room-settings{gap:var(--space-xs);flex-wrap:wrap;display:flex}.tag-row span{padding:var(--space-2xs) var(--space-xs);border-radius:var(--radius-pill);background:var(--color-paper-2);color:var(--color-ink-soft);font-size:var(--text-xs);font-weight:700}.library-card__meta{color:var(--color-muted);font-size:var(--text-xs)}.library-card__actions{gap:var(--space-xs);padding:0 var(--space-lg) var(--space-lg);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.editor-page{background:var(--color-paper-2);min-height:calc(100dvh - 4rem)}.editor-header{gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border-block-end:var(--rule-hairline);background:var(--color-surface);grid-template-columns:auto minmax(0,1fr);align-items:center;display:grid}.editor-header>div:nth-child(2){min-width:0}.editor-header span{color:var(--color-muted);font-size:var(--text-xs)}.editor-header h1{text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-md);overflow:hidden}.editor-header__actions{gap:var(--space-xs);flex-wrap:wrap;grid-column:1/-1;display:flex}.save-state{align-items:center;gap:var(--space-2xs);margin-inline-end:auto;display:inline-flex}.save-state svg{width:1rem;color:var(--color-success)}.editor-layout{gap:var(--space-md);width:min(100%,96rem);padding:var(--space-md);margin-inline:auto;display:grid}.editor-steps{gap:var(--space-2xs);min-width:0;padding:var(--space-2xs);border:2px solid var(--color-rule-strong);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-contact);flex-direction:column;display:flex;overflow:hidden}.editor-steps__head{align-items:center;gap:var(--space-2xs);padding-inline:var(--space-2xs);display:flex}.editor-steps__head h2{font-size:var(--text-sm);margin:0 auto 0 0;font-weight:800}.editor-steps__count{color:var(--color-muted);font-family:var(--font-label);font-size:var(--text-xs);font-weight:800}.editor-steps__toggle{border:1px solid var(--color-rule);border-radius:var(--radius-xs);width:1.5rem;height:1.5rem;color:var(--color-muted);cursor:pointer;background:0 0;flex:none;place-items:center;display:grid}.editor-steps__toggle svg{width:.85rem;height:.85rem;transition:transform var(--dur-micro) var(--ease-out);transform:rotate(90deg)}.editor-steps.is-collapsed .editor-steps__toggle svg{transform:rotate(-90deg)}.editor-steps__list{gap:var(--space-2xs);min-width:0;scrollbar-width:thin;scrollbar-color:var(--color-paper-3) transparent;padding-block-end:var(--space-2xs);display:flex;overflow-x:auto}.editor-steps__list>button{align-items:center;gap:var(--space-xs);min-width:max-content;min-height:2.75rem;padding-inline:var(--space-sm);border:var(--rule-hairline);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-muted);font-size:var(--text-sm);cursor:pointer;transition:border-color var(--dur-micro) var(--ease-out), background-color var(--dur-micro) var(--ease-out), transform var(--dur-micro) var(--ease-out), box-shadow var(--dur-micro) var(--ease-out);display:flex}.editor-steps__list>button>span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.editor-steps__list>button svg{flex:none;width:1rem}.editor-steps__list>button .step-number{border:1px solid var(--color-rule);background:var(--color-paper-2);width:1.4rem;height:1.4rem;color:var(--color-muted);font-family:var(--font-label);border-radius:999px;flex:none;place-items:center;font-size:.62rem;font-weight:800;display:grid}.editor-steps__list>button .step-number svg{width:.72rem;height:.72rem}.editor-steps__list>button.is-current{border-color:var(--color-indigo-deep);background:var(--color-indigo-soft);color:var(--color-indigo-deep);font-weight:750}.editor-steps__list>button.is-current .step-number{border-color:var(--color-indigo-deep);background:var(--color-indigo-deep);color:var(--color-inverse)}.editor-steps__list>button.is-complete{color:var(--color-success)}.editor-steps__list>button.is-complete .step-number{border-color:var(--color-success);background:var(--color-success-soft);color:var(--color-success)}.editor-steps__list>button.is-future{opacity:.75}@media (max-width:79.99rem){.editor-steps.is-collapsed .editor-steps__list{display:none}}.question-editor,.editor-board{min-width:0;padding:var(--space-md);border:var(--rule-hairline);border-radius:var(--radius-card);background:var(--color-surface)}.question-editor__head{flex-direction:column;margin-block-end:var(--space-md)}.question-editor__head p,.editor-board p{color:var(--color-muted);font-size:var(--text-sm);margin-block-start:var(--space-2xs)}.question-workarea{gap:var(--space-md);display:grid}.question-list{gap:var(--space-xs);padding-block-end:var(--space-xs);display:flex;overflow-x:auto}.question-list button{gap:var(--space-2xs);min-width:13rem;padding:var(--space-sm);border:var(--rule-hairline);border-radius:var(--radius-sm);background:var(--color-paper);text-align:start;cursor:pointer;display:grid}.question-list button.is-selected{border-color:var(--color-indigo);background:var(--color-indigo-soft)}.question-list button>span,.question-list button>small{color:var(--color-muted);font-size:var(--text-xs)}.question-form,.create-form,.join-form{gap:var(--space-md);display:grid}.question-form label,.create-form>label,.join-form label,.form-row label,.form-field{gap:var(--space-xs);font-size:var(--text-sm);font-weight:700;display:grid}.question-form input,.question-form textarea,.create-form input,.join-form input{width:100%;min-height:2.75rem;padding-inline:var(--space-sm);border:1px solid var(--color-rule-strong);outline-offset:1px;border-radius:var(--radius-sm);background-color:var(--color-surface);outline:2px solid #0000;font-weight:450}.question-form textarea{min-height:7rem;padding-block:var(--space-sm);resize:vertical}.choice-editor,.ox-editor{gap:var(--space-xs);border:0;padding:0;display:grid}.choice-editor legend,.ox-editor legend{font-size:var(--text-sm);margin-block-end:var(--space-xs);font-weight:700}.choice-editor label{align-items:center;gap:var(--space-xs);grid-template-columns:auto 1.75rem minmax(0,1fr);display:grid}.choice-editor label>span{background:var(--color-indigo-soft);width:1.75rem;height:1.75rem;color:var(--color-indigo-deep);font-size:var(--text-xs);border-radius:999px;place-items:center;font-weight:800;display:grid}.choice-editor input[type=radio],.ox-editor input[type=radio]{width:1.1rem;min-height:1.1rem;accent-color:var(--color-indigo-deep)}.ox-editor{grid-template-columns:repeat(2,minmax(0,1fr))}.ox-editor legend{grid-column:1/-1}.ox-editor label{position:relative}.ox-editor label>input{opacity:0;position:absolute}.ox-editor label>span{border:var(--rule-hairline);border-radius:var(--radius-sm);background:var(--color-paper);min-height:4rem;font-family:var(--font-display);font-size:var(--text-xl);cursor:pointer;place-items:center;font-weight:850;display:grid}.ox-editor label>input:checked+span{border-color:var(--color-indigo-deep);background:var(--color-indigo-soft);color:var(--color-indigo-deep)}.ox-editor label>input:focus-visible+span{outline:3px solid var(--color-focus);outline-offset:3px}:is(.question-form input:focus-visible,.question-form select:focus-visible,.question-form textarea:focus-visible,.create-form input:focus-visible,.create-form select:focus-visible,.join-form input:focus-visible){outline-color:var(--color-focus)}.form-row{gap:var(--space-md);display:grid}.answer-preview{gap:var(--space-sm);padding:var(--space-sm);border-radius:var(--radius-sm);background:var(--color-amber-soft);grid-template-columns:auto minmax(0,1fr);display:grid}.answer-preview>svg{width:1.2rem;margin-block-start:var(--space-2xs)}.answer-preview span{font-size:var(--text-sm);display:grid}.answer-preview small{color:var(--color-ink-soft)}.answer-preview--card{background:var(--color-indigo-soft)}.content-empty{text-align:center;place-content:center;min-height:20rem;display:grid}.content-empty p,.content-empty__hint{color:var(--color-muted);font-size:var(--text-sm)}.settings-editor__status{align-items:center;gap:var(--space-2xs);color:var(--color-success);font-size:var(--text-sm);font-weight:750;display:inline-flex}.settings-editor__status svg,.settings-editor label>span svg,.settings-editor .form-field>span svg{vertical-align:middle;width:1rem}.rule-settings{border:0;min-inline-size:0;margin:0;padding:0}.rule-settings legend{align-items:center;gap:var(--space-xs);font-size:var(--text-sm);margin-block-end:var(--space-xs);padding:0;font-weight:700;display:flex}.rule-settings__panel{gap:var(--space-md);padding:var(--space-md);border:var(--rule-hairline);border-radius:var(--radius-sm);background:var(--color-paper);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.rule-settings legend svg,.rule-settings__note svg{flex:none;width:1.1rem}.rule-settings label{gap:var(--space-xs);font-size:var(--text-sm);font-weight:700;display:grid}.rule-settings__note{align-items:flex-start;gap:var(--space-xs);padding:var(--space-sm);border-radius:var(--radius-sm);background:var(--color-indigo-soft);color:var(--color-indigo-deep);font-size:var(--text-sm);grid-column:1/-1;display:flex}.tile-inspector{align-content:start;gap:var(--space-md);display:grid}.tile-inspector__number{font-family:var(--font-label);font-size:var(--text-xl);letter-spacing:.03em;font-weight:800}.tile-inspector__mark{border:1px solid var(--color-ink);border-radius:var(--radius-sm);width:2.75rem;height:2.75rem;box-shadow:var(--shadow-contact);place-items:center;display:grid}.tile-inspector__mark svg{width:1.25rem;height:1.25rem}.tile-inspector__mark--start,.tile-inspector__mark--quiz{background:var(--color-indigo-soft);color:var(--color-indigo-deep)}.tile-inspector__mark--bonus{background:var(--color-amber);color:var(--color-accent-ink)}.tile-inspector__mark--event{background:var(--color-coral);color:var(--color-accent-ink)}.tile-inspector__mark--rest{background:var(--color-teal);color:var(--color-accent-ink)}.tile-inspector__copy{gap:var(--space-3xs);min-width:0;display:grid}.tile-inspector__copy>small{color:var(--color-muted);font-size:var(--text-xs);line-height:1.5}.tile-inspector__lock{align-items:flex-start;gap:var(--space-xs);padding:var(--space-sm);border-radius:var(--radius-sm);background:var(--color-paper);color:var(--color-muted);font-size:var(--text-sm);display:flex}.tile-inspector__lock svg{flex:none;width:1.1rem}.room-prompt{gap:var(--space-sm);padding:var(--space-md);border:var(--rule-strong);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-contact);margin-block-start:var(--space-md);display:grid}.room-prompt__meta{justify-content:space-between;gap:var(--space-xs);color:var(--color-muted);font-size:var(--text-xs);flex-wrap:wrap;font-weight:750;display:flex}.room-prompt__meta span:first-child{align-items:center;gap:var(--space-2xs);color:var(--color-indigo-deep);display:inline-flex}.room-prompt__meta .is-urgent{color:var(--color-error);font-weight:850}.room-prompt__meta svg,.room-prompt--card>svg,.room-prompt--result>svg{width:1.35rem}.room-prompt>p,.room-prompt div>p{color:var(--color-muted);font-size:var(--text-sm)}.room-answer-options{gap:var(--space-xs);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.room-answer-options button{align-items:center;gap:var(--space-xs);min-height:3.25rem;padding:var(--space-sm);border:var(--rule-hairline);border-radius:var(--radius-sm);background:var(--color-paper);text-align:start;cursor:pointer;font-weight:700;display:flex}.room-answer-options button>span{background:var(--color-indigo-soft);width:1.75rem;height:1.75rem;color:var(--color-indigo-deep);font-size:var(--text-xs);border-radius:999px;flex:none;place-items:center;display:grid}.room-answer-options--ox button{font-family:var(--font-display);font-size:var(--text-xl);justify-content:center}.room-short-answer{gap:var(--space-xs);grid-template-columns:minmax(0,1fr) auto;display:grid}.room-short-answer input{width:100%;min-height:2.75rem;padding-inline:var(--space-sm);border:1px solid var(--color-rule-strong);border-radius:var(--radius-sm);background:var(--color-paper)}.room-prompt--card,.room-prompt--result{background:var(--color-indigo-soft);grid-template-columns:auto minmax(0,1fr);align-items:center}.room-prompt--card>svg{color:var(--color-indigo-deep)}.room-prompt--result.is-correct{border-color:var(--color-success)}.room-prompt--result.is-correct>svg{color:var(--color-success)}.room-prompt--result.is-wrong{border-color:var(--color-error);background:var(--color-error-soft)}.room-prompt--result.is-wrong>svg{color:var(--color-error)}.room-results{gap:var(--space-md);background:var(--color-paper)}.room-results>div{gap:var(--space-2xs);display:grid}.room-results ol{gap:var(--space-xs);margin:0;padding:0;list-style:none;display:grid}.room-results li{align-items:center;gap:var(--space-sm);padding:var(--space-sm);border:var(--rule-hairline);border-radius:var(--radius-sm);background:var(--color-surface);grid-template-columns:2rem minmax(0,1fr) auto;display:grid}.room-results li.is-winner{border-color:var(--color-amber);background:var(--color-amber-soft)}.room-results li>strong{background:var(--color-indigo-soft);width:2rem;height:2rem;color:var(--color-indigo-deep);border-radius:999px;place-items:center;display:grid}.room-results li>span{display:grid}.room-results li small{color:var(--color-muted)}.room-results li em{font-family:var(--font-display);font-style:normal;font-weight:850}.room-results .room-results__details{gap:var(--space-sm);padding-top:var(--space-sm);border-top:1px dashed var(--color-rule-strong)}.room-results__details h4{font-family:var(--font-label);margin:0}.room-results__details ul{gap:var(--space-xs);margin:0;padding:0;list-style:none;display:grid}.room-results__details li{grid-template-columns:minmax(0,1fr) auto}.preview-action{gap:var(--space-sm);padding:var(--space-md);border:var(--rule-strong);border-radius:var(--radius-card);background:var(--color-surface);color:var(--color-ink);box-shadow:var(--shadow-contact);margin-block-start:var(--space-md);display:grid}.preview-action>.button{width:100%}.preview-action>svg{width:2rem;height:2rem;color:var(--color-indigo-deep)}.preview-action__head{align-items:center;gap:var(--space-xs);min-width:0;display:flex}.preview-action__head>svg{width:1.4rem;height:1.4rem;color:var(--color-indigo-deep);flex:none}.preview-action__head>h3{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:var(--text-md);overflow:hidden}.preview-action__copy{overflow-wrap:anywhere;min-width:0;color:var(--color-ink-soft);font-size:var(--text-sm);line-height:1.55}.preview-action__body,.preview-action__body>p,.preview-action>div{min-width:0}.preview-action__body,.preview-action>div:not(.preview-action__head){gap:var(--space-xs);display:grid}.preview-action h3,.preview-action p{overflow-wrap:anywhere}.preview-action p{color:var(--color-ink-soft);font-size:var(--text-sm)}.preview-action--quiz{background:var(--color-indigo-soft);color:var(--color-ink)}.preview-action--share,.preview-action--bonus,.preview-action--finish{background:var(--color-amber-soft);color:var(--color-ink)}.preview-action--event{background:var(--color-coral-soft);color:var(--color-ink)}.preview-action--rest{background:var(--color-teal-soft);color:var(--color-ink)}.preview-action.is-correct{border-color:var(--color-success);background:var(--color-success-soft);color:var(--color-ink)}.preview-action.is-wrong{border-color:var(--color-error);background:var(--color-error-soft);color:var(--color-ink)}.preview-answer-options{gap:var(--space-xs);grid-template-columns:minmax(0,1fr);display:grid}.preview-answer-options button{align-items:center;gap:var(--space-xs);min-height:2.75rem;padding:var(--space-xs) var(--space-sm);border:var(--rule-hairline);border-radius:var(--radius-sm);background:var(--color-paper);color:var(--color-ink);text-align:start;cursor:pointer;transition:background-color var(--dur-short) var(--ease-out), transform var(--dur-micro) var(--ease-out);font-weight:700;display:flex}.preview-answer-options button>span{border-radius:var(--radius-pill);background:var(--color-indigo-soft);width:1.7rem;height:1.7rem;color:var(--color-indigo-deep);font-family:var(--font-label);flex:none;place-items:center;display:grid}.preview-answer-options--ox button{justify-content:center}.preview-answer-options--ox button>span{width:auto;height:auto;font-family:var(--font-display);font-size:var(--text-xl);background:0 0}.preview-short-answer{gap:var(--space-xs);grid-template-columns:minmax(0,1fr);display:grid}.preview-short-answer input{width:100%;min-height:2.75rem;padding-inline:var(--space-sm);border:1px solid var(--color-rule-strong);border-radius:var(--radius-sm);background:var(--color-paper);color:var(--color-ink)}.preview-answer-result{align-items:center;gap:var(--space-xs);grid-template-columns:auto minmax(0,1fr);display:grid}.preview-answer-result>svg{width:1.5rem;color:var(--color-indigo-deep)}.preview-answer-result p{display:grid}.preview-card-effect{width:fit-content;padding:var(--space-2xs) var(--space-xs);border-radius:var(--radius-pill);background:var(--color-paper);color:var(--color-indigo-deep);font-size:var(--text-xs)}@media (hover:hover) and (pointer:fine){.board-view-toggle button:hover:not([aria-pressed=true]){background:var(--color-paper-3);color:var(--color-indigo-deep)}.dice-button:hover:not(:disabled){transform:translateY(-1px)}.preview-answer-options button:hover{background:var(--color-amber-soft)}}.content-empty__hint{padding:var(--space-md);border:1px dashed var(--color-rule-strong);border-radius:var(--radius-sm)}.question-form__actions,.dialog-actions{justify-content:flex-end;gap:var(--space-xs);flex-wrap:wrap;display:flex}.editor-board{align-content:start;gap:var(--space-md);display:grid}.editor-board__head{align-items:baseline}.editor-board__skin{align-items:center;gap:var(--space-2xs);white-space:nowrap;display:inline-flex}.editor-board__skin svg{width:.9rem;height:.9rem}.editor-board .game-board-frame{width:min(100%,33rem);margin-inline:auto}.editor-board__hint{text-align:center;margin-block-start:0;line-height:1.55}.app-dialog{border-radius:var(--radius-card);width:min(100% - 2rem,36rem);height:fit-content;max-height:min(86dvh,46rem);color:var(--color-ink);background:0 0;border:0;margin:auto;padding:0;position:fixed;inset:0;overflow:visible}.app-dialog::backdrop{background:var(--color-overlay)}.app-dialog__surface{max-height:min(86dvh,46rem);padding:var(--space-lg);border:1px solid var(--color-ink);border-radius:var(--radius-card);background:var(--color-paper);box-shadow:var(--shadow-board);overflow-y:auto}.app-dialog__surface,.filter-popover{scrollbar-width:thin;scrollbar-color:var(--color-paper-3) transparent}.app-dialog__surface::-webkit-scrollbar{width:.625rem}.filter-popover::-webkit-scrollbar{width:.625rem}.app-dialog__surface::-webkit-scrollbar-track{background:0 0}.filter-popover::-webkit-scrollbar-track{background:0 0}.app-dialog__surface::-webkit-scrollbar-thumb{background:var(--color-paper-3);border:3px solid var(--color-paper);border-radius:999px}.filter-popover::-webkit-scrollbar-thumb{background:var(--color-paper-3);border:3px solid var(--color-paper);border-radius:999px}.app-dialog__surface::-webkit-scrollbar-thumb:hover{background:var(--color-indigo-soft)}.filter-popover::-webkit-scrollbar-thumb:hover{background:var(--color-indigo-soft)}.dialog-heading{justify-content:space-between;align-items:flex-start;gap:var(--space-md);margin-block-end:var(--space-lg);display:flex}.dialog-heading h2{margin-block:var(--space-sm) var(--space-2xs);font-size:var(--text-xl);font-weight:780}.dialog-heading p{color:var(--color-muted);font-size:var(--text-sm)}.dialog-mark{border:1px solid var(--color-ink);border-radius:var(--radius-sm);background:var(--color-coral);width:2.75rem;height:2.75rem;box-shadow:var(--shadow-contact);place-items:center;display:grid}.dialog-mark--teal{background:var(--color-teal)}.dialog-mark--amber{background:var(--color-amber)}.dialog-mark svg{width:1.25rem}.create-form fieldset{gap:var(--space-xs);border:0;margin:0;padding:0;display:grid}.create-form legend{font-size:var(--text-sm);margin-block-end:var(--space-xs);font-weight:700}.radio-card{cursor:pointer;position:relative}.radio-card input{opacity:0;position:absolute}.radio-card>span{gap:var(--space-xs) var(--space-sm);min-height:4.4rem;padding:var(--space-sm);border:1px solid var(--color-rule-strong);outline-offset:1px;border-radius:var(--radius-sm);background:var(--color-surface);outline:2px solid #0000;grid-template-columns:2rem minmax(0,1fr);align-items:center;display:grid}.radio-card input:checked+span{border-color:var(--color-indigo);background:var(--color-indigo-soft)}.radio-card input:focus-visible+span{outline-color:var(--color-focus)}.radio-card svg{grid-row:1/3;width:1.25rem}.radio-card small{color:var(--color-muted);grid-column:2}.room-code-layout{gap:var(--space-lg);padding:var(--space-lg);border-radius:var(--radius-card);background:var(--color-teal-soft);grid-template-columns:minmax(0,10.5rem) minmax(0,1fr);align-items:center;display:grid}.qr-mark{gap:var(--space-xs);padding:var(--space-xs);border:2px solid var(--color-rule-strong);border-radius:var(--radius-sm);background:var(--color-surface);box-shadow:var(--shadow-contact);justify-items:center;display:grid}.qr-mark img{border:2px solid var(--color-rule);border-radius:var(--radius-sm);width:9.5rem;height:9.5rem;image-rendering:pixelated;display:block}.qr-mark__placeholder{border:2px dashed var(--color-rule-strong);border-radius:var(--radius-sm);width:9.5rem;height:9.5rem;color:var(--color-muted);font-size:var(--text-xs);letter-spacing:.2em;place-items:center;font-weight:800;display:grid}.qr-mark__hint{color:var(--color-ink-soft);font-size:var(--text-xs);text-align:center;font-weight:650}.room-code-copy{justify-items:start;gap:var(--space-xs);display:grid}.room-code-copy>span{color:var(--color-ink-soft);font-size:var(--text-sm);font-weight:700}.room-code-copy>strong{font-family:var(--font-label);letter-spacing:.06em;font-size:clamp(1.7rem,8vw,2.7rem);line-height:1}.room-roster{margin-block:var(--space-md);border:2px solid var(--color-rule-strong);border-radius:var(--radius-card);background:var(--color-surface)}.room-roster__head{justify-content:space-between;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border-block-end:1px solid var(--color-rule);color:var(--color-ink-soft);font-size:var(--text-sm);font-weight:700;display:flex}.room-roster__list{gap:var(--space-2xs);max-height:12rem;padding:var(--space-sm) var(--space-md);list-style:none;display:grid;overflow-y:auto}.room-roster__player{align-items:center;gap:var(--space-sm);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);background:var(--color-paper-2);color:var(--color-ink);font-size:var(--text-sm);font-weight:650;display:flex}.room-roster__player.is-host{background:var(--color-teal-soft)}.room-roster__player.is-offline{opacity:.5}.room-roster__player em{color:var(--color-muted);font-size:var(--text-xs);margin-inline-start:auto;font-style:normal}.room-settings{margin-block:var(--space-md)}.room-settings span,.privacy-note{align-items:center;gap:var(--space-xs);color:var(--color-ink-soft);font-size:var(--text-sm);display:inline-flex}.room-settings svg,.privacy-note svg{width:1rem}.join-form small{min-height:1lh;color:var(--color-muted);font-size:var(--text-xs);font-weight:450}.code-input{letter-spacing:.18em;font-family:var(--font-label)!important;font-size:var(--text-lg)!important}.privacy-note{border-block-start:var(--rule-hairline);margin-block-start:var(--space-md);padding-block-start:var(--space-md)}.reveal{opacity:0;animation:reveal var(--dur-long) var(--ease-out) forwards;animation-delay:calc(var(--i,0) * 60ms);transform:translateY(.5rem)}@keyframes reveal{to{opacity:1;transform:none}}@media (hover:hover) and (pointer:fine){.slab-nav button:hover,.mobile-navigation button:hover,.editor-steps__list>button:hover,.question-list button:hover{background:var(--color-paper-3)}.game-list-item:hover{border-color:var(--color-indigo);background:var(--color-indigo-soft)}.game-list-item:hover .game-list-item__select{background:0 0}.game-list-item:hover .game-list-item__delete{color:var(--color-muted);background:0 0}:is(.game-list-item.is-selected .game-list-item__select:hover,.game-list-item.is-selected .game-list-item__select:focus-visible){background:var(--color-indigo-soft)}.game-list-item__delete:hover{background:var(--color-error-soft);color:var(--color-error)}:is(.game-list-item.is-selected .game-list-item__delete:hover,.game-list-item.is-selected .game-list-item__delete:focus-visible,.game-list-item:hover .game-list-item__delete:hover){background:var(--color-indigo-soft);color:var(--color-error)}.button:hover,.icon-button:hover,.mobile-menu-button:hover,.google-oauth-button:hover{transform:translateY(-1px)}.button--quiet:hover,.icon-button:hover,.mobile-menu-button:hover{background:var(--color-paper-3)}.google-oauth-button:hover{background:var(--color-indigo-soft)}.button--ink:hover{background:var(--color-indigo-deep)}.library-card:hover{transform:translateY(-2px)}.library-card--1:hover{transform:translateY(calc(var(--space-sm) - 2px))}}.button:active,.game-list-item__select:active,.segmented-control button:active,.preview-answer-options button:active,.filter-chips button:active,.editor-steps__list>button:active,.question-list button:active,.icon-button:active,.mobile-menu-button:active,.dice-button:active,.google-oauth-button:active{transform:translateY(1px)}.question-form input[aria-invalid=true],.question-form select[aria-invalid=true],.question-form textarea[aria-invalid=true],.create-form input[aria-invalid=true],.join-form input[aria-invalid=true]{border-color:var(--color-error);background:var(--color-error-soft)}.question-form input[data-state=success],.question-form textarea[data-state=success],.create-form input[data-state=success],.join-form input[data-state=success]{border-color:var(--color-success);background:var(--color-success-soft)}.question-form input[data-state=loading],.create-form input[data-state=loading],.join-form input[data-state=loading]{cursor:progress}.foot-marquee:hover .foot-marquee__track,.foot-marquee:focus-within .foot-marquee__track{animation-play-state:paused}@media (min-width:40rem){.auth-panel__intro,.teacher-auth{padding:var(--space-xl)}.google-oauth-button__label--compact{display:none}.google-oauth-button__label--wide{display:inline}.segmented-control{grid-template-columns:repeat(4,auto);width:auto}.slab-mark{padding-inline:var(--space-lg)}.nav-create,.profile-button,.auth-button{display:flex}.mobile-menu-button,.mobile-navigation{display:none}.dashboard-shell{padding-inline:var(--space-lg);grid-template-columns:minmax(0,1fr);grid-template-areas:"intro""board""games"}.workspace-intro,.library-hero{grid-template-columns:minmax(0,1fr) auto}.workspace-intro__actions{justify-content:flex-end}.board-tile__label,.board-stage__copy>span:last-child{display:inline}.board-console{grid-template-columns:minmax(0,1fr) auto}.play-stage__overlay>.preview-action{align-items:center;gap:var(--space-md);grid-template-columns:auto minmax(0,1fr) auto}.play-stage__overlay>.preview-action>.button{grid-column:auto;width:auto}.preview-answer-options{grid-template-columns:repeat(2,minmax(0,1fr))}.preview-short-answer{grid-template-columns:minmax(0,1fr) auto}.workbench-actions{flex-direction:row;align-items:center}.workbench-actions__buttons .button{flex:none}.library-tools{grid-template-columns:minmax(18rem,1fr) auto;align-items:end}.library-dropdowns{justify-content:flex-end}.library-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.editor-header{grid-template-columns:auto minmax(0,1fr) auto}.editor-header__actions{grid-column:auto}.question-editor__head{flex-direction:row;align-items:flex-start}.form-row--split{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:48rem){.auth-panel{grid-template-columns:minmax(0,1.05fr) minmax(20rem,.95fr)}}@media (min-width:23rem){.slab-mark>span:last-child{display:inline}}@media (min-width:64rem){.slab-nav{display:flex}.dashboard-shell{grid-template-columns:minmax(13rem,.72fr) minmax(30rem,2fr);grid-template-areas:"intro intro""games board";align-items:start}.game-library-panel{position:sticky;inset-block-start:5.5rem}.library-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.question-workarea{grid-template-columns:13rem minmax(0,1fr)}.question-list{align-content:start;display:grid;overflow:visible}.question-list button{min-width:0}}@media (min-width:80rem){.editor-layout{transition:grid-template-columns var(--dur-short) var(--ease-out);grid-template-columns:13rem minmax(0,1fr) minmax(24rem,32rem);align-items:start}.editor-layout:has(.editor-steps.is-collapsed){grid-template-columns:3.75rem minmax(0,1fr) minmax(24rem,32rem)}.editor-steps{gap:var(--space-sm);padding:var(--space-sm);position:sticky;inset-block-start:5rem}.editor-steps__head{gap:var(--space-xs)}.editor-steps__head h2{font-size:var(--text-md)}.editor-steps__list{gap:var(--space-sm);padding-block-end:0;display:grid;overflow:visible}.editor-steps__list>button{gap:var(--space-2xs);width:100%;min-width:0;padding:var(--space-xs) var(--space-sm);grid-template-columns:auto minmax(0,1fr);display:grid}.editor-steps__list>button>svg{display:none}.editor-steps__list>button .step-number{width:1.7rem;height:1.7rem;font-size:.7rem}.editor-steps__list>button:active:not(.is-current){transform:translateY(1px)}.editor-steps.is-collapsed{gap:var(--space-xs);padding:var(--space-xs)}.editor-steps.is-collapsed .editor-steps__head{justify-content:center;padding-inline:0}.editor-steps.is-collapsed .editor-steps__head h2,.editor-steps.is-collapsed .editor-steps__count{display:none}.editor-steps.is-collapsed .editor-steps__list{gap:var(--space-xs)}.editor-steps.is-collapsed .editor-steps__list>button{grid-template-columns:minmax(0,1fr);justify-items:center;gap:0;padding:0}.editor-steps.is-collapsed .editor-steps__list>button>span:last-child{display:none}.editor-board{position:sticky;inset-block-start:5rem}}@media (min-width:90rem){.dashboard-shell,.library-page{padding-inline:var(--space-xl)}}@media (pointer:coarse){.button,.icon-button,.mobile-menu-button,.slab-nav button,.filter-chips button,.segmented-control button{min-height:2.75rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.15s!important;animation-duration:.15s!important;animation-iteration-count:1!important}.reveal{transform:none}.foot-marquee__track{animation:none}}.app-shell{background:var(--color-sky)}.nav-slab{border-block-end:3px solid var(--color-rule-strong);background:var(--color-surface);min-height:4.25rem;box-shadow:var(--shadow-contact)}.slab-mark{border-inline-end:2px solid var(--color-rule-strong);color:var(--color-indigo-deep)}.slab-mark__glyph,.auth-brand>span{border:2px solid var(--color-rule-strong);background:var(--color-amber);box-shadow:var(--shadow-contact)}.slab-nav button[aria-current=page]{background:var(--color-indigo);color:var(--color-inverse)}.button--primary{border:2px solid var(--color-rule-strong);background:var(--color-indigo);color:var(--color-inverse);box-shadow:var(--shadow-contact)}.button--ink{border:2px solid var(--color-rule-strong);background:var(--color-ink);color:var(--color-inverse);box-shadow:var(--shadow-contact)}.button--quiet,.button--outline,.icon-button,.mobile-menu-button,.auth-button{border:2px solid var(--color-rule-strong);background:var(--color-surface);color:var(--color-ink);box-shadow:var(--shadow-contact)}.dashboard-shell{gap:var(--space-md);width:min(100%,102rem);padding-block-start:var(--space-md)}.workspace-intro{padding:var(--space-xs) var(--space-sm)}.workspace-intro h1{margin-block:var(--space-3xs);color:var(--color-indigo-deep);font-size:clamp(1.8rem,4vw,3rem)}.workspace-date{color:var(--color-ink)}.game-library-panel{border:2px solid var(--color-rule-strong);background:var(--color-surface);box-shadow:var(--shadow-contact)}.board-workbench{padding:clamp(var(--space-sm), 2.2vw, var(--space-md));border:3px solid var(--color-rule-strong);border-radius:calc(var(--radius-card) * 1.35);background:var(--color-surface);box-shadow:var(--shadow-board);border-block-end-width:7px}.board-workbench__header h2{color:var(--color-indigo-deep);font-size:clamp(1.55rem,3.4vw,2.45rem)}.status-badge--draft,.status-badge--published,.status-badge--pending_review{border:1px solid var(--color-rule-strong)}.segmented-control{border:2px solid var(--color-rule-strong);background:var(--color-paper-2)}.segmented-control button[aria-pressed=true],.filter-chips button[aria-pressed=true]{background:var(--color-indigo-deep);color:var(--color-inverse)}.select-label{border:2px solid var(--color-rule-strong);background:var(--color-surface);box-shadow:var(--shadow-contact)}.play-stage{padding:var(--space-2xs);border-radius:calc(var(--radius-card) * 1.45);background:var(--color-paper-2)}.game-board-frame{gap:var(--space-sm)}.game-board{gap:var(--space-board-gap);padding:var(--space-board-pad);border:4px solid var(--color-rule-strong);border-radius:calc(var(--radius-card) * 1.25);background:var(--color-indigo);box-shadow:var(--shadow-board);border-block-end-width:10px}.game-board:before{inset:var(--space-sm);border:2px solid var(--color-indigo-deep);border-radius:var(--radius-card);background:var(--color-grass);opacity:1;background-image:none}.game-board--space_lab:before{background:var(--color-violet-soft)}.game-board--eco_expedition:before{background:var(--color-teal-soft)}.board-tile{border:2px solid var(--color-rule-strong);border-radius:var(--radius-sm);background:var(--color-surface);box-shadow:var(--shadow-tile);transition:transform var(--dur-step) var(--ease-out), box-shadow var(--dur-short) var(--ease-out), opacity var(--dur-micro) var(--ease-out);border-block-end-width:2px;transform:translateY(-2px)}.board-tile.is-current-step{box-shadow:0 8px 0 var(--color-focus);transform:translateY(-9px)}.board-tile.is-landed{outline:4px solid var(--color-amber);outline-offset:2px;box-shadow:0 7px 0 var(--color-focus)}.board-tile--start{background:var(--color-indigo-soft)}.board-tile--quiz{background:var(--color-surface)}.board-tile--quiz:after{border:2px dashed var(--color-indigo);inset:.22rem}.board-tile--bonus{background:var(--color-amber-soft)}.board-tile--event{background:var(--color-violet-soft)}.board-tile--event:after{background:var(--color-violet);height:.18rem}.board-tile--rest{background:var(--color-teal-soft)}.board-tile__icon{color:var(--color-indigo-deep);filter:drop-shadow(0 1px 0 var(--color-surface))}.board-tile__label{color:var(--color-ink);font-family:var(--font-display)}.token-stack{filter:drop-shadow(0 .16rem 0 var(--color-shadow));gap:.05rem;inset-block-end:-.42rem;inset-inline-end:-.35rem}.token{--token-color:var(--color-amber);width:clamp(1.05rem,2.5vw,1.6rem);height:clamp(1.35rem,3.2vw,2rem);color:var(--color-inverse);font-family:var(--font-label);background:0 0;border:0;border-radius:0;margin-inline-start:-.28rem;display:block;position:relative}.token--bulb{--token-color:var(--color-coral)}.token--compass{--token-color:var(--color-indigo)}.token--leaf{--token-color:var(--color-teal)}.token--rocket{--token-color:var(--color-violet)}.token__figure,.token__figure i,.token__initial{display:block;position:absolute}.token__figure{inset:0}.token__figure i:first-child{aspect-ratio:1;border:2px solid var(--color-rule-strong);border-radius:var(--radius-pill);background:var(--token-color);width:52%;inset:0 auto auto 50%;transform:translate(-50%)}.token__figure i:last-child{border:2px solid var(--color-rule-strong);background:var(--token-color);box-shadow:0 2px 0 var(--color-rule-strong);border-radius:50% 50% 28% 28%;inset:35% 10% 4%}.token__initial{z-index:var(--z-raised);color:var(--color-inverse);text-align:center;font-size:clamp(.32rem,.7vw,.52rem);font-weight:900;line-height:1;inset:43% 29% auto}.token--active{outline:3px solid var(--color-amber);outline-offset:2px;border-radius:var(--radius-pill);width:clamp(1.3rem,3vw,1.9rem);height:clamp(1.65rem,3.8vw,2.4rem)}.token.is-moving{width:clamp(2rem,4.3vw,2.85rem);height:clamp(2.55rem,5.4vw,3.6rem);box-shadow:none}.token-overflow{border:2px solid var(--color-rule-strong);background:var(--color-ink);color:var(--color-inverse)}.moving-token{filter:drop-shadow(0 .3rem 0 var(--color-shadow))}.board-stage{border:2px solid var(--color-grass-deep);border-radius:var(--radius-card);background:var(--color-grass);box-shadow:inset 0 0 0 4px var(--color-teal-soft);border-block-end-width:6px}.game-board--space_lab .board-stage{border-color:var(--color-violet);background:var(--color-violet-soft);box-shadow:inset 0 0 0 4px var(--color-indigo-soft)}.game-board--eco_expedition .board-stage{border-color:var(--color-grass-deep);background:var(--color-teal-soft);box-shadow:inset 0 0 0 4px var(--color-success-soft)}.board-stage:before,.board-stage:after{display:none}.toy-town{position:absolute;inset:0;overflow:hidden}.toy-town__road{border:2px solid var(--color-rule-strong);background:var(--color-road);border-radius:50%;height:25%;position:absolute;inset:auto -8% 10%;transform:rotate(-7deg)}.toy-town__school,.toy-town__lab{border:2px solid var(--color-rule-strong);border-radius:var(--radius-xs) var(--radius-xs) var(--radius-sm) var(--radius-sm);box-shadow:var(--shadow-raised);border-block-end-width:5px;position:absolute;inset-block-end:26%}.toy-town__school{background:var(--color-coral);width:22%;height:27%;inset-inline-start:8%}.toy-town__school:before{content:"";border:2px solid var(--color-rule-strong);background:var(--color-amber);clip-path:polygon(50% 0,100% 100%,0 100%);height:45%;position:absolute;inset:-38% -8% auto}.toy-town__school i{border:1px solid var(--color-rule-strong);background:var(--color-indigo-soft);border-radius:2px;width:18%;height:22%;position:absolute;inset-block-start:28%}.toy-town__school i:first-child{inset-inline-start:12%}.toy-town__school i:nth-child(2){inset-inline-start:41%}.toy-town__school i:nth-child(3){inset-inline-end:12%}.toy-town__lab{background:var(--color-indigo);width:20%;height:34%;inset-inline-end:8%}.toy-town__lab:before{content:"";border:2px solid var(--color-rule-strong);border-radius:var(--radius-pill) var(--radius-pill) 0 0;background:var(--color-violet);height:26%;position:absolute;inset:-24% 12% auto}.toy-town__lab i{border:1px solid var(--color-rule-strong);border-radius:var(--radius-pill);background:var(--color-teal-soft);width:24%;height:22%;position:absolute;inset-block-start:24%}.toy-town__lab i:first-child{inset-inline-start:14%}.toy-town__lab i:last-child{inset-inline-end:14%}.toy-town__tree{border:2px solid var(--color-rule-strong);background:var(--color-amber);width:4%;height:15%;position:absolute;inset-block-end:18%}.toy-town__tree:before{content:"";aspect-ratio:1;border:2px solid var(--color-rule-strong);border-radius:var(--radius-pill);background:var(--color-success);position:absolute;inset:-95% -125% auto}.toy-town__tree--left{inset-inline-start:34%}.toy-town__tree--right{inset-inline-end:34%;transform:scale(.82)}.board-stage__copy{z-index:var(--z-raised);color:var(--color-ink);text-shadow:0 1px 0 var(--color-surface);justify-items:center;gap:0;position:absolute;inset:10% 20% auto}.board-stage__copy .mono-label{padding:var(--space-3xs) var(--space-2xs);border:1px solid var(--color-rule-strong);border-radius:var(--radius-pill);background:var(--color-amber);color:var(--color-accent-ink)}.board-stage__copy strong{margin-block-start:var(--space-3xs);font-size:clamp(.72rem,2.3vw,1.55rem);font-weight:850}.board-roll-control{inset-block-end:var(--space-sm)}.game-board--loop_24 .board-roll-control{z-index:var(--z-dropdown);margin-block-end:clamp(var(--space-xs), 3vw, var(--space-lg))}.dice-button,.board-roll-control .dice-button{min-height:clamp(3.2rem,7vw,4rem);padding-inline:clamp(var(--space-sm), 3vw, var(--space-lg));border:3px solid var(--color-rule-strong);border-radius:var(--radius-pill);background:var(--color-coral);color:var(--color-accent-ink);box-shadow:0 0 0 4px var(--color-surface), var(--shadow-raised);font-family:var(--font-display);font-size:clamp(var(--text-xs), 1.5vw, var(--text-base));border-block-end-width:6px;font-weight:850}.dice-button[data-state=success]{background:var(--color-amber);color:var(--color-accent-ink)}.dice-roll-overlay{gap:var(--space-xs);border-radius:calc(var(--radius-card) * .9);background:var(--color-overlay-soft);color:var(--color-ink)}.dice-roll-overlay>strong{align-items:center;gap:var(--space-xs);border:2px solid var(--color-rule-strong);background:var(--color-surface);color:var(--color-indigo-deep);box-shadow:var(--shadow-contact);font-size:clamp(var(--text-sm), 2vw, var(--text-md));display:flex}.dice-roll-overlay>strong b{border:2px solid var(--color-rule-strong);border-radius:var(--radius-pill);background:var(--color-coral);width:2.5rem;height:2.5rem;color:var(--color-accent-ink);font-family:var(--font-display);font-size:var(--text-lg);place-items:center;line-height:1;display:grid}.dice-roll-overlay[data-phase=result]>strong{background:var(--color-amber)}.dice-roll-overlay[data-phase=result] .physics-die-stage__burst{opacity:0}.physics-die-stage{perspective:52rem;perspective-origin:50% 32%;width:min(78%,24rem);height:clamp(11rem,34vw,18rem)}.physics-die-stage__floor{border:3px solid var(--color-rule-strong);background:var(--color-amber-soft);opacity:1;border-block-end-width:7px;height:38%;inset:auto 2% 2%}.physics-die-stage__shadow{background:var(--color-shadow);filter:blur(.38rem);height:13%;inset:auto 30% 12%}.physics-die-stage__burst{pointer-events:none;height:42%;animation:die-impact-burst var(--dur-dice) var(--ease-out) both;position:absolute;inset:auto 20% 13%}.physics-die-stage__burst i{border-radius:var(--radius-pill);background:var(--color-coral);transform-origin:50% 100%;width:.22rem;height:34%;position:absolute;inset:auto auto 12% 50%}.physics-die-stage__burst i:first-child{transform:rotate(-78deg)}.physics-die-stage__burst i:nth-child(2){transform:rotate(-54deg)}.physics-die-stage__burst i:nth-child(3){transform:rotate(-28deg)}.physics-die-stage__burst i:nth-child(4){transform:rotate(-9deg)}.physics-die-stage__burst i:nth-child(5){transform:rotate(9deg)}.physics-die-stage__burst i:nth-child(6){transform:rotate(28deg)}.physics-die-stage__burst i:nth-child(7){transform:rotate(54deg)}.physics-die-stage__burst i:nth-child(8){transform:rotate(78deg)}.physics-die__face{gap:clamp(var(--space-3xs), .8vw, var(--space-2xs));padding:clamp(var(--space-xs), 1.8vw, var(--space-sm));border:3px solid var(--color-rule-strong);border-radius:calc(var(--radius-card) * 2.1);background:var(--color-die);box-shadow:inset .28rem .28rem 0 var(--color-surface), inset -.3rem -.3rem 0 var(--color-die-edge), var(--shadow-dice)}.physics-die__face i{border:1px solid var(--color-rule-strong);background:var(--color-pip);width:74%;height:74%;box-shadow:inset 0 -.12rem 0 var(--color-indigo-deep);place-self:center}.physics-die__face--value-1 i.is-visible{background:var(--color-coral);box-shadow:inset 0 -.12rem 0 var(--color-error)}.board-console{border:2px solid var(--color-rule-strong);background:var(--color-indigo-deep);color:var(--color-inverse);box-shadow:var(--shadow-contact);border-block-end-width:4px}.board-console[data-state=rolling],.board-console[data-state=moving]{background:var(--color-indigo);color:var(--color-inverse)}.board-console[data-state=arrived]{border-color:var(--color-rule-strong);background:var(--color-amber);color:var(--color-accent-ink)}.board-console__status>span:last-child{color:inherit;opacity:.82}@keyframes physics-die-orbit{0%{transform:translate3d(-95%, -120%, 0) rotateZ(var(--die-tilt))}12%{transform:translate3d(-52%,-86%,3rem)rotate(8deg)}27%{transform:translate3d(4%,-112%,6rem)rotate(-7deg)}40%{transform:translate(34%,-26%)rotate(5deg)scale(1.04,.94)}52%{transform:translate3d(14%,-72%,3rem)rotate(-4deg)}63%{transform:translate(3%,-8%)rotate(2deg)scale(1.05,.93)}73%{transform:translateY(-15%)}78%{transform:translateY(-7%)scale(1.02,.98)}82%,to{transform:translateY(-10%)}}@keyframes physics-die-spin{0%{transform:rotateX(0)rotateY(0)rotate(0)rotateX(0)rotateY(0)rotate(0)}14%{transform:rotateX(540deg)rotateY(450deg)rotate(135deg)rotateX(0)rotateY(0)rotate(0)}28%{transform:rotateX(1080deg)rotateY(900deg)rotate(270deg)rotateX(0)rotateY(0)rotate(0)}42%{transform:rotateX(1530deg)rotateY(1350deg)rotate(405deg)rotateX(0)rotateY(0)rotate(0)}56%{transform:rotateX(2070deg)rotateY(1800deg)rotate(540deg)rotateX(0)rotateY(0)rotate(0)}70%{transform:rotateX(2520deg)rotateY(2160deg)rotate(630deg)rotateX(0)rotateY(0)rotate(0)}82%,to{transform:rotateX(2880deg)rotateY(2520deg)rotate(720deg)}}@keyframes physics-die-settle{0%{transform:rotateX(0)rotateY(0)rotate(0)}to{transform:var(--die-final)}}@keyframes die-impact-burst{0%,37%,44%,60%,67%,to{opacity:0;transform:scale(.45)}40%,63%{opacity:1;transform:scale(1)}}@keyframes reduced-die-orbit{0%{transform:translate3d(-28%, -38%, 0) rotateZ(var(--die-tilt))}45%{transform:translate3d(14%,-52%,2rem)rotate(-5deg)}75%{transform:translate(2%,-14%)rotate(2deg)scale(1.03,.97)}88%,to{transform:translateY(-10%)}}@keyframes reduced-die-spin{0%{transform:rotateX(0)rotateY(0)rotate(0)rotateX(0)rotateY(0)rotate(0)}25%{transform:rotateX(540deg)rotateY(450deg)rotate(90deg)rotateX(0)rotateY(0)rotate(0)}50%{transform:rotateX(1080deg)rotateY(900deg)rotate(180deg)rotateX(0)rotateY(0)rotate(0)}75%{transform:rotateX(1530deg)rotateY(1260deg)rotate(270deg)rotateX(0)rotateY(0)rotate(0)}88%,to{transform:rotateX(1800deg)rotateY(1440deg)rotate(360deg)}}.play-stage__overlay{border:3px solid var(--color-rule-strong);background:var(--color-overlay)}.library-page,.editor-page{background:var(--color-paper)}.editor-header{border-block-end:3px solid var(--color-rule-strong);background:var(--color-surface);box-shadow:var(--shadow-contact)}.editor-steps,.editor-board,.question-workarea,.settings-editor,.tile-editor,.content-editor{border-width:2px;border-color:var(--color-rule-strong)}.editor-board{box-shadow:var(--shadow-contact)}.auth-page{background:var(--color-sky)}.auth-brand{border-inline-end:3px solid var(--color-rule-strong);border-block-end:3px solid var(--color-rule-strong);background:var(--color-surface);color:var(--color-indigo-deep);box-shadow:var(--shadow-contact)}.auth-panel{border:3px solid var(--color-rule-strong);border-radius:calc(var(--radius-card) * 1.4);box-shadow:var(--shadow-board);border-block-end-width:8px}.auth-panel__intro{background:var(--color-indigo);color:var(--color-inverse);position:relative;overflow:hidden}.auth-panel__intro:before{content:"";border:3px solid var(--color-rule-strong);background:var(--color-grass);border-block-end-width:8px;border-radius:50%;height:46%;position:absolute;inset:auto -8% -18% 36%;transform:rotate(-7deg)}.auth-panel__intro:after{content:"";aspect-ratio:1;border:3px solid var(--color-rule-strong);border-radius:calc(var(--radius-card) * 1.8);background:var(--color-die);width:clamp(3.8rem,11vw,6.5rem);box-shadow:inset -.35rem -.35rem 0 var(--color-die-edge), var(--shadow-toy);position:absolute;inset:auto 10% 9% auto;transform:rotate(12deg)}.auth-panel__intro>*{z-index:var(--z-raised);position:relative}.auth-panel__intro>svg{color:var(--color-amber)}.auth-panel__intro>p,.auth-panel__intro ul{color:var(--color-inverse)}.teacher-auth{background:var(--color-surface)}.room-code-copy strong,.code-input{font-family:var(--font-outlier)}.foot-marquee{border-block-start:3px solid var(--color-rule-strong);background:var(--color-indigo-deep);color:var(--color-inverse)}@media (min-width:40rem){.dashboard-shell{padding-inline:var(--space-md)}.board-workbench{padding:var(--space-md)}.auth-panel__intro{min-height:34rem}}@media (min-width:64rem){.dashboard-shell{grid-template-columns:minmax(15rem,.72fr) minmax(0,2.8fr);grid-template-areas:"intro intro""games board";align-items:start}.workspace-intro{padding-inline:var(--space-md)}.board-workbench{transform:translateY(-.2rem)}}@media (min-width:90rem){.dashboard-shell{grid-template-columns:minmax(16.5rem,.62fr) minmax(42rem,2.9fr)}}@media (hover:hover) and (pointer:fine){.dice-button:hover:not(:disabled){background:var(--color-amber);transform:translateY(-2px)}.board-tile:hover{transform:translateY(-5px)}}@media (pointer:coarse){.dice-button,.board-roll-control .dice-button{min-height:3.75rem}}@media (prefers-reduced-motion:reduce){.physics-die-stage__burst{display:none}.physics-die-orbit{animation-name:reduced-die-orbit!important;animation-duration:var(--dur-dice-reduced)!important;animation-timing-function:var(--ease-out)!important;animation-fill-mode:both!important}.physics-die-orbit.is-rolling .physics-die{animation-name:reduced-die-spin!important;animation-duration:var(--dur-dice-reduced)!important;animation-timing-function:linear!important;animation-fill-mode:backwards!important}.physics-die-orbit.is-settling .physics-die{animation-duration:.3s!important}.physics-die-stage__shadow{opacity:.6;animation:none;transform:scale(.94,.7)}}.board-display-options .select-label,.board-display-options .filter-dropdown{flex-basis:100%}.board-tile{box-shadow:0 .32rem 0 var(--color-indigo-deep), var(--shadow-tile);border-block-end-width:5px}.board-tile__icon{width:clamp(.82rem,2.2vw,1.35rem);height:clamp(.82rem,2.2vw,1.35rem);padding:var(--space-3xs);border:1px solid var(--color-rule-strong);border-radius:var(--radius-pill);background:var(--color-surface)}.token{width:clamp(1.35rem,3.1vw,2.15rem);height:clamp(1.8rem,4.1vw,2.85rem);filter:drop-shadow(0 .16rem 0 var(--color-shadow));margin-inline-start:calc(var(--space-3xs) * -1)}.token__base,.token__avatar,.token__initial{display:block;position:absolute}.token__base{border:2px solid var(--color-rule-strong);border-radius:var(--radius-pill);background:var(--token-color);height:28%;box-shadow:inset 0 .14rem 0 var(--color-surface);inset:auto 8% 0}.token__avatar{transform-origin:50% 100%;background-position:50% 100%;background-repeat:no-repeat;background-size:contain;inset:0 10% 10%}.token--book .token__avatar{background-image:url(/assets/kenney-2d/tokens/book.png)}.token--bulb .token__avatar{background-image:url(/assets/kenney-2d/tokens/bulb.png)}.token--compass .token__avatar{background-image:url(/assets/kenney-2d/tokens/compass.png)}.token--leaf .token__avatar{background-image:url(/assets/kenney-2d/tokens/leaf.png)}.token--rocket .token__avatar{background-image:url(/assets/kenney-2d/tokens/rocket.png)}.token__initial{z-index:var(--z-raised);aspect-ratio:1;border:1px solid var(--color-rule-strong);border-radius:var(--radius-pill);background:var(--color-surface);width:clamp(.72rem,1.5vw,1rem);color:var(--color-ink);place-items:center;font-size:clamp(.38rem,.75vw,.54rem);font-weight:900;line-height:1;display:grid;inset:auto -4% -3% auto}.token--active{outline:0;width:clamp(1.55rem,3.6vw,2.45rem);height:clamp(2.1rem,4.8vw,3.2rem)}.token--active:after{content:"";z-index:-1;border:3px solid var(--color-amber);border-radius:var(--radius-pill);background:var(--color-surface);position:absolute;inset:-6% -8% 0}.token.is-moving{width:clamp(2.35rem,5vw,3.4rem);height:clamp(3.15rem,6.6vw,4.5rem);filter:drop-shadow(0 .34rem 0 var(--color-shadow))}.token.is-moving .token__avatar{transform:translateY(-.08rem)}.board-stage{background-image:linear-gradient(180deg, var(--color-sky) 0 42%, var(--color-grass) 42% 100%);overflow:hidden}.game-board--space_lab .board-stage{background-image:linear-gradient(180deg, var(--color-indigo-deep), var(--color-violet))}.game-board--eco_expedition .board-stage{background-image:linear-gradient(180deg, var(--color-sky) 0 38%, var(--color-teal-soft) 38% 100%)}.board-scenery{z-index:var(--z-base);pointer-events:none;position:absolute;inset:22% 4% 3%}.board-scenery__ground,.board-scenery__item{filter:drop-shadow(0 .18rem 0 var(--color-shadow));background-position:50% 100%;background-repeat:no-repeat;background-size:contain;display:block;position:absolute}.board-scenery__ground{height:48%;inset:auto 10% 1%}.board-scenery--campus .board-scenery__ground{opacity:.62;background-image:url(/assets/kenney-2d/eco/grass.png);background-repeat:repeat-x;background-size:28%}.board-scenery--campus .board-scenery__item--one{background-image:url(/assets/kenney-2d/campus/school.png);width:35%;height:54%;inset:auto auto 10% 4%}.board-scenery--campus .board-scenery__item--two{background-image:url(/assets/kenney-2d/campus/lab.png);width:33%;height:50%;inset:auto 5% 14% auto}.board-scenery--campus .board-scenery__item--three{background-image:url(/assets/kenney-2d/campus/hall.png);width:28%;height:42%;inset:auto auto 1% 37%}.board-scenery--campus .board-scenery__item--four{background-image:url(/assets/kenney-2d/eco/tree.png);width:16%;height:38%;inset:auto 30% 20% auto}.board-scenery--eco_expedition .board-scenery__ground{opacity:.78;background-image:url(/assets/kenney-2d/eco/grass.png);background-repeat:repeat-x;background-size:28%;height:56%;inset-inline:4%}.board-scenery--eco_expedition .board-scenery__item--one{background-image:url(/assets/kenney-2d/eco/pond.png);width:48%;height:38%;inset:auto auto 0 26%}.board-scenery--eco_expedition .board-scenery__item--two{background-image:url(/assets/kenney-2d/eco/tree.png);width:20%;height:58%;inset:auto auto 14% 5%}.board-scenery--eco_expedition .board-scenery__item--three{background-image:url(/assets/kenney-2d/eco/pine.png);width:18%;height:56%;inset:auto 6% 13% auto}.board-scenery--eco_expedition .board-scenery__item--four{background-image:url(/assets/kenney-2d/eco/plant.png);width:18%;height:27%;inset:auto auto 5% 18%}.board-scenery--space_lab .board-scenery__ground{opacity:.88;background-image:url(/assets/kenney-2d/space/planet.png);width:56%;height:88%;inset:auto auto -30% -10%}.board-scenery--space_lab .board-scenery__item{filter:drop-shadow(0 .18rem 0 var(--color-ink))}.board-scenery--space_lab .board-scenery__item--one{background-image:url(/assets/kenney-2d/space/station.png);width:11%;height:18%;inset:35% 29% auto auto}.board-scenery--space_lab .board-scenery__item--two{background-image:url(/assets/kenney-2d/space/satellite.png);width:10%;height:16%;inset:20% 9% auto auto}.board-scenery--space_lab .board-scenery__item--three{background-image:url(/assets/kenney-2d/space/ship.png);width:14%;height:22%;inset:auto 7% 6% auto;transform:rotate(-12deg)}.board-scenery--space_lab .board-scenery__item--four{aspect-ratio:1;border-radius:var(--radius-pill);background:var(--color-surface);width:3%;box-shadow:2.3rem .8rem 0 var(--color-amber), 4.1rem -.35rem 0 var(--color-surface);inset:9% auto auto 26%}.board-stage__copy{z-index:var(--z-raised);inset:7% 14% auto}.game-board--space_lab .board-stage__copy{color:var(--color-inverse);text-shadow:0 1px 0 var(--color-ink)}.game-board--space_lab .board-stage__copy>span:last-child{color:var(--color-inverse)}.game-board--compact .token,.game-board--compact .board-scenery{filter:none}.board-pocket{z-index:var(--z-base);border:2px solid var(--color-rule-strong);border-radius:var(--radius-card);background:var(--color-grass);box-shadow:0 .3rem 0 var(--color-indigo-deep);border-block-end-width:5px;grid-area:3/2;position:relative;overflow:hidden}.board-pocket span{filter:drop-shadow(0 .16rem 0 var(--color-shadow));background-position:50% 100%;background-repeat:no-repeat;background-size:contain;display:block;position:absolute;inset:8%}.board-pocket--campus span{background-image:url(/assets/kenney-2d/campus/hall.png)}.board-pocket--space_lab{background:var(--color-indigo-deep)}.board-pocket--space_lab span{background-image:url(/assets/kenney-2d/space/planet.png);inset:-8%}.board-pocket--eco_expedition{background:var(--color-teal-soft)}.board-pocket--eco_expedition span{background-image:url(/assets/kenney-2d/eco/tree.png)}@media (prefers-reduced-motion:reduce){.token.is-moving .token__avatar{transform:none}}.library-dropdowns{gap:var(--space-xs);flex-wrap:nowrap;display:flex}.filter-dropdown{flex:1 1 0;min-width:0;max-width:50%;display:flex;position:relative}.filter-dropdown__trigger{align-items:center;gap:var(--space-2xs);width:100%;min-width:0;min-height:3rem;padding-inline:var(--space-xs);border:2px solid var(--color-rule-strong);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-ink);box-shadow:var(--shadow-contact);font-size:var(--text-sm);cursor:pointer;transition:background-color var(--dur-short) var(--ease-out), border-color var(--dur-short) var(--ease-out);font-weight:750;display:flex}.filter-dropdown__trigger>svg:first-child{width:1.05rem;height:1.05rem;color:var(--color-muted);flex:none}.filter-dropdown__trigger>span{text-overflow:ellipsis;white-space:nowrap;text-align:start;flex:1;min-width:0;overflow:hidden}.filter-dropdown__chevron{width:1rem;height:1rem;color:var(--color-muted);transition:transform var(--dur-short) var(--ease-out);flex:none}.filter-dropdown[data-open=true] .filter-dropdown__chevron{transform:rotate(180deg)}.filter-dropdown.is-active .filter-dropdown__trigger{border-color:var(--color-indigo-deep);background:var(--color-indigo-soft)}.filter-dropdown.is-active .filter-dropdown__trigger>svg:first-child,.filter-dropdown.is-active .filter-dropdown__chevron{color:var(--color-indigo-deep)}.filter-popover{z-index:var(--z-dropdown);width:max-content;min-width:100%;max-width:min(calc(100vw - var(--space-xl)), 18rem);max-height:min(100dvh - 12rem,24rem);padding:var(--space-2xs);border:2px solid var(--color-rule-strong);border-radius:var(--radius-sm);background:var(--color-surface);box-shadow:var(--shadow-board);position:absolute;inset-block-start:calc(100% + var(--space-2xs));inset-inline-start:0;overflow-y:auto}.filter-popover--end{inset-inline:auto 0}.filter-popover-anchor{z-index:var(--z-dropdown);pointer-events:none;position:fixed;inset-block-start:0;inset-inline-start:0}.filter-popover-anchor>.filter-popover{pointer-events:auto}.filter-popover__group-label{padding:var(--space-2xs) var(--space-sm) var(--space-3xs);color:var(--color-muted);font-family:var(--font-label);font-size:var(--text-xs);letter-spacing:.06em;font-weight:800;display:block}.filter-dropdown__trigger>span,.filter-popover__option>span{font-family:var(--font-display)}.filter-popover__option{align-items:center;gap:var(--space-2xs);width:100%;min-width:0;min-height:2.75rem;padding-inline:var(--space-sm);border-radius:var(--radius-xs);color:var(--color-ink);font-size:var(--text-sm);text-align:start;cursor:pointer;background:0 0;border:0;font-weight:700;display:flex}.filter-popover__check{width:1rem;height:1rem;color:var(--color-success);opacity:0;flex:none}.filter-popover__option.is-selected .filter-popover__check{opacity:1}.select-menu{width:100%}.select-menu .filter-dropdown{flex:auto;min-width:0;max-width:100%}.select-menu .filter-dropdown__trigger{min-height:2.75rem}.select-menu .filter-dropdown__trigger.is-disabled{cursor:not-allowed;opacity:.6;box-shadow:none}.filter-popover__group-label:empty{display:none}.filter-popover__option.is-selected{color:var(--color-indigo-deep);font-weight:800}.active-filters{align-items:center;gap:var(--space-xs);flex-wrap:wrap;grid-column:1/-1;display:flex}.active-filters__chip{align-items:center;gap:var(--space-2xs);min-height:2.75rem;padding-inline:var(--space-sm) var(--space-xs);border:2px solid var(--color-rule-strong);border-radius:var(--radius-pill);background:var(--color-amber-soft);color:var(--color-accent-ink);font-size:var(--text-xs);box-shadow:var(--shadow-contact);cursor:pointer;transition:background-color var(--dur-short) var(--ease-out), transform var(--dur-micro) var(--ease-out);font-weight:750;display:inline-flex}.active-filters__chip svg{width:.85rem;height:.85rem}.active-filters__chip:active{transform:translateY(1px)}.active-filters__reset{min-height:2.75rem}.library-empty{justify-items:center;gap:var(--space-2xs);padding:var(--space-2xl) var(--space-md);border:2px dashed var(--color-rule-strong);border-radius:var(--radius-card);background:var(--color-paper-2);text-align:center;display:grid}.library-empty>svg{width:2.25rem;height:2.25rem;color:var(--color-indigo-deep);margin-block-end:var(--space-2xs)}.library-empty strong{font-size:var(--text-md)}.library-empty p{max-width:42ch;color:var(--color-muted);font-size:var(--text-sm)}.library-empty .button{margin-block-start:var(--space-sm)}@media (min-width:40rem){.library-dropdowns{justify-content:flex-end}}@media (hover:hover) and (pointer:fine){.filter-dropdown__trigger:hover{background:var(--color-paper-2)}.filter-dropdown.is-active .filter-dropdown__trigger:hover{background:var(--color-indigo-soft)}.filter-popover__option:hover{background:var(--color-paper-2)}.active-filters__chip:hover{background:var(--color-amber)}}.workspace-intro h1,.library-hero h1{font-size:var(--text-hero);letter-spacing:-.035em;line-height:1.06}.workspace-intro p,.library-hero p{font-size:var(--text-base);color:var(--color-ink-soft);line-height:1.6}.workspace-date{font-size:var(--text-sm);letter-spacing:.04em;font-weight:650}.board-workbench__header h2{font-size:var(--text-title);line-height:1.08}.board-workbench__header p{font-size:var(--text-body);color:var(--color-ink-soft);line-height:1.55}.panel-heading h2,.library-results h2,.question-editor h2,.editor-board h2{font-size:var(--text-section);letter-spacing:-.02em}.library-card__body h3{font-size:var(--text-md);line-height:1.25}.library-card__body p{font-size:var(--text-body);line-height:1.55}.game-list-item__copy strong{font-size:var(--text-sm);letter-spacing:-.01em}.button,.google-oauth-button,.icon-button,.mobile-menu-button,.active-filters__chip{transition:background-color var(--dur-short) var(--ease-out), color var(--dur-short) var(--ease-out), transform var(--dur-micro) var(--ease-out), box-shadow var(--dur-short) var(--ease-out)}.button:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}.google-oauth-button:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}.icon-button:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}.mobile-menu-button:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}.active-filters__chip:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}.segmented-control button:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}.filter-dropdown__trigger:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}@media (hover:hover) and (pointer:fine){.button:hover,.google-oauth-button:hover,.icon-button:hover,.mobile-menu-button:hover,.text-button:hover,.active-filters__chip:hover,.filter-dropdown__trigger:hover{transform:translateY(-2px)}.button--quiet:hover,.icon-button:hover,.mobile-menu-button:hover{background:var(--color-paper-3)}.text-button:hover{background:var(--color-indigo-soft);color:var(--color-indigo-deep)}.button--outline:hover{background:var(--color-indigo-soft)}.filter-dropdown__trigger:hover{background:var(--color-paper-2)}}.button:active,.google-oauth-button:active,.icon-button:active,.mobile-menu-button:active,.active-filters__chip:active,.filter-dropdown__trigger:active{transform:translateY(1px)}.question-form input,.question-form textarea,.create-form input,.join-form input{border:2px solid var(--color-rule-strong);border-radius:var(--radius-md)}.form-row .rule-settings__note{align-items:center}.game-library-panel,.board-workbench,.library-card,.question-editor,.editor-board,.settings-editor,.tile-editor{transition:transform var(--dur-short) var(--ease-out), box-shadow var(--dur-short) var(--ease-out)}.library-card{border:2px solid var(--color-rule-strong);box-shadow:var(--shadow-contact);border-block-end-width:5px}.library-card:hover{box-shadow:var(--shadow-raised);transform:translateY(-3px)}.game-list-item{transition:background-color var(--dur-short) var(--ease-out), transform var(--dur-micro) var(--ease-out), border-color var(--dur-short) var(--ease-out)}.library-tools{gap:var(--space-md);align-items:end}.search-field{border-radius:var(--radius-md);min-height:3.25rem}.search-field input{font-size:var(--text-body)}.filter-dropdown__trigger{border-radius:var(--radius-md);min-height:3.25rem}.library-results__head{align-items:baseline;margin-block-end:var(--space-md)}.library-results__head h2{font-size:var(--text-section)}.status-badge{font-size:var(--text-xs);letter-spacing:.02em}@media (max-width:39.99rem){.workspace-intro__actions{width:100%}.workspace-intro__actions .button{flex:auto;justify-content:center}.library-card__actions .button{min-height:2.75rem}}.home-join{background:radial-gradient(24rem 24rem at 85% 12%, var(--color-amber-soft), transparent 60%), radial-gradient(20rem 20rem at 8% 88%, var(--color-teal-soft), transparent 60%), var(--color-paper);grid-template-rows:auto minmax(0,1fr);height:100dvh;min-height:100dvh;display:grid;overflow:hidden}.home-join__brand{justify-content:space-between;align-items:center;gap:var(--space-md);min-height:4.25rem;padding-inline:var(--space-md);border-block-end:3px solid var(--color-rule-strong);background:var(--color-surface);box-shadow:var(--shadow-contact);display:flex}.home-join__logo{align-items:center;gap:var(--space-sm);color:var(--color-indigo-deep);font-family:var(--font-display);font-size:var(--text-base);letter-spacing:.035em;font-weight:800;text-decoration:none;display:inline-flex}.home-join__logo-glyph{border:2px solid var(--color-rule-strong);border-radius:var(--radius-sm);background:var(--color-amber);width:2rem;height:2rem;box-shadow:var(--shadow-contact);place-items:center;display:grid}.home-join__teacher-link{align-items:center;gap:var(--space-2xs);min-height:2.75rem;padding-inline:var(--space-sm);border:2px solid var(--color-rule-strong);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-ink);font-size:var(--text-sm);box-shadow:var(--shadow-contact);transition:background-color var(--dur-short) var(--ease-out), transform var(--dur-micro) var(--ease-out);font-weight:750;text-decoration:none;display:inline-flex}.home-join__teacher-link svg{width:1rem}@media (hover:hover) and (pointer:fine){.home-join__teacher-link:hover{background:var(--color-indigo-soft);transform:translateY(-1px)}}.home-join__stage{align-items:center;gap:var(--space-xl);width:min(100%,72rem);padding:var(--space-2xl) var(--space-md);grid-template-columns:minmax(0,1fr);margin-inline:auto;display:grid}.home-join__hero{text-align:center}.home-join__eyebrow{align-items:center;gap:var(--space-2xs);padding:var(--space-2xs) var(--space-sm);border:2px solid var(--color-rule-strong);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-indigo-deep);font-size:var(--text-xs);letter-spacing:.03em;box-shadow:var(--shadow-contact);font-weight:800;display:inline-flex}.home-join__eyebrow svg{width:1rem}.home-join__hero h1{margin-block:var(--space-md) var(--space-sm);letter-spacing:-.04em;color:var(--color-indigo-deep);font-size:clamp(2.4rem,7vw,4.2rem);font-weight:800;line-height:1.04}.home-join__hero p{color:var(--color-ink-soft);font-size:var(--text-base);line-height:1.6}.home-join__panel{width:min(100%,30rem);padding:var(--space-xl) var(--space-lg);border:3px solid var(--color-rule-strong);border-radius:calc(var(--radius-card) * 1.5);background:var(--color-surface);box-shadow:var(--shadow-board);text-align:center;border-block-end-width:8px;justify-self:center;position:relative}.home-join__panel-mark{width:3.5rem;height:3.5rem;margin:0 auto var(--space-md);border:2px solid var(--color-rule-strong);border-radius:var(--radius-card);background:var(--color-coral);color:var(--color-accent-ink);box-shadow:var(--shadow-toy);place-items:center;display:grid;transform:rotate(-6deg)}.home-join__panel-mark svg{width:1.6rem}.home-join__form{gap:var(--space-sm);display:grid}.home-join__code-field{display:block}.home-join__code-input{width:100%;min-height:5rem;padding-inline:var(--space-sm);border:3px solid var(--color-rule-strong);border-radius:var(--radius-md);background:var(--color-paper);color:var(--color-ink);font-family:var(--font-outlier);letter-spacing:.28em;text-align:center;text-transform:uppercase;caret-color:var(--color-indigo-deep);transition:border-color var(--dur-short) var(--ease-out), box-shadow var(--dur-short) var(--ease-out);font-size:clamp(2rem,8vw,3rem);font-weight:800}.home-join__code-input::placeholder{color:var(--color-muted);opacity:.4}.home-join__code-input:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}.home-join__code-input.is-complete{border-color:var(--color-success);box-shadow:var(--shadow-contact)}.home-join__code-input.is-missing{border-color:var(--color-error);background:var(--color-error-soft);animation:home-join-shake var(--dur-short) var(--ease-out)}@keyframes home-join-shake{0%,to{transform:translate(0)}25%{transform:translate(-6px)}75%{transform:translate(6px)}}.home-join__status{min-height:1.5em;color:var(--color-muted);font-size:var(--text-sm)}.home-join__status-dot{width:.6rem;height:.6rem;border-radius:var(--radius-pill);background:var(--color-success);vertical-align:baseline;animation:home-join-pulse 1s var(--ease-in-out) infinite;margin-inline-end:var(--space-2xs);display:inline-block}.home-join__status-dot.is-loading{background:var(--color-amber)}@keyframes home-join-pulse{0%,to{opacity:1}50%{opacity:.3}}.home-join__nickname{gap:var(--space-2xs);text-align:start;font-size:var(--text-sm);font-weight:700;display:grid}.home-join__nickname input{width:100%;min-height:3rem;padding-inline:var(--space-sm);border:2px solid var(--color-rule-strong);border-radius:var(--radius-sm);background:var(--color-paper);font-weight:450}.home-join__error{color:var(--color-error);font-size:var(--text-sm);font-weight:700}.home-join__submit{justify-content:center;align-items:center;gap:var(--space-xs);min-height:3.5rem;padding-inline:var(--space-md);border:2px solid var(--color-rule-strong);border-radius:var(--radius-md);background:var(--color-indigo);color:var(--color-inverse);font-size:var(--text-md);box-shadow:var(--shadow-contact);cursor:pointer;transition:background-color var(--dur-short) var(--ease-out), transform var(--dur-micro) var(--ease-out);border-block-end-width:5px;font-weight:800;display:inline-flex}.home-join__submit svg{width:1.2rem}.home-join__submit:disabled{cursor:not-allowed;opacity:.55}@media (hover:hover) and (pointer:fine){.home-join__submit:hover:not(:disabled){background:var(--color-indigo-deep);transform:translateY(-2px)}}.home-join__submit:active:not(:disabled){transform:translateY(1px)}@media (min-width:48rem){.home-join__stage{gap:var(--space-xl);grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}.home-join__hero{text-align:start}}@media (prefers-reduced-motion:reduce){.home-join__code-input.is-missing{animation:none}}.home-join{height:100dvh;min-height:100dvh;overflow:hidden}.home-join__stage{align-content:center;height:100%;min-height:0;overflow-y:auto}.home-join__hero h1{font-size:clamp(2rem,6vw,3.6rem)}.home-join__hero p{font-size:var(--text-sm);line-height:1.5}.home-join__panel{padding:var(--space-lg) var(--space-md)}.home-join__code-input{min-height:4.25rem;font-size:clamp(1.8rem,7vw,2.6rem)}.home-join__submit{min-height:3.25rem;font-size:var(--text-md)}@media (max-width:47.99rem){.home-join__stage{gap:var(--space-md);padding-block:var(--space-lg)}.home-join__hero h1{margin-block:var(--space-sm) var(--space-xs);font-size:clamp(1.7rem,7vw,2.2rem)}.home-join__hero p{font-size:var(--text-xs)}.home-join__panel{padding:var(--space-md)}.home-join__panel-mark{width:2.75rem;height:2.75rem;margin-block-end:var(--space-sm)}.home-join__code-input{letter-spacing:.22em;min-height:3.75rem;font-size:clamp(1.6rem,6.5vw,2.2rem)}.home-join__submit{min-height:3rem;font-size:var(--text-sm)}}@media (max-width:25rem){.home-join__stage{gap:var(--space-sm);padding-block:var(--space-md)}.home-join__hero h1{font-size:1.55rem}.home-join__hero p{line-height:1.4}.home-join__panel{padding:var(--space-sm);border-block-end-width:6px}.home-join__code-input{letter-spacing:.18em;min-height:3.25rem;font-size:1.45rem}.home-join__submit{min-height:2.75rem}}@media (max-width:25rem) and (max-height:40rem){.home-join__stage{padding-block:var(--space-sm)}.home-join__hero h1{margin-block:var(--space-2xs) var(--space-2xs)}.home-join__panel-mark{display:none}}@media (min-width:48rem) and (max-height:41rem){.home-join__stage{gap:var(--space-md);padding-block:var(--space-md)}.home-join__hero h1{margin-block:var(--space-sm) var(--space-xs)}.home-join__hero p{line-height:1.4}.home-join__panel{padding:var(--space-md)}}.player-view{background:radial-gradient(22rem 22rem at 88% 8%, var(--color-amber-soft), transparent 60%), var(--color-paper);grid-template-rows:auto minmax(0,1fr);min-height:100dvh;display:grid}.player-view__logo{border:2px solid var(--color-rule-strong);border-radius:var(--radius-sm);background:var(--color-amber);width:2rem;height:2rem;color:var(--color-accent-ink);font-family:var(--font-display);box-shadow:var(--shadow-contact);flex:none;place-items:center;font-weight:800;display:grid}.player-view__bar-left strong{text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-sm);font-weight:800;overflow:hidden}.player-view__code{padding:var(--space-2xs) var(--space-sm);border:2px solid var(--color-rule-strong);border-radius:var(--radius-pill);background:var(--color-indigo-soft);color:var(--color-indigo-deep);font-family:var(--font-outlier);font-size:var(--text-xs);letter-spacing:.04em;flex:none;font-weight:700}.player-view__board{isolation:isolate;width:min(100%,72rem);padding:var(--space-md);place-self:center;position:relative}.player-view__board .game-board{box-shadow:var(--shadow-board)}.host-roster{gap:var(--space-2xs);border-block-start:1px dashed var(--color-rule);margin-block-start:var(--space-sm);padding-block-start:var(--space-sm);display:grid}.host-roster__head{justify-content:space-between;align-items:center;gap:var(--space-xs);font-size:var(--text-xs);color:var(--color-ink-soft);font-weight:800;display:flex}.host-roster__head span:last-child{color:var(--color-muted);font-weight:650}.host-roster__list{gap:var(--space-2xs);display:grid}.host-roster__player{align-items:center;gap:var(--space-2xs);min-height:2.25rem;padding-inline:var(--space-xs);border:1px solid var(--color-rule);border-radius:var(--radius-sm);background:var(--color-surface);font-size:var(--text-xs);display:flex}.host-roster__player.is-host{border-color:var(--color-amber);background:var(--color-amber-soft);font-weight:800}.host-roster__player.is-offline{opacity:.5}.host-roster__dot{border-radius:var(--radius-pill);background:var(--color-success);flex:none;width:.5rem;height:.5rem}.host-roster__player.is-offline .host-roster__dot{background:var(--color-muted)}.host-roster__player span:nth-child(2){text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.host-roster__player em{color:var(--color-indigo-deep);font-style:normal;font-weight:750}.host-roster__player.is-host em{color:var(--color-accent-ink)}.player-view__layout{gap:var(--space-md);width:min(100%,76rem);padding:var(--space-md);place-self:center;display:grid}.player-view__bar{justify-content:space-between;align-items:center;gap:var(--space-sm);min-height:3.75rem;padding-inline:var(--space-md);border-block-end:3px solid var(--color-rule-strong);background:var(--color-surface);box-shadow:var(--shadow-contact);display:flex}.player-view__bar-left{align-items:center;gap:var(--space-sm);min-width:0;display:inline-flex}.player-view__me{align-items:center;gap:var(--space-2xs);min-height:2.25rem;padding-inline:var(--space-xs);border:2px solid var(--color-rule-strong);border-radius:var(--radius-pill);background:var(--color-indigo-soft);font-size:var(--text-xs);box-shadow:var(--shadow-contact);font-weight:800;display:inline-flex}.player-view__me-avatar{border:2px solid var(--color-rule-strong);border-radius:var(--radius-pill);background:var(--color-paper);place-items:center;width:1.5rem;height:1.5rem;font-size:.75rem;font-weight:800;display:grid}.player-view__me-score{color:var(--color-indigo-deep)}.player-roster{border:2px solid var(--color-rule-strong);border-radius:var(--radius-md);background:var(--color-surface);min-height:0;box-shadow:var(--shadow-contact);flex-direction:column;display:flex;overflow:hidden}.player-roster__head{justify-content:space-between;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);border-block-end:2px solid var(--color-rule-strong);background:var(--color-ink);color:var(--color-inverse);font-size:var(--text-xs);font-weight:800;display:flex}.player-roster__list{gap:var(--space-2xs);padding:var(--space-xs);display:grid;overflow-y:auto}.player-roster__player{align-items:center;gap:var(--space-2xs);min-height:2.25rem;padding-inline:var(--space-xs);border:1px solid var(--color-rule);border-radius:var(--radius-sm);background:var(--color-paper);font-size:var(--text-xs);display:flex}.player-roster__player.is-me{border-color:var(--color-indigo);background:var(--color-indigo-soft)}.player-roster__player.is-host{border-color:var(--color-amber);background:var(--color-amber-soft)}.player-roster__player.is-offline{opacity:.5}.player-roster__avatar{border:2px solid var(--color-rule-strong);border-radius:var(--radius-pill);background:var(--color-surface);flex:none;place-items:center;width:1.5rem;height:1.5rem;font-size:.75rem;font-weight:800;display:grid}.player-roster__name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:700;overflow:hidden}.player-roster__name em{padding:1px var(--space-2xs);border-radius:var(--radius-pill);background:var(--color-ink);color:var(--color-inverse);margin-inline-start:var(--space-2xs);font-size:.65rem;font-style:normal;font-weight:800}.player-roster__name em:has(+em){margin-inline-start:0}.player-roster__score{color:var(--color-indigo-deep);font-family:var(--font-outlier);flex:none;font-weight:750}.player-roster__empty{padding:var(--space-sm);color:var(--color-muted);font-size:var(--text-xs);text-align:center}@media (min-width:56rem){.player-view__layout{grid-template-columns:minmax(0,1fr) 15rem;align-items:start}.player-roster{top:var(--space-md);max-height:min(60dvh,26rem);position:sticky}}@media (max-width:25rem){.player-view__bar{gap:var(--space-2xs);padding-inline:var(--space-xs)}.player-view__me-name{text-overflow:ellipsis;white-space:nowrap;max-width:4rem;overflow:hidden}}.workspace-empty{justify-items:center;gap:var(--space-xs);min-height:100%;padding:var(--space-xl);text-align:center;grid-column:1/-1;align-content:center;display:grid}.workspace-empty__mark{border:3px solid var(--color-rule-strong);border-radius:var(--radius-lg);background:var(--color-amber-soft);width:4rem;height:4rem;color:var(--color-accent-ink);box-shadow:var(--shadow-contact);place-items:center;display:grid}.workspace-empty__mark svg{width:2rem;height:2rem}.workspace-empty h1{font-size:var(--text-title);font-weight:850}.workspace-empty p{max-width:34rem;color:var(--color-ink-soft);font-size:var(--text-body);line-height:1.6}@keyframes data-swap-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.data-swap{animation:data-swap-in .32s var(--ease-out) both}.board-empty{align-content:center;justify-items:center;gap:var(--space-sm);min-height:22rem;padding:var(--space-lg);text-align:center;display:grid}.board-empty h1{font-size:var(--text-title);font-weight:850}.board-empty p{max-width:30rem;color:var(--color-ink-soft);font-size:var(--text-sm);line-height:1.6}.room-lounge{min-height:100vh;padding:var(--space-md);background:linear-gradient(180deg, var(--color-indigo-deep), var(--color-indigo));color:var(--color-inverse);flex-direction:column;display:flex}.room-lounge__bar{justify-content:space-between;align-items:center;gap:var(--space-md);padding-block-end:var(--space-md);display:flex}.room-lounge__bar>div{align-items:center;gap:var(--space-sm);display:flex}.room-lounge__bar strong{font-size:var(--text-lg);font-weight:800}.room-lounge__status{padding:var(--space-2xs) var(--space-sm);border:1px solid color-mix(in srgb, var(--color-inverse) 35%, transparent);border-radius:var(--radius-pill);font-size:var(--text-xs);color:var(--color-inverse);font-weight:750}.room-lounge__body{gap:var(--space-lg);margin-block:var(--space-md);grid-template-columns:minmax(0,22rem) minmax(0,1fr);align-items:start;display:grid}.room-lounge__invite,.room-lounge__roster{gap:var(--space-md);padding:var(--space-lg);border:2px solid var(--color-rule-strong);border-radius:var(--radius-card);background:var(--color-surface);color:var(--color-ink);box-shadow:var(--shadow-board);display:grid}.room-lounge__invite h2,.room-lounge__roster h2{color:var(--color-indigo-deep);font-size:var(--text-lg);margin:0;font-weight:800}.room-lounge__invite>p{color:var(--color-ink-soft);font-size:var(--text-sm);margin:0;line-height:1.5}.room-lounge__expiry{border-block-start:1px dashed var(--color-rule);margin:0;padding-block-start:var(--space-sm);color:var(--color-muted)!important;font-size:var(--text-xs)!important}.room-lounge__roster-head{justify-content:space-between;align-items:baseline;gap:var(--space-sm);display:flex}.room-lounge__roster-head span{color:var(--color-muted);font-size:var(--text-xs);font-weight:650}.room-lounge__roster .room-roster__list{gap:var(--space-2xs);max-height:24rem;margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.room-lounge__roster .room-roster__player{align-items:center;gap:var(--space-sm);padding:var(--space-sm);border:1px solid var(--color-rule);border-radius:var(--radius-sm);background:var(--color-paper-2);font-size:var(--text-sm);font-weight:650;display:flex}.room-lounge__roster .room-roster__player.is-host{border-color:var(--color-amber);background:var(--color-amber-soft)}.room-lounge__roster .room-roster__player.is-offline{opacity:.5}.room-lounge__roster .room-roster__player em{color:var(--color-muted);margin-inline-start:auto;font-style:normal;font-weight:700}.room-lounge__empty{padding:var(--space-md);border:2px dashed var(--color-rule-strong);border-radius:var(--radius-card);color:var(--color-muted);font-size:var(--text-sm);text-align:center;margin:0}.room-lounge__footer{justify-content:space-between;align-items:center;gap:var(--space-md);border-block-start:1px solid color-mix(in srgb, var(--color-inverse) 25%, transparent);margin-block-start:auto;padding-block-start:var(--space-md);display:flex}.room-lounge__hint{color:var(--color-inverse);font-size:var(--text-sm);opacity:.85}.room-lounge__footer .button--ink{background:var(--color-amber);color:var(--color-accent-ink);border-color:var(--color-amber)}.room-lounge__footer .button--ink:disabled{opacity:.5;cursor:not-allowed}@media (max-width:44rem){.room-lounge__body{grid-template-columns:1fr}}.game-board--edit .board-tile{box-shadow:var(--shadow-tile)}.game-board--edit .board-tile.is-clickable{cursor:pointer}.game-board--edit .board-tile__label{display:inline}.board-tile__mark{z-index:var(--z-raised);border:1px solid var(--color-ink);width:clamp(.7rem,1.8vw,1.05rem);height:clamp(.7rem,1.8vw,1.05rem);box-shadow:var(--shadow-contact);border-radius:999px;place-items:center;display:grid;position:absolute;inset-block-start:.12rem;inset-inline-end:.12rem}.board-tile__mark--question{background:var(--color-indigo);color:var(--color-inverse)}.board-tile__mark--card{background:var(--color-coral);color:var(--color-accent-ink)}.board-tile__mark svg{width:70%;height:70%}.game-board--edit .board-tile.is-selected{z-index:var(--z-raised);outline:3px solid var(--color-focus);outline-offset:2px;transform:translateY(-2px)}.game-board--edit .board-tile:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}@media (hover:hover) and (pointer:fine){.game-board--edit .board-tile.is-clickable:hover:not(.is-selected){outline:2px solid var(--color-indigo);outline-offset:2px}}.app-dialog.create-dialog{width:min(100% - 2rem,56rem)}.create-dialog__grid{gap:var(--space-lg);display:grid}.create-preview{align-content:start;gap:var(--space-sm);padding:var(--space-md);border:var(--rule-hairline);border-radius:var(--radius-sm);background:var(--color-paper);display:grid}.create-preview .game-board-frame{width:min(100%,22rem);margin-inline:auto}.create-preview__meta{gap:var(--space-3xs);text-align:center;display:grid}.create-preview__meta strong{font-family:var(--font-display);font-size:var(--text-md)}.create-preview__meta small{color:var(--color-muted);font-size:var(--text-xs)}.tile-legend{justify-content:center;gap:var(--space-xs);flex-wrap:wrap;display:flex}.tile-legend__chip{align-items:center;gap:var(--space-2xs);padding:var(--space-2xs) var(--space-xs);border:var(--rule-hairline);background:var(--color-surface);font-size:var(--text-xs);border-radius:999px;display:inline-flex}.tile-legend__chip svg{width:.85rem;height:.85rem}.tile-legend__chip strong{font-family:var(--font-label);font-size:var(--text-xs)}.tile-legend__chip small{color:var(--color-muted)}.tile-legend__chip--quiz svg,.tile-legend__chip--start svg{color:var(--color-indigo-deep)}.tile-legend__chip--bonus svg{color:var(--color-accent-ink)}.tile-legend__chip--event svg{color:var(--color-error)}.tile-legend__chip--rest svg{color:var(--color-grass-deep)}@media (min-width:48rem){.create-dialog__grid{grid-template-columns:minmax(0,1fr) minmax(14rem,.8fr);align-items:start}}@media (max-width:79.99rem){.editor-content{order:3}.editor-board{order:2}}.content-tile-editor{align-content:start;gap:var(--space-md);display:grid}.content-tile-editor__coverage{align-items:center;gap:var(--space-2xs);padding:var(--space-2xs) var(--space-xs);border:var(--rule-hairline);background:var(--color-paper);color:var(--color-muted);font-size:var(--text-xs);border-radius:999px;font-weight:750;display:inline-flex}.content-tile-editor__tile{align-items:center;gap:var(--space-sm);min-width:0;padding:var(--space-sm) var(--space-md);border:var(--rule-hairline);border-radius:var(--radius-sm);background:var(--color-paper);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.content-tile-editor__type{gap:var(--space-2xs);width:8.5rem;min-width:0;display:grid}.content-tile-editor__type>small{color:var(--color-muted);font-size:var(--text-xs);font-weight:700}.content-tile-editor__type-fixed{border:var(--rule-hairline);border-radius:var(--radius-sm);background:var(--color-surface);min-height:2.75rem;font-size:var(--text-sm);place-items:center;font-weight:750;display:grid}.pool-bank{gap:var(--space-sm);border-block-start:var(--rule-hairline);padding-block-start:var(--space-md);display:grid}.pool-bank__head{justify-content:space-between;align-items:baseline;gap:var(--space-xs) var(--space-sm);flex-wrap:wrap;display:flex}.pool-bank__head h3{font-size:var(--text-sm);font-weight:800}.pool-bank__head p{color:var(--color-muted);font-size:var(--text-xs);margin-block-start:var(--space-2xs)}.pool-bank__list{gap:var(--space-xs);margin:0;padding:0;list-style:none;display:grid}.pool-bank__list button{align-items:center;gap:var(--space-sm);width:100%;padding:var(--space-xs) var(--space-sm);border:var(--rule-hairline);border-radius:var(--radius-sm);background:var(--color-surface);text-align:start;cursor:pointer;grid-template-columns:auto minmax(0,1fr);display:grid}.pool-bank__list button.is-selected{border-color:var(--color-indigo);background:var(--color-indigo-soft)}.pool-bank__index{font-family:var(--font-label);font-size:var(--text-xs);color:var(--color-muted)}.pool-bank__copy{gap:var(--space-3xs);min-width:0;display:grid}.pool-bank__copy strong{font-size:var(--text-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.pool-bank__copy small{color:var(--color-muted);font-size:var(--text-xs)}.tile-inspector__copy{min-width:0}.tile-inspector__copy>strong,.tile-inspector__copy>small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.content-tile-editor__type{min-width:0;max-width:100%}.question-image{gap:var(--space-xs);display:grid}.question-image__pick{justify-content:center;align-items:center;gap:var(--space-2xs);min-height:2.75rem;padding-inline:var(--space-sm);border:1px dashed var(--color-rule-strong);border-radius:var(--radius-sm);background:var(--color-paper);color:var(--color-indigo-deep);font-size:var(--text-sm);cursor:pointer;font-weight:750;display:inline-flex}.question-image__pick svg{width:1.1rem;height:1.1rem}.question-image__pick:disabled{opacity:.6;cursor:wait}.question-image__preview{align-items:center;gap:var(--space-sm);padding:var(--space-sm);border:var(--rule-hairline);border-radius:var(--radius-sm);background:var(--color-paper);display:flex}.question-image__preview img{object-fit:cover;border:1px solid var(--color-rule-strong);border-radius:var(--radius-sm);flex:none;width:5rem;height:5rem}.question-image__actions{gap:var(--space-2xs);min-width:0;color:var(--color-muted);font-size:var(--text-xs);display:grid}.room-prompt__image{object-fit:contain;border:var(--rule-hairline);border-radius:var(--radius-sm);background:var(--color-paper);width:100%;max-height:14rem}@media (max-width:39.99rem){.rule-settings__panel{grid-template-columns:minmax(0,1fr)}.content-tile-editor__tile{grid-template-columns:auto minmax(0,1fr)}.content-tile-editor__type{grid-column:1/-1;width:100%;min-width:0}}
