/*
Theme Name: Tanzania eVisa Gateway Smart Portal Theme
Theme URI: https://tanzaniaevisagateway.com
Author: WadTech
Author URI: https://wadtech.co.uk
Description: A protected, full-width, government-style WordPress theme built for Tanzania eVisa Gateway. Includes official-style header/footer, visa portal layout controls, applicant-friendly pages, mobile navigation and basic front-end protection.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
Text Domain: tanzania-evisa-gateway
*/

:root{
  --tvg-navy:#08213f;
  --tvg-blue:#123f72;
  --tvg-green:#00843d;
  --tvg-gold:#fcd116;
  --tvg-sky:#1eb4e8;
  --tvg-red:#ce1126;
  --tvg-bg:#f4f6f8;
  --tvg-card:#ffffff;
  --tvg-text:#1f2937;
  --tvg-muted:#5b6778;
  --tvg-border:#d6dde6;
  --tvg-shadow:0 14px 38px rgba(8,33,63,.08);
}

*{box-sizing:border-box;}
html,body{margin:0!important;padding:0!important;width:100%;max-width:100%;overflow-x:hidden!important;background:var(--tvg-bg);color:var(--tvg-text);font-family:Arial,Helvetica,sans-serif;scroll-behavior:smooth;}
body.tvg-protected *{box-sizing:border-box;}
a{color:inherit;}
img,video{max-width:100%;height:auto;}

/* Hide most default theme/builder wrappers when this theme is active */
#page,.site,.site-content,.site-main,.content-area,.ast-container,.entry-content,.ast-article-single,.wp-site-blocks,.wp-block-group,.wp-block-post-content{width:100%!important;max-width:100%!important;margin:0!important;padding:0!important;}
.entry-header,.page-header,.comments-area,.widget-area,.sidebar-main,#secondary,aside,.post-navigation,.nav-links,.edit-link{display:none!important;}

/* Hide old shortcode shell header/footer so the smart theme controls every page */
body.tvg-protected .tev-topbar,
body.tvg-protected .tev-header,
body.tvg-protected .tev-nav,
body.tvg-protected .tev-footer{display:none!important;}
body.tvg-protected .tev-wrap{width:100%!important;max-width:100%!important;margin:0!important;background:transparent!important;}
body.tvg-protected .tev-container{max-width:1480px!important;}

.tvg-site{width:100%;min-height:100vh;background:var(--tvg-bg);}
.tvg-main{width:100%;min-height:52vh;}
.tvg-container{width:100%;max-width:1480px;margin:0 auto;padding-left:28px;padding-right:28px;}

