/*
Theme Name: TubeTheme
Theme URI: https://example.com/tubetheme
Author: TubeTheme
Description: Fast, multilingual downloader theme inspired by tubemate.tools. Hero with mobile frame, editable Features, Info boxes, FAQs with schema, per-section color controls, automatic 30-language page publishing with translation and hreflang.
Version: 2.7.3
License: GPL-2.0+
Text Domain: tubetheme
*/

:root{
  --tt-hero-bg:#0b1220;
  --tt-hero-text:#ffffff;
  --tt-btn-bg:#22c55e;
  --tt-btn-text:#ffffff;
  --tt-trust-bg:#22c55e;
  --tt-trust-text:#ffffff;
  --tt-primary-bg:#ffffff;
  --tt-primary-text:#0f172a;
  --tt-features-bg:#f8fafc;
  --tt-features-text:#0f172a;
  --tt-feature-card-bg:#ffffff;
  --tt-feature-card-text:#0f172a;
  --tt-info-bg:#ffffff;
  --tt-info-text:#0f172a;
  --tt-info-card-bg:#ffffff;
  --tt-info-card-text:#0f172a;
  --tt-faq-bg:#f8fafc;
  --tt-faq-text:#0f172a;
  --tt-faq-card-bg:#ffffff;
  --tt-faq-card-text:#0f172a;
  --tt-secondary-bg:#ffffff;
  --tt-secondary-text:#0f172a;
  --tt-footer-bg:#0b1220;
  --tt-footer-text:#e2e8f0;
  --tt-link:#2563eb;
  --tt-max:1120px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;line-height:1.6;color:var(--tt-primary-text);background:#fff;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:var(--tt-link);text-decoration:none}
a:hover{text-decoration:underline}
.tt-wrap{max-width:var(--tt-max);margin:0 auto;padding:0 20px}

/* Header */
.tt-header{background:var(--tt-hero-bg);color:var(--tt-hero-text);padding:14px 0;position:sticky;top:0;z-index:50}
.tt-header .tt-wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.tt-brand{display:flex;align-items:center;gap:10px}
.tt-brand .custom-logo{max-height:44px;width:auto;display:block}
.tt-logo{font-weight:800;font-size:22px;color:var(--tt-hero-text)}
.tt-logo:hover{text-decoration:none}
.tt-tagline{font-size:13px;opacity:.8;color:var(--tt-hero-text)}
.tt-nav{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.tt-menu{list-style:none;display:flex;gap:18px;margin:0;padding:0;flex-wrap:wrap}
.tt-menu a,.tt-nav a{color:var(--tt-hero-text);opacity:.92;font-size:14px}
.tt-lang-switch select{background:#ffffff;color:#0f172a;border:1px solid rgba(255,255,255,.3);padding:6px 10px;border-radius:6px;font-size:13px}
.tt-lang-switch select option{background:#ffffff;color:#0f172a}
.tt-menu-toggle{display:none;background:transparent;border:1px solid rgba(255,255,255,.35);border-radius:6px;width:40px;height:36px;padding:0;cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:4px}
.tt-menu-toggle span{display:block;width:20px;height:2px;background:var(--tt-hero-text);border-radius:2px}

/* Hero */
.tt-hero{background:var(--tt-hero-bg);color:var(--tt-hero-text);padding:60px 0 16px}
.tt-hero-inner{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center}
.tt-hero h1{font-size:44px;line-height:1.15;margin:0 0 16px;font-weight:800}
.tt-hero p.tt-sub{font-size:18px;opacity:.9;margin:0 0 28px}
.tt-btn{display:inline-block;background:var(--tt-btn-bg);color:var(--tt-btn-text);padding:14px 28px;border-radius:8px;font-weight:700;font-size:17px;border:0;cursor:pointer;transition:transform .15s ease,opacity .15s ease}
.tt-btn:hover{transform:translateY(-2px);opacity:.95;text-decoration:none;color:var(--tt-btn-text)}
.tt-trust{display:flex;gap:12px;margin-top:22px;flex-wrap:wrap;align-items:center}
.tt-trust-item{display:inline-flex;align-items:center;gap:8px;background:var(--tt-trust-bg);color:var(--tt-trust-text);border:0;padding:10px 16px;border-radius:8px;font-size:14px;font-weight:700;line-height:1;height:48px;box-shadow:0 1px 3px rgba(0,0,0,.12)}
.tt-trust-item img{width:20px;height:20px;display:block;filter:none}
.tt-trust-icon{display:inline-block;width:20px;height:20px;flex:none}
.tt-hero-img{display:flex;justify-content:center}
.tt-hero-img img{max-height:480px;width:auto}

/* Sections */
.tt-section{padding:16px 0}
.tt-section h2{font-size:32px;font-weight:800;margin:0 0 12px;text-align:center}
.tt-section .tt-section-sub{text-align:center;max-width:720px;margin:0 auto 36px;opacity:.85}

.tt-primary{background:var(--tt-primary-bg);color:var(--tt-primary-text)}
.tt-primary .tt-content,.tt-secondary .tt-content{max-width:none;margin:0}
.tt-content h1,.tt-content h2,.tt-content h3,.tt-content h4{margin:1.4em 0 .5em;line-height:1.25}
.tt-content h1{font-size:32px}
.tt-content h2{font-size:26px}
.tt-content h3{font-size:21px}
.tt-content p{margin:0 0 1em}
.tt-content ul,.tt-content ol{margin:0 0 1em 1.2em}
/* Gutenberg alignment support (block-library is dequeued) */
.tt-content .has-text-align-left{text-align:left}
.tt-content .has-text-align-center{text-align:center}
.tt-content .has-text-align-right{text-align:right}
.tt-content .has-text-align-justify{text-align:justify}
.tt-content .aligncenter{display:block;margin-left:auto;margin-right:auto}
.tt-content .alignleft{float:left;margin:0 1em 1em 0}
.tt-content .alignright{float:right;margin:0 0 1em 1em}
.tt-content .alignwide{max-width:1100px;margin-left:auto;margin-right:auto}
.tt-content .alignfull{max-width:none;width:100%}
.tt-content figure{margin:1em 0}
.tt-content img{max-width:100%;height:auto}
.tt-content blockquote{margin:1em 0;padding:.5em 1em;border-left:4px solid currentColor;opacity:.9}

/* Features */
.tt-features{background:var(--tt-features-bg);color:var(--tt-features-text)}
.tt-features-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.tt-feature{background:var(--tt-feature-card-bg);color:var(--tt-feature-card-text);border-radius:12px;padding:28px 22px;text-align:center;box-shadow:0 1px 3px rgba(0,0,0,.05)}
.tt-feature img{margin:0 auto 14px;max-height:72px;width:auto}
.tt-feature h3{margin:0 0 8px;font-size:18px;font-weight:700}
.tt-feature p{margin:0;font-size:15px;opacity:.85}

/* Info */
/* Info — vertical, one per row, heading/text above image */
.tt-info{background:var(--tt-info-bg);color:var(--tt-info-text)}
.tt-info-grid{display:flex;flex-direction:column;gap:32px;max-width:860px;margin:0 auto}
.tt-info-box{text-align:center;padding:36px 24px;background:var(--tt-info-card-bg);color:var(--tt-info-card-text);border-radius:14px;box-shadow:0 2px 8px rgba(0,0,0,.06)}
.tt-info-box h3{margin:0 0 10px;font-size:24px;font-weight:800;text-align:center}
.tt-info-box p{margin:0 auto 22px;font-size:16px;max-width:680px;text-align:center}
.tt-info-img{display:flex;justify-content:center;margin:0 auto}
.tt-info-img img{max-height:480px;max-width:100%;width:auto;height:auto}

/* FAQ */
.tt-faq{background:var(--tt-faq-bg);color:var(--tt-faq-text)}
.tt-faq-list{max-width:820px;margin:0 auto}
.tt-faq-item{background:var(--tt-faq-card-bg);color:var(--tt-faq-card-text);border-radius:10px;margin-bottom:12px;overflow:hidden;box-shadow:0 1px 3px rgba(0,0,0,.05)}
.tt-faq-item summary{cursor:pointer;padding:18px 22px;font-weight:600;font-size:16px;list-style:none;position:relative}
.tt-faq-item summary::-webkit-details-marker{display:none}
.tt-faq-item summary::after{content:"+";position:absolute;right:20px;top:50%;transform:translateY(-50%);font-size:22px;font-weight:400}
.tt-faq-item[open] summary::after{content:"−"}
.tt-faq-item .tt-faq-a{padding:0 22px 18px;opacity:.9}

/* Footer */
.tt-footer{background:var(--tt-footer-bg);color:var(--tt-footer-text);padding:30px 0;text-align:center;font-size:14px}
.tt-footer a{color:var(--tt-footer-text);opacity:.9}

/* Responsive */
@media (max-width:820px){
  .tt-hero{padding:40px 0 16px}
  .tt-hero-inner{grid-template-columns:1fr;text-align:center}
  .tt-hero h1{font-size:32px}
  .tt-features-grid{grid-template-columns:1fr}
  .tt-section{padding:16px 0}
  .tt-section h2{font-size:26px}
  .tt-info-img img{max-height:340px}
  .tt-info-box h3{font-size:20px}
}

/* Footer menu */
.tt-footer-menu{list-style:none;display:flex;gap:18px;margin:0 0 14px;padding:0;justify-content:center;flex-wrap:wrap}
.tt-footer-menu a{color:var(--tt-footer-text);opacity:.9;font-size:14px}

/* Off-canvas slide-in mobile menu */
.tt-nav-close{display:none;position:absolute;top:14px;right:16px;background:transparent;border:0;color:var(--tt-hero-text);font-size:32px;line-height:1;cursor:pointer;padding:4px 10px}
.tt-nav-overlay{position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:90;opacity:0;transition:opacity .25s ease;pointer-events:none}
.tt-nav-overlay:not([hidden]){opacity:1;pointer-events:auto}
body.tt-nav-lock{overflow:hidden}

@media (max-width:820px){
  .tt-menu-toggle{display:inline-flex}
  .tt-header .tt-wrap{flex-wrap:nowrap}
  .tt-nav-close{display:block}
  .tt-nav{position:fixed;top:0;right:0;height:100vh;width:84vw;max-width:340px;background:var(--tt-hero-bg);color:var(--tt-hero-text);z-index:100;display:flex;flex-direction:column;align-items:stretch;gap:16px;padding:64px 22px 24px;transform:translateX(100%);transition:transform .28s ease;box-shadow:-8px 0 30px rgba(0,0,0,.25);overflow-y:auto}
  .tt-nav.open{transform:translateX(0)}
  .tt-menu{flex-direction:column;gap:4px;width:100%}
  .tt-menu li{width:100%}
  .tt-menu a{display:block;padding:14px 6px;font-size:17px;border-bottom:1px solid rgba(255,255,255,.08);color:var(--tt-hero-text)}
  .tt-lang-switch{width:100%;margin-top:8px}
  .tt-lang-switch select{width:100%;padding:12px;font-size:15px}
  .tt-trust{justify-content:center}
}

/* Download page: multiple download buttons */
.tt-download-buttons{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:8px}
.tt-download-buttons .tt-btn{display:inline-block}
