/*
Theme Name: DeviHub Prime
Theme URI: https://example.com/videotube-prime
Author: DeviHub
Description: Tema oscuro y responsive oficial de DeviHub, compatible con DeviHub Core.
Version: 1.4.8.12
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: videotube-prime
License: GPLv2 or later
*/

:root{
  --vtprime-bg:#0b0b0c;
  --vtprime-panel:#151516;
  --vtprime-panel2:#1c1c1e;
  --vtprime-line:#2b2b2e;
  --vtprime-text:#f5f5f6;
  --vtprime-muted:#9b9ba1;
  --vtprime-accent:#ff9900;
  --vtprime-max:1920px;
  --vtprime-radius:6px;
}
*{box-sizing:border-box}
html{background:var(--vtprime-bg);color-scheme:dark}
body{margin:0;background:var(--vtprime-bg);color:var(--vtprime-text);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto}
button,input,select,textarea{font:inherit}
body.admin-bar .vtprime-site-header{top:32px}
.vtprime-wrap{width:min(100%,var(--vtprime-max));margin:auto;padding:0 22px}

/* Normal WordPress header for pages outside VideoTube Core */
.vtprime-site-header{position:sticky;top:0;z-index:999;background:#111;border-bottom:1px solid #252525}
.vtprime-top{display:flex;align-items:center;gap:20px;min-height:68px}
.vtprime-brand{font-size:28px;font-weight:900;letter-spacing:-1.4px;white-space:nowrap}
.vtprime-brand span{background:var(--vtprime-accent);color:#000;padding:1px 5px;border-radius:4px;margin-left:2px}
.vtprime-site-search{flex:1;display:flex;max-width:860px;margin:auto}
.vtprime-site-search input{width:100%;height:42px;background:#fff;color:#181818;border:0;padding:0 14px;border-radius:5px 0 0 5px;outline:none}
.vtprime-site-search button{height:42px;width:54px;border:0;background:var(--vtprime-accent);color:#111;border-radius:0 5px 5px 0;cursor:pointer;font-weight:800}
.vtprime-nav{border-top:1px solid #222;background:#111}
.vtprime-nav .vtprime-wrap{display:flex;gap:24px;overflow:auto;white-space:nowrap}
.vtprime-nav a{padding:13px 0;font-size:13px;font-weight:750;color:#d6d6d8}
.vtprime-nav a:hover{color:#fff}
.vtprime-main{min-height:70vh;padding:28px 0}
.vtprime-content{width:min(100%,1200px);margin:auto;padding:0 22px}
.vtprime-content article{background:var(--vtprime-panel);border:1px solid var(--vtprime-line);border-radius:8px;padding:24px}
.vtprime-footer{border-top:1px solid #272727;background:#101011;color:#9a9aa0;padding:30px 0;margin-top:40px;font-size:13px}

/* ---------------- VideoTube Core compatibility ---------------- */
body.vtp-standalone-page{background:var(--vtprime-bg)!important;margin:0!important;padding:0!important}
body.vtp-standalone-page > header,
body.vtp-standalone-page > footer{display:none!important}
.vtp-shell{min-height:100vh;background:var(--vtprime-bg)!important;color:var(--vtprime-text)!important}
.vtp-container{
  width:min(calc(100% - 28px),var(--vtprime-max))!important;
  max-width:none!important;
  margin:0 auto!important;
  padding-left:0!important;padding-right:0!important
}

/* top utility bar */
.vtp-topbar{height:30px!important;background:#080808!important;border-bottom:1px solid #202020!important;color:#a9a9ad!important;font-size:11px!important}
.vtp-topbar .vtp-container{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:18px!important;height:100%!important}
.vtp-topbar span{cursor:pointer}
.vtp-topbar span:hover{color:white}

/* main header */
.vtp-header{background:#121212!important;border-bottom:1px solid #2a2a2a!important;position:sticky!important;top:0!important;z-index:900!important;box-shadow:0 2px 12px rgba(0,0,0,.25)}
.admin-bar .vtp-header{top:32px!important}
.vtp-headrow{display:grid!important;grid-template-columns:auto auto minmax(260px,760px) auto auto!important;align-items:center!important;gap:14px!important;min-height:66px!important}
.vtp-burger{display:flex!important;width:38px!important;height:38px!important;align-items:center!important;justify-content:center!important;border:0!important;background:transparent!important;color:#ddd!important;font-size:25px!important;cursor:pointer!important}
.vtp-logo{font-size:28px!important;font-weight:950!important;letter-spacing:-1.8px!important;color:#fff!important;white-space:nowrap!important}
.vtp-logo b{background:var(--vtp-accent,var(--vtprime-accent))!important;color:#111!important;padding:1px 5px!important;border-radius:4px!important;margin-left:2px!important}
.vtp-search{height:40px!important;background:#fff!important;border-radius:4px!important;display:flex!important;align-items:center!important;overflow:hidden!important;min-width:0!important}
.vtp-search span{color:#7c7c7c!important;font-size:22px!important;padding:0 10px!important}
.vtp-search input[type=text],.vtp-search input[name=s]{height:40px!important;min-width:0!important;flex:1!important;border:0!important;background:#fff!important;color:#151515!important;padding:0 10px!important;outline:none!important;font-size:14px!important}
.vtp-search:after{content:"BUSCAR";height:40px;display:flex;align-items:center;padding:0 18px;background:var(--vtp-accent,var(--vtprime-accent));color:#111;font-size:12px;font-weight:900}
.vtp-premium{background:var(--vtp-accent,var(--vtprime-accent))!important;color:#111!important;border:0!important;border-radius:4px!important;padding:10px 15px!important;font-weight:900!important;font-size:12px!important;cursor:pointer!important}
.vtp-icons{color:#ddd!important;word-spacing:8px!important;white-space:nowrap!important}
.vtp-nav{background:#111!important;border-top:1px solid #232323!important;border-bottom:1px solid #292929!important}
.vtp-nav .vtp-container{display:flex!important;gap:27px!important;align-items:center!important;overflow-x:auto!important;scrollbar-width:none}
.vtp-nav .vtp-container::-webkit-scrollbar{display:none}
.vtp-nav a{display:block!important;padding:13px 0!important;font-size:12px!important;font-weight:850!important;letter-spacing:.15px!important;color:#ccc!important;white-space:nowrap!important}
.vtp-nav a:hover{color:#fff!important}

/* main area */
.vtp-main{background:var(--vtprime-bg)!important;padding:18px 0 40px!important;min-height:70vh!important}
.vtp-banner{width:min(970px,100%)!important;min-height:90px!important;margin:4px auto 24px!important;border:1px dashed #39393d!important;background:#121214!important;color:#707077!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:12px!important;letter-spacing:.5px!important}
.vtp-section h1,.vtp-section h2{margin:0 0 16px!important;color:#fff!important;font-size:23px!important;line-height:1.2!important;letter-spacing:-.4px!important}
.vtp-info{color:#777!important;font-size:14px!important;font-weight:400!important}
.vtp-chips{display:flex!important;flex-wrap:nowrap!important;gap:8px!important;overflow-x:auto!important;padding-bottom:13px!important;margin-bottom:8px!important;scrollbar-width:none}
.vtp-chips::-webkit-scrollbar{display:none}
.vtp-chips a{display:inline-flex!important;align-items:center!important;min-height:30px!important;padding:0 11px!important;border-radius:4px!important;background:#242426!important;border:1px solid #313135!important;color:#d1d1d4!important;font-size:12px!important;white-space:nowrap!important}
.vtp-chips a:hover{background:#303034!important;color:white!important}

/* cards */
.vtp-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:22px 14px!important}
.vtp-card{min-width:0!important;background:transparent!important;color:#fff!important}
.vtp-thumb{position:relative!important;display:block!important;overflow:hidden!important;border-radius:4px!important;background:#18181a!important;aspect-ratio:16/9!important}
.vtp-thumb img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;transition:transform .25s ease,filter .25s ease!important}
.vtp-card:hover .vtp-thumb img{transform:scale(1.035)!important;filter:brightness(.88)!important}
.vtp-duration{position:absolute!important;right:6px!important;bottom:6px!important;padding:3px 5px!important;background:rgba(0,0,0,.82)!important;border-radius:3px!important;color:#fff!important;font-size:11px!important;font-weight:800!important}
.vtp-card h3{font-size:14px!important;line-height:1.34!important;margin:8px 0 5px!important;font-weight:700!important;color:#f4f4f5!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important}
.vtp-card-meta,.vtp-card small{color:#8d8d93!important;font-size:11.5px!important}

/* single video */
.vtp-single-main{padding-top:14px!important}
.vtp-watch-layout{display:grid!important;grid-template-columns:minmax(0,1fr) 330px!important;gap:22px!important;align-items:start!important}
.vtp-watch-primary{min-width:0!important}
.vtp-player{position:relative!important;width:100%!important;aspect-ratio:16/9!important;background:#000!important;border-radius:3px!important;overflow:hidden!important;box-shadow:0 0 0 1px #252525!important}
.vtp-player iframe,.vtp-player video,.vtp-external-player,.vtpl{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;border:0!important}
.vtp-watch-primary h1{font-size:21px!important;line-height:1.25!important;margin:17px 0 11px!important;color:#fff!important}
.vtp-actionrow{display:flex!important;justify-content:space-between!important;align-items:center!important;gap:12px!important;padding:0 0 15px!important;border-bottom:1px solid #29292c!important;color:#96969c!important;font-size:12px!important}
.vtp-actionrow>div{display:flex!important;gap:7px!important;flex-wrap:wrap!important}
.vtp-actionrow button{background:#1d1d20!important;border:1px solid #303034!important;color:#d8d8db!important;border-radius:4px!important;padding:7px 9px!important;cursor:pointer!important}
.vtp-actionrow button:hover{background:#28282c!important;color:#fff!important}
.vtp-channel{display:flex!important;align-items:center!important;gap:10px!important;padding:16px 0!important;border-bottom:1px solid #29292c!important}
.vtp-avatar{width:42px!important;height:42px!important;display:flex!important;align-items:center!important;justify-content:center!important;border-radius:50%!important;background:#29292c!important;color:white!important;font-weight:900!important}
.vtp-channel-info{display:flex!important;flex-direction:column!important;flex:1!important}
.vtp-channel-info strong{font-size:14px!important}
.vtp-channel-info small{font-size:11px!important;color:#888!important}
.vtp-join,.vtp-sub{border:0!important;border-radius:4px!important;padding:9px 13px!important;font-weight:850!important;font-size:11px!important;cursor:pointer!important}
.vtp-join{background:#28282b!important;color:#eee!important}
.vtp-sub{background:var(--vtp-accent,var(--vtprime-accent))!important;color:#111!important}
.vtp-description{padding:15px 0!important;color:#b1b1b6!important;font-size:13px!important;line-height:1.6!important;border-bottom:1px solid #29292c!important}
.vtp-tags{display:flex!important;align-items:center!important;gap:7px!important;flex-wrap:wrap!important;padding:11px 0!important;color:#999!important;font-size:12px!important}
.vtp-tags strong{color:#ddd!important;margin-right:4px!important}
.vtp-tags a{background:#242427!important;border:1px solid #303034!important;border-radius:4px!important;padding:5px 8px!important;color:#cfcfd3!important}
.vtp-tabs{display:flex!important;gap:5px!important;border-bottom:1px solid #2b2b2e!important;margin:10px 0 17px!important;overflow-x:auto!important}
.vtp-tabs button{border:0!important;background:transparent!important;color:#999!important;padding:11px 12px!important;white-space:nowrap!important;cursor:pointer!important;border-bottom:2px solid transparent!important}
.vtp-tabs button.active{color:#fff!important;border-bottom-color:var(--vtp-accent,var(--vtprime-accent))!important}
.vtp-related{grid-template-columns:repeat(4,minmax(0,1fr))!important}
.vtp-sidebar{min-width:0!important}
.vtp-sidebar .vtp-card{margin-bottom:15px!important}
.vtp-sidebar .vtp-card h3{font-size:12px!important}
.vtp-adbox{height:250px!important;background:#131315!important;border:1px dashed #3a3a3e!important;color:#6f6f76!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;margin-bottom:18px!important;font-size:12px!important}

/* pagination/footer */
.vtp-pagination{margin:30px 0!important}
.vtp-pagination .nav-links{display:flex!important;gap:6px!important}
.vtp-pagination a,.vtp-pagination span{padding:8px 11px!important;background:#1e1e20!important;border:1px solid #303034!important;border-radius:4px!important;color:#ddd!important}
.vtp-footer{background:#101011!important;border-top:1px solid #28282a!important;padding:30px 0!important;color:#818188!important}
.vtp-footer .vtp-container{display:flex!important;justify-content:space-between!important;gap:20px!important;flex-wrap:wrap!important}
.vtp-footer strong{color:#eee!important}

/* standard WP search */
.search .vtprime-content,.archive .vtprime-content{max-width:1500px}
.vtprime-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px 14px}
.vtprime-empty{padding:70px 20px;text-align:center;color:#8e8e94}

/* accessibility */
.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* responsive */
@media (min-width:1650px){
  .vtp-grid{grid-template-columns:repeat(5,minmax(0,1fr))!important}
  .vtp-related{grid-template-columns:repeat(4,minmax(0,1fr))!important}
}
@media (min-width:2100px){
  .vtp-grid{grid-template-columns:repeat(6,minmax(0,1fr))!important}
  .vtp-related{grid-template-columns:repeat(4,minmax(0,1fr))!important}
}
@media (max-width:1200px){
  .vtp-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .vtp-related{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .vtp-watch-layout{grid-template-columns:minmax(0,1fr) 280px!important}
  .vtp-headrow{grid-template-columns:auto auto minmax(220px,1fr) auto!important}
  .vtp-icons{display:none!important}
}
@media (max-width:900px){
  .vtp-watch-layout{display:block!important}
  .vtp-sidebar{margin-top:26px!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important}
  .vtp-sidebar .vtp-adbox{grid-column:1/-1!important;height:110px!important}
  .vtp-grid,.vtp-related{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .vtp-premium{display:none!important}
  .vtp-headrow{grid-template-columns:auto auto minmax(180px,1fr)!important}
}
@media (max-width:700px){
  body.admin-bar .vtprime-site-header,.admin-bar .vtp-header{top:46px!important}
  .vtp-container{width:min(calc(100% - 18px),var(--vtprime-max))!important}
  .vtp-topbar{display:none!important}
  .vtp-headrow{grid-template-columns:auto auto 1fr!important;gap:8px!important;min-height:58px!important}
  .vtp-logo{font-size:23px!important}
  .vtp-search{height:36px!important}
  .vtp-search input[type=text],.vtp-search input[name=s]{height:36px!important;font-size:13px!important}
  .vtp-search:after{content:"⌕";height:36px;padding:0 12px;font-size:17px}
  .vtp-nav .vtp-container{gap:20px!important}
  .vtp-main{padding-top:12px!important}
  .vtp-banner{min-height:65px!important;margin-bottom:18px!important}
  .vtp-grid,.vtp-related{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:17px 8px!important}
  .vtp-card h3{font-size:12.5px!important}
  .vtp-watch-primary h1{font-size:18px!important}
  .vtp-actionrow{display:block!important}
  .vtp-actionrow>div{margin-top:10px!important}
  .vtp-channel{flex-wrap:wrap!important}
  .vtp-sidebar{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .vtp-footer .vtp-container{display:block!important}
  .vtp-footer span{display:block!important;margin-top:8px!important}
}
@media (max-width:430px){
  .vtp-burger{width:30px!important;padding:0!important}
  .vtp-logo{font-size:20px!important}
  .vtp-headrow{grid-template-columns:auto auto minmax(0,1fr)!important}
  .vtp-search span{display:none!important}
  .vtp-search input{padding-left:8px!important}
  .vtp-grid,.vtp-related{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}


/* ===== VideoTube Prime 1.1 enhancements ===== */
.vtprime-compact .vtp-main{padding-top:8px!important}
.vtprime-compact .vtp-banner{margin-top:0!important;margin-bottom:14px!important}
.vtprime-compact .vtp-section h1,.vtprime-compact .vtp-section h2{margin-bottom:12px!important}

.vtp-search{position:relative!important}
.vtp-search:after{content:attr(data-label)!important;min-width:74px!important;justify-content:center!important}
.vtprime-lang-switch{display:inline-flex;align-items:center;gap:2px;margin-left:auto}
.vtprime-lang-switch button{border:0;background:transparent;color:#8f8f95;font-size:11px;font-weight:800;padding:4px 6px;cursor:pointer;border-radius:3px}
.vtprime-lang-switch button.active{background:#2a2a2d;color:#fff}
.vtprime-mobile-drawer{display:none;position:fixed;z-index:10000;top:0;left:0;bottom:0;width:min(330px,86vw);padding:72px 20px 30px;background:#111;border-right:1px solid #303034;box-shadow:16px 0 50px rgba(0,0,0,.45);overflow:auto}
.vtprime-mobile-drawer.open{display:block}
.vtprime-mobile-drawer a{display:block;padding:13px 5px;border-bottom:1px solid #29292c;color:#ddd;font-size:13px;font-weight:800}
.vtprime-drawer-close{position:absolute;right:14px;top:18px;background:#202024!important;border:1px solid #333!important;color:white!important;width:34px;height:34px;border-radius:50%;cursor:pointer}
.vtprime-drawer-backdrop{display:none;position:fixed;inset:0;z-index:9999;background:rgba(0,0,0,.68)}
.vtprime-drawer-backdrop.open{display:block}

.vtprime-sortbar{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:0 0 14px}
.vtprime-sortbar strong{font-size:12px;color:#8e8e94;margin-right:4px}
.vtprime-sortbar button{border:1px solid #303034;background:#1d1d20;color:#bcbcc1;border-radius:4px;padding:7px 9px;font-size:11px;font-weight:750;cursor:pointer}
.vtprime-sortbar button:hover,.vtprime-sortbar button.active{background:#303034;color:#fff;border-color:#444}

.vtp-thumb img{aspect-ratio:16/9!important}
.vtp-card .vtp-play{opacity:0!important;position:absolute!important;left:50%!important;top:50%!important;transform:translate(-50%,-50%)!important;width:44px!important;height:44px!important;display:flex!important;align-items:center!important;justify-content:center!important;border-radius:50%!important;background:rgba(0,0,0,.62)!important;color:white!important;font-size:20px!important;transition:opacity .18s ease!important}
.vtp-card:hover .vtp-play{opacity:1!important}
.vtp-card.is-previewing .vtp-thumb img{filter:brightness(.9)!important}
.vtp-meta-top{display:flex!important;justify-content:space-between!important;gap:8px!important;margin-top:6px!important;color:#929298!important;font-size:11px!important;white-space:nowrap!important}
.vtp-meta-top span{overflow:hidden;text-overflow:ellipsis}
.vtp-meta-top span:first-child{max-width:58%}
.vtp-meta-top span:last-child{text-align:right}
.vtp-card h3{min-height:38px}

.vtprime-ad-active{border:0!important;background:transparent!important;height:auto!important;min-height:0!important}
.vtprime-ad-active img{display:block;max-width:100%;height:auto;margin:auto}

.vtp-watch-layout{grid-template-columns:minmax(0,1fr) 310px!important}
.vtp-player{min-height:0!important}
.vtp-sidebar .vtp-thumb{aspect-ratio:16/9!important}
.vtp-sidebar .vtp-meta-top{margin-top:5px!important}
.vtp-sidebar .vtp-card h3{min-height:auto!important;margin-top:5px!important}
.vtp-sidebar .vtp-card{margin-bottom:18px!important}
.vtp-description{max-width:1000px}

.vtp-channel-info small{color:#777!important}
.vtp-tags a{transition:background .15s ease,border-color .15s ease}
.vtp-tags a:hover{background:#303034!important;border-color:#444!important}
.vtp-tabs button:hover{color:#fff!important}

.vtprime-filter-hidden{display:none!important}
.vtprime-no-items{grid-column:1/-1;padding:50px 10px;text-align:center;color:#888}

@media(max-width:900px){
  .vtp-sidebar .vtp-card{margin-bottom:0!important}
}
@media(max-width:700px){
  .vtp-burger{display:flex!important}
  .vtp-topbar{display:block!important;height:26px!important}
  .vtp-topbar .vtp-container>span:not(:last-of-type){display:none!important}
  .vtp-topbar .vtp-container{justify-content:flex-end!important}
  .vtprime-lang-switch{margin-left:0}
  .vtp-watch-layout{display:block!important}
  .vtp-sidebar{margin-top:20px!important}
  .vtp-actionrow button{padding:8px!important}
}


/* ---------------- Footer legal v1.2.0 ---------------- */
.vtprime-footer{
  border-top:1px solid #272727;
  background:#0f0f10;
  color:#aaaab0;
  padding:42px 0 24px;
  margin-top:48px;
  font-size:13px;
}
body.vtp-standalone-page > footer.vtprime-footer{
  display:block!important;
}
.vtprime-footer-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:34px;
  padding-bottom:32px;
  border-bottom:1px solid #262629;
}
.vtprime-footer-column h3{
  margin:0 0 15px;
  color:#f2f2f3;
  font-size:15px;
  font-weight:800;
}
.vtprime-footer-column ul{
  list-style:none;
  margin:0;
  padding:0;
}
.vtprime-footer-column li{
  margin:0 0 10px;
}
.vtprime-footer-column a{
  color:#9d9da3;
  transition:color .15s ease;
}
.vtprime-footer-column a:hover{
  color:var(--vtprime-accent,#ff9900);
}
.vtprime-footer-bottom{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
  padding:22px 0 12px;
}
.vtprime-footer-bottom > div:first-child{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}
.vtprime-footer-bottom strong{
  color:#fff;
  font-size:15px;
}
.vtprime-footer-age{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:0 12px;
  border:1px solid #3b3b3e;
  border-radius:4px;
  color:#d7d7da;
  background:#18181a;
  font-weight:700;
}
.vtprime-footer-copy{
  color:#74747b;
  font-size:12px;
  line-height:1.55;
}
.page .vtprime-content article h1,
.page .vtprime-content article h2,
.page .vtprime-content article h3{
  color:#fff;
}
.page .vtprime-content article p,
.page .vtprime-content article li{
  color:#c4c4c8;
  line-height:1.72;
}
@media(max-width:1000px){
  .vtprime-footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:620px){
  .vtprime-footer{padding-top:30px}
  .vtprime-footer-grid{grid-template-columns:1fr;gap:22px}
  .vtprime-footer-bottom{align-items:flex-start;flex-direction:column}
}


/* v1.3.3 — texto del buscador compacto en móvil/tablet */
@media (max-width:900px){
  .vtp-search-wrap .vtp-smart-search-input::placeholder,
  .vtp-search-wrap input[name="s"]::placeholder{
    font-size:12px!important;
    letter-spacing:-.15px!important;
    opacity:.82!important;
  }
}
@media (max-width:420px){
  .vtp-search-wrap .vtp-smart-search-input::placeholder,
  .vtp-search-wrap input[name="s"]::placeholder{
    font-size:11px!important;
  }
}


/* v1.3.4 — placeholder ultracorto en dispositivos móviles */
@media (hover:none), (pointer:coarse), (max-width:900px){
  .vtp-search-wrap .vtp-smart-search-input::placeholder,
  .vtp-search-wrap input[name="s"]::placeholder{
    font-size:13px!important;
    letter-spacing:0!important;
    opacity:.82!important;
  }
}


/* ===== DeviHub Prime 1.4.2 — buscador uniforme en páginas legales ===== */
.vtprime-site-header .vtprime-top{
  min-height:66px!important;
  display:flex!important;
  align-items:center!important;
  gap:18px!important;
}
.vtprime-site-header .vtprime-brand{
  flex:0 0 auto!important;
}
.vtprime-site-search{
  position:relative!important;
  flex:1 1 auto!important;
  display:flex!important;
  align-items:stretch!important;
  width:min(100%,860px)!important;
  max-width:860px!important;
  min-width:220px!important;
  margin:0 auto!important;
  overflow:hidden!important;
  border-radius:5px!important;
  background:#fff!important;
}
.vtprime-site-search input[type="search"]{
  flex:1 1 auto!important;
  min-width:0!important;
  width:auto!important;
  height:42px!important;
  border:0!important;
  border-radius:5px 0 0 5px!important;
  padding:0 14px!important;
  background:#fff!important;
  color:#181818!important;
  font-size:14px!important;
  outline:none!important;
}
.vtprime-site-search button{
  flex:0 0 104px!important;
  width:104px!important;
  height:42px!important;
  padding:0 16px!important;
  border:0!important;
  border-radius:0 5px 5px 0!important;
  background:var(--vtprime-accent)!important;
  color:#111!important;
  font-size:12px!important;
  font-weight:900!important;
  letter-spacing:.2px!important;
  cursor:pointer!important;
}
.vtprime-site-search button:hover{filter:brightness(1.04)!important}

/* Tablet y móvil: mantener el buscador visible, igual que en el portal principal. */
@media (max-width:900px){
  .vtprime-site-header .vtprime-wrap{padding-left:12px!important;padding-right:12px!important}
  .vtprime-site-header .vtprime-top{
    min-height:60px!important;
    gap:10px!important;
  }
  .vtprime-site-header .vtprime-brand{
    font-size:23px!important;
    letter-spacing:-1.2px!important;
  }
  .vtprime-site-search{
    display:flex!important;
    min-width:0!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
  }
  .vtprime-site-search input[type="search"]{
    height:40px!important;
    padding:0 10px!important;
    font-size:13px!important;
  }
  .vtprime-site-search button{
    flex-basis:82px!important;
    width:82px!important;
    height:40px!important;
    padding:0 10px!important;
    font-size:11px!important;
  }
}
@media (max-width:520px){
  .vtprime-site-header .vtprime-top{gap:8px!important}
  .vtprime-site-header .vtprime-brand{font-size:20px!important}
  .vtprime-site-search input[type="search"]{
    height:38px!important;
    font-size:12.5px!important;
    padding:0 8px!important;
  }
  .vtprime-site-search button{
    flex-basis:70px!important;
    width:70px!important;
    height:38px!important;
    padding:0 6px!important;
    font-size:10.5px!important;
  }
}
@media (max-width:390px){
  .vtprime-site-header .vtprime-brand{font-size:18px!important}
  .vtprime-site-search button{
    flex-basis:62px!important;
    width:62px!important;
    font-size:10px!important;
  }
}


/* ===== DeviHub Prime 1.4.3 — buscador avanzado en páginas legales ===== */
.vtprime-site-header .vtprime-top{
  overflow:visible!important;
}
.vtprime-legal-search-host{
  flex:1 1 auto!important;
  min-width:0!important;
  max-width:860px!important;
  margin:0 auto!important;
  position:relative!important;
  z-index:50!important;
}
.vtprime-legal-search-host .vtp-search{
  width:100%!important;
}
.vtprime-legal-search-host .vtp-search-panel{
  z-index:99999!important;
}

/* El panel avanzado usa exactamente el mismo motor del Core.
   En móvil se mantiene por encima del contenido legal. */
@media (max-width:900px){
  .vtprime-legal-search-host{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
  }
  .vtprime-legal-search-host .vtp-search{
    display:flex!important;
    width:100%!important;
  }
  .vtprime-legal-search-host .vtp-smart-search-input{
    min-width:0!important;
  }
}

/* ===== DeviHub Prime 1.4.3 — footer legal centrado ===== */
.vtprime-footer,
.vtprime-footer .vtprime-wrap{
  text-align:center!important;
}
.vtprime-footer-grid{
  justify-items:center!important;
  text-align:center!important;
}
.vtprime-footer-column{
  width:100%!important;
  text-align:center!important;
}
.vtprime-footer-column h3,
.vtprime-footer-column ul,
.vtprime-footer-column li{
  text-align:center!important;
}
.vtprime-footer-bottom{
  justify-content:center!important;
  flex-direction:column!important;
  align-items:center!important;
  text-align:center!important;
}
.vtprime-footer-bottom > div:first-child{
  justify-content:center!important;
  align-items:center!important;
  text-align:center!important;
}
.vtprime-footer-copy{
  width:100%!important;
  text-align:center!important;
}
.vtprime-footer-age{
  margin-left:auto!important;
  margin-right:auto!important;
}

@media (max-width:900px){
  .vtprime-footer-grid{
    justify-items:center!important;
  }
  .vtprime-footer-column{
    max-width:420px!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  .vtprime-footer-bottom{
    align-items:center!important;
  }
}


/* ===== DeviHub Prime 1.4.4 — selector ES/EN uniforme en todo el portal ===== */
.vtprime-lang-switch-header{
  flex:0 0 auto!important;
  display:inline-flex!important;
  align-items:center!important;
  gap:2px!important;
  margin:0!important;
  white-space:nowrap!important;
  order:initial!important;
}
.vtprime-lang-switch-header button{
  border:0!important;
  background:transparent!important;
  color:#aaa!important;
  font-size:11px!important;
  font-weight:800!important;
  line-height:1!important;
  padding:6px 7px!important;
  cursor:pointer!important;
  border-radius:3px!important;
}
.vtprime-lang-switch-header button.active{
  background:#343438!important;
  color:#fff!important;
}
.vtprime-lang-switch-header button:hover{
  color:#fff!important;
}

/* The old static language label in the Core top strip is redundant now. */
.vtp-topbar .vtp-container > span:last-child{
  display:none!important;
}

@media (max-width:900px){
  .vtp-headrow,
  .vtprime-site-header .vtprime-top{
    gap:8px!important;
  }
  .vtprime-lang-switch-header button{
    font-size:10px!important;
    padding:5px 6px!important;
  }
}

@media (max-width:520px){
  .vtprime-lang-switch-header{
    gap:0!important;
  }
  .vtprime-lang-switch-header button{
    font-size:9.5px!important;
    padding:5px 5px!important;
  }
}

@media (max-width:390px){
  .vtprime-lang-switch-header button{
    font-size:9px!important;
    padding:4px 4px!important;
  }
}


/* ===== DeviHub Prime 1.4.5 — buscador centrado y uniforme en todo el portal ===== */

/* Desktop / laptop: estructura del encabezado Core
   burger | logo | ES/EN | buscador centrado | iconos */
@media (min-width:901px){
  .vtp-headrow{
    display:grid!important;
    grid-template-columns:auto auto auto minmax(520px,790px) 1fr auto!important;
    align-items:center!important;
    column-gap:18px!important;
    width:100%!important;
  }

  .vtp-headrow .vtp-burger{
    grid-column:1!important;
  }

  .vtp-headrow .vtp-logo{
    grid-column:2!important;
  }

  .vtp-headrow .vtprime-lang-switch-header{
    grid-column:3!important;
    justify-self:start!important;
  }

  .vtp-headrow .vtp-search-wrap{
    grid-column:4!important;
    width:100%!important;
    max-width:790px!important;
    min-width:520px!important;
    margin:0!important;
    justify-self:center!important;
  }

  .vtp-headrow .vtp-search{
    width:100%!important;
    max-width:none!important;
  }

  .vtp-headrow .vtp-premium{
    display:none!important;
  }

  .vtp-headrow .vtp-icons{
    grid-column:6!important;
    justify-self:end!important;
  }
}

/* Legal/informational pages use the same visual width and alignment. */
@media (min-width:901px){
  .vtprime-site-header .vtprime-top{
    display:grid!important;
    grid-template-columns:auto auto minmax(520px,790px) 1fr!important;
    align-items:center!important;
    column-gap:18px!important;
    width:100%!important;
  }

  .vtprime-site-header .vtprime-brand{
    grid-column:1!important;
  }

  .vtprime-site-header .vtprime-lang-switch-header{
    grid-column:2!important;
    justify-self:start!important;
  }

  .vtprime-site-header .vtprime-legal-search-host{
    grid-column:3!important;
    width:100%!important;
    max-width:790px!important;
    min-width:520px!important;
    margin:0!important;
    justify-self:center!important;
  }
}

/* Tablet / mobile: keep compact row, but search gets all remaining space. */
@media (max-width:900px){
  .vtp-headrow,
  .vtprime-site-header .vtprime-top{
    display:flex!important;
    align-items:center!important;
    width:100%!important;
  }

  .vtp-headrow .vtp-search-wrap,
  .vtprime-site-header .vtprime-legal-search-host{
    flex:1 1 auto!important;
    min-width:0!important;
    max-width:none!important;
    width:auto!important;
    margin:0!important;
  }

  .vtp-headrow .vtp-search,
  .vtprime-site-header .vtp-search{
    width:100%!important;
    max-width:none!important;
  }

  .vtp-headrow .vtp-icons{
    display:none!important;
  }
}

/* Ultra-wide monitors: do not let search drift too far right. */
@media (min-width:1400px){
  .vtp-headrow,
  .vtprime-site-header .vtprime-top{
    justify-content:center!important;
  }
}


/* ===== DeviHub Prime 1.4.6 — pestañas internas funcionales / 5 videos PC ===== */
.vtp-tab-panel[hidden]{display:none!important}
.vtp-tab-panel.active{display:block!important}
.vtp-tabs button{cursor:pointer!important}

.vtp-comments-panel,
.vtp-playlist-panel{
  padding:20px 4px 24px!important;
  min-height:120px!important;
}
.vtp-tab-empty{
  padding:28px 16px!important;
  border:1px dashed #343438!important;
  background:#121214!important;
  color:#999!important;
  text-align:center!important;
  border-radius:4px!important;
}
.vtp-comment-list{
  display:flex!important;
  flex-direction:column!important;
  gap:12px!important;
}
.vtp-comment{
  display:flex!important;
  gap:10px!important;
  padding:12px!important;
  border:1px solid #29292d!important;
  background:#141416!important;
  border-radius:5px!important;
}
.vtp-comment-avatar img{border-radius:50%!important}
.vtp-comment-body{min-width:0!important;flex:1!important}
.vtp-comment-body strong{display:block!important;color:#f1f1f2!important}
.vtp-comment-body small{display:block!important;color:#777!important;margin:2px 0 8px!important}
.vtp-comment-body p{margin:0!important;color:#c8c8cc!important}
.vtp-comment-form-wrap{margin-top:18px!important}
.vtp-comment-form-wrap textarea,
.vtp-comment-form-wrap input[type="text"],
.vtp-comment-form-wrap input[type="email"],
.vtp-comment-form-wrap input[type="url"]{
  width:100%!important;
  background:#151517!important;
  color:#eee!important;
  border:1px solid #333!important;
  border-radius:4px!important;
  padding:10px!important;
}
.vtp-comment-form-wrap input[type="submit"]{
  background:var(--vtp-accent,var(--vtprime-accent))!important;
  color:#111!important;
  border:0!important;
  border-radius:4px!important;
  padding:9px 14px!important;
  font-weight:800!important;
  cursor:pointer!important;
}
.vtp-playlist-panel{
  border:1px solid #29292d!important;
  background:#121214!important;
  border-radius:5px!important;
  padding:22px!important;
}
.vtp-playlist-panel strong{display:block!important;font-size:17px!important;margin-bottom:7px!important}
.vtp-playlist-panel p{color:#aaa!important;margin:0 0 14px!important}
.vtp-playlist-scroll{
  border:1px solid #3a3a3e!important;
  background:#202023!important;
  color:#eee!important;
  padding:8px 12px!important;
  border-radius:4px!important;
  cursor:pointer!important;
}

/* Five cards per row on normal desktop widths. */
@media (min-width:1200px){
  .vtp-tab-panel .vtp-related{
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    gap:28px 12px!important;
  }
}
@media (min-width:901px) and (max-width:1199px){
  .vtp-tab-panel .vtp-related{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
  }
}
@media (max-width:900px){
  .vtp-tab-panel .vtp-related{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}
@media (max-width:650px){
  .vtp-tab-panel .vtp-related{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}


/* ===== DeviHub Prime 1.4.7 — canal móvil + playlist real ===== */
.vtp-playlist-results{
  margin-top:18px!important;
}
.vtp-playlist-results .vtp-related{
  margin-top:0!important;
}
.vtp-playlist-load:disabled{
  opacity:.65!important;
  cursor:wait!important;
}

/* Keep both channel actions visible on phones. */
@media (max-width:760px){
  .vtp-channel-enhanced{
    display:grid!important;
    grid-template-columns:44px minmax(0,1fr) auto!important;
    gap:10px!important;
    align-items:center!important;
  }
  .vtp-channel-enhanced .vtp-avatar{
    grid-column:1!important;
    grid-row:1!important;
  }
  .vtp-channel-enhanced .vtp-channel-info{
    grid-column:2!important;
    grid-row:1!important;
    min-width:0!important;
  }
  .vtp-channel-enhanced .vtp-sub{
    display:inline-flex!important;
    grid-column:3!important;
    grid-row:1!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:38px!important;
    white-space:nowrap!important;
  }
  .vtp-channel-enhanced .vtp-channel-view{
    display:flex!important;
    grid-column:1 / -1!important;
    grid-row:2!important;
    width:100%!important;
    min-height:40px!important;
    order:initial!important;
  }
}

@media (max-width:430px){
  .vtp-channel-enhanced{
    grid-template-columns:42px minmax(0,1fr) auto!important;
  }
  .vtp-channel-enhanced .vtp-sub{
    padding:8px 10px!important;
    font-size:10.5px!important;
  }
}


/* ===== DeviHub Prime 1.4.8.1 — restauración visual naranja oficial ===== */
:root{
  --vtprime-accent:#ff9900;
  --vtp-accent:#ff9900;
}

/* Header / navigation */
.vtp-logo b,
.vtprime-brand span,
.vtp-search:after,
.vtp-search-submit,
.vtp-premium,
.vtp-sub:not(.is-active){
  background:#ff9900!important;
  color:#111!important;
}
.vtp-burger:hover,
.vtp-nav a:hover,



/* Tabs and interactive states */
.vtp-tabs button.active,
.vtp-tabs button:hover{
  color:#fff!important;
  border-bottom-color:#ff9900!important;
}
.vtp-actionrow button:hover,
.vtp-actionrow button.is-active,
.vtprime-sortbar button:hover,
.vtprime-sortbar button.active{
  border-color:#ff9900!important;
}
.vtp-actionrow button.is-active{
  color:#ff9900!important;
}

/* Pagination */
.vtp-pagination a:hover,
.vtp-pagination .current,
.vtp-pagination span.current,
.nav-links .page-numbers.current,
.nav-links a.page-numbers:hover{
  background:#ff9900!important;
  border-color:#ff9900!important;
  color:#111!important;
}

/* Chips / tags */
.vtp-chips a:hover,
.vtp-tags a:hover{
  border-color:#ff9900!important;
  color:#ff9900!important;
}

/* Links/buttons used in channel area */
.vtp-channel-view:hover{
  border-color:#ff9900!important;
  color:#ff9900!important;
}

/* Keep focus visibility consistent */
.vtp-shell a:focus-visible,
.vtp-shell button:focus-visible,
.vtp-shell input:focus-visible{
  outline:2px solid #ff9900!important;
  outline-offset:2px!important;
}


/* ===== DeviHub Prime 1.4.8.2 — navegación activa dinámica ===== */
.vtp-nav a{
  position:relative!important;
  border-bottom:2px solid transparent!important;
}
.vtp-nav a.is-active{
  color:#ff9900!important;
  border-bottom-color:#ff9900!important;
}
.vtp-nav a.is-active:hover{
  color:#ff9900!important;
}


/* ===== DeviHub Prime 1.4.8.5 — hover completo de paginación ===== */
.vtp-pagination a:hover,
.vtp-pagination a:focus-visible,
.vtp-pagination .next:hover,
.vtp-pagination .prev:hover{
  background:#ff9900!important;
  border-color:#ff9900!important;
  color:#111!important;
}
.vtp-pagination a:hover > span,
.vtp-pagination a:focus-visible > span,
.vtp-pagination .next:hover > span,
.vtp-pagination .prev:hover > span{
  background:transparent!important;
  border-color:transparent!important;
  color:#111!important;
  box-shadow:none!important;
}


/* ===== DeviHub Prime 1.4.8.6 — elimina doble caja en Next / Previous ===== */
/* WordPress envuelve el texto de Next/Previous en un span.
   La regla general de paginación estaba estilizando tanto el <a> como ese <span>,
   creando dos rectángulos superpuestos. El contenedor <a> es el único botón real. */
.vtp-pagination a > span{
  display:inline!important;
  padding:0!important;
  margin:0!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  color:inherit!important;
  box-shadow:none!important;
  min-width:0!important;
  min-height:0!important;
}

.vtp-pagination a.next,
.vtp-pagination a.prev,
.vtp-pagination .next,
.vtp-pagination .prev{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
}

/* Hover sigue pintando el botón completo. */
.vtp-pagination a.next:hover,
.vtp-pagination a.prev:hover,
.vtp-pagination a.next:focus-visible,
.vtp-pagination a.prev:focus-visible{
  background:#ff9900!important;
  border-color:#ff9900!important;
  color:#111!important;
}


/* ===== DeviHub Prime 1.4.8.7 — separación estricta de anuncios por dispositivo ===== */
/* Core 3.2.2 decide qué slot renderizar. Prime ya no reemplaza el slot móvil
   con el código 970x90 de escritorio. */
@media (max-width: 900px){
  .vtp-mobile-global-ad{
    display:flex!important;
  }
}

/* Títulos móviles: tres líneas completas y sin recortar glifos. */
@media (max-width: 650px) {
  .vtp-grid .vtp-card h3 { height: auto !important; max-height: none !important; min-height: 0 !important; line-height: 1.4 !important; -webkit-line-clamp: 3 !important; }
  .vtp-grid .vtp-card h3 a { height: auto !important; max-height: none !important; line-height: inherit !important; }
}

/* Títulos completos en móviles: evita recortes parciales de líneas. */
@media (max-width: 767px) {
  .vtp-shell .vtp-grid .vtp-card h3 {
    display: block !important;
    -webkit-line-clamp: unset !important;
    -webkit-box-orient: initial !important;
    height: auto !important;
    max-height: none !important;
    min-height: 0 !important;
    overflow: visible !important;
    line-height: 1.4 !important;
    overflow-wrap: anywhere;
  }
  .vtp-shell .vtp-grid .vtp-card h3 a {
    display: inline !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    line-height: inherit !important;
  }
}

/* Títulos de tarjetas: máximo dos líneas en móviles, con puntos suspensivos. */
@media (max-width: 767px) {
  .vtp-shell .vtp-grid .vtp-card h3 {
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
    overflow: hidden !important;
    height: auto !important;
    max-height: none !important;
    min-height: 0 !important;
    line-height: 1.4 !important;
    overflow-wrap: anywhere;
  }
  .vtp-shell .vtp-grid .vtp-card h3 a {
    display: inline !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    line-height: inherit !important;
  }
}