.tvg-topbar{background:#0b3b2e;color:#fff;font-size:13px;}
.tvg-topbar .tvg-container{padding-top:9px;padding-bottom:9px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;}
.tvg-topbar a{text-decoration:none;color:#fff!important;font-weight:700;}

.tvg-header{background:#fff;border-bottom:1px solid var(--tvg-border);}
.tvg-header .tvg-container{padding-top:18px;padding-bottom:18px;display:flex;align-items:center;justify-content:space-between;gap:24px;}
.tvg-brand{display:flex;align-items:center;gap:14px;text-decoration:none!important;color:var(--tvg-navy)!important;}
.tvg-emblem{width:64px;height:64px;border-radius:50%;background:linear-gradient(135deg,var(--tvg-green) 0%,var(--tvg-gold) 47%,var(--tvg-sky) 100%);border:3px solid #e5e7eb;box-shadow:0 8px 20px rgba(8,33,63,.16);position:relative;overflow:hidden;}
.tvg-emblem:after{content:'';position:absolute;inset:13px;border-radius:50%;border:3px solid rgba(255,255,255,.75);}
.tvg-brand-title{font-weight:900;font-size:25px;line-height:1.1;letter-spacing:-.3px;}
.tvg-brand-sub{font-size:14px;color:var(--tvg-muted);margin-top:4px;}
.tvg-header-note{text-align:right;font-size:14px;line-height:1.5;color:#344054;}
.tvg-header-note strong{color:var(--tvg-green);}

.tvg-nav{background:var(--tvg-blue);border-bottom:4px solid var(--tvg-gold);position:sticky;top:0;z-index:99999;}
body.admin-bar .tvg-nav{top:32px;}
.tvg-nav .tvg-container{display:flex;align-items:center;justify-content:space-between;gap:18px;}
.tvg-menu{display:flex;align-items:center;gap:0;flex-wrap:wrap;}
.tvg-menu ul{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:0;flex-wrap:wrap;}
.tvg-menu li{margin:0;padding:0;list-style:none;}
.tvg-menu a{display:inline-flex;padding:16px 17px;color:#fff!important;text-decoration:none!important;font-size:14px;font-weight:800;border-right:1px solid rgba(255,255,255,.16);}
.tvg-menu a:hover,.tvg-menu .current-menu-item>a{background:rgba(255,255,255,.12);}
.tvg-apply-btn{display:inline-flex;align-items:center;justify-content:center;background:var(--tvg-green);color:#fff!important;text-decoration:none!important;padding:11px 18px;border-radius:4px;font-weight:900;white-space:nowrap;border:1px solid rgba(255,255,255,.28);}
.tvg-apply-btn:hover{background:#006f34;}

.tvg-native-page{width:100%;padding:56px 0;}
.tvg-native-card{background:#fff;border:1px solid var(--tvg-border);border-radius:6px;padding:34px;box-shadow:var(--tvg-shadow);}
.tvg-native-card h1{margin:0 0 20px!important;color:var(--tvg-navy)!important;font-size:clamp(34px,5vw,58px)!important;line-height:1.05!important;font-weight:900!important;}
.tvg-native-card p,.tvg-native-card li{color:var(--tvg-muted)!important;line-height:1.75;font-size:16px;}

.tvg-footer{background:#07182e;color:#fff;padding:48px 0 34px;}
.tvg-footer-grid{display:grid;grid-template-columns:1.45fr 1fr 1fr 1fr;gap:34px;}
.tvg-footer h3,.tvg-footer h4,.tvg-footer strong{color:#fff!important;margin-top:0;}
.tvg-footer p,.tvg-footer li,.tvg-footer a{color:rgba(255,255,255,.78)!important;line-height:1.7;font-size:14px;}
.tvg-footer a{text-decoration:none!important;display:block;margin-bottom:8px;}
.tvg-footer a:hover{color:var(--tvg-gold)!important;}
.tvg-smallprint{font-size:12px!important;color:rgba(255,255,255,.62)!important;}
.tvg-copy{border-top:1px solid rgba(255,255,255,.12);margin-top:34px;padding-top:22px;color:rgba(255,255,255,.58);font-size:12px;line-height:1.7;}

.tvg-mobile-nav{display:none;}

/* Useful portal utilities for future pages */
.tvg-gov-card{background:#fff;border:1px solid var(--tvg-border);border-top:4px solid var(--tvg-blue);border-radius:6px;box-shadow:var(--tvg-shadow);padding:24px;}
.tvg-status-chip{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:7px 11px;font-size:12px;font-weight:900;background:#e8f4ec;color:var(--tvg-green);}
.tvg-warning{border-left:5px solid var(--tvg-gold);background:#fff8e5;color:#5b4300;padding:16px;border-radius:4px;line-height:1.65;}
.tvg-danger{border-left:5px solid var(--tvg-red);background:#fff1f2;color:#7f1d1d;padding:16px;border-radius:4px;line-height:1.65;}

@media(max-width:1100px){
  .tvg-header .tvg-container{align-items:flex-start;flex-direction:column;}
  .tvg-header-note{text-align:left;}
  .tvg-footer-grid{grid-template-columns:1fr 1fr;}
}
@media(max-width:760px){
  body.admin-bar .tvg-nav{top:46px;}
  .tvg-container{padding-left:18px;padding-right:18px;}
  .tvg-topbar .tvg-container{font-size:12px;}
  .tvg-brand-title{font-size:21px;}
  .tvg-emblem{width:52px;height:52px;}
  .tvg-header-note{font-size:13px;}
  .tvg-nav .tvg-container{padding-left:0;padding-right:0;}
  .tvg-menu{width:100%;overflow-x:auto;flex-wrap:nowrap;}
  .tvg-menu ul{flex-wrap:nowrap;}
  .tvg-menu a{white-space:nowrap;padding:14px 15px;font-size:13px;}
  .tvg-apply-btn{display:none;}
  .tvg-footer{padding-bottom:102px;}
  .tvg-footer-grid{grid-template-columns:1fr;}
  .tvg-mobile-nav{position:fixed;display:flex;left:12px;right:12px;bottom:12px;z-index:999999;background:rgba(255,255,255,.97);backdrop-filter:blur(18px);border-radius:18px;padding:9px;justify-content:space-around;box-shadow:0 20px 50px rgba(8,33,63,.2);border:1px solid rgba(8,33,63,.08);}
  .tvg-mobile-nav a{text-decoration:none!important;color:var(--tvg-navy)!important;font-size:11px;font-weight:850;text-align:center;line-height:1.25;}
  .tvg-mobile-nav .main{background:var(--tvg-green);color:#fff!important;padding:9px 12px;border-radius:14px;margin-top:-24px;}
}
