/*
Theme Name: GovTheme
Theme URI: https://example.com/govtheme
Author: Santosh + ChatGPT
Author URI: https://example.com
Description: Minimal, boxed government/department theme with dual nav bars, saffron accent, accessible patterns, and responsive collapsing menu.
Version: 1.1.0
Requires at least: 6.0
Tested up to: 6.6
License: GPL-2.0-or-later
Text Domain: govtheme
*/

:root{
  --accent:#FF6F00; /* saffron */
  --text:#222;
  --muted:#5b6472;
  --line:#e5e7eb; /* light grey lines */
  --bg:#f3f4f6; /* off-grey background */
  --white:#fff;
  --maxw:1280px;
  --radius:16px;
  --shadow:0 6px 16px rgba(0,0,0,.06);
  --transition: all .25s ease;
  --font-sans: system-ui, -apple-system, Segoe UI, Roboto, Inter, "Helvetica Neue", Arial, "Noto Sans", "Apple Color Emoji","Segoe UI Emoji", "Segoe UI Symbol";
  --focus: 2px solid #111; /* high contrast */
}

@media (prefers-reduced-motion: reduce) {
  * { animation-duration: 0.001ms !important; animation-iteration-count: 1 !important; transition-duration:0.001ms !important; scroll-behavior: auto !important; }
}

*{box-sizing:border-box}
html,body{height:100%}
body{margin:0;color:var(--text);font-family:var(--font-sans);font-size:15px;line-height:1.6;background:var(--bg)}
a{color:inherit;text-decoration:none}
a:focus-visible, button:focus-visible, [role="button"]:focus-visible, input:focus-visible{outline:var(--focus); outline-offset:2px}
img{max-width:100%;height:auto;display:block}

