@layer games{@scope(.lights-out-page){:scope{--lights-out-ink:#18324a;--lights-out-muted:#48535e;--lights-out-line:#cddbe5;--lights-out-soft-line:#e3ebf0;--lights-out-paper:#fff;--lights-out-blue:#087cf0;--lights-out-blue-dark:#075fb7;--lights-out-blue-soft:#e8f4ff;--lights-out-yellow:#ffd23c;--lights-out-orange:#f59a34;--lights-out-green:#338b62;--lights-out-red:#b94c4c;--lights-out-restart-border:#e0b9ae;--lights-out-restart-background:#fff7f4;--lights-out-restart-ink:#9b543f;--lights-out-retire-border:#e3b351;--lights-out-retire-background:#fff7dd;--lights-out-retire-ink:#8a5700;--lights-out-board:#173650;--lights-out-board-cell:#264e6c;--lights-out-overlay:#0c1d2bb8;--lights-out-library-line:#d7e3ec;--lights-out-library-paper:#f7fbff;--lights-out-library-ink:#294e6b;--lights-out-library-muted:#536b7d;--lights-out-library-blue:#1766aa;--lights-out-library-accent:#216dc9;--lights-out-gap-xxs:4px;--lights-out-gap-xs:.375rem;--lights-out-gap-s:.625rem;--lights-out-button-gap:8px;--lights-out-gap-m:1rem;--lights-out-gap-l:1.5rem;--lights-out-space-s:.75rem;--lights-out-space-m:1.25rem;--lights-out-space-l:2rem;--lights-out-status-margin:20px;--lights-out-status-padding-block:16px;--lights-out-status-padding-inline:15px;--lights-out-status-border-width:3px;--lights-out-delete-action-width:5rem;--lights-out-save-progress-delay:.6s;min-height:70vh;color:var(--lights-out-ink);padding-block:0 4rem}.lights-out-shell{width:100%}.lights-out-save-feedback{color:var(--lights-out-muted);font-size:.8rem;line-height:1.5;display:flow-root;position:relative}.lights-out-save-feedback>.game-save-progress{font-size:inherit;line-height:inherit;text-align:end;animation:lights-out-save-progress-reveal 0s var(--lights-out-save-progress-delay) both;margin:0;position:absolute;inset-block-start:0;inset-inline:0}@keyframes lights-out-save-progress-reveal{0%{opacity:0}to{opacity:1}}.lights-out-rules,.lights-out-setup,.lights-out-play,.lights-out-library{margin-top:var(--game-rule-margin-top,var(--lights-out-space-l))}.lights-out-setup,.lights-out-play,.lights-out-library{padding:var(--lights-out-space-l);border:1px solid var(--lights-out-line);border-radius:var(--radius-m);background:var(--lights-out-paper)}.lights-out-setup{position:relative}.lights-out-settings-grid{gap:var(--lights-out-gap-m);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.lights-out-settings-grid.is-course{grid-template-columns:minmax(0,1fr)}.lights-out-skin-fieldset{grid-column:1/-1}.lights-out-course-selection{min-inline-size:0;margin:0 0 var(--lights-out-space-l);border:0;padding:0}.lights-out-course-selection legend{margin-bottom:var(--lights-out-gap-s);font-weight:700}.lights-out-setup-heading{align-items:center;gap:var(--lights-out-gap-s);flex-flow:wrap}.lights-out-setup-heading>div{flex:auto}.puzzle-start-button:disabled{background:var(--lights-out-soft-line);color:var(--lights-out-muted);box-shadow:none;cursor:not-allowed}.lights-out-setup-mode-button{justify-content:center;align-items:center;gap:var(--lights-out-gap-xs);min-block-size:2.75rem;max-inline-size:100%;padding:var(--lights-out-gap-s);border:1px solid var(--lights-out-line);border-radius:var(--radius-m);background:var(--lights-out-paper);color:var(--lights-out-library-ink);font:inherit;cursor:pointer;margin-inline-start:auto;font-size:.8rem;font-weight:700;display:inline-flex}.lights-out-setup-mode-button svg{flex:none;font-size:1rem}.lights-out-setup-mode-button:hover:not(:disabled){background:var(--lights-out-library-paper);border-color:var(--lights-out-blue)}.lights-out-setup-mode-button:focus-visible{outline:2px solid var(--lights-out-blue);outline-offset:2px}.lights-out-course-options button{align-content:start;gap:var(--lights-out-gap-s);min-inline-size:0;padding:var(--lights-out-space-m);text-align:start;display:grid}.lights-out-course-options strong{align-items:center;gap:var(--lights-out-gap-xs);overflow-wrap:anywhere;min-inline-size:0;color:var(--lights-out-blue-dark);font-size:1.05rem;display:flex}.lights-out-course-options strong svg{flex:none;font-size:1.2em}.lights-out-course-options span{overflow-wrap:anywhere;font-size:.8rem;font-weight:400;line-height:1.7}.lights-out-settings-grid fieldset{min-width:0;padding:var(--lights-out-space-m);border:1px solid var(--lights-out-line);border-radius:var(--radius-m);border:0;margin:0;padding:0}.lights-out-settings-grid legend{padding-inline:var(--lights-out-gap-xs);margin-bottom:var(--lights-out-gap-s);font-weight:700}.lights-out-choice-row{gap:var(--lights-out-gap-xs);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.lights-out-choice-row.is-skins{grid-template-columns:repeat(4,minmax(0,1fr))}.lights-out-size-options button,.lights-out-choice-row.is-skins button{justify-content:center;align-items:center;gap:var(--lights-out-gap-s);display:flex}.lights-out-choice-row.is-skins button{font-size:.85rem}.lights-out-size-options button{min-height:7rem;padding:var(--lights-out-space-s);flex-direction:column}.lights-out-size-icon{grid-template-columns:repeat(var(--lights-out-size-option), 1fr);background:currentColor;border:1px solid;flex:0 0 3.5rem;gap:1px;width:3.5rem;height:3.5rem;padding:1px;display:grid;overflow:hidden}.lights-out-size-icon i{background:var(--lights-out-paper);opacity:.92}.lights-out-choice-row.is-skins button{min-height:3.5rem;padding:var(--lights-out-gap-s);flex-direction:row}.lights-out-skin-preview{flex:0 0 2.5rem;place-items:center;width:2.5rem;height:2.5rem;display:grid}.lights-out-skin-preview img{-o-object-fit:contain;object-fit:contain;width:100%;height:100%}.lights-out-choice-row button,.lights-out-main-actions button,.lights-out-change-settings-button{border:1px solid var(--lights-out-line);border-radius:var(--radius-m);background:var(--lights-out-paper);min-height:2.75rem;color:var(--lights-out-ink);font:inherit;cursor:pointer;font-weight:700}.lights-out-choice-row button.is-selected{border-color:var(--lights-out-blue);background:var(--lights-out-blue-soft);color:var(--lights-out-blue-dark);outline:2px solid var(--lights-out-blue)}.lights-out-range-slider{gap:var(--lights-out-gap-xs);display:grid}.lights-out-range-values,.lights-out-range-marks{justify-content:space-between;gap:var(--lights-out-gap-xs);display:flex}.lights-out-range-values{color:var(--lights-out-blue-dark);align-items:center;font-weight:700}.lights-out-range-values output{text-align:center;min-width:5rem}.lights-out-range-track{height:2rem;margin-inline:var(--lights-out-space-m);touch-action:none;-webkit-user-select:none;user-select:none;position:relative}.lights-out-range-track>span{border-radius:var(--radius-full);background:linear-gradient(to right, var(--lights-out-line) 0 var(--lights-out-range-start), var(--lights-out-blue) var(--lights-out-range-start) var(--lights-out-range-end), var(--lights-out-line) var(--lights-out-range-end) 100%);height:.5rem;position:absolute;top:50%;left:0;right:0;transform:translateY(-50%)}.lights-out-range-track input{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;opacity:0;pointer-events:none;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.lights-out-range-handle{z-index:1;border:.25rem solid var(--lights-out-blue);border-radius:var(--radius-full);background:var(--lights-out-paper);cursor:grab;pointer-events:none;width:1.4rem;height:1.4rem;position:absolute;top:50%;transform:translate(-50%,-50%)}.lights-out-range-handle.is-minimum{left:var(--lights-out-range-start)}.lights-out-range-handle.is-maximum{left:var(--lights-out-range-end)}.lights-out-range-track input.is-minimum:focus-visible~.lights-out-range-handle.is-minimum,.lights-out-range-track input.is-maximum:focus-visible~.lights-out-range-handle.is-maximum{outline:2px solid var(--lights-out-ink);outline-offset:2px}.lights-out-range-slider.is-collapsed .lights-out-range-handle.is-minimum{transform:translate(-50%,calc(-50% - .2rem))}.lights-out-range-slider.is-collapsed .lights-out-range-handle.is-maximum{transform:translate(-50%,calc(.2rem - 50%))}.lights-out-range-marks{margin-inline:var(--lights-out-space-m);color:var(--lights-out-muted);font-size:.68rem;font-weight:700}.lights-out-sound-setting{margin-top:var(--lights-out-space-m)}.lights-out-sound-setting .game-sound-setting{width:auto;margin:0}.lights-out-sound-setting .game-sound-setting>span{margin-inline-start:auto;margin-inline-end:var(--lights-out-gap-s)}.lights-out-play{scroll-margin-top:18px;position:relative}.lights-out-play-heading{justify-content:space-between;align-items:center;gap:var(--lights-out-gap-m);display:flex}.lights-out-play-heading>div:first-child>span{color:var(--lights-out-blue);font-weight:700}.lights-out-play-heading h2{margin:0}.lights-out-live-stats{align-items:center;gap:var(--lights-out-gap-s);font-size:1.1rem;font-weight:700;display:flex}.lights-out-live-stats>span{white-space:nowrap}.lights-out-message{margin:var(--lights-out-status-margin) 0;padding:var(--lights-out-status-padding-block) var(--lights-out-status-padding-inline);border:var(--lights-out-status-border-width) dashed var(--blue);background:var(--lights-out-paper);color:var(--foreground);scroll-margin-top:18px;font-size:.86rem;font-weight:700}.lights-out-play-grid{align-items:start;gap:var(--lights-out-space-l);grid-template-columns:minmax(0,39rem) minmax(16rem,1fr);display:grid}.lights-out-play-body{position:relative}.lights-out-board{grid-template-columns:repeat(var(--lights-out-size), minmax(0, 1fr));grid-template-rows:repeat(var(--lights-out-size), minmax(0, 1fr));aspect-ratio:1;box-sizing:border-box;gap:var(--lights-out-gap-xs);width:100%;height:100%;padding:var(--lights-out-gap-s);border:.25rem solid var(--lights-out-board);background:var(--lights-out-board);display:grid}.lights-out-board-wrap{aspect-ratio:1;width:min(100%,39rem);position:relative;container-type:inline-size}.lights-out-board-wrap.is-timer-paused .lights-out-board{visibility:hidden}.lights-out-cell{min-width:0;min-height:0;padding:var(--lights-out-gap-xs);border:1px solid var(--lights-out-line);border-radius:var(--radius-s);background:var(--lights-out-board-cell);cursor:pointer;touch-action:manipulation;box-sizing:border-box;perspective:700px;place-items:center;display:grid;position:relative;overflow:hidden}.lights-out-cell:focus-visible{box-shadow:inset 0 0 0 3px var(--lights-out-paper), inset 0 0 0 6px var(--lights-out-blue);outline:0}.lights-out-cell img{-o-object-fit:contain;object-fit:contain;pointer-events:none;width:86%;min-width:0;height:86%;min-height:0;transition:transform .14s,opacity .14s,filter .14s;display:block}.lights-out-board.is-light .lights-out-cell.is-alternate img{filter:drop-shadow(0 0 .6rem var(--lights-out-yellow));transform:scale(1.05)}.lights-out-board.is-flower .lights-out-cell{padding:0}.lights-out-board.is-flower .lights-out-cell img{-o-object-position:center bottom;object-position:center bottom;width:100%;height:100%;position:absolute;inset:0}.lights-out-board:is(.is-flower,.is-angel-demon) .lights-out-cell.is-flipped img{backface-visibility:hidden;animation:.36s ease-in-out lights-out-card-flip}@keyframes lights-out-card-flip{0%{transform:rotateY(180deg)}to{transform:rotateY(0)}}.lights-out-cell.is-hinted{isolation:isolate}.lights-out-cell.is-hinted:before{z-index:1;inset:var(--lights-out-gap-xxs);box-sizing:border-box;border:.25rem dashed var(--lights-out-yellow);border-radius:inherit;content:"";pointer-events:none;position:absolute}.lights-out-hint-mark{z-index:2;right:var(--lights-out-gap-xs);bottom:var(--lights-out-gap-xs);border-radius:var(--radius-s);background:var(--lights-out-yellow);color:var(--lights-out-ink);padding:.12rem .25rem;font-size:clamp(.55rem,1.5vw,.72rem);font-weight:700;position:absolute}.lights-out-controls{gap:var(--lights-out-gap-m);display:grid}.lights-out-main-actions{gap:var(--lights-out-button-gap);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.lights-out-main-actions button,.lights-out-change-settings-button{justify-content:center;align-items:center;gap:var(--lights-out-gap-xs);display:inline-flex}.lights-out-main-actions .puzzle-game-save-button.is-saved{border-color:var(--puzzle-ui-saved-border);background:var(--puzzle-ui-saved-background);color:var(--puzzle-ui-saved-ink)}.lights-out-main-actions button:hover:not(.is-saved),.lights-out-main-actions button:focus-visible:not(.is-saved){border-color:var(--lights-out-blue);background:var(--lights-out-blue-soft)}.lights-out-main-actions button:disabled{cursor:default;opacity:.5}.lights-out-compact-settings,.lights-out-debug,.lights-out-record-panel{border-block:1px solid var(--lights-out-soft-line)}.lights-out-compact-settings summary,.lights-out-debug summary,.lights-out-record-panel summary{justify-content:space-between;align-items:center;gap:var(--lights-out-gap-xs);padding-block:var(--lights-out-space-s);cursor:pointer;font-weight:700;list-style:none;display:flex}.lights-out-compact-settings summary::-webkit-details-marker{display:none}.lights-out-debug summary::-webkit-details-marker{display:none}.lights-out-record-panel summary::-webkit-details-marker{display:none}.lights-out-compact-settings summary::marker{content:""}.lights-out-debug summary::marker{content:""}.lights-out-record-panel summary::marker{content:""}.lights-out-controls :where(.lights-out-compact-settings,.puzzle-operation-details)>summary{color:var(--lights-out-ink);font-size:1rem}.lights-out-compact-settings summary>span,.lights-out-controls .puzzle-operation-details summary>span{align-items:center;gap:var(--lights-out-gap-xs);display:inline-flex}.lights-out-controls :where(.lights-out-compact-settings,.puzzle-operation-details)>summary>span svg{flex:none;font-size:1.2em}.lights-out-setting-change{gap:var(--lights-out-gap-s);margin-bottom:var(--lights-out-gap-s);display:grid}.lights-out-change-settings-button{width:100%}.lights-out-setting-change p{color:var(--lights-out-muted);margin:0;font-size:.78rem}.lights-out-compact-skin-fieldset{min-width:0;margin:0 0 var(--lights-out-space-s);border:0;padding:0}.lights-out-compact-skin-fieldset legend{margin-bottom:var(--lights-out-gap-s);color:var(--lights-out-ink);padding:0;font-weight:700}.lights-out-choice-row.lights-out-compact-skins{grid-template-columns:repeat(2,minmax(0,1fr))}.lights-out-choice-row.lights-out-compact-skins button{min-height:3.5rem;padding:var(--lights-out-gap-xs)}.lights-out-compact-skins .lights-out-skin-preview{flex-basis:2.25rem;width:2.25rem;height:2.25rem}.lights-out-debug{color:var(--lights-out-ink);font-size:.82rem}.lights-out-clear-overlay{--lights-out-result-delay:.8s;z-index:5;box-sizing:border-box;min-block-size:0;padding:clamp(var(--lights-out-space-s), 4cqi, var(--lights-out-space-m));background:color-mix(in srgb, var(--lights-out-paper) 72%, transparent);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:lights-out-result-reveal 0s var(--lights-out-result-delay) both;place-items:center;display:grid;position:absolute;inset:0}.lights-out-clear-overlay>div{width:min(100%,21rem);gap:clamp(var(--lights-out-gap-xs), 2cqi, var(--lights-out-space-s));min-block-size:0;max-block-size:100%;min-inline-size:0;padding:clamp(var(--lights-out-space-s), 4cqi, var(--lights-out-space-m));box-sizing:border-box;border:1px solid var(--lights-out-line);border-radius:var(--radius-m);background:var(--lights-out-paper);text-align:center;animation:lights-out-result-slide-down .3s ease-out var(--lights-out-result-delay) both;align-content:center;display:grid;overflow:auto}@keyframes lights-out-result-reveal{0%{visibility:hidden}to{visibility:visible}}@keyframes lights-out-result-slide-down{0%{opacity:0;transform:translateY(calc(-1 * var(--lights-out-space-l)))}to{opacity:1;transform:translateY(0)}}.lights-out-clear-overlay span{color:var(--lights-out-orange);font-size:.85rem;font-weight:700;line-height:1.5}.lights-out-clear-overlay h2{color:var(--lights-out-blue);margin:0;font-size:clamp(2rem,12cqi,3.5rem);line-height:1.1}.lights-out-clear-overlay p{overflow-wrap:anywhere;margin:0;font-size:clamp(.75rem,3.4cqi,.95rem);line-height:1.5}.lights-out-clear-overlay button{width:100%;min-height:44px;margin-top:var(--lights-out-gap-xxs);padding:var(--lights-out-space-s);font-size:.9rem;line-height:1.4}.lights-out-mini-board{grid-template-columns:repeat(var(--lights-out-mini-size), minmax(0, 1fr));grid-template-rows:repeat(var(--lights-out-mini-size), minmax(0, 1fr));aspect-ratio:1;box-sizing:border-box;border:2px solid var(--lights-out-board);background:var(--lights-out-board);gap:1px;width:100%;display:grid}.lights-out-mini-board i{background:var(--lights-out-board-cell)}.lights-out-mini-board i.is-alternate{background:var(--lights-out-yellow)}@media (max-width:820px){.lights-out-course-options{grid-template-columns:repeat(2,minmax(0,1fr))}.lights-out-play-grid,.lights-out-settings-grid{grid-template-columns:1fr}.lights-out-board{margin-inline:0}.lights-out-board-wrap{margin-inline:auto}.lights-out-sound-setting{margin-top:var(--lights-out-space-m);position:static}.lights-out-sound-setting .game-sound-setting{width:100%}}@media (max-width:520px){:scope.game-page{padding-bottom:3rem}.lights-out-setup,.lights-out-play,.lights-out-library{padding:var(--lights-out-space-m)}.lights-out-choice-row,.lights-out-choice-row.is-skins{grid-template-columns:repeat(2,minmax(0,1fr))}.lights-out-play-heading{align-items:stretch;gap:var(--lights-out-gap-s);flex-direction:column}.lights-out-live-stats{justify-content:space-between;width:100%}.lights-out-message{align-content:center;min-height:5.25rem;display:grid}.lights-out-board{gap:.2rem;width:100%;padding:.3rem}.lights-out-cell{padding:.15rem}.lights-out-main-actions{grid-template-columns:repeat(4,minmax(0,1fr))}.lights-out-main-actions button{flex-direction:column;gap:.1rem;min-height:3.25rem;padding:.2rem;font-size:.7rem}}@media (max-width:340px){.lights-out-choice-row.is-skins{grid-template-columns:repeat(2,minmax(0,1fr))}.lights-out-choice-row.is-skins button{font-size:.76rem}}@media (prefers-reduced-motion:reduce){.lights-out-clear-overlay>div{animation:none}.lights-out-cell img,.lights-out-board:is(.is-flower,.is-angel-demon) .lights-out-cell.is-flipped img{transition:none;animation:none}}}}
