/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-red-50:oklch(97.1% .013 17.38);--color-red-700:oklch(50.5% .213 27.518);--color-red-800:oklch(44.4% .177 26.899);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-xs:20rem;--container-sm:24rem;--container-md:28rem;--container-lg:32rem;--container-2xl:42rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--text-5xl:3rem;--text-5xl--line-height:1;--text-6xl:3.75rem;--text-6xl--line-height:1;--tracking-widest:.1em;--leading-tight:1.25;--leading-relaxed:1.625;--radius-lg:.5rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-cream:#f4ebd9;--color-ink:#2c2c2a;--color-gold:#c9a227;--font-body:"Pretendard", "Be Vietnam Pro", system-ui, sans-serif;--font-pixel:"Galmuri11", "Be Vietnam Pro", system-ui, sans-serif;--font-viet:"Be Vietnam Pro", system-ui, sans-serif}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.pointer-events-none{pointer-events:none}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.inset-0{inset:0}.top-3{top:calc(var(--spacing) * 3)}.right-3{right:calc(var(--spacing) * 3)}.z-10{z-index:10}.z-50{z-index:50}.z-\[60\]{z-index:60}.z-\[70\]{z-index:70}.z-\[80\]{z-index:80}.mx-auto{margin-inline:auto}.my-5{margin-block:calc(var(--spacing) * 5)}.mt-1{margin-top:var(--spacing)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mr-1{margin-right:var(--spacing)}.mb-1{margin-bottom:var(--spacing)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.ml-2{margin-left:calc(var(--spacing) * 2)}.ml-auto{margin-left:auto}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.h-10{height:calc(var(--spacing) * 10)}.h-dvh{height:100dvh}.h-full{height:100%}.max-h-28{max-height:calc(var(--spacing) * 28)}.max-h-32{max-height:calc(var(--spacing) * 32)}.max-h-48{max-height:calc(var(--spacing) * 48)}.max-h-56{max-height:calc(var(--spacing) * 56)}.max-h-\[80vh\]{max-height:80vh}.max-h-\[90vh\]{max-height:90vh}.max-h-\[92vh\]{max-height:92vh}.min-h-0{min-height:0}.min-h-full{min-height:100%}.w-7{width:calc(var(--spacing) * 7)}.w-10{width:calc(var(--spacing) * 10)}.w-16{width:calc(var(--spacing) * 16)}.w-20{width:calc(var(--spacing) * 20)}.w-24{width:calc(var(--spacing) * 24)}.w-full{width:100%}.max-w-2xl{max-width:var(--container-2xl)}.max-w-\[80\%\]{max-width:80%}.max-w-full{max-width:100%}.max-w-lg{max-width:var(--container-lg)}.max-w-md{max-width:var(--container-md)}.max-w-sm{max-width:var(--container-sm)}.max-w-xs{max-width:var(--container-xs)}.flex-1{flex:1}.border-collapse{border-collapse:collapse}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.cursor-pointer{cursor:pointer}.resize{resize:both}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-start{justify-content:flex-start}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-lg{border-radius:var(--radius-lg)}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-\[3px\]{border-style:var(--tw-border-style);border-width:3px}.border-t-2{border-top-style:var(--tw-border-style);border-top-width:2px}.border-t-\[3px\]{border-top-style:var(--tw-border-style);border-top-width:3px}.border-b-\[3px\]{border-bottom-style:var(--tw-border-style);border-bottom-width:3px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-ink{border-color:var(--color-ink)}.border-ink\/25{border-color:#2c2c2a40}@supports (color:color-mix(in lab, red, red)){.border-ink\/25{border-color:color-mix(in oklab, var(--color-ink) 25%, transparent)}}.bg-\[\#4E9C5A\]{background-color:#4e9c5a}.bg-black\/50{background-color:#00000080}@supports (color:color-mix(in lab, red, red)){.bg-black\/50{background-color:color-mix(in oklab, var(--color-black) 50%, transparent)}}.bg-black\/60{background-color:#0009}@supports (color:color-mix(in lab, red, red)){.bg-black\/60{background-color:color-mix(in oklab, var(--color-black) 60%, transparent)}}.bg-black\/70{background-color:#000000b3}@supports (color:color-mix(in lab, red, red)){.bg-black\/70{background-color:color-mix(in oklab, var(--color-black) 70%, transparent)}}.bg-black\/80{background-color:#000c}@supports (color:color-mix(in lab, red, red)){.bg-black\/80{background-color:color-mix(in oklab, var(--color-black) 80%, transparent)}}.bg-black\/85{background-color:#000000d9}@supports (color:color-mix(in lab, red, red)){.bg-black\/85{background-color:color-mix(in oklab, var(--color-black) 85%, transparent)}}.bg-cream{background-color:var(--color-cream)}.bg-ink{background-color:var(--color-ink)}.bg-red-50{background-color:var(--color-red-50)}.bg-white{background-color:var(--color-white)}.bg-cover{background-size:cover}.bg-center{background-position:50%}.p-1{padding:var(--spacing)}.p-2{padding:calc(var(--spacing) * 2)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-5{padding:calc(var(--spacing) * 5)}.p-6{padding:calc(var(--spacing) * 6)}.px-1{padding-inline:var(--spacing)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:var(--spacing)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-8{padding-block:calc(var(--spacing) * 8)}.pt-1{padding-top:var(--spacing)}.pt-2{padding-top:calc(var(--spacing) * 2)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pb-1{padding-bottom:var(--spacing)}.pb-6{padding-bottom:calc(var(--spacing) * 6)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.text-6xl{font-size:var(--text-6xl);line-height:var(--tw-leading,var(--text-6xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[0\.82em\]{font-size:.82em}.text-\[0\.92em\]{font-size:.92em}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.tracking-\[0\.3em\]{--tw-tracking:.3em;letter-spacing:.3em}.tracking-\[0\.4em\]{--tw-tracking:.4em;letter-spacing:.4em}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.break-words{overflow-wrap:break-word}.break-keep{word-break:keep-all}.whitespace-pre-wrap{white-space:pre-wrap}.text-\[\#B3462F\]{color:#b3462f}.text-red-700{color:var(--color-red-700)}.text-red-800{color:var(--color-red-800)}.text-white{color:var(--color-white)}.text-white\/75{color:#ffffffbf}@supports (color:color-mix(in lab, red, red)){.text-white\/75{color:color-mix(in oklab, var(--color-white) 75%, transparent)}}.text-white\/90{color:#ffffffe6}@supports (color:color-mix(in lab, red, red)){.text-white\/90{color:color-mix(in oklab, var(--color-white) 90%, transparent)}}.underline{text-decoration-line:underline}.opacity-40{opacity:.4}.opacity-45{opacity:.45}.opacity-50{opacity:.5}.opacity-55{opacity:.55}.opacity-60{opacity:.6}.opacity-65{opacity:.65}.opacity-70{opacity:.7}.opacity-75{opacity:.75}.opacity-80{opacity:.8}.shadow-\[6px_6px_0_0_rgba\(0\,0\,0\,0\.45\)\]{--tw-shadow:6px 6px 0 0 var(--tw-shadow-color,#00000073);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.drop-shadow-\[3px_3px_0_rgba\(0\,0\,0\,0\.6\)\]{--tw-drop-shadow-size:drop-shadow(3px 3px 0 var(--tw-drop-shadow-color,#0009));--tw-drop-shadow:var(--tw-drop-shadow-size);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.outline-none{--tw-outline-style:none;outline-style:none}.last\:mb-0:last-child{margin-bottom:0}.focus\:border-gold:focus{border-color:var(--color-gold)}@media (width>=40rem){.sm\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.sm\:grid-cols-10{grid-template-columns:repeat(10,minmax(0,1fr))}.sm\:items-center{align-items:center}.sm\:text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.sm\:text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}}@media (width>=48rem){.md\:flex{display:flex}}}@font-face{font-family:Galmuri11;src:url(/fonts/Galmuri11.woff2)format("woff2");font-weight:400 700;font-display:block}@font-face{font-family:Pretendard;src:url(/fonts/pretendard-400.woff2)format("woff2");font-weight:400;font-display:block}@font-face{font-family:Pretendard;src:url(/fonts/pretendard-600.woff2)format("woff2");font-weight:600;font-display:block}@font-face{font-family:Pretendard;src:url(/fonts/pretendard-700.woff2)format("woff2");font-weight:700;font-display:block}@font-face{font-family:Be Vietnam Pro;src:url(/fonts/bevietnampro-vi-400.woff2)format("woff2");font-weight:400;font-display:block;unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Be Vietnam Pro;src:url(/fonts/bevietnampro-vi-700.woff2)format("woff2");font-weight:700;font-display:block;unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Be Vietnam Pro;src:url(/fonts/bevietnampro-latin-400.woff2)format("woff2");font-weight:400;font-display:block;unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Be Vietnam Pro;src:url(/fonts/bevietnampro-latin-700.woff2)format("woff2");font-weight:700;font-display:block;unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}html,body,#root{height:100%}body{background:var(--color-cream);color:var(--color-ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;overscroll-behavior:none;margin:0;line-height:1.5}.pixel{font-family:var(--font-pixel);-webkit-font-smoothing:none;font-smooth:never}.vi{font-family:var(--font-viet);-webkit-font-smoothing:antialiased;letter-spacing:0}img.photo{image-rendering:auto}.btn-pixel{border:3px solid var(--color-ink);box-shadow:4px 4px 0 0 var(--color-ink);transition:none}.btn-pixel:disabled{opacity:.45}@keyframes sprite-bob{0%,to{transform:translateY(0)}50%{transform:translateY(calc(var(--bob,2px) * -1))}}.sprite-walk{animation:.26s steps(2,end) infinite sprite-bob}@keyframes door-pulse{0%,to{opacity:1}50%{opacity:.45}}@keyframes door-sparkle{0%,to{opacity:0}50%{opacity:1}}.door-glow{animation:1.1s steps(2,end) infinite door-pulse}.door-glow-2{animation:1.1s steps(2,end) infinite reverse door-pulse}.door-spark{animation:.7s steps(2,end) infinite door-sparkle}@keyframes door-halo{0%,to{box-shadow:0 0 0 4px #c9a227d9,0 0 22px 10px #5bc8c48c}50%{box-shadow:0 0 0 4px #e2564bd9,0 0 34px 16px #5bc8c440}}.door-halo{animation:1.1s steps(2,end) infinite door-halo}@keyframes door-sign{0%,to{transform:translate(-50%)}50%{transform:translate(-50%,-4px)}}.door-sign{animation:.9s steps(2,end) infinite door-sign}@keyframes board-blink{0%,to{border-color:#c9a227}50%{border-color:#e2564b}}.board-waiting{animation:.9s step-end infinite board-blink}@keyframes bubble-pop{0%{opacity:0;transform:translate(-50%,4px)scale(.6)}60%{opacity:1;transform:translate(-50%,-2px)scale(1.15)}to{opacity:1;transform:translate(-50%)scale(1)}}.bubble-pop{animation:.26s steps(4,end) both bubble-pop}@keyframes room-wipe{0%{opacity:0}35%,65%{opacity:1}to{opacity:0}}.room-wipe{animation:.64s steps(5,end) both room-wipe}@media (height<=560px){.hide-short{display:none}.footer-compact{padding-top:2px;padding-bottom:2px;font-size:10px}}.no-select{-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}button{cursor:pointer;touch-action:manipulation}button:disabled{cursor:default}button:focus-visible,input:focus-visible,textarea:focus-visible{outline-offset:3px;outline:3px solid #267b91}.classroom-header{z-index:2;background:#fffaf0;box-shadow:0 2px 8px #5b453315}.wardrobe-button{background:#fff1cf;border:2px solid #96773e;border-radius:8px;padding:5px 10px;font-size:12px}.connection-note{text-align:center;font-family:var(--font-viet);background:#fff1cf;padding:3px 12px;font-size:10px}.classroom-world{background:radial-gradient(at top,#fdf7e9,#d8e5e5)}.room-vn{background:radial-gradient(at top,#fff2d4,#d8e9e1)}.classroom-canvas{box-shadow:0 8px 30px #45382025}.chalk-message{color:#fff9dc;text-align:center;text-shadow:1px 1px #234a3f;white-space:nowrap;flex-direction:column;align-items:center;gap:5px;display:flex}.chalk-message strong{font-size:1.35em}.chalk-message>span:last-child{opacity:.8;font-size:.65em}.classroom-toolbar{background:#fffcf3;border-top:1px solid #d5c7ac;flex:0 0 56px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;height:56px;padding:4px 8px;display:grid}.toolbar-actions{gap:4px;min-width:0;display:flex;overflow:hidden}.toolbar-actions button{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;height:44px;padding:4px 8px;overflow:hidden}.toolbar-hint{white-space:nowrap;overflow:hidden}.toolbar-greetings{flex-wrap:nowrap;gap:4px;display:flex}.pixel-editor canvas{box-sizing:content-box;aspect-ratio:4/5;width:256px;max-width:calc(100% - 4px);height:auto;image-rendering:pixelated;touch-action:none;background:repeating-conic-gradient(#dedede 0% 25%,#fff 0% 50%) 0 0/16px 16px;border:2px solid #493f35;margin:10px auto;display:block}.pixel-tools{flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;display:flex}.pixel-tools label{align-items:center;gap:6px;display:flex}.pixel-tools button{background:#fff;border:2px solid #493f35;padding:4px 8px}.wardrobe-tabs{flex-wrap:wrap;display:flex}@media (height<=560px){.classroom-toolbar{flex-basis:44px;height:44px}.toolbar-actions button{height:34px;padding:2px 6px;font-size:11px}}.classroom-toolbar button{min-width:36px;min-height:34px}.modal-scrim{z-index:65;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#172e35b8;place-items:center;padding:12px;display:grid;position:fixed;inset:0}.wardrobe-panel{background:#fffbf0;border:3px solid #493f35;border-radius:16px;width:min(720px,100%);max-height:calc(100dvh - 24px);overflow-y:auto;box-shadow:7px 7px #1c302a55}.wardrobe-titlebar{border-bottom:2px solid #e5d9bc;justify-content:space-between;align-items:center;padding:16px 22px;display:flex}.wardrobe-titlebar h2{margin:2px 0 0;font-size:19px;font-weight:700}.wardrobe-eyebrow{font-family:var(--font-viet);letter-spacing:3px;color:#8d744e;font-size:9px;font-weight:700}.close-button{background:#fff;border:2px solid #dfd4bc;border-radius:50%;width:36px;height:36px;font-size:24px}.wardrobe-content{grid-template-columns:220px 1fr;gap:20px;padding:20px;display:grid}.wardrobe-preview{background:radial-gradient(circle at 50% 35%, #fff 5%, var(--aura) 160%);border:2px solid #e9d9ad;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:24px 12px;display:flex;position:relative;overflow:hidden}.wardrobe-stage{background:linear-gradient(#0000 60%,#fff6db 60%);border-bottom:5px solid #b39864;border-radius:50%;place-items:center;width:144px;height:160px;display:grid}.wardrobe-preview>p{text-align:center;font-size:16px;font-weight:700}.wardrobe-name{text-align:center;flex-direction:column;gap:4px;width:100%;max-width:220px;font-size:12px;display:flex}.wardrobe-name input{text-align:center;background:#fff;border:2px solid #2c2c2a;border-radius:6px;padding:6px 8px;font-size:15px}.wardrobe-name input:focus{border-color:#c9a227;outline:none}.wardrobe-random{background:#fffaf0;border:2px solid #bfa574;border-radius:8px;padding:8px 12px;font-size:12px}.wardrobe-caption{color:#685f4e;text-align:center;font-size:10px}.wardrobe-star{color:#c79b35;font-size:26px;position:absolute}.star-one{top:22px;left:16px}.star-two{top:65px;right:16px}.wardrobe-tabs{gap:5px;margin-bottom:14px;display:flex}.wardrobe-tabs button{border:2px solid #0000;border-radius:8px;flex-direction:column;flex:1;align-items:center;gap:4px;padding:8px 3px;font-size:12px;display:flex}.wardrobe-tabs button[aria-pressed=true]{background:#eee8d5;border-color:#d2c3a0}.wardrobe-grid{gap:9px;display:grid}.character-grid{grid-template-columns:repeat(4,1fr)}.hat-grid{grid-template-columns:repeat(3,1fr)}.wardrobe-choice{background:#fff;border:2px solid #e2d8c3;border-radius:9px;flex-direction:column;justify-content:center;align-items:center;gap:6px;min-height:70px;padding:9px 3px;font-size:10px;display:flex;position:relative}.wardrobe-choice[aria-pressed=true]{background:#e6f4e9;border-color:#2f8575;box-shadow:0 0 0 1px #2f8575}.wardrobe-choice[aria-pressed=true]:after{content:"✓";color:#247261;font-weight:700;position:absolute;top:2px;right:4px}.aura-swatch{border:3px solid #fffa;border-radius:50%;width:28px;height:28px;box-shadow:0 1px 3px #0002}.wardrobe-footer{border-top:2px solid #e5d9bc;justify-content:flex-end;align-items:center;gap:22px;padding:14px 24px 20px;display:flex}.wardrobe-panel{flex-direction:column;display:flex;overflow:hidden}.wardrobe-content{min-height:0;overflow-y:auto}.wardrobe-titlebar,.wardrobe-footer{flex-shrink:0}.wardrobe-cancel{color:#736b5d;font-size:12px;text-decoration:underline}.wardrobe-save{color:#fff;background:#377e69;padding:10px 20px;font-size:13px}@media (width<=520px){.wardrobe-content{grid-template-columns:1fr;gap:12px;padding:12px}.wardrobe-preview{gap:7px;padding:10px}.wardrobe-stage{height:135px}.wardrobe-caption{display:none}.wardrobe-star{top:20px}.wardrobe-titlebar{padding:12px 16px}}@media (height<=560px) and (width>=521px){.wardrobe-content{grid-template-columns:170px 1fr;gap:14px;padding:10px 16px}.wardrobe-titlebar{padding:8px 16px}.wardrobe-eyebrow,.wardrobe-caption{display:none}.wardrobe-preview{gap:7px;padding:8px}.wardrobe-stage{height:140px}.wardrobe-choice{min-height:52px;padding:3px}.wardrobe-tabs{margin-bottom:7px}.wardrobe-tabs button{padding:4px}.wardrobe-footer{padding:8px 20px 12px}.classroom-toolbar{min-height:38px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.intro-card{border:3px solid var(--color-gold);background:#fffaf0;margin-bottom:16px;padding:12px}.intro-view{align-items:flex-start;gap:12px;display:flex}.intro-photo-btn{flex:none}.intro-photo{object-fit:cover;border:3px solid var(--color-ink);width:104px;height:104px}.intro-text{white-space:pre-wrap;word-break:break-word;flex:1;min-width:0;font-size:15px}.intro-origin{color:#4a5a6a;margin-top:4px;font-size:.88em}.intro-edit{opacity:.6;margin-top:6px;font-size:12px;text-decoration:underline}.intro-empty{border:2px dashed var(--color-gold);width:100%;padding:10px;font-size:14px}.intro-label{opacity:.75;margin-bottom:6px;font-size:13px}.intro-input{border:3px solid var(--color-ink);background:#fff;outline:none;width:100%;padding:8px}.intro-input:focus{border-color:var(--color-gold)}.intro-count{text-align:right;opacity:.5;font-size:11px}.intro-notice{color:#b3462f;margin:2px 0 8px;font-size:12px}.intro-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;display:flex}.intro-btn{cursor:pointer;border:2px solid var(--color-ink);background:#fff;padding:4px 8px;font-size:12px}.intro-save{color:#fff;background:#4e9c5a}.intro-cancel{opacity:.55;font-size:12px;text-decoration:underline}.intro-error{color:#b3462f;margin-top:6px;font-size:13px}.join-qr{z-index:10;border:3px solid var(--color-ink);background:#fff;flex-direction:column;align-items:center;gap:4px;padding:6px;position:absolute;top:12px;left:12px;box-shadow:4px 4px #00000073}.join-qr-code{width:104px;height:104px;display:block}.join-qr-code svg,.join-qr-big-code svg{shape-rendering:crispedges;width:100%;height:100%}.join-qr-label{font-size:12px;line-height:1.2}.join-qr-scrim{z-index:60;background:#0009;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.join-qr-big{background:var(--color-cream);border:3px solid var(--color-ink);flex-direction:column;align-items:center;gap:12px;max-width:100%;padding:20px;display:flex}.join-qr-title{text-align:center;font-size:18px}.join-qr-big-code{border:3px solid var(--color-ink);background:#fff;width:min(70vh,80vw);max-width:480px;height:min(70vh,80vw);max-height:480px;display:block}.join-qr-url{opacity:.7;word-break:break-all;text-align:center;font-size:14px}.join-qr-close{background:#fff;padding:6px 20px}.pin-button{background:#fffaf0;border:2px solid #bfa574;border-radius:8px;align-items:center;gap:4px;padding:4px 10px;font-size:12px;display:inline-flex}@media (width>=900px) and (height>=600px){.board-big{zoom:1.45;max-width:min(640px,66.2069vw)!important;max-height:63.4483vh!important}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}:root{--scene-teal:#35796b;--scene-ink:#263e40}.pixel{font-family:var(--font-body);-webkit-font-smoothing:antialiased}img,svg{image-rendering:auto}.btn-pixel{border:1px solid #d8dfd9;border-radius:12px;font-weight:600;transition:transform .15s,box-shadow .15s;box-shadow:0 3px #203a3420}.btn-pixel:active:not(:disabled){box-shadow:none;transform:translateY(2px)}.avatar{isolation:isolate;flex:none;position:relative}.avatar-shadow{background:var(--aura);opacity:.7;border-radius:50%;width:76%;height:10%;position:absolute;bottom:-2%;left:12%;box-shadow:0 2px 4px #30463c30}.avatar-body{transform-origin:50% 90%;position:absolute;inset:0}.avatar-image{object-fit:contain;object-position:bottom;image-rendering:auto;width:100%;height:100%;display:block;position:relative}.avatar-pixel .avatar-image{image-rendering:pixelated}.avatar-pixel-hat{width:68%;image-rendering:pixelated;position:absolute;top:12%;left:16%}.avatar-accessory{object-fit:contain;width:62%;height:25%;position:absolute;top:1%;left:19%}.accessory-1{width:25%;height:17%;top:13%;left:63%}.accessory-2{top:7%}.accessory-3{top:-6%}.accessory-5{width:30%;top:9%;left:61%}.accessory-7{top:4%}.avatar-teacher{font-size:clamp(12px,1.3em,24px);position:absolute;bottom:-3%;right:-10%}@keyframes avatar-hop{0%,to{transform:translateY(0)scale(1.025,.98)}50%{transform:translateY(calc(-1 * var(--hop))) scale(.98,1.03)}}@keyframes avatar-step{0%,to{transform:translateY(0)}50%{transform:translateY(calc(-1 * var(--hop)))}}.avatar-hopping{animation:.32s ease-in-out infinite avatar-hop}.avatar-step{animation:.22s ease-out avatar-step}@keyframes shadow-hop{50%{opacity:.4;transform:scale(.8)}}.shadow-hopping{animation:.32s ease-in-out infinite shadow-hop}.classroom-header{min-height:58px;color:var(--scene-ink);box-shadow:none;background:#fffdf8;border-bottom:1px solid #dce5df;padding:8px 20px}.wardrobe-button{color:#2d6557;background:#e1eee5;border:none;border-radius:30px;padding:8px 14px;font-weight:700}.pin-button{background:#fffdf8;border:1px solid #dce5df;border-radius:30px;padding:8px 12px}.classroom-world,.room-vn{background:#e9eee7}.scene-topbar{background:#f7faf5;border-bottom:1px solid #dce5df;flex:0 0 64px;justify-content:space-between;align-items:center;gap:14px;padding:10px 22px;display:flex}.scene-room-title{align-items:center;gap:10px;display:flex}.scene-room-title>span{font-size:29px}.scene-room-title strong{color:var(--scene-ink);font-size:15px;display:block}.scene-room-title small{font:9px var(--font-viet);letter-spacing:1.7px;color:#71877c;display:block}.scene-status{color:#658072;align-items:center;gap:7px;font-size:12px;display:flex}.online-dot{background:#66a66a;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #e7f0e3}.scene-travel{color:#316a5a;background:#fff;border:1px solid #c8d9cc;border-radius:30px;padding:9px 15px;font-size:12px}.scene-viewport{background:radial-gradient(#f7f7ec,#dce6dd);padding:8px}.scene-canvas{cursor:crosshair;background:#eee7ce;border:0;border-radius:20px;flex:none;overflow:hidden;box-shadow:0 10px 45px #365c4022}.scene-background{pointer-events:none;image-rendering:auto;width:100%;height:100%;position:absolute;inset:0}.scene-person{pointer-events:none;transition:left .16s linear,top .16s linear,width .16s linear,height .16s linear;position:absolute;transform:translate(-50%,-100%)}.scene-name{white-space:nowrap;color:#365049;background:#fffdf5eb;border:1px solid #ffffffc9;border-radius:30px;padding:2px 8px;font-size:clamp(8px,.8vw,11px);line-height:1.4;position:absolute;top:calc(100% + 4px);left:50%;transform:translate(-50%);box-shadow:0 2px 5px #39524018}.scene-name.is-mine{color:#fff;background:#3b7b6b;border-color:#fff}.scene-bubble{background:#fff;border-radius:14px;padding:2px 9px;font-size:clamp(18px,2vw,28px);position:absolute;bottom:calc(100% + 8px);left:50%;box-shadow:0 3px 8px #28524820}.scene-desk{cursor:pointer;background:0 0;border:0;padding:0;transition:filter .15s;position:absolute;transform:translate(-50%,-56%)}.scene-desk:hover{filter:drop-shadow(0 0 3px #fff)}.scene-desk:focus-visible{outline-offset:3px;border-radius:6px;outline:2px solid #3b7b6b}.scene-desk img{object-fit:fill;pointer-events:none;width:100%;height:100%}.desk-label{text-align:center;color:#5b644e;white-space:nowrap;background:#fffdf3ef;border-radius:3px;padding:1px;font-size:clamp(7px,.65vw,10px);font-weight:700;line-height:1.2;position:absolute;top:8%;left:6%;right:6%;overflow:hidden}.desk-label>span{text-overflow:ellipsis;font-size:.8em;font-weight:400;display:block;overflow:hidden}.desk-notification{color:#fff;background:#df7862;border:2px solid #fff;border-radius:50%;place-items:center;width:16px;height:16px;font-size:9px;display:grid;position:absolute;top:-8px;right:-4px}.desk-pending{filter:drop-shadow(0 0 4px #f0c785)}.scene-board{z-index:4;color:#fff7dc;text-shadow:0 1px 3px #000;background:#223a3940;border-radius:4px;flex-direction:column;justify-content:center;align-items:center;gap:3%;width:16%;height:12%;padding:3px;display:flex;position:absolute;top:9.5%;left:42%}.scene-board strong{white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:clamp(7px,1.05vw,17px);overflow:hidden}.scene-board small{white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:clamp(5px,.6vw,10px);overflow:hidden}.board-eyebrow{font:700 clamp(5px,.55vw,9px) var(--font-viet);letter-spacing:1px;color:#d9eaa6}.board-count{background:#d9745a;border-radius:20px;padding:1px 6px;font-size:10px;position:absolute;top:-7px;right:-7px}.rear-screen{display:none}.scene-portal{z-index:130;background:#f2fff4db;border:2px solid #a0c5ab;border-radius:50% 50% 35% 35%;flex-direction:column;justify-content:center;align-items:center;width:46px;height:65px;display:flex;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 16px #b3ecbd}.scene-portal>span{font-size:22px}.scene-portal small{color:#39785c;font-size:12px}.scene-destination{pointer-events:none;border:2px solid #45866b;border-radius:50%;width:22px;height:11px;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 0 4px #f5ffe780}.classroom-toolbar{background:#fffdf8;border-top:1px solid #d8e1d5;flex-basis:64px;gap:18px;height:64px;padding:8px 22px}.toolbar-actions{align-items:center}.toolbar-hint{color:#819080;opacity:1;align-items:center;gap:8px;font-size:12px;display:flex}.hint-icon{color:#63907b;background:#eef3e9;border-radius:9px;place-items:center;width:27px;height:27px;display:grid}.scene-action{color:#33725e;background:#e3efe6;border:1px solid #c5dccc;border-radius:12px;font-size:12px}.toolbar-greetings{gap:7px}.greeting-button{background:#fff;border:1px solid #e2e7dc;border-radius:13px;place-items:center;width:40px;height:40px;font-size:21px;display:grid}.greeting-button:hover{background:#f0f5e9;transform:translateY(-2px)}.wardrobe-panel{background:#fefdf7;border:1px solid #dce3d5;border-radius:24px;width:min(920px,100%);box-shadow:0 20px 90px #133b3640}.wardrobe-titlebar{border-bottom:1px solid #e7ebdf;padding:18px 24px}.wardrobe-content{grid-template-columns:260px 1fr;gap:22px;padding:22px}.wardrobe-preview{background:radial-gradient(ellipse at 50% 40%, #fff 15%, var(--aura) 230%);border:0;border-radius:20px}.wardrobe-stage{background:0 0;border:none;width:180px;height:250px}.wardrobe-stage .avatar{width:150px!important;height:225px!important}.wardrobe-grid.character-grid{grid-template-columns:repeat(3,1fr)}.character-grid .wardrobe-choice{background:#fffefb;border-radius:16px;min-height:150px}.character-grid .avatar{width:65px!important;height:98px!important}.wardrobe-choice[aria-pressed=true]{box-shadow:none;background:#e9f3e9;border-color:#6b9b81}.wardrobe-tabs{border-bottom:1px solid #e4e9dc;padding-bottom:8px}.wardrobe-tabs button[aria-pressed=true]{color:#39735e;background:#e8f0e5;border-color:#0000}.character-groups{gap:6px;margin-bottom:13px;display:flex}.character-groups button{color:#7c8476;background:#f0f1e8;border-radius:30px;padding:6px 16px;font-size:12px}.character-groups button[aria-pressed=true]{color:#fff;background:#3c7b69}.character-kind{color:#7e8c7c;font-size:11px}.character-choice-name{color:#697764;font-size:11px}.hat-grid img{image-rendering:auto}.wardrobe-tickets{text-align:center;color:#62735c;line-height:1.7}.wardrobe-footer{border-top:1px solid #e6eadd}.wardrobe-save{background:#3e806b;border:0;border-radius:30px}.wardrobe-name input{border:1px solid #c4d8c5;border-radius:12px}.entry-page{background:#edf1e7!important}.entry-overlay{background:radial-gradient(at 15% 5%,#faf4d9 0,#0000 50%),#edf1e7}.entry-main{grid-template-columns:1.2fr 1fr;align-items:center;column-gap:72px;width:min(1280px,100%);margin:auto;padding:80px 44px 28px;display:grid}.entry-story{flex-direction:column;grid-area:1/1/6;justify-content:center;align-self:stretch;display:flex}.entry-kicker{color:#53836d;font:700 11px var(--font-viet);letter-spacing:2.5px}.entry-story h2{letter-spacing:-2px;color:#2d4f47;margin:17px 0 18px;font-size:clamp(35px,4vw,57px);font-weight:700;line-height:1.27}.entry-story p{color:#738471;font-size:14px;line-height:1.9}.entry-art{aspect-ratio:1.6;border-radius:22px;margin-top:30px;position:relative;overflow:hidden;box-shadow:0 16px 45px #45644e20}.entry-art>img{object-fit:cover;image-rendering:auto;width:100%;height:100%}.entry-characters{justify-content:center;align-items:center;gap:30px;display:flex;position:absolute;inset:30% 0 0}.entry-characters .avatar{width:86px!important;height:129px!important}.entry-art-label{color:#52705c;background:#fffef4e8;border-radius:30px;padding:7px 12px;font-size:10px;position:absolute;bottom:14px;left:16px}.entry-title{grid-column:2;justify-self:start;font-size:28px;font-weight:700;color:#2d4f47!important;text-shadow:none!important;filter:none!important}.entry-tagline{text-align:left;grid-column:2;margin-bottom:6px;font-size:12px;color:#758873!important}.entry-card{background:#fffef9;border:1px solid #dfe5d6;border-radius:22px;grid-column:2;width:100%;max-width:none;margin-top:14px;padding:24px;box-shadow:0 10px 35px #4260460d}.entry-teachers{grid-column:2;max-width:none}.entry-page .join-qr{box-shadow:none;border:1px solid #d4e0d2;border-radius:12px}.entry-page .join-qr-code{width:64px;height:64px}.entry-page .join-qr-label{font-size:9px}.entry-page .update-history{color:#4d6655}.entry-page details{background:#f9fbf4;border:1px solid #d7e1d2;border-radius:14px}.entry-page footer{color:#71816e!important}.connection-note{color:#826d41;background:#f3ead3;font-size:10px}@media (width<=850px){.entry-main{grid-template-columns:1fr;gap:0;width:min(550px,100%);padding:90px 20px 24px}.entry-story{grid-area:auto/1;margin-bottom:26px}.entry-story h2{font-size:35px}.entry-story p{font-size:13px}.entry-art{max-height:230px;margin-top:18px}.entry-title,.entry-tagline,.entry-card,.entry-teachers{grid-column:1}.entry-title,.entry-tagline,.scene-status{display:none}}@media (height<=560px){.classroom-header{min-height:38px;padding:3px 12px}.wardrobe-button,.pin-button{padding:4px 8px;font-size:10px}.scene-topbar{flex-basis:42px;padding:3px 12px}.scene-room-title>span{font-size:21px}.scene-room-title strong{font-size:11px}.scene-room-title small{font-size:7px}.scene-travel{padding:5px 9px;font-size:10px}.scene-viewport{padding:3px}.scene-canvas{border-radius:10px}.classroom-toolbar{flex-basis:44px;height:44px;padding:4px 12px}.toolbar-hint{font-size:10px}.greeting-button{border-radius:9px;width:31px;height:30px;font-size:17px}.scene-portal{width:30px;height:42px}.scene-portal>span{font-size:16px}.scene-portal small{font-size:8px}.wardrobe-content{grid-template-columns:180px 1fr}.wardrobe-stage{height:145px}.wardrobe-stage .avatar{width:90px!important;height:135px!important}.character-grid .wardrobe-choice{min-height:110px}.character-grid .avatar{width:48px!important;height:72px!important}.wardrobe-tickets{font-size:9px}.desk-label>span{display:none}}@media (width<=520px){.wardrobe-content{grid-template-columns:1fr}.wardrobe-stage{height:185px}.wardrobe-stage .avatar{width:115px!important;height:172px!important}.wardrobe-preview{gap:7px}.scene-topbar{padding:6px 12px}.classroom-toolbar{gap:5px;padding:5px 8px}.toolbar-greetings{gap:3px}.greeting-button{width:32px}.toolbar-hint{font-size:9px}.scene-room-title small{display:none}.scene-travel{padding:6px 9px;font-size:10px}}@media (prefers-reduced-motion:reduce){.avatar-hopping,.avatar-step,.shadow-hopping{animation:none}.scene-person{transition:none}}.header-identity{align-items:center;gap:14px;display:flex}.header-brand{letter-spacing:-1px;color:#397b65;margin-right:8px;font-size:22px}.header-brand>span{color:#314e44}.header-brand i{color:#d5ae5d;margin-left:3px;font-size:13px;font-style:normal}[role=dialog]{border-width:1px;border-color:#d4dfd3;border-radius:20px;overflow:hidden;box-shadow:0 20px 80px #1c3c3530}.entry-story h2 span>span+span{letter-spacing:0;margin:4px 0;font-size:12px;line-height:1.5}.entry-story h2>br{display:none}.scene-canvas{isolation:isolate}.wardrobe-scroll{min-height:0;overflow-y:auto}.wardrobe-scroll .wardrobe-content{overflow:visible}.wardrobe-footer{background:#fefdf7;position:relative}.village{--v-bg:#f6f3e9;--v-paper:#fffdf7;--v-ink:#203a3a;--v-line:#c8d2c2;--v-green:#285a46;--v-mint:#e7f0d9;--v-gold:#ffd46d;background:var(--v-bg);min-height:100dvh;color:var(--v-ink);font-family:Pretendard,Be Vietnam Pro,sans-serif;font-size:17px;line-height:1.6}.village.vi,.village .vi{font-family:Be Vietnam Pro,Pretendard,sans-serif;line-height:1.75}.village h1,.village h2,.village h3{margin:0 0 .8rem;font-weight:800;line-height:1.35}.village h1{font-size:clamp(1.8rem,3vw,3rem)}.village h2{font-size:1.4em}.village h3{margin-top:1.8rem;font-size:1.2em}.village p{margin:.75rem 0}.village button,.village input,.village select,.village textarea{font:inherit}.village button{border:1.5px solid var(--v-line);background:var(--v-paper);color:var(--v-ink);cursor:pointer;border-radius:12px;min-height:46px;padding:.6rem 1rem;font-weight:650;transition:background .12s,transform .12s}.village button:hover:not(:disabled){background:var(--v-mint);border-color:var(--v-green)}.village button:active:not(:disabled){transform:translateY(1px)}.village button:disabled{opacity:.55;cursor:default}.village button[aria-pressed=true],.village button.primary{background:var(--v-green);color:#fff;border-color:var(--v-green)}.village button.primary:hover{background:#174332}.village button.danger{color:#9a282b;border-color:#d59489}.village :focus-visible{outline-offset:3px;outline:4px solid #137bd0}.village label{flex-direction:column;gap:.35rem;margin:.7rem 0;font-weight:650;display:flex}.village input:not([type=range]):not([type=checkbox]),.village select,.village textarea{border:1.5px solid var(--v-line);background:var(--v-paper);color:var(--v-ink);border-radius:10px;width:100%;min-height:46px;padding:.65rem .8rem;font-weight:400}.village textarea{resize:vertical}.village input[type=range]{width:100%;accent-color:var(--v-green);height:36px}.village small{font-size:.8em}.village a{text-underline-offset:4px;color:inherit;text-decoration:underline}.village .skip-link{z-index:300;background:#fff;padding:1rem;position:fixed;top:-100px;left:1rem}.village .skip-link:focus{top:0}.v-topbar{border-bottom:1px solid var(--v-line);background:var(--v-paper);justify-content:space-between;align-items:center;gap:1rem;padding:14px max(20px,50vw - 640px);display:flex}.v-brand{white-space:nowrap;font-family:Galmuri11,sans-serif;font-size:25px;font-weight:900;text-decoration:none!important}.v-brand span{margin-left:8px}.v-actions{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.v-actions>input{flex:1;min-width:120px}.v-actions>label{flex:1;min-width:160px}.v-actions button:has(.avatar){display:flex}.v-eyebrow{letter-spacing:.16em;color:var(--v-green);font-size:.74em;font-weight:850}.v-entry{max-width:1200px;margin:auto;padding:3rem 24px}.v-hero{justify-content:space-between;align-items:center;gap:2rem;padding:2rem 0 3rem;display:flex}.v-entry-scenes{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:600px;margin-top:1.5rem;display:grid}.v-entry-scenes figure{border:1px solid var(--v-line);background:var(--v-paper);border-radius:12px;margin:0;overflow:hidden}.v-entry-scenes img{image-rendering:auto;width:100%;height:auto;display:block}.v-entry-scenes figcaption{padding:5px 10px;font-size:.8em;font-weight:700}.v-hero h1{letter-spacing:-.04em;margin:1.2rem 0;font-size:clamp(2rem,4.5vw,3.8rem)}.v-hero h1 em{color:var(--v-green);font-style:normal}.v-hero p{font-size:1.08em}.v-hero .v-actions span{background:#e8e7d7;border-radius:30px;padding:.5rem .9rem;font-size:.84em}.hero-avatar{flex-direction:column;justify-content:center;align-items:center;gap:1rem;width:220px;display:flex;transform:rotate(2deg);box-shadow:6px 6px #cfdbbd;border:2px solid var(--v-line)!important;background:radial-gradient(circle,#fff2b8 50%,#e5edda)!important;min-height:230px!important}.hero-avatar span{font-size:.78em}.v-entry-grid{grid-template-columns:1fr 1fr;gap:22px;display:grid}.v-card{background:var(--v-paper);border:1.5px solid var(--v-line);border-radius:18px;padding:24px}.v-card form>button{width:100%;margin:.8rem 0}.v-card details{margin-top:1.3rem}.v-practice{border:1px dashed var(--v-green);background:#e8eddb;border-radius:16px;justify-content:space-between;align-items:center;gap:2rem;margin:1.6rem 0;padding:1.5rem;display:flex}.v-practice p{max-width:700px;font-size:.85em}.v-practice button{white-space:nowrap}.v-form-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;display:grid}.village details>summary{cursor:pointer;min-height:44px;padding:.6rem 0;font-weight:700}.village ul,.village ol{padding-left:1.6rem}.village ul{list-style:outside}.village ol{list-style:decimal}.village li{margin:.8rem 0}.village .v-help{line-height:1.85}.v-room{max-width:1280px;margin:auto;padding:24px}.v-room-heading{justify-content:space-between;align-items:center;gap:1rem;margin:1rem 0;display:flex}.v-room-heading h1{margin:0;font-size:1.7em}.v-room-heading p{margin:.4rem 0;font-size:.85em}.v-room-heading .v-actions>button{align-items:center;gap:8px;display:flex}.v-zone-tabs{gap:10px;margin:1.2rem 0;display:flex}.v-zone-tabs button{flex:1;padding:13px}.v-map-wrap{overflow:visible}.v-map{image-rendering:pixelated;touch-action:manipulation;background-size:100% 100%;border:2px solid #715439;border-radius:14px;margin:auto;position:relative;overflow:hidden}.v-map.plaza{background:linear-gradient(#cbebdf 0 44%, #b9c6a5 44% 50%, transparent 50%), repeating-conic-gradient(#eadbb9 0 25%, #e4d1a7 0 50%) 0 0/40px 40px}.v-map-illustrated{image-rendering:auto;border-color:#c8d2c2}.v-map-illustrated .v-map-title{background:#203a3a70;gap:2px;width:17%;padding:3px;font-size:clamp(7px,1.1vw,17px);top:9%;left:42%}.v-map-illustrated .v-avatar{transform:translate(-50%,-100%)}.v-map-title{text-align:center;color:#fff4b4;text-shadow:1px 2px #23412c;image-rendering:auto;background:#285a46bb;border-radius:5px;flex-direction:column;gap:.35rem;width:33%;padding:10px;font-size:clamp(10px,1.6vw,21px);display:flex;position:absolute;top:14%;left:34%}.v-map-title span{max-height:2.4em;font-size:.67em;overflow:hidden}.plaza .v-map-title{background:var(--v-paper);color:var(--v-green);text-shadow:none;top:5%}.festival-sky{text-align:center;font-size:clamp(20px,4vw,48px);position:absolute;top:28%;left:15%;right:15%}.village .v-hub{z-index:12;background:#fff9e5ef;border:2px solid #715439;border-radius:7px;flex-direction:column;align-items:center;min-width:70px;max-width:25%;padding:5px 10px;display:flex;position:absolute;transform:translate(-50%,-50%);box-shadow:3px 4px #71543966}.v-hub>span{font-size:clamp(22px,3vw,43px);line-height:1.3}.v-hub small{white-space:nowrap;font-size:clamp(10px,1.2vw,15px)}.v-hub i{font-size:26px;font-style:normal;position:absolute;top:-20px;right:-10px}.v-avatar{pointer-events:none;filter:drop-shadow(0 4px 2px #402c2733);transition:left 80ms linear,top 80ms linear;position:absolute;transform:translate(-50%,-90%)}.v-me{white-space:nowrap;background:#fff9dd;border:1px solid #937243;border-radius:6px;padding:0 7px;font-size:12px;font-weight:750;position:absolute;bottom:-18px;left:50%;transform:translate(-50%)}.map-help{text-align:center;color:#40584a;font-size:.8em}.v-hotbar{grid-template-columns:repeat(5,1fr);gap:10px;height:96px;min-height:96px;margin:1rem 0;display:grid}.v-hotbar button{flex-direction:column;justify-content:center;align-items:center;gap:7px;padding:8px;font-size:.88em;display:flex;position:relative}.v-hotbar button>span{font-size:26px;line-height:1.2}.v-hotbar small{background:var(--v-mint);border-radius:20px;padding:0 6px;position:absolute;top:7px;right:8px}.village .notice{background:var(--v-mint);border-left:4px solid var(--v-green);border-radius:7px;padding:12px 16px;font-size:.88em}.practice-bar{background:#fff0c6;border:1px dashed #91782d;border-radius:12px;flex-wrap:wrap;align-items:center;gap:15px;padding:10px 15px;font-size:.86em;display:flex}.practice-bar label{flex-direction:row;align-items:center;margin:0}.practice-bar select{max-width:180px}.practice-bar small{flex-basis:100%}.v-alert,.v-notice{z-index:130;background:#fff0e8;border:2px solid #b64e40;justify-content:space-between;align-items:center;padding:12px 24px;display:flex;position:sticky;top:0}.v-notice{border-color:var(--v-green);background:#e7f0d9}.village .village-scrim{z-index:100;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);padding:20px}.village-dialog{background:var(--v-bg);border:2px solid var(--v-green);scrollbar-gutter:stable;border-radius:20px;width:100%;max-width:560px;max-height:90dvh;padding:24px;overflow-y:auto;box-shadow:8px 8px #183c2b55}.village-dialog.wide{max-width:940px}.village-dialog>header{background:var(--v-bg);z-index:10;border-bottom:1px solid var(--v-line);justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;padding:10px 0;display:flex;position:sticky;top:-24px}.village-dialog>header h2{margin:0}.village-dialog>header button{min-width:46px;padding:0;font-size:25px}.v-look-files{z-index:125;background:var(--v-paper);border-radius:14px;gap:8px;padding:8px;display:flex;position:fixed;bottom:14px;left:50%;transform:translate(-50%);box-shadow:0 2px 12px #0003}.v-look-files button{white-space:nowrap;font-size:13px}.letter-compose{border:2px dashed var(--v-green);border-radius:16px;margin:18px 0;padding:20px}.letter-thread{border-top:1px solid var(--v-line);padding:16px 0}.letter{background:var(--v-paper);border:1px solid var(--v-line);border-radius:12px;margin:10px 0;padding:20px;animation:.35s ease-out letter-arrive}.letter p{white-space:pre-wrap;overflow-wrap:anywhere}.envelope-sea{border-top:7px solid #83bbc7}.envelope-flower{border-top:7px solid #e0a3ae}.stamp{border:2px dotted #8da29b;padding:0 6px;font-size:27px}.letter-replies{border-left:2px dashed #abc6b0;margin-left:35px;padding-left:14px}.mail-arrived i{transform-origin:0 100%;animation:1.5s ease-in-out infinite alternate flag-wave}.v-qr{text-align:center;margin:10px auto}.v-qr img{image-rendering:auto;margin:auto}.v-qr figcaption{font-size:.8em}.join-code{letter-spacing:.12em;overflow-wrap:anywhere;margin:.8rem 0;font-family:monospace;font-size:1.2em;display:block}.code-card{text-align:center}.invite-token{overflow-wrap:anywhere;font-size:.75em}.v-participants>div{border-bottom:1px solid var(--v-line);justify-content:space-between;align-items:center;padding:8px 0;display:flex}.v-participants button{font-size:.8em}.teacher-desk h3{border-bottom:1px solid var(--v-line);padding-bottom:10px}.room-resume{width:100%;margin:6px 0;display:block}.village progress{width:100%;height:20px;accent-color:var(--v-green)}.tuho-field{touch-action:none;cursor:crosshair;background:radial-gradient(at 50% 28%,#d4e3bc 0 12%,#0000 13%),repeating-linear-gradient(0deg,#eff0cf 0 38px,#e1e6bd 38px 40px);border:3px solid #715439;border-radius:16px;max-width:700px;height:310px;margin:20px auto;position:relative;overflow:hidden}.tuho-pot{font-size:58px;position:absolute;top:28%;left:50%;transform:translate(-50%,-50%)}.tuho-line{border-bottom:4px dashed #9a7b4b;position:absolute;bottom:8%;left:15%;right:15%}.tuho-arrow{color:#543926;text-shadow:2px 2px #fff;z-index:2;font-size:45px;transition:left .55s,top .55s;position:absolute}.tuho-hint{background:#ffffffc9;border-radius:6px;padding:1px 6px;font-size:.78em;position:absolute;bottom:5px;right:12px}.aim-preview{color:#925d1a;font-size:25px;position:absolute;transform:translate(-50%,-50%)}.quan-board{background:#927d56;border-radius:50px;grid-template-rows:90px 90px;grid-template-columns:1.2fr repeat(5,1fr) 1.2fr;gap:7px;min-width:450px;margin:20px 0;padding:12px;display:grid}.village .quan-board button{color:#493a24;opacity:1;background:#f5e5bc;border:2px solid #715439;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-width:0;padding:5px;display:flex}.village .quan-board button:disabled{background:#d7c9ab;border-color:#907e61}.village .quan-board .royal{background:#e8cc8e;border-radius:45px}.stone-count{font-size:22px;font-weight:900}.quan-board small{letter-spacing:1px;overflow-wrap:anywhere;max-width:60px;font-size:9px;line-height:1.2}.village .quan-board .step-pit{outline-offset:0;outline:4px solid #005fcb}.quan-turn{font-weight:750}.delivery-cards{grid-template-columns:repeat(3,1fr);gap:14px;margin:20px 0;display:grid}.delivery-cards .v-card{padding:18px}.delivery-cards span{font-size:35px}.festival-display{grid-template-columns:repeat(4,1fr);gap:15px;margin:25px 0;display:grid}.festival-display>div{text-align:center;background:#e5e6df;border:2px dashed #a6afa3;border-radius:14px;padding:20px 8px}.festival-display>div.complete{background:#faf1c5;border:2px solid #c0a563}.festival-display span{font-size:50px;display:block}.festival-display small{font-weight:700;display:block}.teacher-call{background:var(--v-paper);border:1.5px solid var(--v-line);border-radius:16px;margin-top:25px;padding:22px}.teacher-call .v-room-heading{margin-top:0}.teacher-call h2{margin:0;font-size:1.2em}.call-videos{grid-template-columns:2fr 1fr;gap:16px;display:grid}.call-videos video{aspect-ratio:16/9;object-fit:contain;background:#142b25;border-radius:10px;width:100%}.call-videos figcaption{text-align:center;font-size:.8em}.call-caption{color:#fff;background:#10231c;border-radius:12px;margin-top:18px;padding:18px;line-height:1.5}.call-caption p{margin:3px 0}.call-caption p+p{color:#ffe692}.village .teacher-call input[type=checkbox]{width:24px;height:24px;display:inline-block}.village.large-type{font-size:21px}.village.high-contrast{--v-bg:#fff;--v-paper:#fff;--v-ink:#111;--v-line:#222;--v-green:#06452f;--v-mint:#ebf6e6}.high-contrast .v-eyebrow,.high-contrast .map-help{color:#111}.high-contrast button{border-width:2px}.high-contrast .notice{border:2px solid #111}.high-contrast .v-map{filter:contrast(1.1)}@keyframes letter-arrive{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes flag-wave{0%{transform:rotate(-10deg)}to{transform:rotate(10deg)}}@media (width<=760px){.v-topbar{flex-wrap:wrap;padding:10px 14px}.v-topbar .v-actions{gap:5px}.v-topbar button{padding:7px 10px;font-size:14px}.v-entry{padding:20px 16px}.v-hero{gap:16px;padding:20px 0 30px}.hero-avatar{width:130px;min-width:130px;min-height:190px!important}.hero-avatar>div{transform:scale(.75)}.v-hero .v-actions{gap:5px}.v-hero .v-actions span{padding:5px 8px;font-size:12px}.v-entry-grid{grid-template-columns:1fr}.v-practice{flex-direction:column;align-items:flex-start;gap:10px}.v-room{padding:12px}.v-room-heading{flex-wrap:wrap;align-items:flex-start}.v-room-heading h1{font-size:1.4em}.v-zone-tabs{gap:5px}.v-zone-tabs button{padding:10px 5px;font-size:13px}.v-hotbar{gap:5px;height:88px;min-height:88px}.v-hotbar button{padding:8px 3px;font-size:12px;line-height:1.3}.village-dialog{max-height:90dvh;padding:16px}.village .village-scrim{padding:8px}.village-dialog>header{top:-16px}.village-dialog>header h2{font-size:1.2em}.v-card{padding:18px}.letter{padding:14px}.letter-replies{margin-left:10px;padding-left:10px}.v-map-title{padding:5px;top:10%}.v-map-title span{display:none}.v-hub small{font-size:10px}.village .v-hub{min-width:65px;padding:4px}.delivery-cards{grid-template-columns:1fr}.festival-display{gap:6px}.festival-display span{font-size:30px}.festival-display small{font-size:11px}.festival-display>div{padding:15px 5px}.quan-board{border-radius:25px;grid-template-rows:70px 70px;gap:3px;min-width:290px;padding:8px}.quan-board .stone-count{font-size:18px}.call-videos{grid-template-columns:1fr 1fr}.teacher-call{padding:15px}.v-look-files{bottom:5px}.practice-bar{font-size:12px}.practice-bar select{font-size:13px}.v-alert{padding:8px 14px}.village.large-type .v-hotbar{height:110px;min-height:110px}.village.large-type .v-hotbar button{font-size:14px}}@media (prefers-reduced-motion:reduce){.village *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.appearance-files{flex-direction:column;gap:6px;margin-top:12px;display:flex}.appearance-files button{font-size:13px;padding:7px!important}.appearance-files small{font-size:11px;line-height:1.5}.village .wardrobe-panel{margin-bottom:0}.world-route{flex-wrap:wrap;align-items:center;gap:8px;margin:18px 0;font-size:13px;display:flex}.world-route span{background:#ececde;border-radius:20px;align-items:center;gap:8px;padding:7px 10px;display:inline-flex}.world-route span+span:before{content:"↔";opacity:.6}.world-route [aria-current]{background:var(--v-green);color:#fff}.world-heading{justify-content:space-between;align-items:center;gap:8px;padding:9px 4px;display:flex}.world-heading>span{font-size:12px}.v-map-wrap{scroll-margin-top:8px}.world-classroom,.world-plaza{isolation:isolate}.v-map,.v-map *{-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.world-plaza .v-map-title{display:none}.world-plaza .plaza-festival{text-align:center;pointer-events:none;width:24%;font-size:clamp(14px,2vw,28px);position:absolute;top:40%;left:38%}.world-desk{pointer-events:none;position:absolute;transform:translate(-50%,-55%)}.world-desk img{width:100%;height:auto;display:block}.village .world-door{z-index:15;background:0 0;border:none;flex-direction:column;align-items:center;gap:5px;width:clamp(62px,9%,105px);min-height:0;padding:0;display:flex;position:absolute;transform:translate(-50%,-70%)}.village .world-door:hover:not(:disabled){background:0 0}.door-frame{aspect-ratio:.65;background:linear-gradient(135deg,#bce7ed,#e6f8e5 65%,#84bcb1);border:5px solid #786447;border-bottom:0;border-radius:26px 26px 3px 3px;width:58%;display:block;position:relative;box-shadow:0 0 15px #fff9c1,2px 4px 5px #253d3344}.door-leaf{transform-origin:0 100%;background:linear-gradient(90deg,#b88a58,#e1bb87);border:1px solid #836443;border-radius:18px 0 0;position:absolute;inset:0 35% 0 0;transform:skewY(-13deg)}.door-arrow{color:#296a58;text-shadow:0 1px #fff;font-size:34px;line-height:1;position:absolute;top:25%;left:35%}.world-door small{white-space:nowrap;background:#fffdf3f2;border:1px solid #d5d6c4;border-radius:9px;padding:3px 7px;font-size:clamp(9px,1vw,12px);box-shadow:0 3px 7px #304b3522}.v-avatar.is-self{transition:none}.v-avatar.is-peer{transition:left 1s linear,top 1s linear}.walk-controls{z-index:50;width:max-content;margin:-118px 12px 12px;display:flex;position:sticky;bottom:12px}.walk-screen-reader-help{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.round-stick{touch-action:none;-webkit-user-select:none;user-select:none;cursor:grab;background:radial-gradient(circle,#d8e4d5 0 40%,#f4f5e8 41% 61%,#b8c9b2 62% 64%,#eef1e3 65%);border:2px solid #b4c6b1;border-radius:50%;flex:none;width:106px;height:106px;position:relative;box-shadow:inset 0 3px 7px #60745c22}.round-stick:active{cursor:grabbing}.stick-ring{pointer-events:none;border:1px dashed #829a7b;border-radius:50%;position:absolute;inset:17%}.stick-thumb{pointer-events:none;background:radial-gradient(circle at 35% 28%,#8bc4a7,#397a61 75%);border:2px solid #3d7762;border-radius:50%;width:43%;height:43%;position:absolute;top:50%;left:50%;box-shadow:0 4px 6px #284e3d44,inset 0 2px 2px #cbe5c6}@media (width<=600px){.world-route{gap:4px;font-size:10px}.world-route span{gap:4px;padding:5px}.world-heading{flex-direction:column;align-items:flex-start;font-size:14px}.world-heading>span{font-size:10px}.walk-controls{margin-top:8px;margin-left:0;bottom:8px}.round-stick{width:90px;height:90px}.village .world-door{width:53px}.door-frame{border-width:3px}.door-arrow{font-size:22px}.world-door small{white-space:normal;max-width:90px;font-size:8px}}@media (prefers-reduced-motion:reduce){.v-avatar.is-peer{transition:none}}.entry-welcome{text-align:center;padding:24px 0 28px}.entry-welcome h1{margin-top:10px}.illustrated-welcome{isolation:isolate;text-align:left;background:#f5eddb;border:1px solid #e1decc;border-radius:30px;max-width:1240px;min-height:430px;margin:6px auto 32px;padding:0;position:relative;overflow:hidden;box-shadow:0 16px 45px #3d5b3b12}.entry-hero-art{object-fit:cover;object-position:center;image-rendering:auto;width:100%;height:100%;position:absolute;inset:0}.entry-hero-copy{background:linear-gradient(90deg,#fcf6e7e8,#fcf6e7c2 66%,#fcf6e700);flex-direction:column;justify-content:center;align-items:flex-start;width:46%;min-height:430px;padding:48px 0 42px 42px;display:flex;position:relative}.entry-hero-copy .v-eyebrow{letter-spacing:.13em;color:#426858;background:#fff9ebd9;border:1px solid #e2dfc8;border-radius:30px;padding:6px 11px;font-size:10px}.village .entry-hero-copy h1{white-space:pre-line;letter-spacing:-.045em;color:#214e3c;text-wrap:balance;margin:22px 0 16px;font-size:clamp(35px,4.4vw,58px);line-height:1.19}.entry-hero-copy p{color:#3c5b4d;max-width:310px;margin:0 0 24px;font-size:15px;line-height:1.7}.entry-hero-links{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.entry-hero-links a{color:#275842;text-underline-offset:5px;font-size:13px;font-weight:750}.entry-hero-links .entry-hero-primary{color:#fffcef;background:#285a46;border-radius:14px;align-items:center;gap:18px;padding:14px 18px;text-decoration:none;display:inline-flex;box-shadow:0 5px 14px #244c3633}.entry-hero-primary:hover{background:#174332}.entry-hero-primary span{font-size:20px;line-height:1}#student-entry,#teacher-entry{scroll-margin-top:90px}.simple-entry .enter-card,.simple-entry .entry-share{border-radius:22px;box-shadow:0 7px 25px #34513c08}.simple-entry .enter-card h2,.simple-entry .entry-share h2{color:#285a46}.simple-entry .entry-look{background:radial-gradient(#edf1df,#fffdf700 72%);border-radius:22px;padding:8px 35px}.simple-entry .country-picker label{background:#f8f7ee}.simple-entry .country-picker label:has(:checked){background:#e7efdc;border-width:2px;padding:11px}.simple-entry .enter-world{box-shadow:0 4px 11px #285a461a}.simple-entry .teacher-entry-grid .v-card{background:#fdfbf3;border-top:4px solid #a9bfa0;border-radius:20px}@media (width<=700px){.illustrated-welcome{border-radius:22px;min-height:0;margin-bottom:22px}.entry-hero-art{object-position:78% center;height:230px;display:block;position:relative}.entry-hero-copy{background:#fbf4e5;width:100%;min-height:0;padding:24px}.village .entry-hero-copy h1{margin:16px 0 12px;font-size:37px}.entry-hero-copy p{max-width:none;margin-bottom:20px}}.simple-entry-grid{grid-template-columns:1.15fr 1fr;gap:24px;max-width:960px;margin:auto;display:grid}.simple-entry .v-card{min-width:0}.enter-card{flex-direction:column;align-items:stretch;display:flex}.village .entry-look{background:0 0;border:0;flex-direction:column;align-items:center;gap:4px;margin:0 auto;padding:4px 22px;display:flex}.country-picker{border:0;gap:12px;margin:14px 0 20px;padding:0;display:flex}.country-picker legend{margin-bottom:8px;font-weight:700}.village .country-picker label{border:1px solid var(--v-line);cursor:pointer;border-radius:12px;flex-direction:row;flex:1;align-items:center;gap:8px;margin:0;padding:12px;display:flex}.country-picker label:has(:checked){background:var(--v-mint);border-color:var(--v-green)}.village .country-picker input[type=radio]{width:20px;height:20px;min-height:20px;accent-color:var(--v-green);padding:0}.enter-card>small{margin-top:12px}.entry-share{flex-direction:column;align-items:center;display:flex}.entry-share ol{padding-left:22px}.entry-share p{text-align:center}.teacher-entry-grid{grid-template-columns:1fr 1fr;gap:24px;max-width:960px;margin:24px auto;display:grid}.teacher-entry-grid h2{font-size:1.15em}.teacher-entry-grid button{width:100%}.practice-entry{border-top:1px solid var(--v-line);max-width:960px;margin:24px auto;padding:16px 20px}.village summary{cursor:pointer;min-height:36px}.village .classroom-board{color:#fff2b1;z-index:3;background:#233e34e8;border:1px solid #f4dc91;border-radius:4px;flex-direction:column;justify-content:center;align-items:center;gap:3px;width:19%;height:15%;min-height:52px;padding:5px;font-size:clamp(11px,1.25vw,20px);display:flex;position:absolute;top:8.5%;left:41%;box-shadow:0 0 0 4px #fff3c322}.village .classroom-board:hover:not(:disabled){color:#fff8ca;background:#315844}.classroom-board span,.classroom-board small{font-size:.68em}.pending-badge{background:var(--v-green);color:#fff;border-radius:12px;margin-left:6px;padding:0 7px;display:inline-flex}.mission-topic{border-left:5px solid var(--v-green);background:var(--v-mint);border-radius:8px;flex-direction:column;gap:3px;margin-bottom:18px;padding:16px 20px;display:flex}.mission-topic>span{font-size:.8em}.mission-topic strong{overflow-wrap:anywhere;font-size:1.25em}.question-list{gap:14px;margin-top:20px;display:grid}.village .question-card{text-align:left;border-left:5px solid #d8ab5c;flex-direction:column;align-items:flex-start;gap:9px;padding:20px;display:flex}.question-card strong{white-space:pre-wrap;overflow-wrap:anywhere;font-size:1.15em}.question-direction{color:var(--v-green);font-size:.8em}.mission-empty{color:#566b60;text-align:center;padding:28px 16px}.mission-question{background:#fff4d9;border:1px solid #e2cc93;border-radius:14px;margin:18px 0;padding:20px}.mission-question h3{margin-top:10px}.mission-text p{white-space:pre-wrap;overflow-wrap:anywhere}.mission-question .mission-text>p{font-size:1.25em;font-weight:700}.mission-answer{border:1px solid var(--v-line);background:var(--v-paper);border-radius:14px;margin:14px 0;padding:20px}.mission-answer>header{flex-wrap:wrap;justify-content:space-between;gap:8px;display:flex}.answer-status{background:var(--v-mint);border-radius:20px;padding:2px 10px;font-size:.8em}.answer-pending .answer-status{background:#fff0c1}.answer-rejected .answer-status{background:#ffe6dc}.mission-photo{image-rendering:auto;object-fit:contain;border-radius:12px;width:auto;max-width:100%;height:auto;max-height:420px;margin:14px 0;display:block}.mission-compose{border:1px solid var(--v-line);background:var(--v-paper);border-radius:14px;margin:18px 0;padding:20px}.mission-compose h3{margin-top:0}.mission-compose .v-actions{margin-top:20px}.review-feedback{background:#fff0e6;border-radius:8px;padding:12px}.answer-review{border-top:1px solid var(--v-line);margin-top:20px;padding-top:8px}.review-item{border:1px solid var(--v-line);border-radius:14px;margin:20px 0;overflow:hidden}.review-question{background:var(--v-mint);padding:14px 20px}.review-item .mission-answer{border:0;border-radius:0;margin:0}.board-delete{margin-top:32px}.teacher-qr{margin:24px 0}.mission-hero{background:#e9ebd7;border-radius:16px;min-height:210px;margin-bottom:20px;position:relative;overflow:hidden}.mission-hero>img{object-fit:cover;image-rendering:auto;width:100%;height:100%;position:absolute;inset:0}.mission-hero>div{background:linear-gradient(90deg,#f4f1ddea,#f4f1ddc9 65%,#0000);width:61%;padding:24px;position:relative}.mission-hero span{letter-spacing:.13em;color:#546947;font-size:10px;font-weight:800}.village .mission-hero h3{white-space:pre-line;color:#214b3b;margin:10px 0;font-size:clamp(23px,3vw,34px)}.mission-hero p{max-width:330px;font-size:.85em}.mission-noticeboard{background:#c79d6d url(/scene/mission-board-v2.webp) 50%/100% 100%;border-radius:18px;min-height:400px;margin-top:26px;padding:46px 38px 70px;box-shadow:0 8px 22px #5d422623}.village .mission-noticeboard>h3{text-align:center;color:#fffef3;text-shadow:0 1px 3px #334d2a;margin:5px 0 34px;font-size:1.1em}.mission-noticeboard .question-list{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:26px;margin:0}.village .mission-noticeboard .question-card{background:#fffbe7;border:0;border-radius:2px 3px 11px;min-height:145px;padding:26px 18px 18px;position:relative;transform:rotate(-1deg);box-shadow:2px 5px 10px #60472545}.village .mission-noticeboard .question-card:nth-child(2n){background:#edf4f0;transform:rotate(1deg)}.village .mission-noticeboard .question-card:before,.paper-empty:before{content:"";background:radial-gradient(circle at 30% 30%,#cfe0c5,#3c6e54 65%);border-radius:50%;width:14px;height:14px;position:absolute;top:-7px;left:calc(50% - 7px);box-shadow:1px 3px 3px #1c35294d}.village .mission-noticeboard .question-card:hover:not(:disabled){background:#fffef5;transform:translateY(-3px)rotate(0)}.question-card .question-direction{letter-spacing:.03em;font-size:11px}.question-card strong{font-size:1em}.paper-empty{background:#fffbe9;border-radius:2px;max-width:420px;margin:20px auto;position:relative;transform:rotate(-1deg);box-shadow:2px 6px 10px #6047253b}.paper-empty strong{color:var(--v-green);font-size:1.15em}.paper-empty p{white-space:pre-line}.country-tag{color:#345b46;vertical-align:middle;background:#e4ede5;border-radius:5px;margin-right:3px;padding:3px 6px;font-size:10px;display:inline-block}.village .classroom-board{box-shadow:none;aspect-ratio:1.5;color:#244c3a;background:0 0;border:0;height:auto;padding:0}.village .classroom-board>img{image-rendering:auto;width:100%;height:100%;position:absolute;inset:0}.classroom-board-note{background:#fffbe6ef;flex-direction:column;justify-content:center;align-items:center;width:78%;min-height:56%;margin-top:5%;padding:8px 2px;display:flex;position:relative;transform:rotate(-1deg);box-shadow:0 2px 3px #583b2633}.classroom-board-note>strong{font-size:clamp(11px,1.2vw,18px)}.classroom-board-note>span,.classroom-board-note>small{font-size:clamp(7px,.75vw,11px)}.village .classroom-board:hover:not(:disabled){color:#244c3a;filter:brightness(1.06);background:0 0}.world-portal{-webkit-user-select:none;user-select:none;cursor:default;width:clamp(60px,8.5%,116px);position:absolute;transform:translate(-50%,-90%)}.portal-ring{image-rendering:auto;filter:drop-shadow(0 0 6px #ffc44c85);pointer-events:none;width:100%;height:auto;animation:2.8s ease-in-out infinite alternate portal-shimmer;display:block;position:relative}.portal-opening{filter:saturate(.85)brightness(1.15);opacity:.9;background-position:50%;background-size:cover;border-radius:50%;width:55%;height:65%;animation:4s ease-in-out infinite alternate portal-view;position:absolute;top:17%;left:23%;box-shadow:inset 0 0 15px #fff8b7}.portal-sparks{pointer-events:none;filter:drop-shadow(0 0 3px #ffac1c);width:100%;height:100%;position:absolute;inset:0;overflow:visible}.portal-sparks ellipse{fill:none;stroke:#ffe58b;stroke-width:.7px;stroke-dasharray:3 12;transform-origin:50% 49%;animation:2s linear infinite portal-streaks}.portal-sparks circle{fill:#fff9c2}@keyframes portal-streaks{to{stroke-dashoffset:-60px}}@keyframes portal-view{to{filter:saturate(1.2)brightness(1.35);background-position:55% 48%}}.world-portal>small{text-align:center;white-space:nowrap;color:#624c23;background:#fff9e9f5;border:1px solid #d9ba71;border-radius:12px;padding:3px 8px;font-size:clamp(8px,.9vw,12px);position:absolute;top:91%;left:50%;transform:translate(-50%);box-shadow:0 2px 6px #79571638}.portal-transition{z-index:90;pointer-events:none;background:radial-gradient(#fff9dcdf,#ffd36b50 50%,#0000 80%);place-items:center;animation:.65s ease-out both portal-arrive;display:grid;position:fixed;inset:0}.portal-transition span{color:#594323;background:#fffdf2ef;border:1px solid #d6ba76;border-radius:20px;padding:12px 22px;font-weight:800}@keyframes portal-shimmer{0%{filter:drop-shadow(0 0 4px #ffc44c55)brightness(.95);transform:scale(.98)}to{filter:drop-shadow(0 0 9px #ffc44c99)brightness(1.07);transform:scale(1.025)}}@keyframes portal-arrive{0%{opacity:1}35%{opacity:.8}to{opacity:0}}@media (prefers-reduced-motion:reduce){.portal-ring,.portal-transition{animation:none}.portal-transition{display:none}}@media (width<=650px){.simple-entry-grid,.teacher-entry-grid{grid-template-columns:1fr;gap:16px}.entry-welcome{padding-top:10px}.entry-welcome h1{font-size:1.8rem}.village .classroom-board{width:26%;height:18%;top:7%;left:37%}.classroom-board small{display:none}.mission-compose,.mission-answer,.mission-question{padding:14px}.mission-hero{min-height:190px}.mission-hero>div{width:90%;padding:18px}.mission-hero>img{object-position:65% center}.mission-hero p{max-width:220px}.mission-noticeboard{min-height:340px;padding:25px 20px 52px}.village .mission-noticeboard>h3{margin:0 0 25px}.mission-noticeboard .question-list{grid-template-columns:1fr;gap:25px}.village .classroom-board{width:26%;height:auto}.classroom-board-note{padding:6px 2px}.world-portal{width:clamp(49px,10%,75px)}.world-portal>small{white-space:normal;min-width:70px;font-size:8px;line-height:1.35}}.worksheet-entry{text-align:left;flex-direction:column;align-items:flex-start;gap:8px;width:100%;margin-bottom:24px;display:flex;background:linear-gradient(120deg,#e5efde,#fff4d8)!important;padding:24px!important}.worksheet-entry strong{font-size:1.2em}.worksheet-entry span{font-size:.8em}.worksheet-intro{background:linear-gradient(120deg,#e3ebd6,#faf1d7);border-radius:16px;margin-bottom:18px;padding:24px}.worksheet-intro small{letter-spacing:.15em;font-size:10px}.worksheet-intro h3{margin:10px 0;font-size:1.7em}.worksheet-privacy{background:#f4f2e8;border-radius:10px;margin-bottom:22px;padding:14px 18px}.worksheet-privacy p{font-size:.85em;line-height:1.8}.worksheet-cleaner,.worksheet-final,.worksheet-edit-block,.worksheet-sanitized{border:1px solid var(--v-line);background:var(--v-paper);border-radius:14px;margin:18px 0;padding:20px}.worksheet-crop-stage{touch-action:none;cursor:crosshair;max-width:100%;margin:16px auto;line-height:0;display:table;position:relative}.worksheet-crop-stage img{-webkit-user-select:none;user-select:none;image-rendering:auto;width:auto;max-width:100%;height:auto;max-height:620px;display:block}.worksheet-mask,.worksheet-selection{pointer-events:none;position:absolute}.worksheet-mask{background:#000}.worksheet-selection{background:#22d7b52e;outline:2px dashed #087e76}.worksheet-rectangle-inputs{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.worksheet-title-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.worksheet-title-grid textarea{width:100%}.worksheet-edit-block>header{flex-wrap:wrap;justify-content:space-between;align-items:center;display:flex}.worksheet-warning{background:#fff1d2;border-left:4px solid #bd7d15;padding:10px 14px}.worksheet-source,.worksheet-sanitized>img{object-fit:contain;image-rendering:auto;max-width:100%;max-height:520px;margin:12px auto;display:block}.worksheet-figure{object-fit:contain;image-rendering:auto;max-width:100%;max-height:280px}.worksheet-final small{margin:10px 0;display:block}:is(.village .worksheet-studio label:has(>input[type=checkbox]),.village .worksheet-preview label:has(>input[type=checkbox])){flex-direction:row;align-items:center;gap:9px;display:flex}.village .worksheet-studio input[type=checkbox],.village .worksheet-preview input[type=checkbox]{width:18px;height:18px;min-height:18px;accent-color:var(--v-green);flex:0 0 18px;padding:0}.worksheet-shelf{background:#e9eee0;border:1px solid #c8d6bd;border-radius:14px;margin:0 0 24px;padding:20px}.worksheet-shelf-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.worksheet-shelf-list button{text-align:left;flex-direction:column;gap:7px;padding:16px;display:flex}.worksheet-shelf-list small{font-size:.75em}.worksheet-preview{background:#e9e7df;border-radius:12px;margin:20px 0;padding:18px}.worksheet-paper{color:#172822;background:#fff;max-width:760px;margin:20px auto;padding:40px;font-family:Arial,Malgun Gothic,sans-serif;box-shadow:0 4px 20px #0001}.worksheet-paper header{border-bottom:2px solid #2f5d4b;margin-bottom:25px;padding-bottom:16px}.worksheet-paper h1{margin:10px 0;font-size:25px;line-height:1.5}.worksheet-paper small{letter-spacing:.1em;font-size:10px}.worksheet-paper-block{break-inside:avoid;margin:0 0 28px}.worksheet-paper p{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8}.worksheet-paper-block img{object-fit:contain;image-rendering:auto;max-width:100%;max-height:300px}.worksheet-paper .worksheet-original{color:#57665e;font-size:.85em}.worksheet-answer-line{border-bottom:1px solid #b8c1bb;height:30px}.worksheet-print-root{display:none}.landing-screen{isolation:isolate;background:#e7ebd8;position:relative}.entry-full-art{object-fit:cover;object-position:center;image-rendering:auto;z-index:-2;pointer-events:none;width:100%;height:100dvh;position:fixed;inset:0}.landing-screen:before{content:"";z-index:-1;pointer-events:none;background:linear-gradient(90deg,#f8f4e7b8 0%,#faf6e766 36%,#0000 65%);position:fixed;inset:0}.landing-screen .v-topbar{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffdf5b8;border-bottom-color:#ffffff80}.v-entry.immersive-entry{align-items:center;max-width:1440px;min-height:calc(100dvh - 142px);padding:34px clamp(20px,6vw,96px);display:flex}.entry-panel{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffdf2ed;border:1px solid #fffef4d9;border-radius:28px;width:400px;max-width:100%;padding:30px;box-shadow:0 16px 60px #334c3324}.entry-panel .v-eyebrow{letter-spacing:.1em;font-size:10px}.village .entry-panel h1{white-space:pre-line;letter-spacing:-.045em;color:#285a46;margin:12px 0 22px;font-size:32px;line-height:1.3}.entry-role-switch{background:#e9ecdf;border-radius:15px;gap:5px;padding:5px;display:flex}.village .entry-role-switch button{background:0 0;border:0;flex:1;min-height:42px;padding:6px}.village .entry-role-switch button[aria-pressed=true]{color:#285a46;background:#fffdf7;box-shadow:0 2px 8px #294e3915}.village .entry-panel .entry-look{flex-direction:row;justify-content:center;gap:18px;margin:12px auto 0;padding:0 12px;font-size:13px}.entry-panel .country-picker{gap:8px;margin:14px 0 18px}.entry-panel .country-picker legend{color:#637064;font-size:12px}.village .entry-panel .country-picker label{background:#fffdf7;justify-content:center;padding:10px 8px;font-size:14px}.entry-panel .country-picker label:has(:checked){background:#e6efdc}.entry-panel .enter-world{width:100%;min-height:50px}.entry-storage-note{text-align:center;color:#687369;margin-top:10px;font-size:11px;display:block}.village .wardrobe-choice[aria-pressed=true] .character-choice-name{color:inherit}.entry-teacher-fields{grid-template-columns:1fr 1.1fr;gap:12px;margin-bottom:14px;display:grid}.village .entry-teacher-fields label{margin:0;font-size:12px}.village .entry-teacher-fields select,.village .entry-teacher-fields input{background:#fffdf7;width:100%;min-width:0;font-size:15px}.entry-practice-fold{color:#526857;border-top:1px solid #d9dfcf;margin-top:14px;padding-top:10px;font-size:12px}.village .entry-qr-trigger{color:#526857;background:0 0;border:0;border-top:1px solid #d9dfcf;border-radius:0;justify-content:space-between;align-items:center;width:100%;margin-top:14px;padding:10px 0 0;font-size:12px;display:flex}.village .qr-presentation{-webkit-backdrop-filter:none;backdrop-filter:none;background:#17342930;place-items:center end;padding:20px}.qr-presentation .village-dialog{scrollbar-gutter:auto;background:#fff;border:1px solid #d9dfcf;width:auto;max-width:calc(100vw - 40px);max-height:calc(100dvh - 40px);padding:18px;box-shadow:0 16px 60px #183c2b40}.qr-presentation .village-dialog>header{background:#fff;margin-bottom:0;padding:0 0 10px;position:static}.qr-presentation .village-dialog>header h2{font-size:20px}.qr-presentation .village-qr{text-align:center;margin:0}.qr-presentation .village-qr img{width:min(54vw,100dvh - 190px);max-width:100%;height:auto;image-rendering:pixelated;background:#fff;display:block}.qr-presentation figcaption{clip-path:inset(50%);width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.village .qr-presentation .qr-address{text-align:center;color:#203a3a;overflow-wrap:anywhere;margin:0;font-size:16px}@media (width<=760px){.village .qr-presentation{place-items:center;padding:12px}.qr-presentation .village-dialog{max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);padding:12px}.qr-presentation .village-qr img{width:min(100vw - 52px,100dvh - 160px)}}.entry-panel summary{min-height:28px}.entry-panel .village-qr{text-align:center;margin:8px auto}.entry-panel .village-qr img{margin:auto}.entry-updates{z-index:15;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffdf4ed;border:1px solid #ffffffc9;border-radius:18px;width:156px;max-width:calc(100vw - 32px);position:fixed;top:100px;right:24px;box-shadow:0 8px 32px #2546351c}.entry-updates[open]{width:400px}.entry-updates>summary{justify-content:space-between;align-items:center;padding:12px 18px;font-size:13px;font-weight:750;list-style:none;display:flex}.entry-updates>summary::-webkit-details-marker{display:none}.entry-updates>summary span{font-size:20px}.entry-updates[open]>summary span{transform:rotate(45deg)}.entry-updates-body{overscroll-behavior:contain;border-top:1px solid #d9dfcf;max-height:calc(100dvh - 210px);overflow-y:auto}.entry-updates-body>section{margin:0;padding:18px}.entry-updates-body h2{font-size:16px}.entry-updates-body p,.entry-updates-body summary,.entry-updates-body li{font-size:12px}.landing-screen>footer{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffdf5c9;padding:10px 16px;position:relative}.landing-screen.high-contrast .entry-panel,.landing-screen.high-contrast .entry-updates{color:#132a20;background:#fff}@media (width<=760px){.entry-full-art{object-position:68% center}.landing-screen:before{background:#f6f3e733}.v-entry.immersive-entry{justify-content:center;min-height:calc(100dvh - 165px);padding:64px 16px 24px}.entry-panel{width:380px;padding:24px}.village .entry-panel h1{font-size:29px}.entry-updates{width:130px;position:absolute;top:126px;right:16px}.entry-updates[open]{width:min(400px,100vw - 32px)}.entry-updates>summary{padding:8px 14px}.entry-updates-body{max-height:60dvh}}@media (width<=650px){.worksheet-title-grid,.worksheet-shelf-list{grid-template-columns:1fr}.worksheet-rectangle-inputs{grid-template-columns:1fr 1fr}.worksheet-paper{padding:20px}.worksheet-preview{padding:8px}}@media (prefers-reduced-motion:reduce){.portal-sparks{display:none}.portal-opening{animation:none}}@media print{@page{size:A4;margin:16mm}body:has(.worksheet-print-root)>:not(.worksheet-print-root){display:none!important}body:has(.worksheet-print-root){background:#fff!important}.worksheet-print-root{display:block!important}.worksheet-print-root .worksheet-paper{max-width:none;box-shadow:none;color:#000;margin:0;padding:0}.worksheet-print-root .worksheet-paper-block{break-inside:avoid}}.plaza-game-table{flex-direction:column;align-items:center;width:clamp(120px,22%,210px);display:flex;position:absolute;transform:translate(-50%,-70%);box-shadow:0 12px #7f573d99,0 16px 20px #42301840;background:#fff9e6ed!important;border:2px solid #916a3f!important;border-radius:16px!important;padding:10px!important}.plaza-table-sign{color:#665136;letter-spacing:.08em;font-size:11px}.plaza-game-table strong{margin:6px 0 2px;font-size:clamp(11px,1.6vw,16px)}.plaza-game-table small{font-size:10px}.plaza-table-top{aspect-ratio:1.8;background:repeating-linear-gradient(90deg,#0000 0 23%,#64482c55 24% 25%,#0000 26% 49%),repeating-linear-gradient(0deg,#d7af76 0 23%,#64482c55 24% 25%,#d7af76 26% 49%);border:4px solid #987044;border-radius:5px;grid-template-columns:repeat(3,1fr);width:76%;padding:9px;display:grid;box-shadow:inset 0 0 8px #6e43264a}.plaza-table-top i{background:radial-gradient(circle at 30% 25%,#7e7973,#1c211e);border-radius:50%;width:10px;height:10px;box-shadow:1px 2px 2px #0005}.plaza-table-top i:nth-child(2n){background:radial-gradient(circle at 30% 25%,#fff,#dfdacb)}.game-intro{margin:8px 0 18px}.game-intro>span{color:#6a735e;font-size:12px}.game-intro h3{margin:8px 0;font-size:28px}.game-intro p{margin:0}.game-rules{background:#fffdf5;border:1px solid #becbb5;border-radius:14px;margin-bottom:20px;padding:14px 18px}.game-rules summary{cursor:pointer;color:#275943;min-height:28px;font-weight:800}.game-rule-body{align-items:center;gap:24px;padding-top:16px;display:flex}.game-rule-body>div:last-child{flex:1;min-width:0}.game-rule-body p,.game-rule-body li{line-height:1.8}.game-rule-body ol{padding-left:22px}.game-rule-body h4{margin:0}.game-rule-body .table-mini,.game-rule-body .table-quan{flex:0 0 140px}.table-mini{aspect-ratio:1;background:repeating-linear-gradient(90deg,#0000 0 24%,#5b412c60 24% 25%),repeating-linear-gradient(0deg,#deb77e 0 24%,#5b412c60 24% 25%);border:8px solid #946a41;border-radius:10px;grid-template-columns:repeat(5,1fr);width:240px;padding:12px;display:grid;box-shadow:0 5px #69472f}.table-mini-gonu{grid-template-columns:repeat(3,1fr)}.table-mini i{aspect-ratio:1;border-radius:50%;width:65%;margin:auto}.table-mini i.black{background:radial-gradient(circle at 30% 25%,#77746c,#17201d);box-shadow:1px 2px 2px #0005}.table-mini i.white{background:radial-gradient(circle at 30% 25%,#fff,#dfdacb);box-shadow:1px 2px 2px #0005}.table-quan{background:#c59a62;border:5px solid #946a41;border-radius:40px;grid-template-columns:repeat(5,1fr);gap:4px;width:240px;padding:14px;display:grid}.table-quan i{aspect-ratio:1;border:1px solid #77512e;border-radius:5px;flex-wrap:wrap;gap:3px;padding:5px;display:flex}.table-quan b,.pit-dots i{background:#65675a;border-radius:50%;width:6px;height:6px}.game-lobby{justify-content:center;align-items:center;gap:40px;padding:25px 0;display:flex}.game-lobby>div:last-child{flex-direction:column;gap:14px;max-width:310px;display:flex}.game-lobby small{line-height:1.7}.game-waiting{text-align:center;background:#e8eedc;border-radius:18px;padding:35px 20px}.game-waiting h4{font-size:22px}.game-waiting small{margin:14px;display:block}.waiting-stones{justify-content:center;gap:16px;display:flex}.waiting-stones i{background:#273a31;border-radius:50%;width:36px;height:36px;animation:1.2s infinite alternate stone-wait}.waiting-stones i+i{background:#fffcf0;animation-delay:.4s;box-shadow:0 0 0 1px #bac5b0}@keyframes stone-wait{to{transform:translateY(-10px)}}.game-players{justify-content:center;gap:20px;margin:20px 0;display:flex}.game-players>div{border:2px solid #0000;border-radius:14px;align-items:center;gap:10px;padding:10px 18px;display:flex}.game-players>div.current{background:#edf1e3;border-color:#648363}.game-players small{font-size:12px}.cpu-symbol{background:#dce5d2;border-radius:12px;padding:10px;font-weight:700}.game-turn{text-align:center;color:#275943;margin:15px 0;font-size:20px;font-weight:800}.game-turn small{font-size:12px;font-weight:400}.game-hint{text-align:center;font-size:13px}.game-error,.game-retry{color:#704122;background:#fff0d8;border-radius:10px;padding:14px}.game-bottom{align-items:center;gap:15px;margin-top:22px;display:flex}.game-bottom small{max-width:480px;line-height:1.6}.stone-board,.flick-board{aspect-ratio:1;touch-action:manipulation;-webkit-user-select:none;user-select:none;background:linear-gradient(105deg,#e3bd88,#d9aa70 30%,#e5bd83 55%,#cc9b61);border:12px solid #93663b;border-radius:12px;width:100%;max-width:540px;margin:20px auto;position:relative;box-shadow:0 7px #67452b,inset 0 0 22px #92653d66}.stone-board svg{fill:none;stroke:#674a31;stroke-width:.35px;width:100%;height:100%;position:absolute;inset:0}.village .board-point{aspect-ratio:1;box-shadow:none;background:0 0;border:0;border-radius:50%;position:absolute;transform:translate(-50%,-50%);opacity:1!important;min-height:0!important;padding:0!important}.board-point.stone-0,.flick-stone.stone-0{background:radial-gradient(circle at 30% 25%,#77746c,#17201d 75%);box-shadow:2px 3px 4px #35291d80}.board-point.stone-1,.flick-stone.stone-1{background:radial-gradient(circle at 30% 25%,#fffefa,#dad8ca);box-shadow:1px 2px 4px #35291d80}.board-point.last-move:after{content:"";background:#d87849;border-radius:50%;width:20%;height:20%;position:absolute;top:40%;left:40%}.board-point.picked,.flick-stone.picked{outline-offset:3px;outline:3px solid #519b77}.board-point.legal-target{box-shadow:inset 0 0 0 2px #477359;background:#3d81544a!important}.village .board-point:hover:not(:disabled){background-color:#79986855}.flick-board{background:radial-gradient(#e0bd87,#c7965b);border-color:#9b6f42;overflow:hidden}.flick-board-mark{text-align:center;color:#77572b44;pointer-events:none;font-size:34px;font-weight:900;position:absolute;inset:43% 0}.village .flick-stone{aspect-ratio:1;opacity:1;border:0;border-radius:50%;width:6.8%;min-height:0;padding:0;position:absolute;transform:translate(-50%,-50%)}.flick-aim{color:#276949;transform-origin:0;pointer-events:none;font-size:36px;line-height:0;position:absolute;top:50%;left:50%}.flick-controls{flex-wrap:wrap;justify-content:center;align-items:end;gap:16px;display:flex}.flick-controls label{flex-direction:column;flex:1;gap:6px;max-width:190px;display:flex}.flick-controls input{min-height:40px;padding:5px!important}.quan-board{background:#cea66e;border:7px solid #92683f;border-radius:70px;align-items:stretch;gap:8px;max-width:650px;margin:20px auto;padding:16px;display:flex;box-shadow:inset 0 0 15px #946a4455,0 6px #67452b}.quan-royal{background:#e7c796;border:2px solid #815b37;border-radius:40px;place-items:center;width:14%;font-size:22px;font-weight:700;display:grid}.quan-pits{flex:1;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;display:grid}.village .quan-pits button{background:#ead3ac;border:1px solid #92683f;border-radius:7px;flex-direction:column;justify-content:center;align-items:center;min-height:82px;display:flex;position:relative;padding:5px!important}.quan-pits button[aria-pressed=true]{outline:3px solid #397957}.pit-dots{flex-wrap:wrap;justify-content:center;gap:3px;display:flex}.quan-scores{justify-content:space-around;display:flex}.quan-actions{justify-content:center}@media (width<=600px){.game-rule-body,.game-lobby{flex-direction:column}.game-rule-body .table-mini,.game-rule-body .table-quan{flex:auto;width:130px}.game-lobby{gap:22px}.game-lobby .table-mini{width:180px}.game-players{gap:5px}.game-players>div{flex-wrap:wrap;gap:6px;padding:8px}.game-players small{width:100%}.stone-board,.flick-board{border-width:8px}.quan-board{border-width:4px;gap:4px;padding:8px}.quan-pits{gap:3px}.village .quan-pits button{min-height:62px}.game-bottom{flex-direction:column;align-items:flex-start}.game-intro h3{font-size:23px}.flick-controls{gap:8px}.flick-controls label{min-width:110px;max-width:none}.plaza-game-table{transform:translate(-50%,-75%)}}@media (prefers-reduced-motion:reduce){.waiting-stones i{animation:none}}.village .flick-stone{opacity:1!important}.teacher-setup-screen{width:min(700px,100% - 32px);margin:32px auto}.teacher-account label{flex-direction:column;gap:6px;margin:14px 0;display:flex}.teacher-account h2{font-size:24px;line-height:1.6}.worksheet-direction{flex-direction:column;gap:8px;margin:20px 0;display:flex}.worksheet-preview{scroll-margin-top:20px}
