/* Shared guide palette; photographs and console screenshots stay unfiltered. */
body.guide-theme {
    --n-accent: #087a2d;
    --n-active: #e7f5eb;
    --guide-surface: var(--n-surface);
    --guide-surface-raised: var(--n-tint);
    --guide-line: var(--n-border);
    --guide-line-soft: var(--n-border);
    --guide-muted: var(--n-muted);
    --guide-copy: var(--n-text);
    --dark-bg: var(--n-page);
    --card-bg: var(--n-surface);
    background: var(--n-page);
    color: var(--n-text);
    color-scheme: light;
}
:root[data-site-theme="dark"] body.guide-theme {
    --n-accent: #70dc90;
    --n-active: #1c3826;
    color-scheme: dark;
}
body.guide-theme::before, body.guide-theme::after, body.guide-theme .pixel-bg { display: none !important; }
body.guide-theme .guide-page { --guide-green: var(--n-accent); --nintendo-red: var(--n-accent); color: var(--n-text); }
body.guide-theme .guide-layout { background: transparent; }
body.guide-theme .guide-page .games-header { background: #118333; border: 0; min-height: 72px; padding: 12px 24px; }
body.guide-theme .games-header-title { flex: 1; min-width: 0; }
body.guide-theme .games-header-title h1 { color: #fff; text-shadow: none; letter-spacing: 0; font-size: 16px; }
body.guide-theme .games-header-logo { width: 44px; height: 44px; border-radius: 8px; image-rendering: auto; }
body.guide-theme .games-header-actions { flex: 0 0 auto; align-items: center; }
body.guide-theme .games-header .btn-back { color: #fff; border-color: #ffffff80; min-height: 44px; }
body.guide-theme .games-header .btn-back:hover { color: #fff; background: #ffffff18; border-color: #fff; }
body.guide-theme .guide-sidebar { top: 72px; height: calc(100dvh - 72px); background: var(--n-surface); scrollbar-color: var(--n-border) transparent; }
body.guide-theme :is(h1,h2,h3,h4,strong,.guide-mc-title,.guide-sidebar-console-name,.guide-faq-summary,.guide-spec-label,.guide-download-item-label) { color: var(--n-text); text-shadow: none; letter-spacing: 0; }
body.guide-theme :is(.guide-sidebar-console-sub,.guide-sidebar-prog-label,.guide-sb-group-hd,.guide-sb-item-txt,.guide-mc-desc,.guide-hero-stat-lbl,.guide-breadcrumb a,.guide-breadcrumb .current,.guide-breadcrumb .sep,.guide-img-caption,.guide-spec-note,.guide-download-item-desc,.guide-continue-kicker,.guide-continue p) { color: var(--n-muted); }
body.guide-theme :is(.guide-hero-stat-num,.guide-section-label,.guide-step-num,.guide-mc-num,.guide-sb-ico,.guide-toc summary > i:first-child) { color: var(--n-accent); }
body.guide-theme :is(.guide-main-card,.guide-main-card.enabled,.guide-step,.guide-faq-item,.guide-spec-box,.guide-wifi-specs,.guide-tab-btn,.guide-tab-placeholder,.guide-tab-content-header,.guide-file-tree,.guide-download-list,.guide-download-item,.guide-app-card,.guide-art-nav-btn,.guide-3ds-model,.guide-3ds-version-panel,.guide-3ds-method,.guide-device-card,.console-model-preview) { background: var(--n-surface); color: var(--n-text); border-color: var(--n-border); box-shadow: none; }
body.guide-theme :is(.guide-main-card.enabled:hover,.guide-sb-item.enabled:hover,.guide-tab-btn:hover,.guide-download-item:hover,.guide-art-nav-btn:hover) { background: var(--n-active); border-color: var(--n-accent); }
body.guide-theme :is(.guide-sb-item.active,.guide-filter-btn.active,.guide-tab-btn.active,.guide-3ds-model.is-selected) { background: var(--n-active); color: var(--n-accent); border-color: var(--n-accent); }
body.guide-theme :is(.guide-sb-num,.guide-presto,.guide-hero-img-wrap,.guide-sidebar-prog,.guide-mc-num,.guide-fav-toggle,.guide-filter-btn) { background: var(--n-tint); color: var(--n-muted); border-color: var(--n-border); }
body.guide-theme :is(.guide-step-body,.guide-faq-body,.guide-art-list li,.guide-spec-value,.guide-procedure-copy,.guide-toc summary,.guide-toc li a,.guide-infobox p,.guide-infobox li) { color: var(--n-text); }
body.guide-theme .guide-toc li a:hover { color: var(--n-accent); background: var(--n-active); }
body.guide-theme .guide-art-tag { background: var(--n-tint) !important; color: var(--n-muted) !important; }
body.guide-theme :is(.guide-art-section a,.guide-step-body a,.guide-faq-body a) { color: var(--n-accent); }
body.guide-theme :is(input,select,textarea) { color: var(--n-text); background: var(--n-surface); border-color: var(--n-border); }
body.guide-theme :is(input,textarea)::placeholder { color: var(--n-muted); }
body.guide-theme :is(.guide-note,.guide-tip,.guide-info-box,.guide-advice-box,.guide-brick-list,.guide-infobox) { background: var(--n-surface); color: var(--n-text); }
body.guide-theme :is(.guide-warning,.guide-danger) { background: var(--n-surface); }
body.guide-theme :is(.guide-warning p,.guide-danger p,.guide-note p,.guide-tip p,.guide-info-box p,.guide-advice-box p) { color: var(--n-text); }
body.guide-theme .guide-table { background: var(--n-surface); border-color: var(--n-border); }
body.guide-theme .guide-table :is(th,td) { color: var(--n-text); border-color: var(--n-border); }
body.guide-theme .guide-table thead th { background: var(--n-tint); }
body.guide-theme :is(code,.guide-file-listing,.guide-file-tree) { color: var(--n-text); background: var(--n-tint); border-color: var(--n-border); }
body.guide-theme pre { color: #f2f3f4; background: #222527; }
body.guide-theme pre code { color: inherit; background: transparent; }
body.guide-theme .guide-cta-box { background: var(--n-active); border-color: var(--n-border); box-shadow: none; }
body.guide-theme :is(.guide-cta-btn,.guide-continue-btn,.guide-infobox-cta) { background: #118333; border: 1px solid #118333; color: #fff; text-shadow: none; box-shadow: none; }
body.guide-theme :is(.guide-cta-btn,.guide-infobox-cta) strong { color: inherit; }
body.guide-theme .guide-page-switch-sw-gta-v .guide-cta-box.is-support { background: var(--n-surface); border-color: #e87916; }
body.guide-theme .guide-page-switch-sw-gta-v .guide-cta-box.is-support .guide-cta-btn { background: #ad4d00; border-color: #ad4d00; color: #fff; }
body.guide-theme .guide-mset9-icon { color: var(--n-text); }
body.guide-theme .guide-art-header h1 { font-size: 28px; line-height: 1.25; }
body.guide-theme .guide-art-header-top > :is(i,.guide-title-brand-icon) { background: var(--n-active); border-color: var(--n-border); }
body.guide-theme .guide-continue { background: transparent; border: 0; border-bottom: 1px solid var(--n-border); border-radius: 0; box-shadow: none; }
body.guide-theme .guide-continue-clear { background: var(--n-surface); color: var(--n-muted); border-color: var(--n-border); }
body.guide-theme .guide-page .games-footer { margin: 0; max-width: none; background: transparent; border-top: 1px solid var(--n-border); padding: 24px 16px 96px; text-align: center; animation: none; opacity: 1; }
body.guide-theme .games-footer-link { color: var(--n-muted); }
body.guide-theme .guide-article-main { min-width: 0; }
body.guide-theme .guide-page .guide-main-card.enabled .guide-mc-title { color: var(--n-text); }
body.guide-theme .guide-page .guide-main-card.enabled .guide-mc-icon { color: var(--n-accent); }
body.guide-theme .guide-page :is(.guide-spec-value,.guide-spec-label,.guide-download-item-label,.guide-3ds-model strong,.guide-3ds-version-label,.guide-3ds-method-title,.guide-device-title,.guide-tab-btn,.guide-cta-box p,.guide-cta-title,.guide-info-box li,.guide-warning li,.guide-danger li,.guide-faq-summary) { color: var(--n-text); }
body.guide-theme .guide-page :is(.guide-3ds-model small,.guide-3ds-version-hint,.guide-3ds-method-desc,.guide-device-desc,.guide-download-item-desc,.guide-table-caption,.guide-cta-box .guide-cta-desc) { color: var(--n-muted); }
body.guide-theme :is(.guide-procedure-copy::before,.guide-3ds-model.is-selected .guide-3ds-model-check) { background: #118333; color: #fff; }
body.guide-theme .guide-table-cmd { color: var(--n-accent); background: var(--n-active); }
body.guide-theme .guide-page .guide-tools-info > span { color: var(--n-muted); }
body.guide-theme .guide-page .guide-step-num { background: var(--n-active); color: var(--n-accent); border-color: var(--n-accent); }
body.guide-theme .guide-page .guide-spec-box li p { color: var(--n-muted); }
body.guide-theme .guide-page :is(.guide-infobox-title,.guide-spec-box-title,.guide-settings-box-title) { color: var(--n-accent); }
body.guide-theme .guide-page .guide-infobox.ib-warning .guide-infobox-title { color: #896000; }
body.guide-theme .guide-page .guide-infobox.ib-error .guide-infobox-title { color: #ba2633; }
body.guide-theme .guide-page .guide-infobox.ib-info .guide-infobox-title { color: #2267ac; }
:root[data-site-theme="dark"] body.guide-theme .guide-page .guide-infobox.ib-warning .guide-infobox-title { color: #f4ce69; }
:root[data-site-theme="dark"] body.guide-theme .guide-page .guide-infobox.ib-error .guide-infobox-title { color: #ff8e97; }
:root[data-site-theme="dark"] body.guide-theme .guide-page .guide-infobox.ib-info .guide-infobox-title { color: #91c5ff; }
body.guide-theme .guide-page .guide-art-section :is(p,li) { color: var(--n-text); }
body.guide-theme .guide-page .guide-art-section :is(h3,h4,strong) { color: var(--n-text); }
body.guide-theme .guide-page :is(.guide-ft-name,.guide-controls-note,.guide-settings-box li,.guide-emulator-list li,.guide-destination-box li,.guide-cia-types li) { color: var(--n-text); }
body.guide-theme .guide-page .guide-art-section :is(.guide-two-col,.guide-column,.guide-settings-box,.guide-controls-box,.guide-cia-types,.guide-destination-box,.guide-emulator-list,.guide-exploit-card) { background: var(--n-surface); border-color: var(--n-border); }
:root[data-site-theme="light"] body.guide-theme .guide-art-section :is(h3,h4,strong,li,span)[style*="color:"] { color: var(--n-text) !important; }
:root[data-site-theme="light"] body.guide-theme .guide-page :is(.guide-spec-box-title,.guide-settings-box-title,.guide-faq-summary) { color: var(--n-accent) !important; }
body.guide-theme .guide-page :is(.guide-table-title,.guide-table-tool) { color: var(--n-text); }
:root[data-site-theme="light"] body.guide-theme .guide-faq-summary > div { color: var(--n-text) !important; }
body.guide-theme .guide-page .guide-3ds-screen-field select { color: #655f49; background: #ffffff20; color-scheme: light; }
body.guide-theme .guide-page .guide-3ds-screen-field select option { color: #24272b; background: #fff; }
body.guide-theme .guide-page :is(.guide-3ds-fixed-value,.guide-3ds-version-preview,.guide-3ds-selector-message) { color: var(--n-text); background: var(--n-surface); border-color: var(--n-border); }
body.guide-theme .guide-page :is(.guide-destination-box-title,.guide-cia-types-title,.guide-emulator-list-title,.guide-controls-title) { color: var(--n-accent); }
body.guide-theme .guide-page :is(.guide-main-group-count,.nav-label,.games-footer-sep,.guide-file-tree-title,.guide-ft-comment) { color: var(--n-muted); }
body.guide-theme .guide-page .guide-file-tree span[style*="color:"] { color: var(--n-muted) !important; }
body.guide-theme .guide-page .guide-art-section a:is(.guide-cta-btn,.guide-infobox-cta),
body.guide-theme .guide-page .guide-art-section a:is(.guide-cta-btn,.guide-infobox-cta):hover { color: #fff; }
body.guide-theme .guide-page .guide-cta-box.is-main-channel { background: var(--n-surface); border-color: var(--n-border); }
body.guide-theme .guide-page .guide-cta-box.is-main-channel .guide-cta-icon { color: #fff; background: #c90012; box-shadow: none; }
body.guide-theme .guide-page .guide-cta-box.is-main-channel .guide-cta-btn { background: #c90012; border-color: #c90012; color: #fff; }
body.guide-theme .guide-page .guide-cta-box.is-main-channel .guide-cta-btn:hover { background: #a9000f; border-color: #a9000f; }
.guide-sidebar-close { display: none; }
body.guide-theme .guide-page .guide-3ds-confirm { background: #118333; border-color: #118333; color: #fff; font-size: 13px; }
body.guide-theme .guide-page .guide-3ds-confirm:hover:not(:disabled) { background: #0b6827; border-color: #0b6827; }
body.guide-theme .guide-page .guide-3ds-confirm:disabled { background: var(--n-tint); border-color: var(--n-border); color: var(--n-muted); opacity: 1; cursor: not-allowed; }
body.guide-theme .guide-page .guide-tab-btn { position: relative; border: 1px solid var(--n-border); border-radius: 6px; padding: 16px; gap: 10px; opacity: 1; transform: none; box-shadow: none; }
body.guide-theme .guide-page .guide-tab-btn.active { border-color: var(--n-accent); background: var(--n-active); box-shadow: inset 3px 0 var(--n-accent); }
body.guide-theme .guide-page .guide-tab-btn > i:first-child { color: var(--n-accent) !important; font-size: 24px; }
body.guide-theme .guide-page .guide-tab-btn-text strong { color: var(--n-text); padding-right: 24px; font-size: 15px; line-height: 1.4; }
body.guide-theme .guide-page .guide-tab-btn-text span { color: var(--n-muted); font-size: 13px; line-height: 1.5; }
body.guide-theme .guide-page .guide-tab-btn-meta span { color: var(--n-muted); opacity: 1; font-size: 12px; }
body.guide-theme .guide-page .guide-tab-btn-meta i { font-size: 14px; }
body.guide-theme .guide-page .guide-tab-check { position: absolute; right: 16px; top: 16px; font-size: 22px; color: var(--n-accent); visibility: hidden; }
body.guide-theme .guide-page .guide-tab-btn.active .guide-tab-check { visibility: visible; }
body.guide-theme .guide-page .guide-tab-content-header { display: flex; flex-direction: row; align-items: center; justify-content: flex-start; gap: 12px; padding: 16px 0; background: transparent !important; border: 0; border-bottom: 1px solid var(--n-border); border-radius: 0; text-align: left; }
body.guide-theme .guide-page .guide-tab-content-header > i { color: var(--n-accent) !important; font-size: 24px !important; }
body.guide-theme .guide-page .guide-tab-content-header :is(h3,p) { color: var(--n-text) !important; }
body.guide-theme .guide-page .guide-tab-content[hidden] { display: none !important; }
body.guide-theme .guide-page .guide-cta-box.is-main-channel .guide-cta-brand-icon { margin: 0 auto 16px; width: 64px; height: 64px; border-radius: 8px; object-fit: contain; }
body.guide-sidebar-open :is(.app-bottom-nav,.app-search-launcher,.app-faq-launcher,.lang-floating) { visibility: hidden; }
body.guide-theme { overflow: clip visible; }
body.guide-theme #app { overflow: clip visible; transform: none !important; animation: none; }
body.guide-theme .guide-page { overflow: clip visible; }
@media (max-width: 900px) {
    body.guide-theme .guide-sidebar-backdrop { z-index: 1100; backdrop-filter: none; }
    body.guide-theme .guide-sidebar { display: flex; z-index: 1101; width: min(340px, calc(100vw - 48px)); max-width: none; height: 100dvh; overflow-y: auto; overscroll-behavior-y: contain; padding-bottom: env(safe-area-inset-bottom); box-shadow: -8px 0 24px #0003; }
    body.guide-theme .guide-sidebar-hd { position: sticky; top: 0; z-index: 2; background: var(--n-surface); flex: 0 0 auto; padding-top: max(16px, env(safe-area-inset-top)); padding-right: 56px; }
    body.guide-theme .guide-sidebar-close { display: grid; place-items: center; position: absolute; right: 8px; top: max(8px, env(safe-area-inset-top)); width: 44px; height: 44px; border: 0; border-radius: 6px; background: var(--n-tint); color: var(--n-text); cursor: pointer; }
    body.guide-theme .guide-sidebar-nav { flex: 0 0 auto; padding-bottom: 24px; }
}
body.guide-theme .guide-page .guide-continue { display: grid; grid-template-columns: 28px minmax(0, 1fr) auto; gap: 14px; padding: 20px 0; align-items: center; }
body.guide-theme .guide-page .guide-continue-icon { width: 28px; height: 32px; border-radius: 0; background: transparent; font-size: 20px; }
body.guide-theme .guide-page .guide-continue-kicker { color: var(--n-muted); text-transform: none; letter-spacing: 0; font-family: var(--font-base); font-size: 12px; font-weight: 500; }
body.guide-theme .guide-page .guide-continue h2 { white-space: normal; overflow-wrap: anywhere; font-size: 15px; line-height: 1.4; }
body.guide-theme .guide-page .guide-continue-actions { gap: 12px; }
body.guide-theme .guide-page .guide-continue-btn { flex: 0 0 auto; width: auto; min-height: 44px; background: transparent; border: 0; border-radius: 0; color: var(--n-accent); padding: 0 4px; }
body.guide-theme .guide-page .guide-continue-clear { width: 44px; height: 44px; border: 0; border-radius: 6px; background: transparent; color: var(--n-muted); }
body.guide-theme .guide-page :is(.guide-continue-btn,.guide-continue-clear):hover { background: var(--n-active); color: var(--n-accent); transform: none; }
@media (max-width: 600px) {
    body.guide-theme .guide-page .guide-continue { grid-template-columns: 28px minmax(0, 1fr); gap: 10px 12px; }
    body.guide-theme .guide-page .guide-continue-actions { grid-column: 2; justify-content: space-between; width: 100%; }
}
:root[data-site-theme="light"] body.guide-theme .guide-app-brand-icon.tone-light img { filter: none; opacity: 1; }
body.guide-theme :is(button,a,input,select,summary):focus-visible { outline: 2px solid var(--n-accent); outline-offset: 3px; }
@media (max-width: 900px) {
    body.guide-theme .guide-page .games-header { padding: 10px 16px; }
    body.guide-theme .guide-sidebar { top: 0; height: 100dvh; }
}
@media (max-width: 600px) {
    body.guide-theme .guide-page .games-header { padding: 10px 12px; }
    body.guide-theme .games-header-title h1 { font-size: 12px; }
    body.guide-theme .games-header-logo { width: 36px; height: 36px; }
    body.guide-theme .games-header .btn-back { width: 44px; padding: 0; justify-content: center; margin-left: 0 !important; }
    body.guide-theme .games-header .btn-back-label { display: none; }
    body.guide-theme .guide-art-header h1 { font-size: 24px; }
}
