/* Generated theme CSS for QuickGamesArena Theme */
:root {
    /* Main colors */
    --primary-color: #14b8a6;
    --secondary-color: #2563eb;
    --accent-color: #f59e0b;
    --bg-color: #080b12;
    --font-color: #e5edf7;
    
    --success-color: #22c55e;
    --info-color: #38bdf8;
    --warning-color: #f59e0b;
    --danger-color: #ef4444;
    
    /* Footer colors */
    --footer-bg-color: #05070d;
    --footer-text-color: #98a7bb;
    --footer-border-color: #263244;
    --footer-link-color: #67e8f9;
    
    /* Typography */
    --font-family-base: 'Roboto', sans-serif;
    --font-family-headings: 'Roboto', sans-serif;

    /* --- QuickCMS デザイントークン（明度判定が必要なぶんだけ計算して上書き） --- */
    --qc-primary-rgb: 20, 184, 166;
    --qc-fg-rgb: 229, 237, 247;
    --qc-primary-on: #111418;
    --qc-secondary-on: #ffffff;
    --qc-accent-on: #111418;
    --qc-success-on: #111418;
    --qc-info-on: #111418;
    --qc-warning-on: #111418;
    --qc-danger-on: #111418;
    --qc-footer-on: #ffffff;
    --qc-scheme: dark;
    color-scheme: dark;
}

/* Base styles using theme variables */
body {
    background-color: var(--bg-color);
    color: var(--font-color);
    font-family: var(--font-family-base);
}

h1, h2, h3, h4, h5, h6 {
    font-family: var(--font-family-headings);
}

/* Main color applications */
.btn-primary, .bg-primary {
    background-color: var(--primary-color) !important;
    border-color: var(--primary-color) !important;
}

.btn-secondary, .bg-secondary {
    background-color: var(--secondary-color) !important;
    border-color: var(--secondary-color) !important;
}

.btn-accent, .bg-accent {
    background-color: var(--accent-color) !important;
    border-color: var(--accent-color) !important;
}

.btn-success, .bg-success {
    background-color: var(--success-color) !important;
    border-color: var(--success-color) !important;
}

.btn-info, .bg-info {
    background-color: var(--info-color) !important;
    border-color: var(--info-color) !important;
}

.btn-warning, .bg-warning {
    background-color: var(--warning-color) !important;
    border-color: var(--warning-color) !important;
}

.btn-danger, .bg-danger {
    background-color: var(--danger-color) !important;
    border-color: var(--danger-color) !important;
}

.text-primary {
    color: var(--primary-color) !important;
}

.text-secondary {
    color: var(--secondary-color) !important;
}

.text-accent {
    color: var(--accent-color) !important;
}

/* Footer styling */
.site-footer {
    background-color: var(--footer-bg-color);
    color: var(--footer-text-color);
    border-top: 1px solid var(--footer-border-color);
}

.site-footer a, .footer-link {
    color: var(--footer-link-color) !important;
}

.footer-site-name {
    color: var(--footer-text-color);
}

.footer-copyright {
    color: var(--footer-text-color);
}

