/*
Theme Name: Gotobed TV
Theme URI: https://gotobed.tv/
Author: Gotobed TV
Description: Thème streaming sombre avec page Jeux administrable.
Version: 1.0.0
Text Domain: gotobed-tv
*/

:root { --bg:#080810; --surface:#12111d; --surface-2:#201e2d; --line:#292638; --text:#f8f7fb; --muted:#aaa8bb; --violet:#7b35e8; --pink:#ff1687; }
* { box-sizing:border-box; }
html { background:var(--bg); }
body { margin:0; min-height:100vh; background:radial-gradient(ellipse at 50% -20%,#211036 0%,#0a0912 44%,#07070d 100%); color:var(--text); font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
a { color:inherit; text-decoration:none; }
.site-shell { width:min(1100px,calc(100% - 40px)); margin:0 auto; padding:22px 0 72px; }
.site-header { display:flex; align-items:center; justify-content:space-between; padding:0 0 26px; }
.brand { font-size:2.45rem; font-weight:850; letter-spacing:-.09em; line-height:1; display:flex; align-items:center; }
.custom-logo-link { display:block; line-height:0; }
.custom-logo { display:block; width:auto; max-width:230px; max-height:64px; height:auto; }
.brand .tv { color:var(--pink); font-style:italic; font-weight:900; letter-spacing:-.13em; margin-left:3px; }
.main-nav { display:flex; gap:8px; }
.main-nav a { padding:10px 15px; color:var(--muted); font-weight:700; border-radius:10px; }
.main-nav a:hover,.main-nav .current-menu-item a { color:#fff; background:#211631; }
.panel { border:1px solid var(--line); background:linear-gradient(145deg,rgba(24,22,36,.97),rgba(13,13,21,.97)); border-radius:17px; padding:17px; box-shadow:0 18px 55px rgba(0,0,0,.18); }
.eyebrow { display:block; color:#b9b5ca; font-size:.86rem; font-weight:750; margin:0 0 9px; }
.display-options { display:flex; justify-content:space-between; align-items:end; gap:25px; }
.segmented { display:inline-flex; min-height:52px; border:1px solid #302c3f; padding:4px; gap:3px; border-radius:11px; background:#1b1927; }
.segmented .mode-button { min-width:64px; padding:0 17px; font-size:.94rem; font-weight:800; border-radius:7px; }
.display-copy { margin:9px 0 0; max-width:420px; color:var(--muted); font-size:.92rem; }
.button { display:inline-flex; align-items:center; justify-content:center; background:linear-gradient(135deg,#4b276f,#25143d); color:#fff; border:1px solid #7d3dd3; padding:12px 17px; border-radius:12px; font-weight:800; transition:transform .18s,filter .18s; }
.button:hover { filter:brightness(1.14); transform:translateY(-1px); }
.stream-card { overflow:hidden; border:1px solid #302b42; background:#000; border-radius:18px; margin-top:17px; }
.stream-stage { position:relative; min-height:320px; background:#000; }
.stream-stage.single .stream-view { display:none; }
.stream-stage.single .stream-view.is-active { display:block; }
.stream-stage.multi { display:grid; grid-template-columns:1fr 1fr; gap:2px; }
.stream-view { min-width:0; background:#000; }
.stream-frame { width:100%; aspect-ratio:16/9; display:block; border:0; background:#000; }
.stream-name { padding:9px 14px; background:#171522; color:#bdb8ce; font-size:.85rem; font-weight:700; }
.stream-arrow { position:absolute; top:50%; z-index:2; transform:translateY(-50%); width:52px; height:70px; border:1px solid #8144cf; border-radius:14px; background:rgba(40,19,68,.9); color:#fff; font-size:1.55rem; cursor:pointer; }
.stream-arrow:hover { background:#5c2a94; }
.stream-arrow.prev { left:13px; }.stream-arrow.next { right:13px; }
.mode-button { cursor:pointer; color:#f4f2f9; border:0; background:transparent; }
.mode-button.is-active { background:linear-gradient(135deg,#5f2f9a,#3c2070); border:1px solid #8544db; color:white; }
.stream-footer { min-height:46px; display:flex; align-items:center; padding:0 18px; background:#201f2e; color:#b8b4c8; font-size:.95rem; }
.page-heading { margin:24px 0 20px; }
.page-heading h1 { margin:0; font-size:clamp(2rem,5vw,3.4rem); letter-spacing:-.06em; }
.page-heading p { color:var(--muted); margin:8px 0 0; }
.games-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:17px; }
.game-card { overflow:hidden; display:flex; flex-direction:column; min-height:100%; border:1px solid var(--line); border-radius:16px; background:rgba(20,19,31,.94); transition:transform .2s,border-color .2s; }
.game-card:hover { transform:translateY(-4px); border-color:#7540bb; }
.game-cover { width:100%; aspect-ratio:16/9; display:block; object-fit:cover; background:linear-gradient(135deg,#4c187c,#180d29); }
.game-cover-placeholder { display:grid; place-items:center; font-size:2rem; color:#d2bdf4; }
.game-content { display:flex; flex:1; flex-direction:column; padding:18px; }
.game-content h2 { margin:0; font-size:1.23rem; letter-spacing:-.03em; text-align:center; }
.game-content p { flex:1; color:var(--muted); font-size:.92rem; line-height:1.55; }
.game-content p a { color:#bd95ff; text-decoration:underline; overflow-wrap:anywhere; }
.game-content .button { align-self:center; margin-top:8px; background:linear-gradient(135deg,#73d69b,#38a86a); border-color:#8aebb0; color:#082415; }
.game-content .button:hover { background:linear-gradient(135deg,#93e9b5,#4fc77e); }
.empty-state { padding:36px; text-align:center; color:var(--muted); }
.site-footer { margin-top:50px; text-align:center; color:#777387; font-size:.84rem; }
@media (max-width:720px) { .site-shell { width:min(100% - 28px,1100px); padding-top:16px; } .brand { font-size:2rem; } .custom-logo { max-width:175px; max-height:50px; } .site-header { align-items:flex-start; gap:15px; } .main-nav a { padding:8px 10px; } .display-options { align-items:start; flex-direction:column; gap:16px; } .stream-stage.multi { grid-template-columns:1fr; } .stream-arrow { width:43px; height:56px; } .games-grid { grid-template-columns:1fr; } }
