/* Volt brand layer · loads last (after the plugin stylesheets).
   Plugin templates and legacy content blocks were built on blue, purple and orange palettes;
   this maps them to the Volt tokens. Platform marks (Twitch purple, YouTube red, Kick green) stay. */

/* ── Palette variables used by the plugin stylesheets ── */
body.os-volt-v2{--os-accent:var(--color-accent);--os-accent-hover:oklch(96% .17 118);--osc-accent:var(--color-accent);--primary-purple:var(--color-accent);--os-warning:var(--color-accent);--osc-warning:var(--color-accent);--warning-yellow:var(--color-accent)}
body.os-volt-v2 .os-emote-hub{--eh-blue:var(--color-accent)}
body.os-volt-v2 .os-emote-v2{--ev-blue:var(--color-accent)}

/* Text sitting on an accent fill must be dark */
body.os-volt-v2 :is(.os-emote-back-link,.os-emote-load-more-btn,.os-g-genre-tag,.os-g-reset-filters,.error-code-display){color:var(--color-accent-ink)!important}
body.os-volt-v2 :is(.os-emote-pagination,.os-g-pagination) .page-numbers:is(:hover,.current){color:var(--color-accent-ink)!important}
body.os-volt-v2 .os-emote-v2-cta a{background:var(--color-accent)!important;border-color:var(--color-accent)!important;color:var(--color-accent-ink)!important}
body.os-volt-v2 :is(.os-emote-back-link,.os-emote-load-more-btn):hover{background:oklch(96% .17 118)!important}

/* Emotes: hard-coded purple and blue */
body.os-volt-v2 .os-emote-kicker span{color:var(--color-accent)!important}
body.os-volt-v2 :is(.os-emote-hub__hero,.os-emote-v2-hero)::before{background:var(--color-accent)!important}
body.os-volt-v2 .os-emote-hub__signal{border-top-color:var(--color-accent)!important}
body.os-volt-v2 .os-emote-hub__signal>svg{stroke:var(--color-accent)!important}
body.os-volt-v2 .os-emote-v2-meter>i>b{background:var(--color-accent)!important}
body.os-volt-v2 .os-emote-v2-jump a:is(:hover,:focus-visible){border-bottom-color:var(--color-accent)!important}
body.os-volt-v2 .os-emote-hub .os-emote-field :is(input,select):focus{border-color:var(--color-accent)!important;box-shadow:0 0 0 2px oklch(94% .185 118 / .15)!important}
body.os-volt-v2 .os-emote-hub .os-emote-pagination .page-numbers:is(:hover,.current){border-color:var(--color-accent)!important}
body.os-volt-v2 .os-emote-hub .os-emote-pagination .current{box-shadow:inset 0 -2px var(--color-accent)!important}
body.os-volt-v2 .os-emote-v2-visual{border-top-color:var(--color-accent)!important}

/* Glossary */
body.os-volt-v2 .osg-hero h1{font:800 clamp(44px,6vw,88px)/.92 var(--font-display)!important;text-transform:uppercase;letter-spacing:-2px}
body.os-volt-v2 .osg-hero{border-radius:0!important;clip-path:polygon(0 0,calc(100% - var(--cut,28px)) 0,100% var(--cut,28px),100% 100%,0 100%)}
body.os-volt-v2 .osg-related-card:hover,body.os-volt-v2 .osg-term-card:hover{border-color:var(--color-accent)!important}
body.os-volt-v2 .osg-related-card strong{color:var(--color-accent)!important}

/* Twitch errors hub: the hero turned light on some screens, rebuild it as a bento head */
body.os-volt-v2 :is(.twitch-errors-archive,.twitch-error-main){background:none!important}
body.os-volt-v2 .twitch-errors-archive .archive-hero{background:var(--color-paper-2)!important;border:0!important;padding:40px!important;margin:24px 40px 16px;text-align:left!important;clip-path:polygon(0 0,calc(100% - 28px) 0,100% 28px,100% 100%,0 100%)}
body.os-volt-v2 :is(.twitch-errors-archive,.twitch-error-main) .container{background:none!important}
body.os-volt-v2 .twitch-errors-archive .archive-hero .container{max-width:none!important;padding:0!important}
body.os-volt-v2 .twitch-errors-archive .hero-title,body.os-volt-v2 .twitch-error-main .error-title{font:800 clamp(44px,6vw,96px)/.9 var(--font-display)!important;text-transform:uppercase;letter-spacing:-2px;background:none!important;-webkit-text-fill-color:currentColor!important;color:var(--color-ink)!important;margin:0 0 16px!important}
body.os-volt-v2 .twitch-errors-archive .hero-subtitle{color:var(--color-ink-2)!important;margin:0 0 20px!important;max-width:60ch;font-size:17px!important}
body.os-volt-v2 .twitch-errors-archive .hero-stats{justify-content:flex-start!important;font:500 12px/1 var(--font-mono)!important;letter-spacing:1px;text-transform:uppercase;color:var(--color-ink-2)!important}
body.os-volt-v2 .twitch-errors-archive .stat-separator{color:var(--color-accent)!important}

