.one-touch-drawing-section{--drawing-space-deep:#071221;--drawing-space-mid:#0d2341;--drawing-space-soft:#163960;--drawing-ink-on-dark:#f7fbff;--drawing-muted-on-dark:#b8cbe4;--drawing-neon:#9affdf;--drawing-neon-soft:#5ce7e0;--drawing-goal:color-mix(in srgb,var(--primary-yellow)82%,#fff7b0);--drawing-error:color-mix(in srgb,var(--primary-pink)78%,#fff);flex:auto;width:100%;max-width:1120px;height:100%;min-height:0;margin:0 auto;padding:10px 0}.content.one-touch-drawing-content-lock{padding-block:var(--screen-gutter)calc(var(--screen-gutter) + env(safe-area-inset-bottom,0px));overscroll-behavior:none;touch-action:none;overflow-y:hidden}.content.one-touch-drawing-content-lock>.one-touch-drawing-section{padding-block:0}.one-touch-drawing-game-summary{border-bottom:1px solid var(--border-subtle);grid-template-columns:minmax(155px,.55fr) minmax(200px,1fr) auto;align-items:center;gap:10px 16px;width:100%;margin:0 0 clamp(10px,1.5vw,14px);padding:2px 2px clamp(10px,1.5vw,14px);display:grid}.one-touch-drawing-game-title{gap:2px;min-width:0;display:grid}.one-touch-drawing-game-title span,.one-touch-drawing-progress span{color:var(--text-muted);font-size:.74rem;font-weight:800}.one-touch-drawing-game-title strong{color:var(--text-dark);text-overflow:ellipsis;white-space:nowrap;font-size:1.04rem;overflow:hidden}.one-touch-drawing-summary-actions{justify-content:flex-end;align-items:center;gap:7px;display:flex}.one-touch-drawing-settings-trigger,.one-touch-drawing-restart-trigger{min-height:var(--touch-target-min);border:1px solid color-mix(in srgb,var(--primary-purple)44%,var(--border-subtle));background:color-mix(in srgb,var(--primary-purple)7%,var(--surface-base));box-shadow:none;color:#6553a9;cursor:pointer;font:inherit;border-radius:14px;justify-content:center;align-items:center;gap:7px;padding:8px 13px;font-size:.82rem;font-weight:900;transition:background .15s,box-shadow .15s,transform .15s;display:inline-flex}.one-touch-drawing-restart-trigger{border-color:var(--border-subtle);background:var(--surface-muted);color:var(--text-dark);padding-inline:11px}.one-touch-drawing-settings-trigger svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-width:2px;width:19px;height:19px}.one-touch-drawing-settings-trigger:hover,.one-touch-drawing-restart-trigger:hover{background:color-mix(in srgb,var(--primary-purple)13%,var(--surface-base));transform:translateY(-1px);box-shadow:0 5px 13px #6351a91f}.one-touch-drawing-progress{grid-area:1/2;gap:7px;min-width:0;display:grid}.one-touch-drawing-progress>div{justify-content:space-between;align-items:center;gap:10px;display:flex}.one-touch-drawing-progress strong{color:var(--text-dark);font-family:sans-serif;font-size:.78rem}.one-touch-drawing-progress-track{background:#e5ebef;border-radius:999px;height:8px;display:block;overflow:hidden}.one-touch-drawing-progress-track>span{border-radius:inherit;background:linear-gradient(90deg,#12a7a5,#76d891);height:100%;transition:inline-size .18s;display:block;box-shadow:0 0 10px #4ecdc473}.one-touch-drawing-sr-instructions,.one-touch-drawing-sr-status{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.one-touch-drawing-layout{grid-template-columns:minmax(0,1fr);align-items:start;gap:10px;width:min(100%,760px);min-width:0;height:100%;min-height:0;margin:0 auto;display:grid}.one-touch-drawing-board-card{border:1px solid color-mix(in srgb,var(--border-subtle)88%,transparent);background:color-mix(in srgb,var(--surface-elevated)94%,transparent);border-radius:22px;grid-template-rows:auto minmax(0,1fr);place-items:center;min-width:0;height:100%;min-height:0;padding:clamp(10px,1.5vw,16px);display:grid;box-shadow:0 12px 38px #2d343614}.one-touch-drawing-stage{width:min(100%,540px,calc(var(--drawing-board-viewport-max,492px) + 48px));background:radial-gradient(circle at 17% 22%,#ffffffb8 0 1px,transparent 1.7px),radial-gradient(circle at 78% 18%,#ffffff75 0 1px,transparent 1.8px),radial-gradient(circle at 70% 76%,#7affe585 0 1px,transparent 1.7px),radial-gradient(circle at 28% 82%,#ffd96066 0 1.2px,transparent 1.8px),radial-gradient(circle at 48% 44%,var(--drawing-space-soft),var(--drawing-space-mid)44%,var(--drawing-space-deep)100%);isolation:isolate;background-size:96px 96px,132px 132px,164px 164px,192px 192px,100% 100%;border:1px solid #77e7e09e;border-radius:24px;place-items:center;min-width:0;height:100%;min-height:0;max-height:100%;display:grid;position:relative;overflow:hidden;box-shadow:inset 0 0 52px #5ce7ff1c,0 16px 34px #0611262e}.one-touch-drawing-stage:before,.one-touch-drawing-stage:after{z-index:-1;content:"";filter:blur(14px);opacity:.28;pointer-events:none;border-radius:50%;position:absolute}.one-touch-drawing-stage:before{background:radial-gradient(circle,#6bcb7785,#0000 68%);width:55%;height:46%;top:12%;left:5%}.one-touch-drawing-stage:after{background:radial-gradient(circle,#a78bfa73,#0000 70%);width:54%;height:45%;bottom:5%;right:2%}.one-touch-drawing-board-frame{width:min(92%,var(--drawing-board-max),var(--drawing-board-viewport-max,max(160px,calc(100vh - 310px))));width:min(92%,var(--drawing-board-max),var(--drawing-board-viewport-max,max(160px,calc(100dvh - 310px))));place-items:center;min-width:0;margin:clamp(18px,2.4vw,24px) auto;display:grid}.one-touch-drawing-board{grid-template-columns:repeat(var(--drawing-columns),minmax(0,1fr));grid-template-rows:repeat(var(--drawing-rows),minmax(0,1fr));cursor:crosshair;overscroll-behavior:contain;touch-action:pan-y pinch-zoom;-webkit-user-select:none;user-select:none;border-radius:22px;outline:none;gap:0;width:100%;display:grid;position:relative}.one-touch-drawing-board[data-input-mode=draw]{touch-action:none}.one-touch-drawing-board.is-drawing{cursor:grabbing}.one-touch-drawing-board.is-error{animation:.22s ease-in-out one-touch-drawing-shake}.one-touch-drawing-path-layer{z-index:2;pointer-events:none;width:100%;height:100%;display:block;position:absolute;inset:0;overflow:visible}.one-touch-drawing-path-glow,.one-touch-drawing-path-core,.one-touch-drawing-preview{fill:none;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.one-touch-drawing-path-glow{stroke:var(--drawing-neon);stroke-width:12px;opacity:.3;filter:blur(5px)}.one-touch-drawing-path-core{stroke:var(--drawing-neon);stroke-width:4px;filter:drop-shadow(0 0 6px var(--drawing-neon))}.one-touch-drawing-board.is-complete .one-touch-drawing-path-glow,.one-touch-drawing-board.is-complete .one-touch-drawing-path-core{stroke:var(--drawing-goal)}.one-touch-drawing-preview{stroke:var(--drawing-neon-soft);stroke-dasharray:6 5;stroke-width:3px;opacity:.85}.one-touch-drawing-grid-slot{z-index:3;aspect-ratio:1;width:100%;min-width:0;padding:clamp(1px,.32vw,3px);display:grid;position:relative}.one-touch-drawing-cell{text-align:center;border:2px solid #0000;border-radius:clamp(4px,.7vw,8px);place-content:center;width:100%;min-width:0;height:100%;min-height:0;padding:1px;display:grid;position:relative}button.one-touch-drawing-cell{color:var(--drawing-ink-on-dark);cursor:pointer;font:inherit;background:linear-gradient(145deg,#ffffff38,#0000 43%),linear-gradient(155deg,#3d9b70,#176053 58%,#133c46);border-color:#84ebd3b3;transition:border-color .15s,box-shadow .15s,filter .15s,transform .15s;box-shadow:inset 0 1px #ffffff61,inset 0 -4px 8px #06112640,0 2px #0b3d3b,0 4px 8px #00000038}button.one-touch-drawing-cell:hover:not(:disabled){filter:brightness(1.07);transform:translateY(-1px)}button.one-touch-drawing-cell.is-available{border-style:dashed;border-color:var(--drawing-neon)}button.one-touch-drawing-cell.is-visited{border-color:var(--drawing-neon);background:linear-gradient(145deg,#ffffff2e,#0000 44%),linear-gradient(155deg,#277b78,#164d61 58%,#172f50);box-shadow:inset 0 1px #ffffff47,inset 0 -7px 14px #0611264d,0 3px #0a3044,0 0 16px #9affdf2e}button.one-touch-drawing-cell.is-current{z-index:5;border-width:2px;border-color:var(--drawing-ink-on-dark);box-shadow:inset 0 1px 0 #ffffff61,inset 0 -4px 8px #06112647,0 2px 0 #0a3044,0 0 0 1px #9affdf38,0 0 12px var(--drawing-neon);transform:scale(1.025)}button.one-touch-drawing-cell.is-start{border-color:var(--drawing-neon-soft)}button.one-touch-drawing-cell.is-goal{border-color:var(--drawing-goal);background:linear-gradient(145deg,#ffffff4d,#0000 42%),linear-gradient(155deg,#f5c64e,#d88a25 62%,#a75b21);box-shadow:inset 0 1px #ffffff73,inset 0 -4px 8px #592d093d,0 2px #8a4c20,0 0 12px #ffd93d40}.one-touch-drawing-cell.is-blocked{color:var(--drawing-muted-on-dark);cursor:not-allowed;background:linear-gradient(135deg,#0000 42%,#ebf3ff2e 43% 48%,#0000 49% 52%,#ebf3ff2e 53% 58%,#0000 59%),linear-gradient(145deg,#355078,#172843);border-color:#c9dbf433;box-shadow:inset 0 2px 1px #ffffff26,inset 0 -3px 6px #00000047,0 2px #0a172a}.one-touch-drawing-cell.is-missing{box-shadow:none;color:#0000;opacity:0;pointer-events:none;background:0 0;border-color:#0000}.one-touch-drawing-cell-marker{text-shadow:0 1px 3px #0000009e;font-size:clamp(.48rem,1vw,.68rem);font-weight:900;line-height:1;display:block}.one-touch-drawing-player-avatar{z-index:2;border:2px solid var(--surface-base);background:color-mix(in srgb,var(--primary-purple)20%,var(--surface-base));object-fit:cover;pointer-events:none;border-radius:50%;place-items:center;width:80%;height:80%;display:grid;position:absolute;inset:10%;overflow:hidden;box-shadow:0 2px 5px #06112673,0 0 0 2px #9affdf7a}.one-touch-drawing-player-avatar.is-fallback{color:var(--drawing-ink-on-dark);font-size:clamp(.62rem,1.4vw,1rem);line-height:1}.one-touch-drawing-goal-icon{width:62%;height:62%;color:color-mix(in srgb,var(--text-dark)72%,var(--primary-orange));filter:drop-shadow(0 1px #ffffff73);pointer-events:none;place-items:center;display:grid;position:absolute;inset:19%}.one-touch-drawing-goal-icon .system-icon,.one-touch-drawing-legend .is-goal .system-icon{width:100%;height:100%}.one-touch-drawing-cell-order{width:clamp(14px,1.7vw,20px);height:clamp(14px,1.7vw,20px);color:var(--drawing-ink-on-dark);background:#0611267a;border-radius:50%;place-items:center;margin:0 auto;font-family:sans-serif;font-size:clamp(.46rem,1vw,.68rem);font-weight:900;display:grid}.one-touch-drawing-cell-symbol{opacity:0;font-family:sans-serif;font-size:clamp(.58rem,1.4vw,.95rem);font-weight:900;line-height:1}.one-touch-drawing-cell.is-blocked .one-touch-drawing-cell-symbol{opacity:1}.one-touch-drawing-cell.is-visited .one-touch-drawing-cell-marker{display:none}.one-touch-drawing-legend{border-top:1px solid var(--border-subtle);width:min(100%,620px);min-width:0;color:var(--text-muted);flex-wrap:wrap;justify-content:center;gap:7px 14px;margin:10px 0 0;padding:10px 0 0;font-size:.7rem;list-style:none;display:flex}.one-touch-drawing-legend li{align-items:center;gap:5px;display:inline-flex}.one-touch-drawing-legend span{border:2px solid var(--border-subtle);background:var(--surface-muted);border-radius:8px;place-items:center;width:25px;height:25px;font-family:sans-serif;font-size:.68rem;font-weight:900;display:inline-grid}.one-touch-drawing-legend .is-start{border-color:var(--primary-blue);background:color-mix(in srgb,var(--primary-blue)18%,var(--surface-base))}.one-touch-drawing-legend .is-goal{border-color:var(--primary-yellow);background:color-mix(in srgb,var(--primary-yellow)22%,var(--surface-base));color:color-mix(in srgb,var(--primary-orange)78%,var(--text-dark));padding:3px}.one-touch-drawing-legend .is-visited{border-color:var(--primary-green);background:color-mix(in srgb,var(--primary-green)20%,var(--surface-base))}.one-touch-drawing-legend .is-blocked{border-color:var(--text-muted);background:color-mix(in srgb,var(--text-muted)18%,var(--surface-base))}.one-touch-drawing-controls{min-width:0;display:block}.one-touch-drawing-actions{justify-content:flex-end;gap:8px;min-width:0;display:flex}.one-touch-drawing-actions button{min-width:108px;min-height:var(--touch-target-min);border:1px solid var(--border-subtle);box-shadow:none;color:var(--text-dark);cursor:pointer;font:inherit;white-space:nowrap;border-radius:14px;justify-content:center;align-items:center;gap:6px;padding:10px 12px;font-weight:800;transition:box-shadow .15s,transform .15s;display:inline-flex}.one-touch-drawing-actions button.is-undo{background:var(--surface-muted)}.one-touch-drawing-actions button.is-next{color:#fff;background:#087f83;border-color:#087f83}.one-touch-drawing-actions button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 14px #2d34361a}.one-touch-drawing-actions button:active:not(:disabled){box-shadow:none;transform:translateY(1px)}.one-touch-drawing-completion-dialog{background:var(--surface-base);width:min(100% - 32px,430px);color:var(--text-dark);border:0;border-radius:28px;margin:auto;padding:0;overflow:hidden;box-shadow:0 30px 90px #07122157}.one-touch-drawing-completion-dialog::backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#071221a3}.one-touch-drawing-completion-shell{text-align:center;justify-items:center;padding:28px;display:grid}.one-touch-drawing-completion-mark{background:color-mix(in srgb,var(--primary-green)24%,var(--surface-base));width:66px;height:66px;box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--primary-green)68%,transparent);color:#087f83;border-radius:50%;place-items:center;font-family:sans-serif;font-size:2.25rem;font-weight:900;display:grid}.one-touch-drawing-completion-level{color:#087f83;margin-top:14px;font-size:.82rem;font-weight:900}.one-touch-drawing-completion-shell h2{font-family:var(--font-black-han-sans);margin-top:4px;font-size:clamp(1.55rem,4vw,2rem);font-weight:400}.one-touch-drawing-completion-shell>p:last-of-type{color:var(--text-muted);margin-top:8px;font-size:.92rem;line-height:1.5}.one-touch-drawing-completion-shell button{color:#fff;cursor:pointer;width:100%;min-height:52px;font:inherit;background:#087f83;border:0;border-radius:16px;justify-content:center;align-items:center;gap:8px;margin-top:22px;padding:12px 18px;font-weight:900;display:inline-flex;box-shadow:0 8px 20px #087f8338}.one-touch-drawing-settings-dialog{background:var(--surface-base);width:min(100% - 32px,620px);max-width:620px;max-height:min(100dvh - 40px,820px);color:var(--text-dark);border:0;border-radius:26px;margin:auto;padding:0;overflow:hidden;box-shadow:0 30px 90px #07122157}.one-touch-drawing-settings-dialog::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#07122194}.one-touch-drawing-settings-shell{overscroll-behavior:contain;max-height:min(100dvh - 40px,820px);padding:22px;overflow-y:auto}.one-touch-drawing-settings-heading{justify-content:space-between;align-items:center;gap:16px;display:flex}.one-touch-drawing-settings-heading p{color:var(--primary-pink);letter-spacing:.08em;font-size:.72rem;font-weight:900}.one-touch-drawing-settings-heading h2{font-family:var(--font-black-han-sans);margin-top:2px;font-size:1.65rem;font-weight:400}.one-touch-drawing-settings-close{width:var(--touch-target-min);height:var(--touch-target-min);border:1px solid var(--border-subtle);background:var(--surface-muted);box-shadow:none;color:var(--text-dark);cursor:pointer;font:inherit;border-radius:50%;flex:none;place-items:center;font-family:sans-serif;font-size:1.55rem;line-height:1;display:grid}.one-touch-drawing-settings-description{color:var(--text-muted);margin-top:8px;font-size:.88rem;line-height:1.45}.one-touch-drawing-settings-group{margin-top:20px}.one-touch-drawing-settings-group h3{color:var(--text-dark);margin-bottom:8px;font-size:.9rem}.one-touch-drawing-mode-switch{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;min-width:0;display:grid}.one-touch-drawing-settings-group button{min-width:0;min-height:var(--touch-target-min);border:1px solid var(--border-subtle);background:var(--surface-base);box-shadow:none;color:var(--text-dark);cursor:pointer;font:inherit;border-radius:15px;transition:border-color .15s,background .15s,box-shadow .15s,transform .15s;position:relative}.one-touch-drawing-settings-group button:hover:not(:disabled):not(.is-selected){border-color:color-mix(in srgb,var(--primary-blue)54%,var(--border-subtle));background:#f4fbfa;transform:translateY(-1px)}.one-touch-drawing-settings-group button.is-selected{background:#eaf8f6;border-width:2px;border-color:#087f83;box-shadow:0 5px 15px #087f831f}.one-touch-drawing-settings-group button.is-selected:after{color:#fff;content:"";background:#087f83;border:3px solid #fff;border-radius:50%;width:12px;height:12px;display:grid;position:absolute;top:7px;right:8px;box-shadow:0 0 0 1px #087f83}.one-touch-drawing-settings-group button:disabled{cursor:not-allowed;opacity:.5}.one-touch-drawing-level-picker{border:1px solid var(--border-subtle);background:color-mix(in srgb,#eaf8f6 72%,var(--surface-base));border-radius:16px;padding:10px 14px 9px}.one-touch-drawing-selected-level{min-height:var(--touch-target-min);justify-content:space-between;align-items:center;gap:12px;padding-inline:2px;display:flex}.one-touch-drawing-selected-level>span{color:#087f83;align-items:baseline;gap:3px;display:flex}.one-touch-drawing-selected-level strong{font-variant-numeric:tabular-nums;font-family:sans-serif;font-size:1.5rem;font-weight:900;line-height:1}.one-touch-drawing-selected-level small{font-size:.8rem;font-weight:900}.one-touch-drawing-selected-level b{min-width:0;color:var(--text-dark);text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;overflow:hidden}.one-touch-drawing-level-range{width:100%;height:var(--touch-target-min);appearance:none;cursor:pointer;background:0 0;margin:0}.one-touch-drawing-level-range::-webkit-slider-runnable-track{border:1px solid color-mix(in srgb,#087f83 22%,var(--border-subtle));background:linear-gradient(90deg,#087f83 0 var(--drawing-level-progress),color-mix(in srgb,var(--border-subtle)82%,var(--surface-base))var(--drawing-level-progress)100%);border-radius:999px;height:10px}.one-touch-drawing-level-range::-webkit-slider-thumb{appearance:none;border:4px solid var(--surface-base);background:#087f83;border-radius:50%;width:30px;height:30px;margin-top:-11px;box-shadow:0 0 0 1px #087f83,0 5px 12px #087f8342}.one-touch-drawing-level-range::-moz-range-track{border:1px solid color-mix(in srgb,#087f83 22%,var(--border-subtle));background:color-mix(in srgb,var(--border-subtle)82%,var(--surface-base));border-radius:999px;height:10px}.one-touch-drawing-level-range::-moz-range-progress{background:#087f83;border-radius:999px;height:10px}.one-touch-drawing-level-range::-moz-range-thumb{border:4px solid var(--surface-base);background:#087f83;border-radius:50%;width:22px;height:22px;box-shadow:0 0 0 1px #087f83,0 5px 12px #087f8342}.one-touch-drawing-level-range:disabled{cursor:not-allowed;opacity:.55}.one-touch-drawing-level-bounds{color:var(--text-muted);font-variant-numeric:tabular-nums;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;margin-top:-2px;font-family:sans-serif;font-size:.68rem;font-weight:800;display:grid}.one-touch-drawing-level-bounds span:nth-child(2){text-align:center;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.one-touch-drawing-mode-switch button{text-align:left;align-items:center;gap:10px;min-height:82px;padding:12px;display:flex}.one-touch-drawing-mode-switch button>span:last-child{gap:3px;min-width:0;display:grid}.one-touch-drawing-mode-switch button strong{font-size:.88rem}.one-touch-drawing-mode-switch button small{color:var(--text-muted);font-size:.7rem;line-height:1.35}.one-touch-drawing-sound-toggle{text-align:left;align-items:center;gap:10px;width:100%;min-height:68px;padding:11px 48px 11px 12px;display:flex}.one-touch-drawing-sound-toggle>span:last-child{gap:3px;min-width:0;display:grid}.one-touch-drawing-sound-toggle strong{font-size:.88rem}.one-touch-drawing-sound-toggle small{color:var(--text-muted);font-size:.7rem;line-height:1.35}.one-touch-drawing-mode-icon{background:var(--surface-muted);color:#087f83;border-radius:12px;flex:none;place-items:center;width:38px;height:38px;font-family:sans-serif;font-size:.86rem;font-weight:900;display:grid}.one-touch-drawing-tile-guide{border-top:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle);margin-top:18px}.one-touch-drawing-tile-guide summary{min-height:var(--touch-target-min);color:var(--text-muted);cursor:pointer;padding:12px 2px;font-size:.8rem;font-weight:800}.one-touch-drawing-tile-guide .one-touch-drawing-legend{border-top:0;width:100%;margin:0 0 12px;padding:0}.one-touch-drawing-settings-done{color:#fff;cursor:pointer;width:100%;min-height:50px;font:inherit;background:#087f83;border:0;border-radius:15px;margin-top:18px;padding:11px 16px;font-weight:900;box-shadow:0 7px 17px #087f8333}.one-touch-drawing-settings-trigger:focus-visible,.one-touch-drawing-restart-trigger:focus-visible,.one-touch-drawing-cell:focus-visible,.one-touch-drawing-actions button:focus-visible,.one-touch-drawing-completion-dialog button:focus-visible,.one-touch-drawing-board:focus-visible,.one-touch-drawing-settings-dialog button:focus-visible,.one-touch-drawing-level-range:focus-visible,.one-touch-drawing-tile-guide summary:focus-visible{outline:var(--focus-ring-width)solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}@keyframes one-touch-drawing-shake{0%,to{transform:translate(0)}30%{transform:translate(-5px)}70%{transform:translate(5px)}}@media (max-width:600px){.one-touch-drawing-section{padding:12px 0}.one-touch-drawing-game-summary{grid-template-columns:minmax(0,1fr) auto;gap:9px 10px;padding:2px 2px 10px}.one-touch-drawing-progress{grid-area:2/1/auto/-1}.one-touch-drawing-settings-trigger,.one-touch-drawing-restart-trigger{padding-inline:10px}.one-touch-drawing-board-card{border-radius:20px;padding:8px}.one-touch-drawing-stage{border-radius:18px}.one-touch-drawing-board-frame{width:min(96%,var(--drawing-board-max),var(--drawing-board-viewport-max,max(160px,calc(100vh - 310px))));width:min(96%,var(--drawing-board-max),var(--drawing-board-viewport-max,max(160px,calc(100dvh - 310px))));margin-block:24px}.one-touch-drawing-board{border-radius:16px}.one-touch-drawing-cell{border-radius:4px}.one-touch-drawing-actions{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));display:grid}.one-touch-drawing-actions button{width:100%;min-width:0}.one-touch-drawing-settings-dialog{border-radius:22px;width:calc(100% - 20px);max-height:90dvh}.one-touch-drawing-settings-shell{max-height:90dvh;padding:17px}.one-touch-drawing-settings-heading h2{font-size:1.45rem}.one-touch-drawing-level-picker{padding-inline:12px}.one-touch-drawing-settings-group button.is-selected:after{top:5px;right:5px}.one-touch-drawing-legend{justify-content:flex-start;gap:7px 10px}}@media (max-width:420px){.one-touch-drawing-mode-switch{grid-template-columns:minmax(0,1fr)}.one-touch-drawing-grid-slot{padding:1px}}@media (orientation:landscape) and (max-height:500px) and (min-width:700px){.one-touch-drawing-section{padding-block:8px}.one-touch-drawing-game-summary{grid-template-columns:minmax(100px,.45fr) minmax(150px,1fr) auto;gap:8px;margin-bottom:8px;padding-bottom:8px}.one-touch-drawing-progress{grid-area:1/2}.one-touch-drawing-layout.has-secondary-actions{grid-template-columns:minmax(390px,1fr) minmax(250px,.62fr);gap:10px;width:min(100%,900px)}.one-touch-drawing-stage{width:min(100%,520px,calc(var(--drawing-board-viewport-max,474px) + 46px))}.one-touch-drawing-board-frame{width:min(80%,var(--drawing-board-max),350px,var(--drawing-board-viewport-max,max(160px,calc(100vh - 260px))));width:min(80%,var(--drawing-board-max),350px,var(--drawing-board-viewport-max,max(160px,calc(100dvh - 260px))));margin-block:22px}.one-touch-drawing-legend{margin-top:7px}.one-touch-drawing-actions{grid-template-columns:repeat(auto-fit,minmax(100px,1fr));display:grid}.one-touch-drawing-actions button{width:100%;min-width:0}.one-touch-drawing-settings-dialog,.one-touch-drawing-settings-shell{max-height:94dvh}}html.app-fullscreen .one-touch-drawing-section{max-width:1280px;padding-top:4px;padding-bottom:4px}html.app-fullscreen .one-touch-drawing-layout{width:min(100%,920px)}html.app-fullscreen .one-touch-drawing-board-card{padding:8px}html.app-fullscreen .one-touch-drawing-game-summary{gap:6px 12px;margin-bottom:6px;padding-bottom:6px}html.app-fullscreen .one-touch-drawing-stage{width:min(100%,664px,calc(var(--drawing-board-viewport-max,640px) + 24px))}html.app-fullscreen .one-touch-drawing-board-frame{width:min(96%,var(--drawing-board-max),var(--drawing-board-viewport-max,max(160px,calc(100dvh - 200px))));margin-block:12px}@media (prefers-reduced-motion:reduce){.one-touch-drawing-board,.one-touch-drawing-cell,.one-touch-drawing-settings-trigger,.one-touch-drawing-restart-trigger,.one-touch-drawing-settings-group button,.one-touch-drawing-level-range,.one-touch-drawing-actions button,.one-touch-drawing-completion-shell button,.one-touch-drawing-progress-track>span{transition:none;animation:none}button.one-touch-drawing-cell:hover:not(:disabled),button.one-touch-drawing-cell.is-current,.one-touch-drawing-settings-trigger:hover,.one-touch-drawing-restart-trigger:hover,.one-touch-drawing-settings-group button:hover:not(:disabled),.one-touch-drawing-actions button:hover:not(:disabled){transform:none}}.one-touch-drawing-list-section{width:100%;min-width:0;max-width:1040px;margin-inline:auto;padding-block:clamp(14px,2.5vw,28px) 36px}.one-touch-drawing-list-heading{text-align:center;gap:6px;margin:0 auto clamp(18px,3vw,30px);display:grid}.one-touch-drawing-list-heading>p:first-child{color:var(--drawing-accent,var(--primary-blue));font-size:.8rem;font-weight:900}.one-touch-drawing-list-heading h2{color:var(--text-dark);font-family:var(--font-jua),sans-serif;font-size:clamp(1.65rem,5vw,2.45rem);font-weight:400;line-height:1.1}.one-touch-drawing-list-heading>p:last-child{color:var(--text-muted);font-size:clamp(.92rem,2.8vw,1.05rem)}.one-touch-drawing-difficulty-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(10px,2.2vw,18px);min-width:0;margin:0;padding:0;list-style:none;display:grid}.one-touch-drawing-difficulty-grid>li{min-width:0}.one-touch-drawing-difficulty-card{border:1px solid color-mix(in srgb,var(--primary-blue)30%,var(--border-subtle));background:var(--surface-base);width:100%;min-width:0;min-height:100%;box-shadow:var(--shadow-medium);color:var(--text-dark);text-align:center;touch-action:manipulation;border-radius:22px;grid-template-rows:auto auto 1fr auto;align-items:center;gap:6px;padding:clamp(11px,2.4vw,18px);text-decoration:none;transition:border-color .16s,box-shadow .16s,transform .16s;display:grid}.one-touch-drawing-difficulty-card:active{transform:scale(.985)}.one-touch-drawing-difficulty-card:focus-visible{outline:var(--focus-ring-width)solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}.one-touch-drawing-difficulty-visual{place-items:center;margin-inline:auto;display:grid}.one-touch-drawing-difficulty-visual .navigation-visual{--navigation-visual-size:clamp(60px,14vw,84px)}.one-touch-drawing-difficulty-card>strong{font-size:clamp(1rem,3.4vw,1.2rem)}.one-touch-drawing-difficulty-desc{min-width:0;color:var(--text-muted);word-break:keep-all;overflow-wrap:anywhere;font-size:clamp(.76rem,2.4vw,.88rem);line-height:1.35}.one-touch-drawing-difficulty-card>small{color:var(--text-muted);font-size:clamp(.72rem,2.2vw,.82rem);font-weight:800}@media (max-width:600px){.one-touch-drawing-difficulty-grid{grid-template-columns:minmax(0,1fr)}}@media (prefers-reduced-motion:reduce){.one-touch-drawing-difficulty-card{transition:none}.one-touch-drawing-difficulty-card:active{transform:none}}
.fairytale-puzzle-section{--fairytale-puzzle-accent:#6f55b5;--fairytale-puzzle-accent-strong:#554093;--fairytale-puzzle-correct:#087f83;--fairytale-puzzle-error:#b4235a;--fairytale-puzzle-board-surface:#edf7f5;--fairytale-puzzle-grid-size:2;width:100%;min-width:0;max-width:1120px;margin:0 auto;padding:10px 0 36px;overflow-x:clip}.fairytale-puzzle-section,.fairytale-puzzle-section *{box-sizing:border-box}.content.fairytale-puzzle-content-lock{overscroll-behavior:none;touch-action:none;overflow-y:hidden}.content:has(>.fairytale-puzzle-game){padding-block:var(--screen-gutter)calc(var(--screen-gutter) + env(safe-area-inset-bottom,0px))}.fairytale-puzzle-game{flex:1 0 auto;padding-bottom:0}.fairytale-puzzle-game .fairytale-puzzle-layout{flex:1 0 auto}.fairytale-puzzle-list{width:100%;min-width:0}.fairytale-puzzle-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(10px,2.8vw,18px);width:100%;min-width:0;margin:0;padding:6px 0 28px;list-style:none;display:grid}.fairytale-puzzle-grid>*{min-width:0}.fairytale-puzzle-card{width:100%;min-width:0;min-height:var(--touch-target-min);border:1px solid color-mix(in srgb,var(--border-subtle)88%,transparent);background:color-mix(in srgb,var(--surface-elevated)96%,transparent);color:var(--text-dark);border-radius:20px;align-content:start;gap:9px;padding:clamp(7px,1.8vw,10px);text-decoration:none;transition:border-color .16s,box-shadow .16s,transform .16s;display:grid;position:relative;overflow:hidden;box-shadow:0 8px 24px #2d343614}.fairytale-puzzle-card>img,.fairytale-puzzle-card-media{aspect-ratio:1;background:var(--surface-muted);object-fit:cover;border-radius:14px;width:100%;min-width:0;display:block;overflow:hidden}.fairytale-puzzle-card-media img{object-fit:cover;width:100%;height:100%;display:block}.fairytale-puzzle-card strong,.fairytale-puzzle-card-title{min-width:0;color:var(--text-dark);text-align:center;text-overflow:ellipsis;white-space:nowrap;font-size:clamp(.82rem,2.8vw,1rem);font-weight:900;line-height:1.35;overflow:hidden}.fairytale-puzzle-card:after{background:var(--fairytale-puzzle-accent);width:8px;height:8px;box-shadow:0 0 0 3px color-mix(in srgb,var(--fairytale-puzzle-accent)16%,transparent);content:"";opacity:0;border-radius:50%;transition:opacity .16s,transform .16s;position:absolute;bottom:12px;right:12px;transform:scale(.7)}.fairytale-puzzle-card:hover{border-color:color-mix(in srgb,var(--fairytale-puzzle-accent)42%,var(--border-subtle));transform:translateY(-2px);box-shadow:0 12px 28px #55409324}.fairytale-puzzle-card:hover:after{opacity:1;transform:scale(1)}.fairytale-puzzle-list-empty{border:1px dashed color-mix(in srgb,var(--fairytale-puzzle-accent)42%,var(--border-subtle));background:color-mix(in srgb,var(--surface-muted)86%,transparent);width:min(100%,620px);min-height:180px;color:var(--text-muted);text-align:center;border-radius:22px;place-items:center;margin:14px auto;padding:28px 20px;line-height:1.55;display:grid}.fairytale-puzzle-layout{width:min(100%,800px);min-width:0;margin:0 auto;display:grid}.fairytale-puzzle-board-card{border:1px solid color-mix(in srgb,var(--border-subtle)88%,transparent);background:color-mix(in srgb,var(--surface-elevated)95%,transparent);border-radius:22px;width:100%;min-width:0;padding:clamp(10px,1.5vw,16px);display:grid;overflow:hidden;box-shadow:0 12px 38px #2d343614}.fairytale-puzzle-game-summary{border-bottom:1px solid var(--border-subtle);grid-template-columns:minmax(150px,.55fr) minmax(190px,1fr) auto;align-items:center;gap:10px 16px;width:100%;min-width:0;margin:0 0 clamp(10px,1.5vw,14px);padding:2px 2px clamp(10px,1.5vw,14px);display:grid}.fairytale-puzzle-game-title{gap:2px;min-width:0;display:grid}.fairytale-puzzle-game-title span,.fairytale-puzzle-progress span{color:var(--text-muted);font-size:.74rem;font-weight:800}.fairytale-puzzle-game-title strong{min-width:0;color:var(--text-dark);text-overflow:ellipsis;white-space:nowrap;font-size:1.04rem;overflow:hidden}.fairytale-puzzle-summary-actions{justify-content:flex-end;align-items:center;gap:7px;min-width:0;display:flex}.fairytale-puzzle-restart-trigger,.fairytale-puzzle-settings-trigger{min-width:var(--touch-target-min);min-height:var(--touch-target-min);border:1px solid color-mix(in srgb,var(--fairytale-puzzle-accent)42%,var(--border-subtle));background:color-mix(in srgb,var(--fairytale-puzzle-accent)8%,var(--surface-base));box-shadow:none;color:var(--fairytale-puzzle-accent-strong);cursor:pointer;font:inherit;white-space:nowrap;border-radius:14px;justify-content:center;align-items:center;gap:7px;padding:8px 12px;font-size:.82rem;font-weight:900;transition:background .15s,box-shadow .15s,transform .15s;display:inline-flex}.fairytale-puzzle-restart-trigger{border-color:var(--border-subtle);background:var(--surface-muted);color:var(--text-dark)}.fairytale-puzzle-settings-trigger svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-width:2px;flex:none;width:19px;height:19px}.fairytale-puzzle-restart-trigger:hover,.fairytale-puzzle-settings-trigger:hover{background:color-mix(in srgb,var(--fairytale-puzzle-accent)14%,var(--surface-base));transform:translateY(-1px);box-shadow:0 5px 13px #55409321}.fairytale-puzzle-progress{grid-area:1/2;gap:7px;min-width:0;display:grid}.fairytale-puzzle-progress>div{justify-content:space-between;align-items:center;gap:10px;min-width:0;display:flex}.fairytale-puzzle-progress strong{color:var(--text-dark);font-variant-numeric:tabular-nums;font-family:sans-serif;font-size:.78rem}.fairytale-puzzle-progress-track{background:#e5ebef;border-radius:999px;width:100%;height:8px;display:block;overflow:hidden}.fairytale-puzzle-progress-track>span{border-radius:inherit;background:linear-gradient(90deg,#12a7a5,#76d891);height:100%;transition:width .18s,inline-size .18s;display:block;box-shadow:0 0 10px #4ecdc46b}.fairytale-puzzle-play-area{place-items:start center;gap:clamp(12px,2vw,18px);width:100%;min-width:0;display:grid}.fairytale-puzzle-board-frame{width:min(100%,620px,var(--fairytale-puzzle-board-viewport-max,max(176px,calc(100dvh - 390px))));border:1px solid color-mix(in srgb,var(--fairytale-puzzle-correct)42%,var(--border-subtle));background:radial-gradient(circle at 15% 18%,#ffffffeb 0 2px,transparent 2.5px),radial-gradient(circle at 82% 76%,#ffffffb8 0 2px,transparent 2.5px),linear-gradient(145deg,#f6fbfa,var(--fairytale-puzzle-board-surface));border-radius:22px;place-items:center;min-width:0;margin:0 auto;padding:clamp(6px,1.2vw,10px);display:grid;position:relative;box-shadow:inset 0 0 30px #087f830f,0 12px 28px #2d34361a}.fairytale-puzzle-board,.fairytale-puzzle-tray-grid,.fairytale-puzzle-board[data-grid-size="2"],.fairytale-puzzle-tray-grid[data-grid-size="2"]{--fairytale-puzzle-grid-size:2}.fairytale-puzzle-board[data-grid-size="3"],.fairytale-puzzle-tray-grid[data-grid-size="3"]{--fairytale-puzzle-grid-size:3}.fairytale-puzzle-board-stage{aspect-ratio:1;background:#dcece9;border-radius:16px;width:100%;min-width:0;transition:border-radius .55s;display:grid;position:relative;overflow:hidden}.fairytale-puzzle-board{z-index:1;isolation:isolate;grid-area:1/1;grid-template-rows:repeat(var(--fairytale-puzzle-grid-size),minmax(0,1fr));border:2px solid color-mix(in srgb,var(--fairytale-puzzle-correct)52%,#fff);background:0 0;border-radius:16px;outline:none;gap:clamp(3px,.8vw,7px);width:100%;min-width:0;height:100%;transition:gap .55s,border-color .55s,border-radius .55s;display:grid;position:relative;overflow:hidden}.fairytale-puzzle-board-row{grid-template-columns:repeat(var(--fairytale-puzzle-grid-size),minmax(0,1fr));gap:clamp(3px,.8vw,7px);min-width:0;min-height:0;transition:gap .55s;display:grid}.fairytale-puzzle-board-ghost{z-index:0;object-fit:cover;opacity:.18;pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block;position:absolute;inset:0}.fairytale-puzzle-slot{z-index:1;aspect-ratio:1;width:100%;min-width:44px;min-height:44px;color:var(--text-dark);background:#ffffff2e;border:1px dashed #087f8375;border-radius:clamp(6px,1vw,11px);outline:none;place-items:stretch stretch;padding:clamp(1px,.35vw,3px);transition:padding .55s,border-color .55s,border-radius .55s,background .18s,box-shadow .18s,transform .18s;display:grid;position:relative;overflow:hidden}button.fairytale-puzzle-slot{cursor:pointer;font:inherit}.fairytale-puzzle-slot[data-slot-number]:not(.is-placed):not([data-placed=true]):before{z-index:2;color:#326d6e;content:attr(data-slot-number);pointer-events:none;background:#ffffffa3;border:1px solid #087f8338;border-radius:50%;place-items:center;width:clamp(22px,5vw,34px);height:clamp(22px,5vw,34px);font-family:sans-serif;font-size:clamp(.65rem,2.5vw,.82rem);font-weight:900;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.fairytale-puzzle-slot-marker{z-index:2;color:#326d6e;pointer-events:none;background:#ffffffb8;border:1px solid #087f833d;border-radius:999px;justify-content:center;align-items:center;min-width:32px;min-height:32px;padding:4px 6px;font-family:sans-serif;font-size:clamp(.62rem,2.3vw,.78rem);font-weight:900;display:inline-flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.fairytale-puzzle-slot-marker span:first-child:after{content:"×";margin-inline:2px}.fairytale-puzzle-slot.is-selected,.fairytale-puzzle-slot[data-selected=true],.fairytale-puzzle-slot.is-drag-over{border-style:solid;border-color:var(--fairytale-puzzle-accent-strong);box-shadow:inset 0 0 0 2px #fff,0 0 0 3px var(--fairytale-puzzle-accent-strong)}.fairytale-puzzle-slot.is-selected:after,.fairytale-puzzle-slot[data-selected=true]:after,.fairytale-puzzle-slot.is-drag-over:after{z-index:5;color:#fff;content:"놓기";pointer-events:none;background:#35216d;border-radius:999px;padding:2px 5px;font-size:.58rem;font-weight:900;line-height:1.2;position:absolute;bottom:4px;right:4px}.fairytale-puzzle-slot.is-placed,.fairytale-puzzle-slot[data-placed=true]{cursor:default;background:#fff;border-style:solid;border-color:#087f83b8}.fairytale-puzzle-slot.is-placed:after,.fairytale-puzzle-slot[data-placed=true]:after{z-index:4;background:var(--fairytale-puzzle-correct);color:#fff;content:"✓";pointer-events:none;border:2px solid #fff;border-radius:50%;place-items:center;width:22px;height:22px;font-family:sans-serif;font-size:.72rem;font-weight:900;display:grid;position:absolute;top:4px;right:4px}.fairytale-puzzle-slot.is-drag-over{border-style:solid;border-color:var(--fairytale-puzzle-accent-strong);box-shadow:inset 0 0 0 2px #fff,0 0 0 3px var(--fairytale-puzzle-accent-strong);background:#ffffff6b;transform:scale(.975)}.fairytale-puzzle-slot.is-drag-over:after{z-index:5;color:#fff;content:"여기";pointer-events:none;background:#35216d;border-radius:999px;padding:2px 5px;font-size:.58rem;font-weight:900;position:absolute;bottom:4px;right:4px}.fairytale-puzzle-slot.is-wrong,.fairytale-puzzle-board.is-wrong .fairytale-puzzle-slot[data-wrong=true]{border-style:solid;border-color:var(--fairytale-puzzle-error);animation:.22s ease-in-out fairytale-puzzle-shake}.fairytale-puzzle-slot.is-wrong:after,.fairytale-puzzle-board.is-wrong .fairytale-puzzle-slot[data-wrong=true]:after{z-index:5;background:var(--fairytale-puzzle-error);color:#fff;content:"×";border:2px solid #fff;border-radius:50%;place-items:center;width:24px;height:24px;font-family:sans-serif;font-size:1rem;font-weight:900;display:grid;position:absolute;top:5px;right:5px}.fairytale-puzzle-piece{aspect-ratio:1;border:2px solid color-mix(in srgb,var(--fairytale-puzzle-accent)58%,#fff);background:var(--surface-muted);width:100%;min-width:44px;min-height:44px;color:var(--text-dark);cursor:grab;font:inherit;touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;border-radius:clamp(7px,1.2vw,12px);outline:none;padding:0;transition:border-color .18s,border-radius .55s,box-shadow .18s,filter .18s,opacity .18s,transform .18s;display:block;position:relative;overflow:hidden;box-shadow:0 3px #46337d3d,0 7px 14px #2d343629}.fairytale-puzzle-piece:hover:not(:disabled){filter:brightness(1.035);transform:translateY(-1px)}.fairytale-puzzle-piece:active:not(:disabled),.fairytale-puzzle-piece.is-dragging{cursor:grabbing}.fairytale-puzzle-piece.is-dragging{opacity:.42}.fairytale-puzzle-piece.is-drag-overlay,.fairytale-puzzle-piece.fairytale-puzzle-drag-overlay,.fairytale-puzzle-drag-overlay .fairytale-puzzle-piece{z-index:1000;opacity:1;pointer-events:none;transform:scale(1.04);box-shadow:0 16px 34px #2d343640}.fairytale-puzzle-piece[aria-pressed=true],.fairytale-puzzle-piece.is-selected{border-color:var(--fairytale-puzzle-accent-strong);box-shadow:inset 0 0 0 2px #fff,0 0 0 3px var(--fairytale-puzzle-accent-strong),0 7px 16px #35216d33}.fairytale-puzzle-piece-state{z-index:3;color:#fff;pointer-events:none;background:#35216d;border:2px solid #fff;border-radius:999px;padding:3px 6px;font-size:.58rem;font-weight:900;line-height:1.15;position:absolute;top:5px;right:5px}.fairytale-puzzle-piece:disabled,.fairytale-puzzle-piece[aria-disabled=true]{cursor:default}.fairytale-puzzle-piece-image{pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;background-repeat:no-repeat;width:100%;height:100%;display:block;position:absolute;inset:0}.fairytale-puzzle-tray{border:1px solid var(--border-subtle);background:color-mix(in srgb,var(--surface-muted)88%,transparent);border-radius:18px;width:min(100%,620px);min-width:0;padding:10px;overflow:hidden}.fairytale-puzzle-tray-heading{min-height:28px;color:var(--text-dark);justify-content:space-between;align-items:center;gap:8px;margin:0 0 8px;font-size:.82rem;font-weight:900;display:flex}.fairytale-puzzle-tray-heading small{color:var(--text-muted);font-size:.68rem;font-weight:700}.fairytale-puzzle-tray-grid{overscroll-behavior-inline:contain;scrollbar-gutter:stable;touch-action:pan-x;grid-template-rows:clamp(64px,12vw,92px);grid-template-columns:none;grid-auto-columns:clamp(64px,12vw,92px);grid-auto-flow:column;justify-content:start;gap:clamp(5px,1vw,9px);width:100%;min-width:0;padding:3px 3px 6px;display:grid;overflow:auto hidden}.fairytale-puzzle-tray-cell,.fairytale-puzzle-tray-placeholder{aspect-ratio:1;place-items:stretch stretch;width:100%;min-width:44px;min-height:44px;display:grid;position:relative}.fairytale-puzzle-tray-placeholder{border:2px dashed color-mix(in srgb,var(--fairytale-puzzle-correct)44%,var(--border-subtle));background:linear-gradient(135deg,transparent 46%,#087f8314 47% 53%,transparent 54%),color-mix(in srgb,var(--fairytale-puzzle-correct)7%,var(--surface-base));color:#326d6e;border-radius:clamp(7px,1.2vw,12px);place-content:center;place-items:center;gap:2px}.fairytale-puzzle-tray-placeholder>span{background:#fff;border-radius:50%;place-items:center;width:28px;height:28px;font-family:sans-serif;font-size:.92rem;font-weight:900;display:grid;box-shadow:0 0 0 1px #087f833d}.fairytale-puzzle-tray-placeholder>small{color:currentColor;font-size:.56rem;font-weight:900;display:block}.fairytale-puzzle-reveal,.fairytale-puzzle-board.is-revealing,.fairytale-puzzle-board.is-completed{border-color:#0000;border-radius:2px;gap:0}.fairytale-puzzle-board-stage.is-revealing,.fairytale-puzzle-board-stage.is-completed{border-radius:2px}.fairytale-puzzle-board.is-revealing .fairytale-puzzle-board-row,.fairytale-puzzle-board.is-completed .fairytale-puzzle-board-row{gap:0}.fairytale-puzzle-reveal .fairytale-puzzle-slot,.fairytale-puzzle-board.is-revealing .fairytale-puzzle-slot,.fairytale-puzzle-board.is-completed .fairytale-puzzle-slot{box-shadow:none;background:0 0;border-color:#0000;border-radius:0;padding:0}.fairytale-puzzle-reveal .fairytale-puzzle-slot:after,.fairytale-puzzle-board.is-revealing .fairytale-puzzle-slot:after,.fairytale-puzzle-board.is-completed .fairytale-puzzle-slot:after{display:none}.fairytale-puzzle-reveal .fairytale-puzzle-piece,.fairytale-puzzle-board.is-revealing .fairytale-puzzle-piece,.fairytale-puzzle-board.is-completed .fairytale-puzzle-piece{box-shadow:none;border-color:#0000;border-radius:0;transform:none}.fairytale-puzzle-board.is-completed .fairytale-puzzle-piece{cursor:default}.fairytale-puzzle-board.is-revealing .fairytale-puzzle-slot:disabled,.fairytale-puzzle-board.is-completed .fairytale-puzzle-slot:disabled{opacity:1}.fairytale-puzzle-sr-instructions,.fairytale-puzzle-sr-status{clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.fairytale-puzzle-image-error{border:1px solid color-mix(in srgb,var(--fairytale-puzzle-error)34%,var(--border-subtle));background:color-mix(in srgb,#fff2f6 72%,var(--surface-base));width:min(100%,620px);min-height:220px;color:var(--text-dark);text-align:center;border-radius:20px;place-content:center;justify-items:center;gap:14px;margin:14px auto;padding:26px 18px;line-height:1.5;display:grid}.fairytale-puzzle-image-error a,.fairytale-puzzle-image-error button{min-width:var(--touch-target-min);min-height:var(--touch-target-min);background:var(--fairytale-puzzle-accent-strong);color:#fff;cursor:pointer;font:inherit;border:0;border-radius:14px;justify-content:center;align-items:center;padding:10px 16px;font-weight:900;text-decoration:none;display:inline-flex}.fairytale-puzzle-image-skeleton{z-index:4;pointer-events:none;position:absolute;inset:0}.fairytale-puzzle-image-skeleton>span{border-radius:inherit;width:100%;height:100%}.fairytale-puzzle-completion-dialog,.fairytale-puzzle-settings-dialog{background:var(--surface-base);color:var(--text-dark);border:0;margin:auto;padding:0;overflow:hidden;box-shadow:0 30px 90px #07122157}.fairytale-puzzle-completion-dialog{border-radius:28px;width:min(100% - 28px,540px);max-height:min(92dvh,820px)}.fairytale-puzzle-completion-dialog::backdrop,.fairytale-puzzle-settings-dialog::backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0712219e}.fairytale-puzzle-completion-shell{z-index:1;overscroll-behavior:contain;text-align:center;grid-auto-rows:max-content;align-content:start;justify-items:center;gap:9px;max-height:min(92dvh,820px);padding:clamp(18px,4vw,28px);animation:.46s cubic-bezier(.22,1.28,.36,1) both fairytale-puzzle-completion-pop;display:grid;position:relative;overflow-y:auto}@keyframes fairytale-puzzle-completion-pop{0%{opacity:0;transform:scale(.9)translateY(16px)}to{opacity:1;transform:scale(1)translateY(0)}}.fairytale-puzzle-completion-image-wrap{aspect-ratio:1;background:var(--surface-muted);width:min(100%,360px);box-shadow:0 12px 28px #2d34362e,0 0 0 1px var(--border-subtle);border:3px solid #fff;border-radius:20px;overflow:hidden}.fairytale-puzzle-completion-image{object-fit:cover;transform-origin:50%;will-change:transform;width:100%;height:100%;display:block}.fairytale-puzzle-completion-image.is-animating{animation:2.4s ease-in-out both fairytale-puzzle-completion-pan}.fairytale-puzzle-completion-shell h2{font-family:var(--font-black-han-sans);margin:5px 0 0;font-size:clamp(1.4rem,4vw,1.9rem);font-weight:400;line-height:1.25}.fairytale-puzzle-completion-shell>p{margin:0}.fairytale-puzzle-completion-meta,.fairytale-puzzle-completion-shell>p:first-of-type{color:var(--fairytale-puzzle-correct);font-size:.8rem;font-weight:900}.fairytale-puzzle-story-text{background:var(--surface-muted);width:100%;color:var(--text-dark);text-align:left;overflow-wrap:anywhere;border-radius:14px;padding:12px 14px;font-size:.9rem;line-height:1.65}.fairytale-puzzle-narration-status{width:100%;min-height:24px;color:var(--text-muted);text-align:center;font-size:.78rem;line-height:1.45}.fairytale-puzzle-completion-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%;margin-top:5px;display:grid}.fairytale-puzzle-completion-actions button,.fairytale-puzzle-completion-actions a{width:100%;min-width:var(--touch-target-min);min-height:var(--touch-target-min);border:1px solid var(--border-subtle);background:var(--surface-muted);box-shadow:none;color:var(--text-dark);cursor:pointer;font:inherit;text-align:center;border-radius:14px;justify-content:center;align-items:center;gap:6px;padding:10px 12px;font-size:.82rem;font-weight:900;line-height:1.35;text-decoration:none;display:inline-flex}.fairytale-puzzle-completion-actions>:last-child{border-color:var(--fairytale-puzzle-correct);background:var(--fairytale-puzzle-correct);color:#fff;grid-column:1/-1;min-height:50px;box-shadow:0 8px 20px #087f8338}.fairytale-puzzle-settings-dialog{border-radius:26px;width:min(100% - 28px,620px);max-width:620px;max-height:min(92dvh,780px)}.fairytale-puzzle-settings-shell{overscroll-behavior:contain;max-height:min(92dvh,780px);padding:22px;overflow-y:auto}.fairytale-puzzle-settings-heading{z-index:3;background:color-mix(in srgb,var(--surface-base)96%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);justify-content:space-between;align-items:center;gap:16px;margin:-22px -22px 0;padding:20px 22px 10px;display:flex;position:sticky;top:-22px}.fairytale-puzzle-settings-heading p{color:var(--fairytale-puzzle-accent);letter-spacing:.06em;font-size:.72rem;font-weight:900}.fairytale-puzzle-settings-heading h2{font-family:var(--font-black-han-sans);margin:2px 0 0;font-size:1.65rem;font-weight:400}.fairytale-puzzle-settings-close{border:1px solid var(--border-subtle);background:var(--surface-muted);width:48px;min-width:48px;height:48px;min-height:48px;box-shadow:none;color:var(--text-dark);cursor:pointer;font:inherit;border-radius:50%;flex:0 0 48px;place-items:center;padding:0;font-family:sans-serif;font-size:1.55rem;line-height:1;display:grid}.fairytale-puzzle-settings-description{color:var(--text-muted);margin:8px 0 0;font-size:.88rem;line-height:1.5}.fairytale-puzzle-settings-current{min-height:var(--touch-target-min);border:1px solid var(--border-subtle);background:var(--surface-muted);border-radius:14px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px 12px;margin-top:14px;padding:11px 13px;display:grid}.fairytale-puzzle-settings-current strong{min-width:0;color:var(--text-dark);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.fairytale-puzzle-settings-current{border:1px solid var(--border-subtle);background:var(--surface-muted);border-radius:14px;gap:2px;min-width:0;margin-top:14px;padding:11px 13px;display:grid}.fairytale-puzzle-settings-current span{color:var(--text-muted);font-size:.68rem;font-weight:800}.fairytale-puzzle-settings-current strong{min-width:0;color:var(--text-dark);text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;overflow:hidden}.fairytale-puzzle-settings-group{margin-top:20px}.fairytale-puzzle-settings-group h3{color:var(--text-dark);margin:0 0 8px;font-size:.9rem}.fairytale-puzzle-settings-group>p{color:var(--text-muted);margin:0;font-size:.82rem;line-height:1.5}.fairytale-puzzle-scene-options,.fairytale-puzzle-difficulty-options{gap:8px;width:100%;min-width:0;display:grid}.fairytale-puzzle-scene-options{grid-template-columns:repeat(auto-fit,minmax(54px,1fr))}.fairytale-puzzle-difficulty-options{grid-template-columns:repeat(2,minmax(0,1fr))}.fairytale-puzzle-scene-options button,.fairytale-puzzle-difficulty-options button,.fairytale-puzzle-sound-toggle{min-width:var(--touch-target-min);min-height:var(--touch-target-min);border:1px solid var(--border-subtle);background:var(--surface-base);box-shadow:none;color:var(--text-dark);cursor:pointer;font:inherit;border-radius:15px;font-weight:800;transition:border-color .15s,background .15s,box-shadow .15s,transform .15s;position:relative}.fairytale-puzzle-scene-options button{font-variant-numeric:tabular-nums;min-height:48px;padding:8px 5px;font-family:sans-serif}.fairytale-puzzle-difficulty-options button{min-height:58px;padding:10px 34px 10px 10px}.fairytale-puzzle-difficulty-options button strong,.fairytale-puzzle-difficulty-options button small{display:block}.fairytale-puzzle-difficulty-options button small{color:var(--text-muted);margin-top:2px;font-size:.68rem}.fairytale-puzzle-scene-options button:hover:not(:disabled):not(.is-selected),.fairytale-puzzle-difficulty-options button:hover:not(:disabled):not(.is-selected),.fairytale-puzzle-sound-toggle:hover:not(:disabled):not(.is-selected){border-color:color-mix(in srgb,var(--fairytale-puzzle-accent)52%,var(--border-subtle));background:color-mix(in srgb,var(--fairytale-puzzle-accent)6%,var(--surface-base));transform:translateY(-1px)}.fairytale-puzzle-scene-options button.is-selected,.fairytale-puzzle-scene-options button[aria-pressed=true],.fairytale-puzzle-difficulty-options button.is-selected,.fairytale-puzzle-difficulty-options button[aria-pressed=true],.fairytale-puzzle-sound-toggle.is-selected,.fairytale-puzzle-sound-toggle[aria-pressed=true]{border-width:2px;border-color:var(--fairytale-puzzle-accent-strong);background:color-mix(in srgb,var(--fairytale-puzzle-accent)10%,var(--surface-base));box-shadow:0 5px 15px #55409321}.fairytale-puzzle-difficulty-options button.is-selected:after,.fairytale-puzzle-difficulty-options button[aria-pressed=true]:after,.fairytale-puzzle-sound-toggle.is-selected:after,.fairytale-puzzle-sound-toggle[aria-pressed=true]:after{background:var(--fairytale-puzzle-accent-strong);color:#fff;content:"✓";border:2px solid #fff;border-radius:50%;place-items:center;width:20px;height:20px;font-family:sans-serif;font-size:.68rem;font-weight:900;display:grid;position:absolute;top:50%;right:9px;transform:translateY(-50%)}.fairytale-puzzle-scene-options button.is-selected:after,.fairytale-puzzle-scene-options button[aria-pressed=true]:after{color:var(--fairytale-puzzle-accent-strong);content:"선택됨";margin-top:2px;font-family:inherit;font-size:.58rem;font-weight:900;display:block}.fairytale-puzzle-sound-toggle{text-align:left;justify-content:space-between;align-items:center;gap:10px;width:100%;min-height:68px;padding:11px 44px 11px 13px;display:flex}.fairytale-puzzle-sound-toggle>span:first-child{background:var(--surface-muted);width:38px;height:38px;color:var(--fairytale-puzzle-accent-strong);border-radius:12px;flex:none;place-items:center;font-family:sans-serif;font-weight:900;display:grid}.fairytale-puzzle-sound-toggle>span:last-child{gap:2px;min-width:0;display:grid}.fairytale-puzzle-sound-toggle small{color:var(--text-muted);font-size:.7rem;line-height:1.35}.fairytale-puzzle-settings-actions{z-index:3;border-top:1px solid var(--border-subtle);background:color-mix(in srgb,var(--surface-base)96%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:8px;margin:22px -22px -22px;padding:12px 22px 20px;display:grid;position:sticky;bottom:-22px}.fairytale-puzzle-settings-apply,.fairytale-puzzle-settings-cancel{width:100%;min-width:var(--touch-target-min);border:1px solid var(--border-subtle);background:var(--surface-muted);min-height:50px;box-shadow:none;color:var(--text-dark);cursor:pointer;font:inherit;border-radius:15px;justify-content:center;align-items:center;padding:10px 12px;font-weight:900;display:inline-flex}.fairytale-puzzle-settings-apply{border-color:var(--fairytale-puzzle-accent-strong);background:var(--fairytale-puzzle-accent-strong);color:#fff;box-shadow:0 7px 17px #55409338}.fairytale-puzzle-card:focus-visible,.fairytale-puzzle-restart-trigger:focus-visible,.fairytale-puzzle-settings-trigger:focus-visible,.fairytale-puzzle-board:focus-visible,.fairytale-puzzle-slot:focus-visible,.fairytale-puzzle-piece:focus-visible,.fairytale-puzzle-image-error a:focus-visible,.fairytale-puzzle-image-error button:focus-visible,.fairytale-puzzle-completion-dialog button:focus-visible,.fairytale-puzzle-completion-dialog a:focus-visible,.fairytale-puzzle-settings-dialog button:focus-visible{outline:var(--focus-ring-width)solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}.fairytale-puzzle-restart-trigger:disabled,.fairytale-puzzle-settings-trigger:disabled,.fairytale-puzzle-slot:disabled,.fairytale-puzzle-piece:disabled,.fairytale-puzzle-completion-actions button:disabled,.fairytale-puzzle-settings-dialog button:disabled{cursor:not-allowed;opacity:.55}@keyframes fairytale-puzzle-shake{0%,to{transform:translate(0)}30%{transform:translate(-5px)}70%{transform:translate(5px)}}@keyframes fairytale-puzzle-completion-pan{0%{transform:translate(-.65%,-.35%)scale(1)}52%{transform:translate(.75%,.45%)scale(1.035)}to{transform:translate(0,0)scale(1.015)}}@media (min-width:768px){.fairytale-puzzle-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:1024px){.fairytale-puzzle-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width:600px){.fairytale-puzzle-section{padding:10px 0 30px}.fairytale-puzzle-game{padding-bottom:0}.fairytale-puzzle-grid{gap:10px;padding-top:3px}.fairytale-puzzle-board-card{border-radius:20px;padding:8px}.fairytale-puzzle-game-summary{grid-template-columns:minmax(0,1fr) auto;gap:9px 10px;padding:2px 2px 10px}.fairytale-puzzle-progress{grid-area:2/1/auto/-1}.fairytale-puzzle-restart-trigger,.fairytale-puzzle-settings-trigger{padding-inline:9px}.fairytale-puzzle-board-frame{width:min(100%,620px,var(--fairytale-puzzle-board-viewport-max,max(176px,calc(100dvh - 390px))));border-radius:18px;padding:6px}.fairytale-puzzle-board{border-radius:13px}.fairytale-puzzle-tray{border-radius:16px;padding:8px}.fairytale-puzzle-completion-dialog,.fairytale-puzzle-settings-dialog{border-radius:22px;width:calc(100% - 18px);max-height:94dvh}.fairytale-puzzle-completion-shell,.fairytale-puzzle-settings-shell{max-height:94dvh}.fairytale-puzzle-settings-shell{padding:17px}.fairytale-puzzle-settings-heading{margin:-17px -17px 0;padding:15px 17px 9px;top:-17px}.fairytale-puzzle-settings-heading h2{font-size:1.45rem}.fairytale-puzzle-settings-actions{margin:20px -17px -17px;padding:10px 17px 15px;bottom:-17px}}@media (max-width:360px){.fairytale-puzzle-game-title{grid-column:1/-1}.fairytale-puzzle-summary-actions{grid-column:1/-1;justify-content:stretch}.fairytale-puzzle-summary-actions>button{flex:1 1 0}.fairytale-puzzle-progress{grid-row:3}.fairytale-puzzle-completion-actions{grid-template-columns:minmax(0,1fr)}.fairytale-puzzle-completion-actions>:last-child{grid-column:auto}.fairytale-puzzle-settings-actions{grid-template-columns:minmax(0,1fr)}}@media (orientation:landscape) and (max-height:500px) and (min-width:700px){.fairytale-puzzle-section{max-width:1180px;padding-top:6px;padding-bottom:16px}.fairytale-puzzle-layout{width:min(100%,1060px)}.fairytale-puzzle-board-card{padding:8px 10px}.fairytale-puzzle-game-summary{grid-template-columns:minmax(120px,.5fr) minmax(160px,1fr) auto;gap:8px;margin-bottom:8px;padding-bottom:8px}.fairytale-puzzle-progress{grid-area:1/2}.fairytale-puzzle-play-area{grid-template-columns:minmax(280px,1fr) minmax(220px,.72fr);place-items:center stretch;gap:12px}.fairytale-puzzle-board-frame{width:min(100%,350px,var(--fairytale-puzzle-board-viewport-max,max(176px,calc(100dvh - 150px))));grid-area:1/1;padding:5px}.fairytale-puzzle-tray{grid-area:1/2;width:100%}.fairytale-puzzle-tray-grid{grid-template-rows:minmax(60px,72px);grid-template-columns:none;grid-auto-columns:minmax(60px,72px);grid-auto-flow:column;justify-content:start;max-height:none;overflow-x:auto}.fairytale-puzzle-completion-dialog,.fairytale-puzzle-completion-shell,.fairytale-puzzle-settings-dialog,.fairytale-puzzle-settings-shell{max-height:96dvh}.fairytale-puzzle-completion-shell{text-align:left;grid-template-columns:minmax(150px,.72fr) minmax(220px,1fr);align-items:center;column-gap:16px}.fairytale-puzzle-completion-image-wrap{grid-area:1/1/span 6}.fairytale-puzzle-completion-shell>:not(.fairytale-puzzle-completion-image-wrap){grid-column:2;width:100%}.fairytale-puzzle-narration-status{text-align:left}}html.app-fullscreen .fairytale-puzzle-section{max-width:1280px;padding-top:4px;padding-bottom:4px}html.app-fullscreen .fairytale-puzzle-game{padding-bottom:0}html.app-fullscreen .fairytale-puzzle-layout{width:min(100%,1100px)}html.app-fullscreen .fairytale-puzzle-board-card{padding:8px}html.app-fullscreen .fairytale-puzzle-game-summary{gap:6px 12px;margin-bottom:6px;padding-bottom:6px}html.app-fullscreen .fairytale-puzzle-board-frame{width:min(100%,720px,var(--fairytale-puzzle-board-viewport-max,max(176px,calc(100dvh - 270px))));padding:6px}@media (prefers-reduced-motion:reduce){.fairytale-puzzle-card,.fairytale-puzzle-card:after,.fairytale-puzzle-restart-trigger,.fairytale-puzzle-settings-trigger,.fairytale-puzzle-progress-track>span,.fairytale-puzzle-board-stage,.fairytale-puzzle-board,.fairytale-puzzle-board-row,.fairytale-puzzle-slot,.fairytale-puzzle-piece,.fairytale-puzzle-scene-options button,.fairytale-puzzle-difficulty-options button,.fairytale-puzzle-sound-toggle,.fairytale-puzzle-completion-image,.fairytale-puzzle-completion-actions button,.fairytale-puzzle-settings-actions button{scroll-behavior:auto;transition:none!important;animation:none!important}.fairytale-puzzle-card:hover,.fairytale-puzzle-restart-trigger:hover,.fairytale-puzzle-settings-trigger:hover,.fairytale-puzzle-piece:hover:not(:disabled),.fairytale-puzzle-piece.is-drag-overlay,.fairytale-puzzle-piece.fairytale-puzzle-drag-overlay,.fairytale-puzzle-drag-overlay .fairytale-puzzle-piece,.fairytale-puzzle-scene-options button:hover:not(:disabled),.fairytale-puzzle-difficulty-options button:hover:not(:disabled),.fairytale-puzzle-sound-toggle:hover:not(:disabled),.fairytale-puzzle-completion-image.is-animating{transform:none}.fairytale-puzzle-board.is-revealing,.fairytale-puzzle-board.is-completed,.fairytale-puzzle-reveal{gap:0}.fairytale-puzzle-section .ms-confetti{display:none}}
.memory-match-list-section,.memory-match-section{--memory-match-accent:color-mix(in srgb,var(--primary-blue)72%,var(--primary-purple));--memory-match-accent-strong:color-mix(in srgb,var(--primary-blue)58%,var(--text-dark));--memory-match-warm:color-mix(in srgb,var(--primary-yellow)28%,var(--surface-base));--memory-match-back:color-mix(in srgb,var(--primary-purple)70%,var(--primary-blue));--memory-match-success:color-mix(in srgb,var(--primary-green)78%,var(--text-dark));width:100%;min-width:0;margin-inline:auto;overflow-x:clip}.memory-match-list-section{max-width:1180px;padding:clamp(12px,2.4vw,26px) 0 36px}.memory-match-list-heading{text-align:center;gap:6px;width:min(100%,720px);margin:0 auto clamp(16px,3vw,28px);padding-inline:4px;display:grid}.memory-match-list-heading>p:first-child{color:var(--memory-match-accent-strong);font-size:.8rem;font-weight:900}.memory-match-list-heading h2{color:var(--text-dark);font-size:clamp(1.55rem,5vw,2.35rem);line-height:1.12}.memory-match-list-heading>p:last-child{color:var(--text-muted);font-size:clamp(.9rem,2.8vw,1.04rem);line-height:1.45}.memory-match-category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(10px,2.2vw,18px);width:100%;min-width:0;margin:0;padding:0;list-style:none;display:grid}.memory-match-category-grid>li{min-width:0}.memory-match-category-card{border:1px solid color-mix(in srgb,var(--memory-match-accent)28%,var(--border-subtle));background:radial-gradient(circle at 88% 8%,color-mix(in srgb,var(--primary-yellow)22%,transparent),transparent 34%),color-mix(in srgb,var(--surface-elevated)96%,var(--memory-match-warm));width:100%;min-width:0;min-height:100%;box-shadow:var(--shadow-medium);color:var(--text-dark);text-align:center;touch-action:manipulation;border-radius:22px;grid-template-rows:auto auto 1fr auto;align-items:center;gap:7px;padding:clamp(10px,2.2vw,16px);text-decoration:none;transition:border-color .16s,box-shadow .16s,transform .16s;display:grid;position:relative;overflow:hidden}.memory-match-category-card:active{transform:scale(.985)}.memory-match-category-card:focus-visible{outline:var(--focus-ring-width)solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}.memory-match-category-card.is-unavailable{box-shadow:var(--shadow-small);color:var(--text-muted);border-style:dashed}.memory-match-category-visual{place-items:center;margin-inline:auto;display:grid}.memory-match-category-visual .navigation-visual{--navigation-visual-size:clamp(68px,16vw,96px)}.memory-match-category-card>strong{overflow-wrap:anywhere;min-width:0;font-size:clamp(.94rem,3.2vw,1.13rem);line-height:1.25}.memory-match-category-card>span:not(.memory-match-category-visual){min-width:0;color:var(--text-muted);overflow-wrap:anywhere;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:clamp(.74rem,2.5vw,.88rem);line-height:1.35;display:-webkit-box;overflow:hidden}.memory-match-category-card>small{color:var(--memory-match-accent-strong);font-size:clamp(.68rem,2.3vw,.8rem);font-weight:900;line-height:1.25}@media (min-width:768px){.memory-match-category-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:1024px){.memory-match-category-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.content:has(>.memory-match-game){padding-block:var(--screen-gutter)calc(var(--screen-gutter) + env(safe-area-inset-bottom,0px))}.memory-match-game{flex:1 0 auto;max-width:1180px;padding:0}.memory-match-layout{flex-direction:column;flex:1 0 auto;width:min(100%,980px);min-width:0;margin-inline:auto;display:flex}.memory-match-board-card{border:1px solid color-mix(in srgb,var(--memory-match-accent)25%,var(--border-subtle));background:radial-gradient(circle at 8% 10%,color-mix(in srgb,var(--primary-pink)10%,transparent),transparent 32%),radial-gradient(circle at 92% 6%,color-mix(in srgb,var(--primary-yellow)18%,transparent),transparent 30%),color-mix(in srgb,var(--surface-elevated)95%,var(--memory-match-warm));border-radius:24px;flex-direction:column;flex:1 0 auto;width:100%;min-width:0;min-height:0;padding:clamp(9px,1.7vw,16px);display:flex;position:relative;overflow:hidden;box-shadow:0 12px 38px #2d343614}.memory-match-summary{border-bottom:1px solid color-mix(in srgb,var(--border-subtle)90%,transparent);flex:none;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 14px;min-width:0;padding:1px 2px 9px;display:grid}.memory-match-summary-copy{grid-template-columns:auto minmax(0,1fr);align-items:baseline;gap:5px 10px;min-width:0;display:grid}.memory-match-summary-copy strong{min-width:0;color:var(--text-dark);text-overflow:ellipsis;white-space:nowrap;font-size:clamp(.96rem,2.5vw,1.08rem);overflow:hidden}.memory-match-mode-label{color:var(--memory-match-accent-strong);white-space:nowrap;font-size:clamp(.72rem,2vw,.84rem);font-weight:900}.memory-match-summary-actions{justify-content:flex-end;align-items:center;gap:7px;min-width:0;display:flex}.memory-match-restart,.memory-match-settings,.memory-match-recovery-button,.memory-match-dialog-button,.memory-match-dialog-link{min-width:var(--touch-target-min);min-height:var(--touch-target-min);border:1px solid color-mix(in srgb,var(--memory-match-accent)38%,var(--border-subtle));background:color-mix(in srgb,var(--memory-match-accent)8%,var(--surface-base));box-shadow:none;color:var(--memory-match-accent-strong);cursor:pointer;font:inherit;text-align:center;touch-action:manipulation;border-radius:14px;justify-content:center;align-items:center;gap:6px;padding:8px 12px;font-size:clamp(.76rem,2.2vw,.88rem);font-weight:900;line-height:1.15;text-decoration:none;display:inline-flex}.memory-match-restart{border-color:var(--border-subtle);background:var(--surface-muted);color:var(--text-dark)}.memory-match-settings .system-icon{width:19px;height:19px}.memory-match-progress{flex:none;gap:7px;min-width:0;padding:9px 2px 10px;display:grid}.memory-match-progress-copy{min-width:0;color:var(--text-dark);justify-content:space-between;align-items:center;gap:12px;font-size:clamp(.76rem,2.2vw,.88rem);font-weight:900;display:flex}.memory-match-progress-copy span:last-child{color:var(--text-muted);font-family:sans-serif}.memory-match-progress-track{background:color-mix(in srgb,var(--border-subtle)80%,var(--surface-muted));border-radius:999px;width:100%;height:9px;display:block;overflow:hidden}.memory-match-progress-value{border-radius:inherit;background:linear-gradient(90deg,var(--memory-match-accent),var(--primary-green));height:100%;transition:inline-size .18s;display:block}.memory-match-grid{flex:1 0 auto;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(92px,1fr);align-content:stretch;gap:clamp(7px,1.5vw,12px);width:100%;min-width:0;min-height:0;padding:5px;display:grid}.memory-match-gridcell,.memory-match-card,.memory-match-card-inner,.memory-match-card-face{min-width:0;min-height:0}.memory-match-gridcell{display:flex}.memory-match-card{width:100%;min-height:var(--touch-target-min);color:var(--text-dark);cursor:pointer;font:inherit;perspective:900px;touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-user-drag:none;background:0 0;border:0;border-radius:18px;padding:0;display:block;position:relative;container-type:inline-size}.memory-match-card-inner{width:100%;height:100%;min-height:92px;transform-style:preserve-3d;transition:transform .24s;display:block;position:relative}.memory-match-card[data-card-state=front] .memory-match-card-inner,.memory-match-card[data-card-state=matched] .memory-match-card-inner{transform:rotateY(180deg)}.memory-match-card-face{backface-visibility:hidden;border:2px solid #0000;border-radius:18px;place-items:center;display:grid;position:absolute;inset:0;overflow:hidden}.memory-match-card-back{border-color:color-mix(in srgb,var(--memory-match-back)62%,var(--surface-base));background:radial-gradient(circle at 24% 22%,#ffffff47 0 5px,transparent 6px),radial-gradient(circle at 76% 72%,#fff3 0 8px,transparent 9px),linear-gradient(145deg,var(--memory-match-back),color-mix(in srgb,var(--memory-match-back)70%,var(--primary-pink)));box-shadow:inset 0 0 0 4px #ffffff29,var(--shadow-small);color:var(--surface-base)}.memory-match-card-back .system-icon{filter:drop-shadow(0 2px 2px #2d343624);width:clamp(34px,8vw,52px);height:clamp(34px,8vw,52px)}.memory-match-card-front{border-color:color-mix(in srgb,var(--memory-match-accent)28%,var(--border-subtle));background:color-mix(in srgb,var(--surface-base)93%,var(--memory-match-warm));box-shadow:inset 0 0 0 2px #ffffffb8,var(--shadow-small);padding:clamp(7px,1.5vw,13px);transform:rotateY(180deg)}.memory-match-card[data-card-state=matched] .memory-match-card-front{border-color:var(--memory-match-success);background:color-mix(in srgb,var(--primary-green)13%,var(--surface-base));box-shadow:inset 0 0 0 3px color-mix(in srgb,var(--primary-green)22%,transparent),var(--shadow-medium)}.memory-match-card:active .memory-match-card-inner{scale:.985}.memory-match-card:focus-visible{outline:var(--focus-ring-width)solid var(--focus-ring-color);outline-offset:2px}.memory-match-card-visual{place-items:center;width:100%;min-width:0;height:100%;min-height:0;display:grid}.memory-match-card-visual .learning-item-image{object-fit:contain;width:min(84%,320px);max-width:100%;height:min(84%,320px);max-height:100%;display:block}.memory-match-card-visual .learning-item-flag{background-color:#0000;background-position:50%;background-repeat:no-repeat;background-size:contain;max-width:100%;height:min(84%,240px);max-height:100%;display:block;width:min(84%,320px)!important}.memory-match-card-visual .learning-item-emoji{font-size:clamp(3.5rem,42cqi,8rem);line-height:1}.memory-match-card-word{width:100%;max-height:2.5em;color:var(--text-dark);overflow-wrap:anywhere;text-align:center;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:clamp(1.35rem,15cqi,3.75rem);font-weight:900;line-height:1.22;display:-webkit-box;overflow:hidden}.memory-match-card-sound{aspect-ratio:1;background:color-mix(in srgb,var(--memory-match-accent)15%,var(--surface-base));width:clamp(58px,14vw,98px);color:var(--memory-match-accent-strong);border-radius:50%;place-items:center;display:grid}.memory-match-card-sound .system-icon{stroke-width:2.2px;width:62%;height:62%}.memory-match-matched-mark{z-index:2;border:2px solid var(--surface-base);background:var(--memory-match-success);width:clamp(24px,5vw,31px);height:clamp(24px,5vw,31px);box-shadow:var(--shadow-small);color:var(--surface-base);border-radius:50%;place-items:center;display:none;position:absolute;top:5px;right:5px}.memory-match-card[data-card-state=matched] .memory-match-matched-mark{animation:.21s ease-out memory-match-pop;display:grid}.memory-match-matched-mark .system-icon{stroke-width:2.5px;width:68%;height:68%}@keyframes memory-match-pop{0%{opacity:0;transform:scale(.55)}to{opacity:1;transform:scale(1)}}.memory-match-recovery{border:1px solid color-mix(in srgb,var(--primary-pink)34%,var(--border-subtle));background:color-mix(in srgb,var(--primary-pink)8%,var(--surface-base));border-radius:16px;flex:none;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 12px;margin-top:8px;padding:9px 11px;display:grid}.memory-match-recovery[hidden]{display:none}.memory-match-recovery-copy{min-width:0;color:var(--text-dark);gap:2px;font-size:clamp(.75rem,2.2vw,.88rem);line-height:1.3;display:grid}.memory-match-recovery-copy output{color:var(--memory-match-accent-strong);font-weight:900}.memory-match-recovery-actions{align-items:center;gap:6px;display:flex}.memory-match-recovery-button{background:var(--surface-base);padding-inline:10px}.memory-match-sr-status{clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.memory-match-empty{border:1px dashed color-mix(in srgb,var(--memory-match-accent)40%,var(--border-subtle));background:color-mix(in srgb,var(--surface-base)92%,var(--memory-match-warm));min-height:260px;color:var(--text-muted);text-align:center;border-radius:24px;flex:1 0 auto;place-items:center;padding:28px 18px;line-height:1.5;display:grid}.memory-match-settings-dialog,.memory-match-completion-dialog{border:1px solid color-mix(in srgb,var(--memory-match-accent)32%,var(--border-subtle));background:var(--surface-base);width:min(100% - 24px,560px);max-width:100%;max-height:calc(100dvh - 24px);box-shadow:var(--shadow-large);color:var(--text-dark);border-radius:26px;margin:auto;padding:0;overflow:hidden}.memory-match-settings-dialog::backdrop,.memory-match-completion-dialog::backdrop{-webkit-backdrop-filter:blur(3px);background:#2d343675}.memory-match-dialog-shell{overscroll-behavior:contain;gap:15px;max-height:calc(100dvh - 24px);padding:clamp(18px,4vw,26px);display:grid;position:relative;overflow-y:auto}.memory-match-dialog-heading{text-align:center;gap:5px;display:grid}.memory-match-dialog-heading .system-icon{width:42px;height:42px;color:var(--memory-match-accent-strong);margin-inline:auto}.memory-match-dialog-heading h2{font-size:clamp(1.35rem,5vw,1.85rem);line-height:1.2}.memory-match-dialog-heading p,.memory-match-current-category{color:var(--text-muted);font-size:.88rem;line-height:1.4}.memory-match-current-category{background:var(--surface-muted);text-align:center;border-radius:14px;padding:9px 12px}.memory-match-current-category strong{color:var(--text-dark)}.memory-match-settings-group{border:0;gap:8px;min-width:0;padding:0;display:grid}.memory-match-settings-group legend{color:var(--text-dark);margin-bottom:7px;font-size:.86rem;font-weight:900}.memory-match-option-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;min-width:0;display:grid}.memory-match-option-grid-pairs{grid-template-columns:repeat(3,minmax(0,1fr))}.memory-match-option{border:1px solid var(--border-subtle);background:var(--surface-muted);min-width:0;min-height:50px;color:var(--text-dark);cursor:pointer;text-align:center;touch-action:manipulation;border-radius:14px;place-items:center;padding:8px;font-size:clamp(.76rem,2.4vw,.88rem);font-weight:900;line-height:1.25;display:grid;position:relative}.memory-match-option input{cursor:pointer;opacity:0;width:100%;height:100%;margin:0;position:absolute;inset:0}.memory-match-option:has(input:checked){border-color:var(--memory-match-accent-strong);background:color-mix(in srgb,var(--memory-match-accent)12%,var(--surface-base));box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--memory-match-accent)18%,transparent);color:var(--memory-match-accent-strong)}.memory-match-option:has(input:focus-visible){outline:var(--focus-ring-width)solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}.memory-match-dialog-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.memory-match-dialog-button,.memory-match-dialog-link{width:100%;min-width:0;min-height:48px;font-size:.9rem}.memory-match-dialog-button-primary{border-color:var(--memory-match-accent-strong);background:var(--memory-match-accent-strong);color:var(--surface-base)}.memory-match-dialog-button-secondary,.memory-match-dialog-link{border-color:var(--border-subtle);background:var(--surface-muted);color:var(--text-dark)}.memory-match-completion-dialog .memory-match-dialog-shell{isolation:isolate;text-align:center}.memory-match-completion-dialog .memory-match-dialog-shell:before,.memory-match-completion-dialog .memory-match-dialog-shell:after{z-index:-1;background:radial-gradient(circle at 30% 30%,var(--primary-yellow)0 5px,transparent 6px),radial-gradient(circle at 70% 62%,var(--primary-pink)0 4px,transparent 5px),radial-gradient(circle at 42% 82%,var(--primary-blue)0 4px,transparent 5px);content:"";opacity:.38;pointer-events:none;border-radius:50%;width:74px;height:74px;animation:1.8s ease-in-out infinite alternate memory-match-celebrate;position:absolute}.memory-match-completion-dialog .memory-match-dialog-shell:before{top:8px;left:4px}.memory-match-completion-dialog .memory-match-dialog-shell:after{animation-delay:-.9s;bottom:8px;right:4px}@keyframes memory-match-celebrate{0%{transform:translateY(0)rotate(-5deg)}to{transform:translateY(-7px)rotate(5deg)}}@media (min-width:600px){.memory-match-grid[data-pair-count="3"]{grid-template-columns:repeat(3,minmax(0,1fr))}.memory-match-grid[data-pair-count="4"]{grid-template-columns:repeat(4,minmax(0,1fr))}.memory-match-grid[data-pair-count="6"]{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:768px){.memory-match-grid[data-pair-count="6"]{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (min-width:1024px){.memory-match-grid[data-pair-count="6"]{grid-template-columns:repeat(6,minmax(0,1fr))}}@media (max-width:600px){.memory-match-list-section{padding-top:10px}.memory-match-category-card{border-radius:18px}.memory-match-game{padding-top:6px}.memory-match-board-card{border-radius:20px;padding:8px}.memory-match-summary{grid-template-columns:minmax(0,1fr);gap:7px}.memory-match-summary-actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.memory-match-summary-actions>button{width:100%;min-width:0}.memory-match-progress{padding-block:8px}.memory-match-grid{gap:7px}.memory-match-card-face{border-radius:15px}.memory-match-recovery{grid-template-columns:minmax(0,1fr)}.memory-match-recovery-actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.memory-match-recovery-button{width:100%;min-width:0}.memory-match-dialog-shell{gap:12px;padding:17px}}@media (max-width:360px){.memory-match-summary-copy{grid-template-columns:minmax(0,1fr);gap:2px}.memory-match-option-grid-pairs{grid-template-columns:minmax(0,1fr)}.memory-match-option-grid-pairs .memory-match-option{min-height:var(--touch-target-min)}.memory-match-dialog-actions{grid-template-columns:minmax(0,1fr)}}@media (orientation:landscape) and (max-height:500px) and (min-width:700px){.memory-match-game{max-width:1280px;padding-top:4px}.memory-match-layout{width:min(100%,1160px)}.memory-match-board-card{padding:7px 9px}.memory-match-summary{padding-bottom:6px}.memory-match-progress{padding-block:6px 7px}.memory-match-grid{grid-auto-rows:minmax(78px,1fr);gap:7px}.memory-match-grid[data-pair-count="3"]{grid-template-columns:repeat(3,minmax(0,1fr))}.memory-match-grid[data-pair-count="4"]{grid-template-columns:repeat(4,minmax(0,1fr))}.memory-match-grid[data-pair-count="6"]{grid-template-columns:repeat(6,minmax(0,1fr))}.memory-match-card-inner{min-height:78px}.memory-match-card-front{padding:5px}.memory-match-card-word{font-size:clamp(1.25rem,14cqi,1.45rem);line-height:1.15}.memory-match-card-visual .learning-item-flag{aspect-ratio:4/3;max-width:92%;height:min(92%,240px);width:auto!important}.memory-match-settings-dialog,.memory-match-completion-dialog,.memory-match-dialog-shell{max-height:calc(100dvh - 12px)}}html.app-fullscreen .memory-match-game{max-width:1280px;padding-top:4px}html.app-fullscreen .memory-match-layout{width:min(100%,1120px)}html.app-fullscreen .memory-match-board-card{padding:8px}html.app-fullscreen .memory-match-summary{padding-bottom:6px}html.app-fullscreen .memory-match-progress{padding-block:6px 7px}@media (hover:hover) and (pointer:fine){.memory-match-category-card:not(.is-unavailable):hover,.memory-match-restart:hover,.memory-match-settings:hover,.memory-match-recovery-button:hover,.memory-match-dialog-button:hover,.memory-match-dialog-link:hover{border-color:var(--memory-match-accent-strong);box-shadow:0 7px 18px color-mix(in srgb,var(--memory-match-accent)16%,transparent)}.memory-match-category-card:not(.is-unavailable):hover{transform:translateY(-2px)}}@media (prefers-reduced-motion:reduce){.memory-match-category-card,.memory-match-card-inner,.memory-match-card:active .memory-match-card-inner,.memory-match-progress-value,.memory-match-matched-mark,.memory-match-completion-dialog .memory-match-dialog-shell:before,.memory-match-completion-dialog .memory-match-dialog-shell:after{transition:none!important;animation:none!important}}
.sound-detective-list-section,.sound-detective-section{--sound-detective-accent:color-mix(in srgb,var(--primary-purple)78%,var(--primary-blue));--sound-detective-accent-strong:color-mix(in srgb,var(--primary-purple)58%,var(--text-dark));--sound-detective-warm:color-mix(in srgb,var(--primary-yellow)24%,var(--surface-base));--sound-detective-success:color-mix(in srgb,var(--primary-green)76%,var(--text-dark));width:100%;min-width:0;margin-inline:auto;overflow-x:clip}.sound-detective-list-section{max-width:1180px;padding:clamp(14px,2.5vw,28px) 0 38px}.sound-detective-list-heading{text-align:center;gap:7px;margin:0 auto clamp(18px,3vw,30px);display:grid}.sound-detective-list-heading h2{color:var(--text-dark);font-size:clamp(1.65rem,5vw,2.45rem);line-height:1.1}.sound-detective-list-heading p{color:var(--text-muted);font-size:clamp(.92rem,2.8vw,1.05rem)}.sound-detective-category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(10px,2.2vw,18px);min-width:0;margin:0;padding:0;list-style:none;display:grid}.sound-detective-category-grid>li{min-width:0}.sound-detective-category-card{border:1px solid color-mix(in srgb,var(--sound-detective-accent)30%,var(--border-subtle));background:radial-gradient(circle at 85% 8%,color-mix(in srgb,var(--primary-yellow)28%,transparent),transparent 36%),color-mix(in srgb,var(--surface-elevated)96%,var(--sound-detective-warm));width:100%;min-width:0;min-height:100%;box-shadow:var(--shadow-medium);color:var(--text-dark);text-align:center;touch-action:manipulation;border-radius:22px;grid-template-rows:1fr auto auto;align-items:center;gap:8px;padding:clamp(11px,2.4vw,18px);text-decoration:none;transition:border-color .16s,box-shadow .16s,transform .16s;display:grid}.sound-detective-category-card:active{transform:scale(.985)}.sound-detective-category-card:focus-visible,.sound-detective-board-card button:focus-visible,.sound-detective-board-card a:focus-visible,.sound-detective-settings-dialog button:focus-visible,.sound-detective-settings-dialog input:focus-visible,.sound-detective-completion-dialog button:focus-visible,.sound-detective-completion-dialog a:focus-visible{outline:var(--focus-ring-width)solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}.sound-detective-category-visual{place-items:center;margin-inline:auto;display:grid}.sound-detective-category-visual .navigation-visual{--navigation-visual-size:clamp(68px,16vw,96px)}.sound-detective-category-card>strong{overflow-wrap:anywhere;font-size:clamp(1rem,3.4vw,1.2rem)}.sound-detective-category-card>small{color:var(--sound-detective-accent-strong);font-size:clamp(.76rem,2.4vw,.88rem);font-weight:900}@media (min-width:768px){.sound-detective-category-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.content:has(>.sound-detective-game){padding-block:var(--screen-gutter)calc(24px + env(safe-area-inset-bottom,0px))}.sound-detective-game{flex:none;max-width:1180px;padding:0}.sound-detective-layout{flex-direction:column;flex:none;width:min(100%,1000px);min-width:0;min-height:0;margin-inline:auto;display:flex}.sound-detective-board-card,.sound-detective-state-card{border:1px solid color-mix(in srgb,var(--sound-detective-accent)26%,var(--border-subtle));background:radial-gradient(circle at 8% 8%,color-mix(in srgb,var(--primary-purple)11%,transparent),transparent 32%),radial-gradient(circle at 92% 5%,color-mix(in srgb,var(--primary-yellow)21%,transparent),transparent 31%),color-mix(in srgb,var(--surface-elevated)96%,var(--sound-detective-warm));border-radius:24px;flex-direction:column;flex:none;width:100%;min-width:0;min-height:0;padding:clamp(9px,1.7vw,16px);display:flex;position:relative;overflow:hidden;box-shadow:0 12px 38px #2d343614}.sound-detective-summary{border-bottom:1px solid var(--border-subtle);flex:none;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 12px;min-width:0;padding:0 1px 8px;display:grid}.sound-detective-hud{min-width:0;color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:4px 12px;font-size:clamp(.72rem,2vw,.84rem);font-weight:800;display:flex}.sound-detective-hud strong{color:var(--text-dark);font-variant-numeric:tabular-nums;font-family:sans-serif;font-size:.94em}.sound-detective-summary-actions,.sound-detective-recovery-actions,.sound-detective-state-actions,.sound-detective-dialog-actions{justify-content:flex-end;align-items:center;gap:7px;min-width:0;display:flex}.sound-detective-restart,.sound-detective-settings,.sound-detective-audio,.sound-detective-start,.sound-detective-recovery button,.sound-detective-state-actions button,.sound-detective-state-actions a,.sound-detective-link-button,.sound-detective-dialog-actions button,.sound-detective-dialog-actions a{border:1px solid color-mix(in srgb,var(--sound-detective-accent)38%,var(--border-subtle));background:color-mix(in srgb,var(--sound-detective-accent)8%,var(--surface-base));min-width:48px;min-height:48px;box-shadow:none;color:var(--sound-detective-accent-strong);cursor:pointer;font:inherit;text-align:center;touch-action:manipulation;border-radius:14px;justify-content:center;align-items:center;gap:6px;padding:9px 13px;font-size:clamp(.76rem,2.2vw,.88rem);font-weight:900;text-decoration:none;display:inline-flex}.sound-detective-restart{border-color:var(--border-subtle);background:var(--surface-muted);color:var(--text-dark)}.sound-detective-settings .system-icon,.sound-detective-audio .system-icon,.sound-detective-start .system-icon{width:20px;height:20px}.sound-detective-progress{background:color-mix(in srgb,var(--primary-purple)10%,var(--surface-muted));border-radius:999px;flex:none;height:9px;margin-top:8px;display:block;overflow:hidden}.sound-detective-progress>span{border-radius:inherit;background:linear-gradient(90deg,var(--primary-purple),var(--primary-yellow));height:100%;transition:inline-size .18s;display:block}.sound-detective-prompt{flex:none;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0;padding:clamp(9px,1.5vw,13px) 2px;display:grid}.sound-detective-sound-mark{aspect-ratio:1;background:color-mix(in srgb,var(--primary-purple)17%,var(--surface-base));width:clamp(48px,7vw,62px);color:var(--sound-detective-accent-strong);border-radius:18px;place-items:center;display:grid}.sound-detective-sound-mark .system-icon{stroke-width:1.65px;width:64%;height:64%}.sound-detective-prompt>div{gap:3px;min-width:0;display:grid}.sound-detective-prompt strong{color:var(--text-dark);font-size:clamp(.9rem,2.5vw,1.08rem);line-height:1.3}.sound-detective-prompt>div>span{color:var(--text-muted);font-size:clamp(.72rem,2vw,.84rem)}.sound-detective-choice-grid{--sound-detective-columns:2;grid-template-columns:repeat(var(--sound-detective-columns),minmax(0,1fr));flex:none;grid-auto-rows:clamp(160px,26vw,260px);align-content:start;gap:clamp(7px,1.6vw,12px);min-width:0;min-height:0;display:grid}.sound-detective-choice-grid[data-choice-count="3"]{--sound-detective-columns:3}.sound-detective-choice{border:2px solid color-mix(in srgb,var(--sound-detective-accent)24%,var(--border-subtle));background:var(--surface-base);width:100%;min-width:44px;min-height:44px;box-shadow:var(--shadow-small);color:var(--text-dark);cursor:pointer;font:inherit;touch-action:manipulation;border-radius:clamp(16px,2.5vw,22px);grid-template-rows:minmax(0,1fr) auto;place-items:center;padding:clamp(5px,1.2vw,10px);transition:border-color .16s,box-shadow .16s,transform .16s;display:grid;position:relative;overflow:hidden}.sound-detective-choice[aria-disabled=true]{cursor:default}.sound-detective-choice img{object-fit:contain;-webkit-user-select:none;user-select:none;width:100%;min-width:0;height:100%;min-height:0;max-height:220px}.sound-detective-choice-feedback{background:var(--surface-base);border-radius:50%;place-items:center;width:32px;height:32px;font-family:sans-serif;font-size:1.35rem;font-weight:900;line-height:1;display:none;position:absolute;top:7px;right:7px}.sound-detective-choice[data-choice-state=wrong]{border-color:var(--danger-text);background:color-mix(in srgb,var(--danger-surface)66%,var(--surface-base));animation:.42s ease-in-out sound-detective-shake}.sound-detective-choice[data-choice-state=wrong] .sound-detective-choice-feedback{color:var(--danger-text);display:grid}.sound-detective-choice[data-choice-state=correct]{border-color:var(--sound-detective-success);background:color-mix(in srgb,var(--primary-green)13%,var(--surface-base));box-shadow:0 0 0 3px color-mix(in srgb,var(--primary-green)22%,transparent),var(--shadow-medium)}.sound-detective-choice[data-choice-state=correct] .sound-detective-choice-feedback{color:var(--sound-detective-success);display:grid}.sound-detective-answer-label{min-width:0;color:var(--sound-detective-success);overflow-wrap:anywhere;padding-top:2px;font-size:clamp(.82rem,2.5vw,1rem)}.sound-detective-start-panel{flex:none;justify-content:center;padding-top:16px;display:flex}.sound-detective-game[data-phase=intro] .sound-detective-audio{display:none}.sound-detective-start{border-color:var(--sound-detective-accent);background:var(--sound-detective-accent-strong);width:min(100%,330px);color:var(--surface-base);scroll-margin-block:16px}.sound-detective-start:disabled{cursor:wait;opacity:.58}.sound-detective-recovery{border:1px solid color-mix(in srgb,var(--danger-text)30%,var(--border-subtle));background:var(--danger-surface);border-radius:16px;flex:none;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 12px;min-width:0;margin-top:9px;padding:9px;display:grid}.sound-detective-recovery[hidden]{display:none}.sound-detective-recovery>div:first-child{min-width:0;color:var(--danger-text);gap:3px;font-size:.84rem;display:grid}.sound-detective-recovery output{color:var(--text-dark);font-weight:900}.sound-detective-feedback{min-height:22px;color:var(--text-muted);text-align:center;flex:none;margin-top:7px;font-size:clamp(.8rem,2.2vw,.92rem);font-weight:900}.sound-detective-live-status{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.sound-detective-image-error,.sound-detective-state-card{min-height:100%;color:var(--text-dark);text-align:center;align-content:center;justify-items:center;gap:12px;padding:clamp(20px,6vw,44px);display:grid}.sound-detective-image-error>.system-icon,.sound-detective-state-card>.system-icon{width:64px;height:64px;color:var(--sound-detective-accent-strong)}.sound-detective-image-error p,.sound-detective-state-card p{color:var(--text-muted)}.sound-detective-settings-dialog,.sound-detective-completion-dialog{background:var(--surface-base);width:min(100% - 24px,560px);max-height:min(90dvh,720px);color:var(--text-dark);border:0;border-radius:26px;margin:auto;padding:0;overflow:hidden;box-shadow:0 30px 90px #2d343657}.sound-detective-settings-dialog::backdrop,.sound-detective-completion-dialog::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#2d343699}.sound-detective-dialog-shell{overscroll-behavior:contain;gap:17px;max-height:min(90dvh,720px);padding:clamp(18px,4vw,28px);display:grid;overflow-y:auto}.sound-detective-dialog-heading{text-align:center;justify-items:center;gap:8px;display:grid}.sound-detective-dialog-heading>.system-icon{width:52px;height:52px;color:var(--sound-detective-accent-strong)}.sound-detective-dialog-heading h2{font-size:clamp(1.35rem,4.5vw,1.85rem)}.sound-detective-current-category{background:var(--surface-muted);color:var(--text-muted);text-align:center;border-radius:14px;padding:10px 12px}.sound-detective-current-category strong{color:var(--text-dark)}.sound-detective-settings-group{border:0;min-width:0;padding:0}.sound-detective-settings-group legend{margin-bottom:8px;font-weight:900}.sound-detective-option-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;min-width:0;display:grid}.sound-detective-option{min-width:0;display:grid;position:relative}.sound-detective-option input{opacity:0;position:absolute;inset:0}.sound-detective-option span{border:1px solid var(--border-subtle);background:var(--surface-base);min-width:0;min-height:58px;color:var(--text-dark);text-align:center;touch-action:manipulation;border-radius:14px;place-items:center;padding:9px 6px;font-size:clamp(.74rem,2.4vw,.88rem);font-weight:900;line-height:1.3;display:grid}.sound-detective-option input:checked+span{border:2px solid var(--sound-detective-accent-strong);background:color-mix(in srgb,var(--primary-purple)12%,var(--surface-base))}.sound-detective-option input:focus-visible+span{outline:var(--focus-ring-width)solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}.sound-detective-dialog-actions{justify-content:stretch}.sound-detective-dialog-actions>*{flex:1 1 0}.sound-detective-dialog-primary{border-color:var(--sound-detective-accent-strong)!important;background:var(--sound-detective-accent-strong)!important;color:var(--surface-base)!important}.sound-detective-completion-heading p{color:var(--text-muted);font-weight:900}@keyframes sound-detective-shake{0%,to{transform:translate(0)}30%{transform:translate(-5px)}70%{transform:translate(5px)}}@media (max-width:600px){.sound-detective-game{padding-top:5px}.sound-detective-board-card,.sound-detective-state-card{border-radius:20px;padding:8px}.sound-detective-summary{grid-template-columns:minmax(0,1fr) auto}.sound-detective-hud{gap:2px 8px}.sound-detective-summary-actions{gap:5px}.sound-detective-restart,.sound-detective-settings{padding-inline:9px}.sound-detective-prompt{grid-template-columns:auto minmax(0,1fr)}.sound-detective-audio{grid-column:1/-1;width:100%;min-height:48px}.sound-detective-choice-grid{grid-auto-rows:clamp(112px,34vw,180px)}.sound-detective-choice-grid[data-choice-count="3"]{--sound-detective-columns:2}.sound-detective-choice-grid[data-choice-count="3"]>:last-child{grid-column:1/-1;justify-self:center;width:calc(50% - clamp(7px,1.6vw,12px)/2)}.sound-detective-recovery{grid-template-columns:minmax(0,1fr)}.sound-detective-recovery-actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.sound-detective-recovery button{width:100%}}@media (max-width:360px){.sound-detective-hud{display:grid}.sound-detective-summary-actions{align-self:start}.sound-detective-option-grid{grid-template-columns:minmax(0,1fr)}}@media (min-width:700px){.sound-detective-choice-grid[data-choice-count="4"]{--sound-detective-columns:4}.sound-detective-choice-grid[data-choice-count="6"]{--sound-detective-columns:3}}@media (min-width:1024px){.sound-detective-choice-grid[data-choice-count="6"]{--sound-detective-columns:3}}@media (orientation:landscape) and (max-height:520px) and (min-width:700px){.sound-detective-game{padding-top:3px}.sound-detective-board-card{padding:6px 9px}.sound-detective-summary{padding-bottom:4px}.sound-detective-progress{height:6px;margin-top:4px}.sound-detective-prompt{grid-template-columns:auto minmax(0,1fr) auto;padding-block:5px}.sound-detective-sound-mark{border-radius:14px;width:44px}.sound-detective-choice-grid,.sound-detective-choice-grid[data-choice-count="3"],.sound-detective-choice-grid[data-choice-count="4"],.sound-detective-choice-grid[data-choice-count="6"]{--sound-detective-columns:6;grid-auto-rows:120px}.sound-detective-choice-grid[data-choice-count="3"]{--sound-detective-columns:3}.sound-detective-choice-grid[data-choice-count="4"]{--sound-detective-columns:4}.sound-detective-choice img{max-height:100px}.sound-detective-feedback{min-height:18px;margin-top:3px}}html.app-fullscreen .sound-detective-game{max-width:1280px;padding-top:2px}html.app-fullscreen .sound-detective-layout{width:min(100%,1120px)}html.app-fullscreen .sound-detective-board-card{padding-top:7px}@media (prefers-reduced-motion:reduce){.sound-detective-category-card,.sound-detective-progress>span,.sound-detective-choice{transition:none;animation:none}.sound-detective-category-card:active{transform:none}}
.content:has(.write-container){padding-bottom:max(8px,env(safe-area-inset-bottom,0px))}.challenge-section:has(.write-container){flex:auto}.write-container{background:#fffffff5;border:3px solid #ffb23859;border-radius:clamp(20px,3.5vw,32px);flex-direction:column;flex:1;justify-content:center;align-items:stretch;width:min(100%,1240px);min-height:0;margin:4px auto 0;padding:clamp(10px,1.8vh,20px) clamp(12px,2.5vw,28px);display:flex;overflow:visible;box-shadow:0 14px 36px #ff9f4324,0 4px #ffe0b2,inset 0 1px #ffffffe6}.write-workspace{flex-direction:column;flex:1;justify-content:space-between;align-items:center;gap:clamp(8px,1.5vh,16px);width:100%;min-height:0;display:flex}.write-left-panel,.write-right-arena{display:contents}.write-game-hud{background:#fff8eb;border:2px solid #ffe3b0;border-radius:18px;flex-shrink:0;order:1;justify-content:space-between;align-items:center;gap:8px;width:100%;padding:clamp(6px,1vh,10px) clamp(10px,2vw,16px);display:flex;box-shadow:0 3px #f5d496}.write-mode-tabs{gap:6px;display:flex}.write-mode-tab{color:#795548;min-height:clamp(40px,5.5vh,48px);font-family:var(--font-jua),sans-serif;cursor:pointer;background:#fff;border:2px solid #0000;border-radius:14px;align-items:center;gap:6px;padding:6px clamp(12px,2vw,20px);font-size:clamp(.95rem,2.2vw,1.15rem);text-decoration:none;transition:all .15s;display:inline-flex;box-shadow:0 3px #ecd5b8}.write-mode-tab.active{color:#fff;background:linear-gradient(135deg,#ff9f43,#ff793f);border-color:#0000;transform:translateY(-2px);box-shadow:0 4px #d35400,0 6px 14px #ff793f59}.write-mode-tab:active{transform:translateY(2px);box-shadow:0 1px #d35400}.write-mode-tab:focus-visible,.write-target-button:focus-visible,.write-nav-button:focus-visible,.write-pen-button:focus-visible,.write-btn:focus-visible{outline:var(--focus-ring-width)solid var(--focus-ring-color);outline-offset:2px}.write-progress{color:#b25e00;min-width:64px;font-family:var(--font-jua),sans-serif;background:#fff;border:1px solid #ffd699;border-radius:999px;padding:6px 14px;font-size:clamp(.9rem,2.2vw,1.1rem);box-shadow:0 2px #f3cb8c}.write-status{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.write-prompt-card{background:linear-gradient(160deg,#fff 0%,#fffbf2 100%);border:2px solid #ffe8cc;border-radius:24px;flex-shrink:0;order:2;width:100%;max-width:720px;padding:clamp(12px,1.6vh,20px) clamp(14px,2.4vw,24px);box-shadow:0 6px 20px #ff9f4314}.write-target-row{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:clamp(32px,5vw,64px);padding:8px 12px;display:grid}.write-nav-button{color:#1969a5;cursor:pointer;background:linear-gradient(135deg,#a1c4fd,#c2e9fb);border:0;border-radius:50%;justify-content:center;align-items:center;width:clamp(44px,6vh,56px);height:clamp(44px,6vh,56px);font-size:clamp(1.1rem,2.4vh,1.4rem);transition:all .15s;display:flex;box-shadow:0 4px #7ca3d8}.write-nav-button.previous{color:#a82255;background:linear-gradient(135deg,#ff9a9e,#fecfef);box-shadow:0 4px #e06d91}.write-nav-button:active:not(:disabled){transform:translateY(3px);box-shadow:0 1px #0003}.write-nav-button:disabled{color:#9aa1aa;box-shadow:none;cursor:not-allowed;background:#edf0f3;transform:none}.write-target-button{color:#d35400;cursor:pointer;background:linear-gradient(135deg,#fff9eb,#fff2d6);border:2px solid #ffcc80;border-radius:20px;justify-content:center;align-items:center;gap:10px;min-width:0;min-height:clamp(150px,22vh,200px);padding:16px 32px;transition:transform .15s;display:flex;box-shadow:0 4px #f5b041}.write-target-button:hover{transform:scale(1.02)}.write-target-char{max-width:100%;font-family:var(--font-jua),sans-serif;text-overflow:ellipsis;white-space:nowrap;font-size:clamp(4rem,9vh,6rem);line-height:1;overflow:hidden}.write-target-button.word .write-target-char{font-size:clamp(3rem,7vh,4.6rem)}.write-target-emoji{font-size:clamp(4rem,9vh,6rem)}.write-target-photo{object-fit:contain;filter:drop-shadow(0 4px 10px #00000026);width:auto;max-width:320px;height:clamp(140px,20vh,200px)}.write-sound-icon{opacity:.85;font-size:clamp(1rem,2vh,1.2rem)}.write-instruction{color:#7f8c8d;font-family:var(--font-gaegu),cursive;margin:4px 0 0;font-size:clamp(.85rem,2vh,1.05rem)}.write-canvas-wrap{aspect-ratio:1;background-color:#fffef9;background-image:linear-gradient(90deg,#0000 49.5%,#ffb2384d 49.5% 50.5%,#0000 50.5%),linear-gradient(#0000 49.5%,#ffb2384d 49.5% 50.5%,#0000 50.5%),linear-gradient(#f7f3eb 1px,#0000 1px),linear-gradient(90deg,#f7f3eb 1px,#0000 1px),none;background-position:0 0,0 0,0 0,0 0,0 0;background-repeat:repeat,repeat,repeat,repeat,repeat;background-size:100% 100%,100% 100%,50% 50%,50% 50%;background-attachment:scroll,scroll,scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box,border-box,border-box;border:4px dashed #ffb45e;border-radius:24px;flex:none;order:3;max-width:100%;position:relative;overflow:hidden;box-shadow:inset 0 0 0 6px #fff,inset 0 4px 16px #0000000a,0 12px 32px #ff9f4324}.write-canvas-wrap canvas{touch-action:none;cursor:crosshair;width:100%;height:100%;display:block}.write-controls{flex-wrap:wrap;flex-shrink:0;order:4;justify-content:space-between;align-items:center;gap:10px;width:100%;padding:clamp(4px,.8vh,8px) 0 2px;display:flex}.write-pen-tools,.write-action-buttons{justify-content:center;align-items:center;gap:clamp(6px,1.2vw,12px);display:flex}.write-tool-label{color:#5f6875;font-family:var(--font-jua),sans-serif;font-size:clamp(.9rem,2vh,1.05rem)}.write-pen-button{cursor:pointer;background:#edf4fc;border:3px solid #0000;border-radius:50%;place-items:center;width:46px;min-width:44px;height:46px;min-height:44px;padding:0;transition:all .15s;display:grid;box-shadow:0 3px #c2d5ea}.write-pen-button:hover{transform:translateY(-2px)}.write-pen-button span{background:#2d3436;border-radius:50%;display:block}.write-pen-button.pen-4 span{width:6px;height:6px}.write-pen-button.pen-8 span{width:12px;height:12px}.write-pen-button.pen-14 span{width:18px;height:18px}.write-pen-button.active{background:#fff4e5;border-color:#ff9f43;transform:translateY(-2px);box-shadow:0 4px #e67e22,0 4px 10px #ff9f434d}.write-pen-button:active{transform:translateY(2px);box-shadow:0 1px #c2d5ea}.write-btn{min-height:46px;font-family:var(--font-jua),sans-serif;cursor:pointer;border:0;border-radius:16px;padding:8px clamp(14px,2vw,22px);font-size:clamp(.95rem,2.2vw,1.1rem);transition:all .15s}.write-btn.hint{color:#633600;background:linear-gradient(135deg,#ffd32a,#ff9f1a);box-shadow:0 4px #c77700}.write-btn.clear{color:#fff;background:linear-gradient(135deg,#ff7675,#d63031);box-shadow:0 4px #b71515}.write-btn:hover{transform:translateY(-2px)}.write-btn:active{transform:translateY(3px);box-shadow:0 1px #0003}@media (min-width:880px) and (orientation:landscape),(min-width:1024px){.write-container{padding:clamp(14px,2vh,22px) clamp(18px,2.5vw,32px)}.write-workspace{grid-template-columns:minmax(340px,400px) 1fr;align-items:stretch;gap:clamp(16px,2.5vw,36px);height:100%;min-height:0;display:grid}.write-left-panel{flex-direction:column;justify-content:space-between;gap:clamp(10px,1.6vh,16px);height:100%;min-height:0;display:flex}.write-right-arena{justify-content:center;align-items:center;height:100%;min-height:0;display:flex;position:relative}.write-game-hud{order:unset}.write-prompt-card{order:unset;background:linear-gradient(165deg,#fff 0%,#fff9ee 100%);border:2px solid #ffe3b0;border-radius:24px;flex-direction:column;flex:1;justify-content:center;gap:clamp(10px,1.8vh,16px);width:100%;padding:clamp(14px,2vh,22px) clamp(14px,1.8vw,20px);display:flex;box-shadow:0 8px 24px #ff9f431a,0 3px #f5d496}.write-target-row{grid-template-columns:clamp(48px,6.5vh,60px) minmax(0,1fr) clamp(48px,6.5vh,60px);gap:12px}.write-target-button{border:3px solid #ffcc80;border-radius:20px;min-height:clamp(80px,11vh,110px);padding:10px 20px;box-shadow:0 6px #f5b041,0 10px 20px #f5b04133}.write-target-char{font-size:clamp(3.4rem,8vh,5.2rem)}.write-target-button.word .write-target-char{font-size:clamp(2.4rem,6vh,3.8rem)}.write-target-emoji{font-size:clamp(3rem,7vh,4.4rem)}.write-target-photo{max-width:140px;height:clamp(62px,9vh,90px)}.write-instruction{margin-top:6px;font-size:clamp(.95rem,2vh,1.2rem)}.write-canvas-wrap{order:unset;border-radius:clamp(24px,3vw,36px)}.write-controls{order:unset;background:#fffdf8;border:2px solid #ffe3b0;border-radius:18px;flex-direction:column;gap:10px;padding:10px 14px;display:flex;box-shadow:0 3px #f5d496}.write-action-buttons{grid-template-columns:1fr 1fr;gap:8px;width:100%;display:grid}.write-btn{width:100%;min-height:46px}}@media (max-width:600px){.write-container{border-radius:18px;gap:6px;width:100%;max-height:none;margin-top:0;padding:8px 10px;overflow:visible}.write-workspace{flex:auto}.write-game-hud{padding:4px 8px}.write-mode-tab{min-height:42px;padding:4px 10px}.write-target-row{grid-template-columns:44px minmax(0,1fr) 44px;gap:4px}.write-nav-button{width:44px;height:44px}.write-prompt-card{padding:5px 7px}.write-target-button{min-height:52px;padding:6px 8px}.write-target-photo{max-width:100%;height:clamp(80px,14vh,140px)}.write-target-char,.write-target-emoji{font-size:clamp(3rem,9vh,4rem)}.write-instruction{margin-top:2px}.write-controls{justify-content:center;gap:6px}.write-action-buttons{width:100%}.write-action-buttons .write-btn{flex:1}}@media (max-width:600px) and (max-height:650px) and (orientation:portrait){.write-target-row{padding-block:0}.write-target-photo{height:64px}}@media (orientation:landscape) and (max-height:500px){.write-container{border-radius:16px;gap:5px;width:min(100%,940px);margin-top:2px;padding:6px 10px}.write-game-hud{padding:3px 5px}.write-mode-tab{min-height:45px;padding:4px 12px}.write-workspace{grid-template-columns:minmax(320px,1fr) minmax(200px,.7fr);align-items:center;gap:10px;height:100%;display:grid}.write-left-panel{flex-direction:column;justify-content:space-between;gap:4px;height:100%;display:flex}.write-right-arena{justify-content:center;align-items:center;height:100%;display:flex}.write-prompt-card{width:100%;padding:6px}.write-target-button{min-height:54px;padding:4px 8px}.write-target-row{grid-template-columns:44px minmax(0,1fr) 44px;gap:8px;padding:0}.write-target-photo{max-width:100%;height:54px}.write-target-emoji{font-size:2.5rem}.write-target-char{font-size:3.2rem}.write-target-button.word .write-target-char{font-size:2.2rem}.write-controls{border:0;flex-flow:row;justify-content:center;gap:6px;padding:4px 0}.write-btn{min-height:44px;padding:6px 12px}}@media (prefers-reduced-motion:reduce){.write-mode-tab,.write-nav-button,.write-target-button,.write-pen-button,.write-btn{transition:none}}
.celebration-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;display:none;position:fixed;inset:0}.celebration-overlay.show{display:flex}.celebration-box{background:var(--surface-base);text-align:center;animation:popIn .5s var(--bounce);border-radius:32px;max-width:380px;padding:48px}@keyframes popIn{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}.celebration-box .trophy{margin-bottom:16px;font-size:5rem;display:block}.celebration-box h2{color:var(--primary-orange);font-size:1.8rem}.celebration-box p{font-family:var(--font-gaegu),cursive;color:var(--text-light);margin-top:8px;font-size:1.2rem}.celebration-box button{background:linear-gradient(135deg,var(--primary-orange),#ff6b42);color:#fff;font-family:var(--font-jua),sans-serif;cursor:pointer;border:none;border-radius:50px;margin-top:20px;padding:12px 32px;font-size:1.1rem}@keyframes popOverlayFadeIn{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}.word-popup-star-btn{color:#e67300;min-height:38px;font-family:var(--font-jua),sans-serif;cursor:pointer;transition:all .15s var(--bounce);white-space:nowrap;-webkit-user-select:none;user-select:none;background:#fff8f0;border:1.5px solid #ffaa42;border-radius:999px;align-items:center;gap:5px;padding:6px 14px;font-size:.95rem;font-weight:700;display:inline-flex;box-shadow:0 2px 8px #ff8c4226}.word-popup-star-btn:hover{background:#fff2e0;border-color:#ff8c42;transform:scale(1.05)}.word-popup-star-btn:active{transform:scale(.95)}.word-popup-star-btn.added{color:#fff;background:linear-gradient(135deg,#ff9442,#ff6b00);border-color:#0000;box-shadow:0 3px 10px #ff6b004d}
@media (min-width:1401px){.top-bar{width:100%;max-width:1200px;margin:0 auto}.header{text-align:left;white-space:nowrap;padding:0}.logo{font-size:1.3rem;animation:none}.subtitle{display:none}.content{max-width:100%;margin-left:auto;margin-right:auto}.content .section{width:100%;max-width:1200px;margin-left:auto;margin-right:auto}.content .ms-play-area{max-width:1040px;margin-left:auto;margin-right:auto}.content .ms-shape-option-emoji{display:none}.content .ms-shape-option-name{font-size:32px}.home-group-cards{grid-template-columns:repeat(4,1fr)}}@media (max-width:1400px){.header{text-align:left;white-space:nowrap;padding:0}.logo{font-size:1.2rem;animation:none}.subtitle{display:none}}@media (min-width:700px) and (max-width:1400px){.content{--content-pad:20px;max-width:100%;padding:0 max(var(--content-pad),env(safe-area-inset-right,0px))24px max(var(--content-pad),env(safe-area-inset-left,0px))}.content .section{width:100%;max-width:1200px;margin-left:auto;margin-right:auto}.header{padding:0}.logo{font-size:1.8rem}.subtitle{font-size:.95rem}.home-groups{gap:14px}.home-card{padding:16px 12px}.home-card .emoji{font-size:2.8rem}.home-card h3{font-size:1.15rem}.home-card p{font-size:.9rem}.learn-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:14px}.hangul-grid,.hangul-grid-consonants{grid-template-columns:repeat(7,minmax(0,1fr));gap:12px;max-width:960px}.hangul-grid-vowels{grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;max-width:760px}.learn-card{border-radius:22px;padding:14px 10px 12px}.learn-card .char{font-size:3.4rem}.learn-card .name{font-size:1.15rem}.detail-panel{border-radius:24px;padding:28px}.detail-panel .big-char{font-size:6.5rem}.detail-info h2{font-size:1.8rem}.detail-info p{font-size:1.2rem}.example-words{gap:12px;margin-top:20px}.example-word{border-radius:16px;padding:14px 24px;font-size:1.4rem}.example-word .word-emoji{font-size:2rem}.sound-btn{margin-top:16px;padding:14px 32px;font-size:1.2rem}}@media (max-height:850px) and (orientation:landscape){.section{justify-content:center}.learn-grid{gap:10px!important}.hangul-grid,.hangul-grid-consonants{grid-template-columns:repeat(7,minmax(0,1fr));max-width:920px;margin-top:10px;gap:10px!important}.hangul-grid-vowels{grid-template-columns:repeat(5,minmax(0,1fr));max-width:720px;margin-top:10px;gap:12px!important}.learn-card{border-radius:20px;padding:12px 8px 10px}.learn-card.char-card .char{font-size:clamp(2.4rem,6.5vh,3.4rem)}.learn-card .name{font-size:clamp(.92rem,2.2vh,1.15rem)}.detail-panel{border-radius:16px;flex-flow:wrap;justify-content:center;align-items:center;gap:16px;padding:10px 16px}.detail-panel .big-char{font-size:3rem}.detail-info{margin-top:0}.detail-info h2{font-size:1.2rem}.detail-info p{margin-top:2px;font-size:.9rem}.sound-btn{margin-top:4px;padding:6px 20px;font-size:.9rem}.example-words{gap:6px;width:100%;margin-top:6px}.example-word{border-radius:10px;padding:6px 12px;font-size:.9rem}.example-word .word-emoji{font-size:1.2rem}}@media (min-width:700px) and (max-width:1400px){.bg-char-preview{width:min(220px,32vw);height:min(220px,32vw)}.bg-slot{width:min(110px,15vw);height:min(110px,15vw)}.bg-pool-container{max-width:600px}.bg-jamo-char{font-size:clamp(32px,8vw,70px)}.progress-bar-wrap{max-width:320px;height:14px}}@media (max-width:600px){.header{padding:0}.logo{font-size:1.6rem}.subtitle{font-size:.8rem}.content{--content-pad:12px}.learn-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.hangul-grid,.hangul-grid-consonants{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.hangul-grid-vowels{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.learn-card{aspect-ratio:1/1.12;border-radius:18px;padding:10px 6px 8px;box-shadow:0 4px #e8e2d5,0 8px 16px #0000000d}.learn-card.char-card .char{font-size:clamp(2.4rem,11vw,3.4rem)}.learn-card .name{padding:2px 6px;font-size:1.05rem}.word-card-speak-badge{width:22px;height:22px;font-size:.7rem;top:6px;right:6px}.detail-panel{border-radius:18px;padding:16px}.detail-panel .big-char{font-size:4.5rem}.detail-info h2{font-size:1.2rem}.detail-info p{font-size:.95rem}.example-word{border-radius:14px;padding:10px 16px;font-size:1.1rem}.example-word .word-emoji{font-size:1.5rem}.sound-btn{padding:12px 24px;font-size:1.1rem}.home-groups{gap:10px}.home-group-cards{grid-template-columns:repeat(2,1fr);gap:8px}.home-card{border-radius:16px;padding:12px 8px}.home-card .emoji{margin-bottom:4px;font-size:2rem}.home-card h3{font-size:.9rem}.home-card p{font-size:.7rem}.home-group-emoji{font-size:1.2rem}.home-group-title{font-size:1rem}.header-auth{gap:4px;top:6px;right:8px}.auth-profile{gap:4px}.auth-child-info{gap:4px!important}.auth-avatar{width:24px;height:24px}.auth-name{max-width:60px;font-size:.8rem}.auth-child-age{padding:1px 6px;font-size:.65rem}.auth-btn{padding:4px 8px;font-size:.75rem}.home-child-profile{border-radius:18px;flex-direction:column;align-items:center;gap:12px;padding:12px}.home-child-info{justify-content:center;width:100%}.home-child-photo{width:48px;height:48px}.home-child-name{font-size:1.1rem}.home-child-stats{flex-wrap:wrap;justify-content:center;gap:8px;width:100%;margin-left:0}.home-child-stat{min-height:44px;padding:6px 12px;font-size:.8rem}.home-child-shortcuts{flex-wrap:wrap;gap:6px;margin-top:8px}.home-child-words-btn{white-space:nowrap;padding:6px 14px;font-size:.85rem}.home-shortcut-btn{min-height:44px;padding:7px 10px;font-size:.8rem}.home-hero-card{border-radius:20px;gap:14px;padding:16px 14px}.home-hero-header{flex-direction:column;align-items:flex-start;gap:12px}.home-hero-profile{gap:12px}.home-hero-avatar-wrap{width:56px;height:56px}.home-hero-stats{grid-template-columns:repeat(3,1fr);gap:6px;width:100%;display:grid}.home-stat-chip{text-align:center;border-radius:14px;flex-direction:column;gap:2px;padding:8px 6px}.home-stat-chip .stat-icon{font-size:1rem}.home-stat-chip .stat-label{font-size:.72rem}.home-stat-chip .stat-value{font-size:1rem}.home-quick-actions{grid-template-columns:repeat(2,1fr);gap:6px}.quick-btn{padding:8px 6px;font-size:.82rem}}
