/* 18+ PhimSex v2.0.1 — multidomain branding, quick links and VIP services. */
:root {
	--phimsex-vip-bg: #0b1020;
	--phimsex-vip-surface: #151c2f;
	--phimsex-vip-text: #f8fafc;
	--phimsex-vip-muted: #b8c1d8;
}

.vtt-brand__image img { display:block; width:auto; max-width:min(360px,52vw); height:54px; object-fit:contain; object-position:center; }
.vtt-footer-brand__logo { display:inline-flex; align-items:center; margin-bottom:10px; }
.vtt-footer-brand__logo img { display:block; width:auto; max-width:260px; height:48px; object-fit:contain; }
.vtt-mobile-drawer__brand img { display:block; max-width:165px; height:36px; object-fit:contain; }

/* The support background follows the active color preset. The literal black
   fallback keeps the default appearance stable before preset variables load. */
.phimsex-header-support-area {
	--phimsex-support-bg-start: color-mix(in srgb, var(--ec18-tone-header-soft, #000) 92%, var(--vtt-yellow, #ffd82f) 8%);
	--phimsex-support-bg-end: color-mix(in srgb, var(--ec18-tone-header, #000) 96%, #000 4%);
	--phimsex-support-border: color-mix(in srgb, var(--vtt-yellow, #ffd82f) 26%, var(--ec18-tone-header, #000));
	--phimsex-support-shadow: color-mix(in srgb, var(--ec18-tone-header, #000) 72%, transparent);
	clear: both;
	width: 100%;
	background: #000;
	background: linear-gradient(135deg, var(--phimsex-support-bg-start), var(--phimsex-support-bg-end));
	border-bottom: 1px solid var(--phimsex-support-border);
	box-shadow: inset 0 1px rgba(255,255,255,.04), 0 8px 20px -18px var(--phimsex-support-shadow);
}
body.ec18-tone--comic-classic .phimsex-header-support-area {
	--phimsex-support-bg-start: #000;
	--phimsex-support-bg-end: #000;
}
.phimsex-header-support-area__inner { padding-top:10px; padding-bottom:12px; }
.gx-header-links { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:10px; margin:0 auto; padding:0; }
.gx-btn { position:relative; display:flex; align-items:center; justify-content:center; min-width:0; min-height:44px; padding:8px 12px; overflow:hidden; border:1px solid rgba(15,23,42,.82); border-radius:14px; color:#fff; box-shadow:0 4px 10px rgba(15,23,42,.2),inset 0 1px rgba(255,255,255,.28); font-size:13px; font-weight:900; line-height:1; text-align:center; text-decoration:none; text-transform:uppercase; white-space:nowrap; transition:transform .18s ease,filter .18s ease,box-shadow .18s ease; }
.gx-btn:hover,.gx-btn:focus-visible { color:#fff; transform:translateY(-2px); filter:saturate(1.12) brightness(1.04); outline:3px solid color-mix(in srgb,var(--vtt-yellow,#ffd82f) 38%,transparent); outline-offset:2px; }
.gx-style-1 { background:linear-gradient(135deg,#ffbf3f,#ef4444); }
.gx-style-2 { background:linear-gradient(135deg,#22d3ee,#2563eb); }
.gx-style-3 { background:linear-gradient(135deg,#64748b,#0f172a); }
.gx-style-4 { background:linear-gradient(135deg,#fb7185,#be123c); }
.gx-style-5 { color:#261600; background:linear-gradient(135deg,#fde68a,#f59e0b); }
.gx-style-5:hover,.gx-style-5:focus-visible { color:#261600; }

.ggv-dark-links-panel { position:relative; margin:14px auto 0; padding:20px; overflow:hidden; border:1px solid rgba(148,163,184,.22); border-radius:20px; color:var(--phimsex-vip-text); background:radial-gradient(circle at 8% 0%,rgba(34,211,238,.14),transparent 32%),radial-gradient(circle at 94% 110%,rgba(244,63,94,.14),transparent 34%),linear-gradient(145deg,var(--phimsex-vip-surface),var(--phimsex-vip-bg)); box-shadow:0 16px 34px rgba(2,6,23,.3); }
.ggv-dark-links-head { display:flex; align-items:center; justify-content:space-between; gap:16px; margin:0 42px 16px 0; }
.ggv-dark-links-title { display:inline-flex; align-items:center; min-height:38px; padding:0 14px; border-radius:999px; color:#07111c; background:linear-gradient(105deg,#8fe8ff,#ffe45c 36%,#ff8fc7 68%,#ff365f); font-size:clamp(13px,1.4vw,17px); font-weight:950; line-height:1.15; }
.ggv-dark-links-note { color:var(--phimsex-vip-muted); font-size:12px; font-weight:700; text-align:right; }
.ggv-dark-links { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.telegram-button { position:relative; display:flex; align-items:center; min-height:52px; padding:10px 42px 10px 14px; border:1px solid rgba(255,255,255,.16); border-radius:13px; color:#fff; box-shadow:0 8px 18px rgba(0,0,0,.2),inset 0 1px rgba(255,255,255,.2); font-size:12px; font-weight:850; line-height:1.3; text-decoration:none; transition:transform .18s ease,filter .18s ease; }
.telegram-button::after { content:'›'; position:absolute; top:50%; right:12px; display:grid; width:24px; height:24px; place-items:center; border-radius:50%; color:#081018; background:rgba(255,255,255,.9); font-size:19px; transform:translateY(-50%); }
.telegram-button:hover,.telegram-button:focus-visible { color:#fff; transform:translateY(-2px); filter:brightness(1.08); outline:2px solid rgba(255,255,255,.74); outline-offset:2px; }
.btn1 { background:linear-gradient(135deg,#0ea5e9,#1d4ed8); }
.btn2 { color:#241404; background:linear-gradient(135deg,#fff0a8,#f59e0b); }
.btn2:hover,.btn2:focus-visible { color:#241404; }
.btn3 { background:linear-gradient(135deg,#2dd4bf,#4f46e5); }
.btn4 { background:linear-gradient(135deg,#475569,#020617); }
.btn5 { background:linear-gradient(135deg,#38bdf8,#075985); }
.btn6 { background:linear-gradient(135deg,#fb7185,#9f1239); }
.btn7 { background:linear-gradient(135deg,#f472b6,#831843); }
.btn8 { background:linear-gradient(135deg,#a78bfa,#4c1d95); }

.ggv-dark-links-toggle { position:absolute; top:12px; right:12px; z-index:2; display:grid; width:34px; height:34px; place-items:center; padding:0; cursor:pointer; border:1px solid #111827; border-radius:50%; color:#111827; background:#fde047; box-shadow:0 3px 8px rgba(0,0,0,.25); }
.ggv-dark-links-toggle__icon { display:block; width:16px; height:16px; }
.ggv-dark-links-toggle__icon::before { content:""; display:block; width:10px; height:10px; margin:4px 0 0 3px; border-right:3px solid currentColor; border-bottom:3px solid currentColor; transform:rotate(225deg); transition:transform .18s ease; }
.ggv-dark-links-panel.is-collapsed .ggv-dark-links { display:none; }
.ggv-dark-links-panel.is-collapsed .ggv-dark-links-toggle__icon::before { transform:rotate(45deg); }

/* Existing widget-videos-block instances keep their saved ID and use the new cards. */
.widget-videos-block .vtt-video-grid--legacy-widget { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:14px 12px; }
.widget-videos-block .vtt-ad-slot--widget { margin-bottom:14px; }

@media (max-width:780px) {
	.vtt-brand__image img { height:46px; }
	.gx-header-links { gap:5px; }
	.gx-btn { min-height:38px; padding:6px 3px; border-radius:10px; font-size:clamp(8px,2vw,10px); }
	.ggv-dark-links-panel { padding:15px; border-radius:16px; }
	.ggv-dark-links-head { display:block; margin-right:40px; }
	.ggv-dark-links-note { display:none; }
	.ggv-dark-links { gap:8px; }
	.telegram-button { min-height:48px; padding:8px 34px 8px 10px; font-size:clamp(9px,2.5vw,11px); }
}
@media (max-width:560px) { .widget-videos-block .vtt-video-grid--legacy-widget { grid-template-columns:1fr !important; } }
@media (max-width:430px) { .ggv-dark-links { grid-template-columns:1fr; } .vtt-brand__image img { max-width:58vw; height:40px; } }
@media (prefers-reduced-motion:reduce) { .gx-btn,.telegram-button,.ggv-dark-links-toggle__icon::before { transition:none; } }