/* Games */
body.os-volt-v2 .os-g-title,body.os-volt-v2 .os-g-archive-title{background:none!important;-webkit-text-fill-color:currentColor!important;color:var(--color-ink)!important;font-family:var(--font-display)!important;text-transform:uppercase}
body.os-volt-v2 .os-g-stat-icon{background:var(--color-paper-3)!important}
body.os-volt-v2 .os-g-fr-empty{margin:24px 0;padding:18px 22px;background:var(--color-paper-2);border-radius:var(--radius-card);color:var(--color-ink-2)}
body.os-volt-v2 .os-g-fr-empty a{color:var(--color-accent)}

/* Comparatifs: sticky bar (its product image had no size on desktop), links, cards */
body.os-volt-v2 .bottom-bar{border-top:1px solid var(--color-rule)!important;background:oklch(13% .012 130 / .97)!important}
body.os-volt-v2 :is(.bottom-bar img,.bottom-bar-icon,.bottom-bar-left img){width:40px!important;height:40px!important;max-width:40px!important;max-height:40px!important;object-fit:contain;border-radius:4px}
body.os-volt-v2 :is(.bottom-bar-cta,.comparatif-custom-content .product-cta,.comparatif-custom-content a.product-cta){background:var(--color-accent)!important;color:var(--color-accent-ink)!important;border-radius:var(--radius-button)!important}
body.os-volt-v2 .comparatif-custom-content a:not(.product-cta){color:var(--color-accent)}
body.os-volt-v2 .comparatif-custom-content :is(table th,.price-tag){color:var(--color-accent)!important}
body.os-volt-v2 .comparatif-custom-content :is(.product-card,.table-of-contents){border-left-color:var(--color-accent)!important}
body.os-volt-v2 .comparatif-custom-content :is(.product-card,.faq-item,.content-article>.criteria-item){background:var(--color-paper-2)!important}
body.os-volt-v2 .comparatif-custom-content .faq-item{border-color:var(--color-rule)!important}
body.os-volt-v2 .comparatif-custom-content h2::after{background:var(--color-accent)!important}
body.os-volt-v2 .comparatif-custom-content .badge-best{background:var(--color-accent)!important;color:var(--color-accent-ink)!important}
body.os-volt-v2 .vg-comparatif-body{max-width:1100px}
body.os-volt-v2 :is(.comparatif-custom-content,.vg-page-body) .toc-collapsible{background:var(--color-paper-2)!important;border:1px solid var(--color-rule)!important;border-radius:var(--radius-card)}
body.os-volt-v2 .osg-card{background:var(--color-paper-2)!important;border-color:var(--color-rule)!important}
body.os-volt-v2 .vg-products .vg-product{padding:26px 28px;margin-bottom:12px}
body.os-volt-v2 .vg-product-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px}
body.os-volt-v2 .vg-product h3{font:700 30px/1 var(--font-display)!important;text-transform:uppercase;margin:10px 0 6px;color:var(--color-ink)}
body.os-volt-v2 .vg-product-lists{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-bottom:16px}
body.os-volt-v2 .vg-product-lists h4{font:600 11px/1 var(--font-mono);letter-spacing:1.5px;text-transform:uppercase;color:var(--color-ink-2);margin:0 0 10px}
body.os-volt-v2 .vg-product-lists ul{list-style:none;margin:0;padding:0}
body.os-volt-v2 .vg-product-lists li{position:relative;padding-left:20px;margin-bottom:8px;font-size:15px;line-height:1.5;color:var(--color-ink)}
body.os-volt-v2 .vg-product-lists .is-pros li::before{content:"+";position:absolute;left:0;color:var(--color-accent);font-weight:700}
body.os-volt-v2 .vg-product-lists .is-cons li::before{content:"–";position:absolute;left:0;color:var(--color-ink-2);font-weight:700}
body.os-volt-v2 .vg-product-verdict{margin:0 0 18px;padding:14px 16px;background:var(--color-paper);border-left:3px solid var(--color-accent);color:var(--color-ink-2);font-size:15px;line-height:1.6}
body.os-volt-v2 .vg-comparatif-guide{padding:26px 28px}
body.os-volt-v2 .vg-comparatif-guide h2{font:700 36px/1 var(--font-display)!important;text-transform:uppercase;margin:10px 0 14px}
body.os-volt-v2 .vg-comparatif-text p{color:var(--color-ink-2);line-height:1.7;max-width:75ch}
body.os-volt-v2 .vg-faq{padding:0!important;margin-bottom:8px}
body.os-volt-v2 .vg-faq summary{cursor:pointer;padding:18px 22px;font-weight:600;color:var(--color-ink)}
body.os-volt-v2 .vg-faq p{margin:0;padding:0 22px 18px;color:var(--color-ink-2);line-height:1.6}
body.os-volt-v2 .vg-disclosure{margin-top:32px;padding:16px 20px;font-size:13px;line-height:1.6;color:var(--color-ink-2)}