.skip-link{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
.skip-link:focus{position:static;width:auto;height:auto;background:#fff;color:#000;padding:8px;border:1px solid #000}

.site-wrap{max-width:var(--maxw);margin:0 auto;padding:0 16px}
.site-box{background:var(--white);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}

/* Top bar */
.topbar{background:var(--white);border-bottom:1px solid var(--line)}
.topbar .inner{
  display:flex;
  align-items:center;
  gap:16px;
  padding:10px 16px;
  justify-content:space-between;
}
.brand{display:flex;align-items:center;gap:12px}
.brand .logo{width:64px;height:64px;object-fit:contain}
.brand .titles{display:flex;flex-direction:column}
.brand .title{font-weight:700;font-size:18px}
.brand .tagline{font-size:12px;color:var(--muted)}

/* Right chunk */
.topbar .right{margin-left:auto;display:flex;align-items:center;gap:14px}
.langswitch{display:flex;align-items:center;gap:8px}
.langswitch a{font-size:13px;color:#374151;border:1px solid transparent;padding:4px 6px;border-radius:8px}
.langswitch a[aria-current="true"]{border-color:var(--accent);color:var(--accent)}
.langseparator{opacity:.4}

.socials{display:flex;gap:10px}
.socials a {
  width:28px;
  height:28px;
  border:1px solid var(--line);
  border-radius:8px;
  display:grid;
  place-items:center;
  transition:var(--transition);
  color: var(--accent);
}
.socials a svg { fill: currentColor; }
.socials a:hover {
  border-color: var(--accent);
  background: rgba(255,111,0,0.08);
  transform: translateY(-1px);
}

/* Main nav */
.navbar{background:var(--white);border-bottom:1px solid var(--line);position:relative;z-index:20}
.navbar .inner{display:flex;align-items:center;gap:12px;padding:0 16px}
.navbar .menu{display:flex;gap:0;margin:0;padding:0;list-style:none;width:100%}
.navbar .menu > li{position:relative;display:flex;align-items:stretch}
.navbar .menu > li + li{border-left:1px solid var(--line)}
.navbar a{display:flex;align-items:center;gap:8px;padding:14px 18px;color:#4b5563;position:relative;transition:var(--transition)}
.navbar a .icon{font-size:16px;opacity:.75}
.navbar .menu > li.current-menu-item > a,
.navbar .menu > li.current_page_item > a{color:var(--accent);font-weight:600}
.navbar a:hover{filter:brightness(.9)}
.navbar a::after{content:"";position:absolute;left:0;bottom:6px;height:2px;width:0;background:var(--accent);transition:width .25s ease}
.navbar a:hover::after{width:100%}

/* Submenu (bullet-proof reset) */
.navbar .menu li ul{
  position:absolute;left:0;top:100%;
  min-width:220px;background:var(--white);
  border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow);
  display:none;z-index:9;
  list-style:none; list-style-type:none;
  margin:0; padding:6px 0;
}
.navbar .menu li ul li{list-style:none; margin:0; padding:0}
.navbar .menu li ul li::marker{content:""}
.navbar .menu li ul li::before{content:none !important}
.navbar .menu li:focus-within > ul,
.navbar .menu li:hover > ul{display:block}
.navbar .menu li ul li + li{border-top:1px solid var(--line)}
.navbar .menu li ul a{padding:10px 14px}

/* Responsive nav (mobile tidy) */
.mobile-toggle{
  display:none;
  margin-left:auto;
  background:#fff;
  border:1px solid var(--line);
  border-radius:10px;
  padding:8px 10px;
  position:relative;
  z-index:21; /* above slider */
}

@media (max-width:900px){
  /* Topbar wraps cleanly; lang+socials align right on their own row */
  .topbar .inner{flex-wrap:wrap; row-gap:8px}
  .brand .logo{width:48px;height:48px}
  .brand .title{font-size:16px;line-height:1.25}
  .brand .tagline{font-size:11px}
  .topbar .right{margin-left:0;width:100%;justify-content:flex-end;gap:12px}

  .mobile-toggle{display:inline-flex}

  .navbar .menu{
    display:none;
    flex-direction:column;
    width:100%;
    background:var(--white);
    border:1px solid var(--line);
    border-radius:12px;
    margin:8px 0 10px 0;
    overflow:hidden;
  }
  .navbar .menu.open{display:flex}

  .navbar .menu > li + li{
    border-left:none;
    border-top:1px solid var(--line);
  }

  /* full-width touch targets, suppress underline animation */
  .navbar a{width:100%;padding:14px}
  .navbar a::after{display:none}

  /* submenus render inline */
  .navbar .menu li ul{
    position:static;border:none;box-shadow:none;display:none;
    list-style:none;list-style-type:none;margin:0;padding:6px 0;
  }
  .navbar .menu li.expanded > ul{display:block}
}

/* Slider */
#gov-slider-wrap{margin:0}

/* Sections */
.section{padding:18px 16px}
.section h2{font-size:18px;margin:0 0 12px 0}

/* Grid utilities */
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
@media (max-width:1024px){.cards{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.cards{grid-template-columns:1fr}}
.card{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--white);transition:var(--transition)}
.card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
.card .content{padding:12px}
.card h3{margin:0 0 6px 0;font-size:16px}
.card p{margin:0;color:var(--muted);font-size:14px}
.card .meta{margin-top:8px;font-size:12px;color:#6b7280}

/* Activity card layout */
.activity-card h3{padding:12px 12px 0 12px}
.activity-card .imgwrap img{width:100%;aspect-ratio:16/9;object-fit:cover}
.activity-card .content{padding:10px 12px 12px 12px}

/* Messages grid */
.msg-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
@media (max-width:900px){.msg-grid{grid-template-columns:1fr}}
.msg-card .imgwrap img{width:100%;aspect-ratio:4/3;object-fit:cover}
.msg-card .title{font-weight:700;margin:8px 12px 6px 12px}
.msg-card .body{margin:0 12px 12px 12px;color:var(--muted);font-size:14px}

/* Footer */
.site-footer{border-top:1px solid var(--line);background:var(--white);color:var(--muted);padding:20px 16px;font-size:13px}
