/*
Theme Name: DAV23 Military
Theme URI: https://dav23.com/
Author: DAV Chapter 23
Description: Clean military-style theme for DAV Chapter 23. Built for fast editing with WordPress blocks and DAV23 plugins.
Version: 1.0.0
License: GPLv2 or later
Text Domain: dav23-military
*/

:root{
  --dav23-bg:#0b1220;
  --dav23-surface:#0f172a;
  --dav23-surface-2:#111827;
  --dav23-border:#243045;
  --dav23-text:#e5e7eb;
  --dav23-muted:#a3aab8;
  --dav23-accent:#60a5fa;
  --dav23-accent-2:#22c55e;
  --dav23-danger:#ef4444;
}

body{
  margin:0;
  background:var(--dav23-bg);
  color:var(--dav23-text);
  font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;
  line-height:1.6;
}

a{ color:var(--dav23-accent); text-decoration:none; }
a:hover{ text-decoration:underline; }

.container{ max-width:1100px; margin:0 auto; padding:1rem; }

.site-header{
  background:linear-gradient(180deg,#020617, #0b1220);
  border-bottom:1px solid var(--dav23-border);
}

.brand{
  display:flex;
  gap:.75rem;
  align-items:center;
}

.brand .site-title{
  font-size:1.15rem;
  margin:0;
}

.brand .site-desc{
  margin:0;
  color:var(--dav23-muted);
  font-size:.95rem;
}

.nav{
  margin-top:.75rem;
  display:flex;
  flex-wrap:wrap;
  gap:.75rem 1rem;
}

.nav a{
  padding:.4rem .6rem;
  border:1px solid transparent;
  border-radius:.5rem;
}

.nav a:hover{
  border-color:var(--dav23-border);
  background:rgba(255,255,255,.02);
  text-decoration:none;
}

.hero{
  border:1px solid var(--dav23-border);
  border-radius:1rem;
  background:linear-gradient(135deg,rgba(96,165,250,.12),rgba(34,197,94,.06));
  padding:1.25rem;
  margin:1rem 0;
}

.grid{
  display:grid;
  grid-template-columns:repeat(12,1fr);
  gap:1rem;
}

.col-12{ grid-column:span 12; }
.col-8{ grid-column:span 8; }
.col-6{ grid-column:span 6; }
.col-4{ grid-column:span 4; }

@media (max-width:900px){
  .col-8,.col-6,.col-4{ grid-column:span 12; }
}

.card{
  background:var(--dav23-surface);
  border:1px solid var(--dav23-border);
  border-radius:1rem;
  padding:1rem;
}

.card h2,.card h3{ margin-top:0; }

.badge{
  display:inline-block;
  border:1px solid var(--dav23-border);
  padding:.15rem .45rem;
  border-radius:999px;
  font-size:.8rem;
  color:var(--dav23-muted);
}

.btn{
  display:inline-block;
  padding:.55rem .85rem;
  border-radius:.75rem;
  border:1px solid var(--dav23-border);
  background:rgba(255,255,255,.03);
  color:var(--dav23-text);
  text-decoration:none;
}
.btn:hover{ text-decoration:none; background:rgba(255,255,255,.06); }

.btn-primary{ border-color:rgba(96,165,250,.5); }
.btn-success{ border-color:rgba(34,197,94,.5); }
.btn-danger{ border-color:rgba(239,68,68,.5); }

.site-footer{
  margin-top:2rem;
  border-top:1px solid var(--dav23-border);
  background:#020617;
  color:var(--dav23-muted);
  padding:1.5rem 0;
}

.dav23-helpbar{
  position:fixed;
  left:0; right:0; bottom:0;
  z-index:9999;
  background:#0b1220;
  border-top:1px solid var(--dav23-border);
  padding:.6rem .75rem;
}

.dav23-helpbar .wrap{
  max-width:1100px;
  margin:0 auto;
  display:flex;
  gap:.75rem;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
}

.dav23-helpbar strong{ color:var(--dav23-text); }
.dav23-helpbar .links{ display:flex; gap:.5rem; flex-wrap:wrap; }

.dav23-event-meta{
  display:flex;
  flex-wrap:wrap;
  gap:.5rem 1rem;
  color:var(--dav23-muted);
  font-size:.95rem;
}

.dav23-calendar{
  width:100%;
  border-collapse:collapse;
}
.dav23-calendar th, .dav23-calendar td{
  border:1px solid var(--dav23-border);
  vertical-align:top;
  padding:.5rem;
  min-height:92px;
}
.dav23-calendar th{
  background:#020617;
  font-weight:600;
}
.dav23-calendar .daynum{
  font-size:.85rem;
  color:var(--dav23-muted);
}
.dav23-calendar .ev{
  margin:.3rem 0;
  padding:.25rem .35rem;
  border-radius:.5rem;
  border:1px solid var(--dav23-border);
  background:rgba(255,255,255,.02);
  font-size:.85rem;
}
