/* 블록 크래시 (Block Crash) — 페이지 스타일 */

* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

html,
body {
    height: 100%;
    background: #1a1c22;
    overflow: hidden;
    font-family: "Pretendard", -apple-system, "Segoe UI", "Noto Sans KR", "Malgun Gothic", sans-serif;
    /* 드래그 앤 드롭 게임이라 브라우저 제스처(스크롤·당겨서 새로고침)를 캔버스에서 막는다 */
    touch-action: manipulation;
    -webkit-user-select: none;
    user-select: none;
    -webkit-tap-highlight-color: transparent;
}

body {
    display: flex;
    flex-direction: column;
}

#stage {
    position: relative;
    flex: 1;
    min-height: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

#game {
    height: 100%;
    max-height: 100%;
    max-width: 100vw;
    aspect-ratio: 376 / 548;
    background: #0d0f16;
    display: block;
    touch-action: none;   /* 캔버스 위 드래그가 스크롤로 새지 않게 */
}

/* ------------------------------------------------------------ 오버레이 */

.overlay {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    text-align: center;
    background: rgba(10, 12, 18, 0.88);
    color: #e8eaf2;
    padding: 24px;
}

.overlay.hidden { display: none; }
.hidden { display: none !important; }

.overlay__eyebrow { font-size: 11px; letter-spacing: 3px; color: #8a8fa3; }
.overlay__title { font-size: 44px; font-weight: 900; color: #ffd76a; }
.overlay__title .pop { color: #ff9d76; }
.overlay__sub { font-size: 13px; letter-spacing: 6px; color: #8a8fa3; }
.overlay__desc { font-size: 14px; line-height: 1.8; color: #b9bdcc; }
.overlay__hint { font-size: 12px; line-height: 1.8; color: #8a8fa3; }
.overlay__best { font-size: 13px; color: #ffd76a; }
.overlay__gameover { font-size: 26px; font-weight: 900; color: #ff9d76; }
.overlay__stats { display: grid; gap: 4px; font-size: 15px; color: #b9bdcc; }
.overlay__stats strong { color: #ffd76a; }
.overlay__newrecord { color: #63d4a8; font-weight: 800; }
.overlay__backlink { font-size: 13px; }
.overlay__backlink a { color: #7fc4ff; }

.btn-retro {
    margin-top: 6px;
    padding: 13px 34px;
    font-size: 16px;
    font-weight: 900;
    color: #1a1c22;
    background: #ffd76a;
    border: 0;
    border-radius: 12px;
    box-shadow: 0 4px 0 #b98f2e;
    cursor: pointer;
}

.btn-retro:active { transform: translateY(3px); box-shadow: 0 1px 0 #b98f2e; }

/* ------------------------------------------------------------ 하단 배너 광고 */

#ad-bar {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 60px;
    padding-bottom: env(safe-area-inset-bottom, 0px);
    background: #101218;
    border-top: 1px solid #2a2e3a;
}

.ad-placeholder { font-size: 11px; letter-spacing: 3px; color: #3a3f4e; }