/* Add custom CSS if provided */
:root{--gp-primary:#14b8a6;--gp-primary-dark:#0f766e;--gp-primary-light:rgba(20,184,166,.22);--gp-primary-soft:rgba(20,184,166,.12);--gp-cyan:#38bdf8;--gp-pink:#f43f5e;--gp-gold:#f59e0b;--gp-gold-dark:#fbbf24;--gp-success:#22c55e;--gp-danger:#ef4444;--gp-bg:#080b12;--gp-bg-alt:#151b29;--gp-bg-night:#05070d;--gp-surface:#101827;--gp-surface-elevated:#172033;--gp-border:#263244;--gp-text:#e5edf7;--gp-text-muted:#9aa9bd;--gp-page-bg:#080b12;--gp-page-text:#e5edf7;--gp-content-max-width:1140px;--gp-content-padding-x:16px;--gp-main-margin-top:32px;--gp-topbar-display:block;--gp-topbar-bg:linear-gradient(90deg,#101827,#14333a 48%,#5b2b0b);--gp-topbar-text:#f8fafc;--gp-header-display:block;--gp-header-bg:rgba(8,11,18,.94);--gp-header-text:#f8fafc;--gp-header-border:#233044;--gp-header-shadow:0 14px 40px rgba(0,0,0,.28);--gp-header-gap:14px;--gp-header-padding-y:10px;--gp-logo-size:36px;--gp-logo-height:36px;--gp-logo-radius:8px;--gp-logo-bg:linear-gradient(135deg,#14b8a6,#f59e0b);--gp-logo-shadow:0 0 28px rgba(20,184,166,.28);--gp-input-bg:#111827;--gp-input-focus-bg:#0b1220;--gp-input-text:#e5edf7;--gp-input-placeholder:#93a4b8;--gp-icon-hover-bg:#172033;--gp-popover-bg:#101827;--gp-popover-shadow:0 22px 50px rgba(0,0,0,.38);--gp-notification-unread-bg:rgba(20,184,166,.14);--gp-nav-display:block;--gp-nav-bg:#0e1522;--gp-nav-text:#cad5e6;--gp-nav-border:#233044;--gp-nav-active:#f59e0b;--gp-nav-active-border:#f59e0b;--gp-nav-link-hover:#38bdf8;--gp-nav-padding-y:10px;--gp-nav-padding-x:14px;--gp-footer-bg:#05070d;--gp-footer-text:#98a7bb;--gp-footer-heading:#f8fafc;--gp-footer-link:#67e8f9;--gp-footer-link-hover:#fbbf24;--gp-footer-border:#263244;--gp-footer-bottom-text:#6b7b90;--gp-footer-margin-top:48px;--gp-card-radius:8px;--gp-card-padding:18px;--gp-card-gap:16px;--gp-section-gap:22px;--gp-control-radius:6px;--qga-ink:#e5edf7;--qga-surface:var(--gp-surface);--qga-surface-elevated:var(--gp-surface-elevated);--qga-blue:#2563eb;--qga-teal:#14b8a6;--qga-gold:#f59e0b;--qga-border:var(--gp-border);--qga-muted:#9aa9bd;--qga-soft:rgba(20,184,166,.12);--qga-hero-bg:linear-gradient(135deg,#080b12,#132337 48%,#14333a);--qga-hero-text:#f8fafc;--qga-hero-muted:#cbd5e1;--qga-hero-padding:30px 32px;--qga-hero-radius:8px;--qga-hero-margin-bottom:24px;--qga-card-bg:var(--gp-surface);--qga-card-padding:var(--gp-card-padding);--qga-card-radius:var(--gp-card-radius);--qga-card-gap:var(--gp-card-gap);--qga-font-sans:"Inter","Roboto","Noto Sans JP",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--qga-premium-bg:#070a12;--qga-premium-bg-2:#0b1220;--qga-premium-surface:rgba(15,23,42,.82);--qga-premium-surface-strong:rgba(20,30,48,.94);--qga-premium-line:rgba(148,163,184,.22);--qga-premium-line-strong:rgba(125,211,252,.34);--qga-premium-text:#e5edf7;--qga-premium-muted:#a7b4c8;--qga-premium-soft:rgba(125,211,252,.12);--qga-premium-blue:#60a5fa;--qga-premium-cyan:#22d3ee;--qga-premium-teal:#2dd4bf;--qga-premium-violet:#a78bfa;--qga-premium-amber:#fbbf24;--qga-premium-rose:#fb7185;--qga-shadow-card:0 18px 46px rgba(0,0,0,.28);--qga-shadow-hover:0 24px 58px rgba(0,0,0,.36);--qga-focus-ring:0 0 0 3px rgba(34,211,238,.34);}.theme-game-theme .gameportal{background:radial-gradient(circle at top left,rgba(20,184,166,.13),transparent 32%),var(--gp-page-bg);}.theme-game-theme .qg-shell,.theme-game-theme .qg-detail{gap:var(--gp-section-gap);}.theme-game-theme .qg-masthead,.theme-game-theme .qg-detail-hero{border-color:var(--gp-border);border-radius:var(--gp-card-radius);background:var(--qga-hero-bg);color:var(--qga-hero-text);padding:var(--qga-hero-padding);}.theme-game-theme .qg-masthead p,.theme-game-theme .qg-detail-hero p{color:var(--qga-hero-muted);}.theme-game-theme .qg-panel,.theme-game-theme .qg-arena{border-color:var(--gp-border);border-radius:var(--gp-card-radius);background:var(--gp-surface);color:var(--gp-text);}.theme-game-theme .qg-arena-head,.theme-game-theme .qg-panel-head,.theme-game-theme .qg-catalog-search{background:var(--gp-surface-elevated);border-color:var(--gp-border);padding:calc(var(--gp-card-padding) * .75) var(--gp-card-padding);}.theme-game-theme .qg-arena-head h2,.theme-game-theme .qg-panel-head h2{color:var(--gp-text);}.theme-game-theme .qg-arena-head p,.theme-game-theme .qg-panel-note{color:var(--gp-text-muted);}.theme-game-theme .qg-catalog-search input,.theme-game-theme .qg-catalog-search select,.theme-game-theme .qg-catalog-search button,.theme-game-theme .qg-filter-clear{border-color:var(--gp-border);border-radius:var(--gp-control-radius);background:var(--gp-input-bg);color:var(--gp-input-text);}.theme-game-theme .qg-catalog-search button,.theme-game-theme .qg-primary-action,.theme-game-theme .qg-action-btn{background:var(--gp-primary);border-color:var(--gp-primary);color:#06211f;}.theme-game-theme .qg-primary-action:hover,.theme-game-theme .qg-action-btn:hover{background:var(--gp-primary-dark);color:#fff;text-decoration:none;}.theme-game-theme .qg-filter-clear{background:var(--gp-bg-alt);color:var(--gp-text-muted);}.theme-game-theme .qg-filter-clear:hover{background:var(--gp-surface);color:var(--gp-text);}.theme-game-theme .qg-home-columns,.theme-game-theme .qg-play-grid{gap:var(--gp-card-gap);}.theme-game-theme .qg-game-grid,.theme-game-theme .qg-event-grid,.theme-game-theme .qg-category-list,.theme-game-theme .qg-list,.theme-game-theme .qg-mini-stats{gap:var(--gp-card-gap);padding:var(--gp-card-padding);}.theme-game-theme .qg-game-tile,.theme-game-theme .qg-event-card,.theme-game-theme .qg-game-info-grid div,.theme-game-theme .qg-game-guide article{background:var(--gp-surface-elevated);border-color:var(--gp-border);border-radius:var(--gp-card-radius);color:var(--gp-text);padding:calc(var(--gp-card-padding) * .75);}.theme-game-theme .qg-game-tile:hover,.theme-game-theme .qg-event-card:hover{border-color:var(--gp-primary);box-shadow:0 10px 26px rgba(0,0,0,.26);color:var(--gp-text);text-decoration:none;}.theme-game-theme .qg-game-main small,.theme-game-theme .qg-event-card small,.theme-game-theme .qg-category-row small,.theme-game-theme .qg-shogi-card small,.theme-game-theme .qg-rank-player small,.theme-game-theme .qg-rank-record,.theme-game-theme .qg-game-guide p{color:var(--gp-text-muted);}.theme-game-theme .qg-game-main .qg-game-meta-line,.theme-game-theme .qg-event-card span,.theme-game-theme .qg-rank-rating,.theme-game-theme .qg-breadcrumb a{color:var(--gp-primary);}.theme-game-theme .qg-game-tile.is-planned,.theme-game-theme .qg-empty{background:var(--gp-bg-alt);}.theme-game-theme .qg-empty{border-color:var(--gp-border);border-radius:var(--gp-card-radius);color:var(--gp-text-muted);padding:var(--gp-card-padding);}.theme-game-theme .qg-empty strong,.theme-game-theme .qg-rank-player,.theme-game-theme .qg-game-info-grid strong,.theme-game-theme .qg-game-guide h3{color:var(--gp-text);}.theme-game-theme .qg-category-row,.theme-game-theme .qg-shogi-card{color:var(--gp-text);border-radius:var(--gp-card-radius);}.theme-game-theme .qg-category-row:hover,.theme-game-theme .qg-shogi-card:hover{background:var(--gp-bg-alt);color:var(--gp-text);}.theme-game-theme .qg-mini-stats span{background:var(--gp-primary-soft);color:var(--gp-text);}.theme-game-theme .qg-leaderboard-list li{border-color:var(--gp-border);padding:calc(var(--gp-card-padding) * .75) var(--gp-card-padding);}.qga-page-intro{background:var(--qga-hero-bg);color:var(--qga-hero-text);border:1px solid var(--qga-border);border-radius:var(--qga-hero-radius);padding:var(--qga-hero-padding);margin:0 0 var(--qga-hero-margin-bottom);}.qga-page-intro h1,.qga-page-intro h2{color:var(--qga-hero-text);margin-bottom:8px;font-weight:800;}.qga-page-intro p{color:var(--qga-hero-muted);margin:0;max-width:860px;}.qga-page-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px;}.qga-link-button{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--qga-border);border-radius:var(--gp-control-radius);padding:9px 14px;background:var(--qga-surface-elevated);color:var(--qga-ink);font-weight:700;text-decoration:none;}.qga-link-button:hover{color:var(--qga-ink);border-color:var(--qga-teal);text-decoration:none;}.qga-link-button.primary{background:var(--qga-gold);border-color:var(--qga-gold);color:#111827;}.qga-panel-band{background:var(--qga-card-bg);border:1px solid var(--qga-border);border-radius:var(--qga-card-radius);padding:var(--qga-card-padding);margin:0 0 var(--qga-card-gap);}.qga-panel-band h2{font-size:1.15rem;margin:0 0 12px;font-weight:800;}.qga-split{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:var(--qga-card-gap);align-items:start;}.qga-route-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-top:16px;}.qga-route-list a{display:block;border:1px solid var(--qga-border);border-radius:var(--qga-card-radius);padding:14px 16px;background:var(--qga-surface-elevated);color:var(--qga-ink);text-decoration:none;font-weight:700;}.qga-route-list a:hover{border-color:var(--qga-teal);text-decoration:none;}.qga-route-list small{display:block;color:var(--qga-muted);font-weight:500;margin-top:4px;}.theme-game-theme .gameportal{font-family:var(--qga-font-sans);background:linear-gradient(180deg,var(--qga-premium-bg) 0%,var(--qga-premium-bg-2) 48%,#0f1624 100%);color:var(--qga-premium-text);}.theme-game-theme .gp-header,.theme-game-theme .gp-nav{border-color:var(--qga-premium-line);background:rgba(7,10,18,.9);backdrop-filter:blur(16px);}.theme-game-theme .gp-brand,.theme-game-theme .gp-nav a,.theme-game-theme .icon-btn-gp,.theme-game-theme .header-avatar,.theme-game-theme .user-pill a{color:var(--qga-premium-text);}.theme-game-theme .gp-header-search input,.theme-game-theme .gp-language-select{border-color:var(--qga-premium-line);background:rgba(15,23,42,.86);color:var(--qga-premium-text);}.theme-game-theme .gp-header-search input:focus,.theme-game-theme .gp-language-select:focus{border-color:var(--qga-premium-cyan);box-shadow:var(--qga-focus-ring);}.theme-game-theme .qg-masthead,.theme-game-theme .qg-detail-hero,.theme-game-theme .qg-shogi-site-hero{border-color:var(--qga-premium-line);background:linear-gradient(135deg,rgba(12,35,52,.96),rgba(15,23,42,.96) 58%,rgba(61,38,13,.9));box-shadow:var(--qga-shadow-card);}.theme-game-theme .qg-panel,.theme-game-theme .qg-arena,.theme-game-theme .qg-genre-subcategory,.theme-game-theme .qg-genre-widget,.theme-game-theme .qg-live-dashboard-panel{border-color:var(--qga-premium-line);background:var(--qga-premium-surface);box-shadow:var(--qga-shadow-card);backdrop-filter:blur(14px);}.theme-game-theme .qg-primary-action,.theme-game-theme .qg-action-btn,.theme-game-theme .qg-catalog-search button{min-height:44px;border:0;background:linear-gradient(135deg,var(--qga-premium-cyan),var(--qga-premium-teal) 54%,var(--qga-premium-amber));color:#07111f;box-shadow:0 14px 32px rgba(34,211,238,.18);}.theme-game-theme .qg-action-btn{background:linear-gradient(135deg,rgba(96,165,250,.94),rgba(167,139,250,.9));color:#f8fafc;}.theme-game-theme .qg-primary-action:hover,.theme-game-theme .qg-action-btn:hover,.theme-game-theme .qg-catalog-search button:hover{color:#f8fafc;transform:translateY(-1px);box-shadow:var(--qga-shadow-hover);}.theme-game-theme .qg-game-tile,.theme-game-theme .qg-event-card,.theme-game-theme .qg-board-game-card,.theme-game-theme .qg-coming-soon-card,.theme-game-theme .qg-live-dashboard-row,.theme-game-theme .qg-shogi-hero-route{border:1px solid var(--qga-premium-line);border-radius:var(--qga-card-radius);background:rgba(15,23,42,.72);color:var(--qga-premium-text);}.theme-game-theme .qg-game-tile:hover,.theme-game-theme .qg-event-card:hover,.theme-game-theme .qg-board-game-card:hover,.theme-game-theme .qg-coming-soon-card:hover,.theme-game-theme .qg-live-dashboard-row:hover,.theme-game-theme .qg-shogi-hero-route:hover{border-color:var(--qga-premium-line-strong);background:rgba(22,34,55,.92);color:var(--qga-premium-text);transform:translateY(-2px);box-shadow:var(--qga-shadow-hover);}.theme-game-theme .qg-game-tile.is-ready,.theme-game-theme .qg-board-game-card.is-playable{border-color:rgba(45,212,191,.46);background:linear-gradient(135deg,rgba(20,184,166,.92),rgba(37,99,235,.82) 58%,rgba(15,23,42,.92));color:#f8fafc;}.theme-game-theme .qg-game-tile.is-planned,.theme-game-theme .qg-board-game-card.is-coming-soon,.theme-game-theme .qg-coming-soon-card.is-planned{opacity:.74;filter:grayscale(.25) saturate(.78);}.theme-game-theme .qg-quickmatch-tile{min-height:116px;border-color:rgba(125,211,252,.28);background:linear-gradient(145deg,rgba(14,165,233,.88),rgba(99,102,241,.84) 52%,rgba(15,23,42,.86));box-shadow:0 18px 40px rgba(14,165,233,.2);}.theme-game-theme .qg-quickmatch-tile.is-default{border-color:rgba(251,191,36,.52);background:linear-gradient(145deg,rgba(45,212,191,.9),rgba(37,99,235,.86) 52%,rgba(251,191,36,.82));}.theme-game-theme .qg-skeleton,.theme-game-theme .qg-card-skeleton{position:relative;overflow:hidden;min-height:120px;border:1px solid var(--qga-premium-line);border-radius:var(--qga-card-radius);background:rgba(15,23,42,.72);}.theme-game-theme .gp-content-shell>h1,.theme-game-theme .gp-content-shell>h2,.theme-game-theme .gp-content-shell .directory-description h1,.theme-game-theme .gp-content-shell .directory-description h2{color:var(--qga-premium-text);font-weight:900;letter-spacing:0;}.theme-game-theme .gp-content-shell>p,.theme-game-theme .gp-content-shell .directory-description,.theme-game-theme .gp-content-shell .directory-description p,.theme-game-theme .gp-content-shell .directory-description li{color:var(--qga-premium-muted);line-height:1.75;}.theme-game-theme .qga-page-intro,.theme-game-theme .qga-panel-band{border-color:var(--qga-premium-line);background:var(--qga-premium-surface);box-shadow:var(--qga-shadow-card);backdrop-filter:blur(14px);}@media(max-width:768px){.qga-page-intro{padding:22px 18px}.qga-split{grid-template-columns:1fr}}
