html, body { margin: 0; background: #fff6f3; }
html[lang|="ko"] body { word-break: keep-all; }
body { min-height: 100svh; display: flex; align-items: center; justify-content: center; }
#root, .native-cover { width: 100%; max-width: 1080px; }
.cover-frame { position: relative; width: 100%; overflow: hidden; }
.cover-stage { position: absolute; top: 0; left: 0; overflow: hidden; transform-origin: 0 0; transform: scale(var(--design-scale, 1)); }
.cover-background { position: absolute; inset: 0; overflow: hidden; }
.cover-layer, .cover-background img, .cover-layer img { position: absolute; }
.cover-layer { display: block; text-decoration: none; }
.cover-layer:not(a) { pointer-events: none; }
.cover-layer a { pointer-events: auto; }
.cover-text-box { transform-origin: 0 0; }
.cover-text-box p, .cover-text-box h1 { margin: 0; white-space: pre-wrap; overflow-wrap: break-word; font-kerning: none; }
.cover-text-box [data-fit] { visibility: hidden; }
.cover-frame.is-fitted [data-fit] { visibility: visible; }
.cover-layer:focus-visible { outline: 6px solid #ec9c9d; outline-offset: 8px; }
.cover-reveal { animation: cover-reveal .65s ease-out both; }
.cover-sparkle { display: block; width: 100%; height: 100%; mask-size: 100% 100%; animation: cover-sparkle 2.533s ease-in-out infinite; }
@keyframes cover-reveal { from { opacity: 0; } to { opacity: 1; } }
@keyframes cover-sparkle { 0%, 100% { opacity: .35; } 50% { opacity: 1; } }
@media (prefers-reduced-motion: reduce) { .cover-reveal, .cover-sparkle { animation: none; } }