/* Streamer pages: platform marks keep their brand colour, everything else is volt */
body.os-volt-v2 .os-streamer-container a[style*="color:#e1fb58"]{text-decoration-color:oklch(94% .185 118 / .5)}

/* Generic pages: legacy inline buttons and gradient boxes in page content */
body.os-volt-v2 .vg-page-body a[style*="background"]:not([style*="transparent"]){background:var(--color-accent)!important;color:var(--color-accent-ink)!important;border-color:var(--color-accent)!important;background-image:none!important}
body.os-volt-v2 .vg-page-body :is(div,section,aside)[style*="linear-gradient"]{background:var(--color-paper-2)!important;border-color:var(--color-rule)!important}
body.os-volt-v2 .vg-page-body a:not([class]):not([style*="background"]){color:var(--color-accent)}
body.os-volt-v2 :is(.ost-faq,.ost-info,.ost-cmd,.ost-toggle-pills,.ost-color-picker-wrap){background:var(--color-paper-2)!important;border-color:var(--color-rule)!important;background-image:none!important}
body.os-volt-v2 .ost-info{border-left-color:var(--color-accent)!important}
body.os-volt-v2 :is(.ost-code,.ost-cmd-text){color:var(--color-accent)!important;border-color:var(--color-rule)!important}
body.os-volt-v2 .page-id-15392 .entry-content>h2::before,body.os-volt-v2.page-id-15392 .entry-content>h2::before{background:var(--color-accent)!important}
body.os-volt-v2.page-id-15392 .entry-content>h2{border-left-color:var(--color-accent)!important}

/* Page head (page.php): long page titles need a smaller scale than hub names */
body.os-volt-v2 main.vg-page{padding:0!important}
body.os-volt-v2 .vg-page-head .vg-archive-head h1{font-size:clamp(40px,4.6vw,76px)!important;letter-spacing:-2px}
body.os-volt-v2 .vg-page-head.is-compact .vg-archive-head{min-height:0;grid-template-columns:minmax(0,1fr)}
body.os-volt-v2 .vg-page-head.is-compact .vg-archive-side:empty{display:none}
body.os-volt-v2 .vg-page-body{max-width:1120px;margin-top:8px}
body.os-volt-v2 .vg-page-head .vg-ghost{font-size:240px}

/* Search and 404 */
body.os-volt-v2 .vg-search-again{display:flex;flex-direction:column;gap:10px}
body.os-volt-v2 .vg-search-again .os-bt-input{display:flex;align-items:center;gap:10px;background:var(--color-paper);border:1px solid var(--color-rule);border-radius:6px;padding:0 14px;min-height:48px}
body.os-volt-v2 .vg-search-again .os-bt-input:focus-within{border-color:var(--color-accent)}
body.os-volt-v2 .vg-search-again .vg-icon{width:18px;height:18px;color:var(--color-ink-2)}
body.os-volt-v2 .vg-search-again input{flex:1;min-width:0;background:none!important;border:0!important;box-shadow:none!important;outline:0;color:var(--color-ink);font:500 15px var(--font-body);padding:12px 0}
body.os-volt-v2 :is(.vg-404,.vg-search-page) .vg-tasks{margin-top:40px}

@media(max-width:760px){
 body.os-volt-v2 .twitch-errors-archive .archive-hero{margin:16px;padding:22px!important}
 body.os-volt-v2 .vg-product-lists{grid-template-columns:minmax(0,1fr)}
 body.os-volt-v2 .vg-products .vg-product{padding:18px}
 body.os-volt-v2 .vg-product-head{flex-direction:column}
 body.os-volt-v2 .vg-page-head .vg-archive-head h1{font-size:clamp(34px,10vw,52px)!important;letter-spacing:-1px}
}

/* Legacy « Réponse rapide » boxes inside post content: restyled as the Volt short-answer tile */
body.os-volt-v2 #main-content .vg-reading-body .optistream-quick-answer{position:relative;background:var(--color-paper-2)!important;border:0!important;border-radius:0!important;clip-path:polygon(0 0,calc(100% - 28px) 0,100% 28px,100% 100%,0 100%);padding:24px 28px!important;margin:0 0 28px!important;color:var(--color-ink)!important}
body.os-volt-v2 #main-content .vg-reading-body .optistream-quick-answer>p:first-child{display:flex;align-items:center;gap:10px;font:600 11px/1.3 var(--font-mono)!important;letter-spacing:2px;text-transform:uppercase;color:var(--color-accent)!important;margin:0 0 12px!important}
body.os-volt-v2 #main-content .vg-reading-body .optistream-quick-answer>p:first-child::before{content:"";width:18px;height:2px;background:var(--color-accent);transform:skewX(-30deg);flex-shrink:0}
body.os-volt-v2 #main-content .vg-reading-body .optistream-quick-answer :is(p,li){color:var(--color-ink)!important;font-size:17px!important;line-height:1.55!important}
body.os-volt-v2 #main-content .vg-reading-body .optistream-quick-answer a{color:var(--color-accent)!important}
body.os-volt-v2 #main-content .vg-reading-body .optistream-quick-answer strong{color:var(--color-ink)!important}
