/* Shared full-page chrome for "themed" content pages (Store, ChipShop, BundleDetail).
   Mirrors the MyProfile chrome — lobby background image, centered dark panel
   with gold trim — so non-game pages feel like part of the app instead of
   raw HTML. Use:
     <div class="themed-page">
         <img src="images/lobby-bg.svg" class="themed-page-bg" alt="" />
         <div class="themed-page-content">
             <header class="themed-page-header"><h1>Title</h1><p class="themed-page-sub">…</p></header>
             …
             <div class="themed-page-footer"><button class="btn-themed-back">Back to Lobby</button></div>
         </div>
     </div>
*/

.themed-page {
    position: relative;
    flex: 1 0 auto;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    padding-top: 40px;
    padding-bottom: 40px;
    box-sizing: border-box;
    color: #F0EAFF;
}

.themed-page-bg {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 0;
}

.themed-page-content {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 24px;
    padding: 32px;
    width: calc(100% - 48px);
    max-width: 1100px;
    margin: 0 24px;
    background: rgba(20, 20, 40, 0.85);
    border-radius: 16px;
    border: 1px solid rgba(255, 215, 0, 0.1);
    box-sizing: border-box;
}

.themed-page-header {
    text-align: center;
}

.themed-page-header h1 {
    margin: 0;
    color: #FFD700;
    font-family: Georgia, 'Times New Roman', serif;
    font-size: 1.6rem;
}

.themed-page-sub {
    color: #B0BEC5;
    margin: 6px 0 0;
    font-size: 0.9rem;
}

.themed-section-title {
    color: #FFD700;
    font-size: 0.9rem;
    letter-spacing: 2px;
    text-transform: uppercase;
    text-align: center;
    margin: 0;
}

.themed-page-footer {
    display: flex;
    gap: 12px;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    margin-top: 8px;
}

.btn-themed-back {
    padding: 10px 24px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 8px;
    background: transparent;
    color: #78909C;
    cursor: pointer;
    font-size: 0.85rem;
    min-height: 44px;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: color 0.15s;
}

.btn-themed-back:hover {
    color: #fff;
}

.themed-back-link {
    align-self: flex-start;
    color: #B0BEC5;
    text-decoration: none;
    cursor: pointer;
    font-size: 0.9rem;
    transition: color 0.15s;
}

.themed-back-link:hover {
    color: #FFD700;
}

@media (max-width: 480px) {
    .themed-page-content {
        padding: 20px;
        width: calc(100% - 24px);
        margin: 0 12px;
        gap: 18px;
    }
}
