.ed{--ed-room:#e9e0d2;--ed-ink:#2b2118;--ed-muted:#6d5a48;--ed-navy:#22406f;--ed-terra:#b4513a;--play-ink:var(--ed-ink);--play-icon-bg:#fffaf2c7;border-radius:var(--radius-xl);background:radial-gradient(ellipse 80% 70% at 45% 40%, #f6f0e6 0%, var(--ed-room) 60%, #ddd0bd 100%);isolation:isolate;-webkit-tap-highlight-color:transparent;border:1px solid #e2d6c4;position:relative;overflow:hidden}.ed-stage{aspect-ratio:4/3;outline:none;width:100%;position:relative}.ed-poster,.ed-canvas{width:100%;height:100%;display:block;position:absolute;inset:0}.ed-canvas{opacity:0;transition:opacity .35s ease-out}.ed[data-ready=true] .ed-canvas{opacity:1}.ed[data-ready=true] .ed-poster{visibility:hidden;transition:visibility 0s .35s}.ed:not([data-play-mode]) .ed-stage{cursor:pointer}.ed-entry{justify-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4) var(--space-5);display:grid}.ed-legend{gap:var(--space-4);color:var(--ed-muted);margin:0;font-size:.95rem;font-weight:700;display:flex}.ed-legend__you{color:var(--ed-navy)}.ed-legend__cpu{color:var(--ed-terra)}.ed-level{justify-content:center;align-items:center;gap:var(--space-2);margin:0 0 var(--space-1);border:0;flex-wrap:wrap;min-width:0;padding:0;display:flex}.ed-level__label{float:left;color:var(--ed-muted);padding:0;font-size:.9rem;font-weight:700}.ed-level__options{border-radius:var(--radius-full);background:#fffaf2b3;gap:2px;padding:3px;display:flex;box-shadow:inset 0 0 0 1px #dccdb8}.ed-level__option{display:block;position:relative}.ed-level__option input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.ed-level__option span{min-width:64px;min-height:40px;padding-inline:var(--space-3);border-radius:var(--radius-full);color:var(--ed-muted);white-space:nowrap;place-items:center;font-size:.95rem;font-weight:700;transition:background-color .15s,color .15s;display:grid}.ed-level__option input:checked+span{color:var(--ed-ink);box-shadow:0 1px 3px #3c28142e, inset 0 0 0 2px var(--ed-navy);background:#fffaf2}.ed-level__option input:focus-visible+span{outline:3px solid var(--color-focus);outline-offset:2px}@media (hover:hover){.ed-level__option:hover span{color:var(--ed-ink)}}.ed-result__level{color:var(--ed-muted);font-size:.85rem;font-weight:700;margin-top:calc(-1 * var(--space-2))!important;margin-bottom:var(--space-3)!important}.ed-cta{min-width:160px;min-height:60px;padding-inline:var(--space-6);border-radius:var(--radius-full);background:var(--color-primary);color:var(--on-primary);font:inherit;letter-spacing:.02em;cursor:pointer;touch-action:manipulation;box-shadow:0 5px 0 var(--color-primary-strong);border:0;font-size:1.25rem;font-weight:800;transition:translate 60ms,box-shadow 60ms}.ed-cta:active{box-shadow:0 2px 0 var(--color-primary-strong);translate:0 3px}.ed-status,.ed-hint,.ed-result{display:none}.ed-sr{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.ed[data-play-mode=on]{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;border:0;border-radius:0;animation:.3s ease-out ed-fade}@keyframes ed-fade{0%{opacity:0}to{opacity:1}}.ed[data-play-mode=on] .ed-entry{display:none}.ed[data-play-mode=on] .ed-stage{aspect-ratio:auto;touch-action:none;position:absolute;inset:0}.ed[data-play-mode=on] .ed-stage:focus-visible{box-shadow:inset 0 0 0 4px var(--color-focus)}.ed[data-play-mode=on] .play-bar{padding:calc(env(safe-area-inset-top) + var(--space-2)) calc(env(safe-area-inset-right) + var(--space-3)) var(--space-2) calc(env(safe-area-inset-left) + var(--space-3));z-index:2;pointer-events:none;position:absolute;inset:0 0 auto}.ed[data-play-mode=on] .play-bar button{pointer-events:auto}.ed[data-play-mode=on] .ed-status{z-index:2;top:calc(env(safe-area-inset-top) + 64px);align-items:center;gap:var(--space-2);min-height:40px;padding:6px var(--space-4);border-radius:var(--radius-full);color:var(--ed-ink);white-space:nowrap;pointer-events:none;background:#fffaf2db;margin:0;font-size:1.05rem;font-weight:800;display:flex;position:absolute;left:50%;translate:-50%;box-shadow:0 2px 10px #3c28141f}.ed[data-phase=preview] .ed-status{visibility:hidden}.ed[data-play-mode=on][data-phase=over] .ed-status{opacity:0}.ed-status__mark{font-size:.9em}.ed[data-turn=player] .ed-status__mark:before{content:"●";color:var(--ed-navy)}.ed[data-turn=cpu] .ed-status__mark:before{content:"◆";color:var(--ed-terra)}.ed:is([data-phase=over],[data-phase=loading],[data-phase=error]) .ed-status__mark{display:none}.ed[data-phase=error] .ed-status{white-space:normal;text-align:center;width:min(90%,420px)}.ed[data-phase=moving] .ed-status{opacity:.6}.ed[data-play-mode=on] .ed-hint:not([hidden]){z-index:2;bottom:calc(env(safe-area-inset-bottom) + var(--space-4));padding:6px var(--space-4);border-radius:var(--radius-full);color:var(--ed-ink);text-align:center;white-space:nowrap;pointer-events:none;background:#fffaf2e0;border:1px solid #3c28141a;justify-items:center;gap:2px;margin:0;font-size:1rem;font-weight:800;line-height:1.35;display:grid;position:absolute;left:50%;translate:-50%;box-shadow:0 2px 10px #3c281424}.ed-hint__keys{color:var(--ed-muted);font-size:.85rem;font-weight:700}@media (hover:none),(pointer:coarse){.ed-hint__keys{display:none}}.ed[data-play-mode=on] .ed-result:not([hidden]){z-index:3;left:50%;bottom:calc(env(safe-area-inset-bottom) + var(--space-5));justify-items:center;gap:var(--space-1);width:min(calc(100% - 2 * var(--space-4)), 360px);padding:var(--space-4) var(--space-5) var(--space-5);border-radius:var(--radius-lg);text-align:center;background:#fffbf5f0;animation:.32s cubic-bezier(.2,.8,.3,1) ed-rise;display:grid;position:absolute;translate:-50%;box-shadow:0 10px 30px #3c281433}@keyframes ed-rise{0%{opacity:0;translate:-50% 16px}to{opacity:1;translate:-50%}}.ed-result p{margin:0}.ed-result__mark{font-size:2rem;font-weight:800;line-height:1}.ed[data-outcome=win] .ed-result__mark:before{content:"◎";color:#1f7a5a}.ed[data-outcome=lose] .ed-result__mark:before{content:"✕";color:#a8452f}.ed[data-outcome=draw] .ed-result__mark:before{content:"＝";color:var(--ed-muted)}.ed-result__title{color:var(--ed-ink);font-size:1.8rem;font-weight:800}.ed-result__sub{color:var(--ed-muted);font-weight:600;margin-bottom:var(--space-3)!important}.ed-result__level:empty{display:none}@media (orientation:landscape) and (height<=520px){.ed[data-play-mode=on] .ed-status{top:calc(env(safe-area-inset-top) + var(--space-2));min-height:var(--tap-min)}.ed[data-play-mode=on] .ed-hint:not([hidden]){bottom:calc(env(safe-area-inset-bottom) + var(--space-2));gap:var(--space-4);grid-auto-flow:column;padding-block:4px;font-size:.9rem}.ed[data-play-mode=on] .ed-result:not([hidden]){left:auto;right:calc(env(safe-area-inset-right) + var(--space-4));bottom:var(--space-4);width:min(42%,320px);animation:none;translate:0}.ed-result__title{font-size:1.5rem}.ed-cta{min-height:52px;font-size:1.1rem}}@media (width<=520px){.ed:not([data-play-mode]) .ed-stage{aspect-ratio:1}}
