
:root{--green-dark:#12351f;--green:#1f6b3a;--green-light:#dff3e6;--gold:#d6a83f;--dark:#151515;--text:#333;--light:#f7f7f4;--white:#fff;--shadow:0 15px 40px rgba(0,0,0,.12);--radius:22px}*{box-sizing:border-box}body{margin:0;font-family:Arial,sans-serif;background:var(--light);color:var(--text)}.container{width:min(1180px,92%);margin:0 auto}.header{background:rgba(255,255,255,.97);position:sticky;top:0;z-index:100;box-shadow:0 4px 25px rgba(0,0,0,.08)}.navbar{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:20px}.logo a{font-weight:900;color:var(--green-dark);text-decoration:none;font-size:1.15rem}nav{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}nav a{color:var(--dark);text-decoration:none;padding:10px 14px;border-radius:999px;font-weight:700;font-size:14px}nav a:hover,nav a.active{background:var(--green);color:#fff}.hero{background:linear-gradient(120deg,rgba(18,53,31,.94),rgba(31,107,58,.64));color:#fff;padding:75px 0}.hero h1{font-size:clamp(2rem,5vw,4rem);margin:0 0 14px;font-weight:900}.hero p{font-size:1.1rem;line-height:1.7;max-width:760px}.section{padding:55px 0}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:24px}.card{background:#fff;border-radius:var(--radius);box-shadow:var(--shadow);padding:26px;border:1px solid rgba(31,107,58,.1)}.card h3{margin:0 0 10px;color:var(--green-dark)}.muted{color:#666;line-height:1.7}.btn{display:inline-block;border:0;background:var(--green);color:#fff;text-decoration:none;border-radius:999px;padding:12px 18px;font-weight:800;cursor:pointer}.btn.secondary{background:#eee;color:#222}.table{width:100%;border-collapse:collapse;background:#fff;border-radius:18px;overflow:hidden;box-shadow:var(--shadow)}.table th,.table td{padding:14px;border-bottom:1px solid #eee;text-align:left;vertical-align:top}.table th{background:var(--green-dark);color:#fff}.form{display:grid;gap:14px}.form input,.form textarea,.form select{width:100%;padding:13px 14px;border:1px solid #ddd;border-radius:14px;font:inherit}.form textarea{min-height:140px}.notice{padding:14px 16px;border-radius:16px;margin-bottom:20px;background:var(--green-light);font-weight:700}.error{background:#ffe6e6}.gallery-img{width:100%;height:220px;object-fit:cover;border-radius:18px}.small{font-size:.9rem}.badge{display:inline-block;background:var(--green-light);color:var(--green-dark);padding:6px 12px;border-radius:999px;font-weight:800}.live-board{font-size:clamp(2rem,8vw,5.5rem);font-weight:900;color:var(--green-dark)}@media(max-width:760px){.navbar{align-items:flex-start;flex-direction:column;padding:14px 0}nav{justify-content:flex-start}.table{font-size:.92rem}.section{padding:35px 0}}

#nav-links.show{display:flex;}
.burger{display:none;cursor:pointer;font-size:30px;}
@media(max-width:900px){.burger{display:block;}#nav-links{display:none;flex-direction:column;width:100%;gap:8px;}#nav-links.show{display:flex;}}

.notice.error{background:#ffe8e8;color:#7a1111;border-color:#f3b6b6}.small{font-size:.86rem;color:#666}.muted{color:#666}.form label{font-weight:700;color:#333}

/* Schützenfest Live + Chronik Timeline */
.live-hero{background:linear-gradient(120deg,rgba(18,53,31,.96),rgba(31,107,58,.72));color:#fff;padding:72px 0;}
.live-grid{display:grid;grid-template-columns:1fr auto;gap:28px;align-items:center;}
.badge-live,.badge-next,.timeline-type{display:inline-block;border-radius:999px;padding:8px 14px;font-weight:900;font-size:.88rem;}
.badge-live{background:rgba(214,168,63,.22);border:1px solid rgba(214,168,63,.45);color:#fff;}
.badge-next{background:#dff3e6;color:#12351f;}
.live-clock-card{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22);border-radius:22px;padding:24px;text-align:center;min-width:230px;}
.live-clock{font-size:clamp(2rem,5vw,4rem);font-weight:900;letter-spacing:1px;}
.live-current-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:22px;margin-bottom:22px;}
.live-now-card{border-left:8px solid #d6a83f;}
.live-next-card{border-left:8px solid #1f6b3a;}
.live-meta,.muted{color:#666;font-weight:700;}
.countdown{font-size:1.2rem;font-weight:900;color:#12351f;background:#dff3e6;border-radius:16px;padding:12px 14px;}
.live-list{display:grid;gap:10px;}
.live-row{display:grid;grid-template-columns:190px 1fr 170px;gap:14px;align-items:center;padding:14px 16px;border-radius:16px;background:#f7f7f4;border:1px solid rgba(31,107,58,.1);}
.live-row.past{opacity:.58;}
.live-row.future{background:#fff;}
.timeline{position:relative;display:grid;gap:24px;margin-top:22px;}
.timeline::before{content:"";position:absolute;left:86px;top:0;bottom:0;width:4px;background:#dff3e6;border-radius:999px;}
.timeline-item{display:grid;grid-template-columns:170px 1fr;gap:24px;position:relative;}
.timeline-year{align-self:start;background:#12351f;color:#fff;border-radius:999px;padding:12px 18px;text-align:center;font-weight:900;position:relative;z-index:2;box-shadow:0 8px 25px rgba(0,0,0,.12);}
.timeline-content{margin:0;}
.timeline-topline{display:flex;gap:10px;align-items:center;flex-wrap:wrap;color:#666;font-weight:800;margin-bottom:8px;}
.timeline-type{background:#dff3e6;color:#12351f;padding:6px 12px;}
.timeline-img{width:100%;max-height:340px;object-fit:cover;border-radius:18px;margin:12px 0;box-shadow:0 10px 28px rgba(0,0,0,.12);}
.chronik-filter{display:grid;grid-template-columns:2fr 1fr 1fr auto auto;gap:10px;align-items:center;}
@media(max-width:800px){.live-grid,.live-current-grid,.timeline-item,.chronik-filter{grid-template-columns:1fr;}.timeline::before{display:none;}.live-row{grid-template-columns:1fr;}.live-clock-card{text-align:left;}}


/* Mobile-Optimierung v2 */
html{max-width:100%;overflow-x:hidden;-webkit-text-size-adjust:100%;}
body{max-width:100%;overflow-x:hidden;}
img,video,iframe{max-width:100%;height:auto;}
button,input,select,textarea{font-size:16px;}
.card,.table,.hero,.section{overflow-wrap:anywhere;}
.table-wrap{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:18px;}
.table{min-width:680px;}

@media(max-width:900px){
  .container{width:min(100% - 28px,1180px);}
  .header{position:sticky;top:0;}
  .navbar{min-height:auto;flex-direction:column;align-items:stretch;gap:12px;padding:12px 0;}
  .logo a{display:block;font-size:1.05rem;line-height:1.25;}
  .burger{display:flex!important;align-items:center;justify-content:center;align-self:flex-end;margin-top:-42px;width:44px;height:44px;border-radius:14px;background:var(--green-light);color:var(--green-dark);font-size:27px;font-weight:900;}
  .hero{padding:46px 0;}
  .hero h1{font-size:clamp(2rem,10vw,3.1rem);line-height:1.06;}
  .hero p{font-size:1rem;line-height:1.6;}
  .section{padding:34px 0;}
  .grid{grid-template-columns:1fr;gap:16px;}
  .card{padding:20px;border-radius:18px;}
  .btn{width:100%;text-align:center;margin-top:6px;}
  .form{gap:12px;}
  .form input,.form textarea,.form select{min-height:48px;border-radius:14px;}
  .table{display:block;width:100%;overflow-x:auto;white-space:nowrap;box-shadow:none;border:1px solid rgba(31,107,58,.12);}
  .table th,.table td{padding:12px 10px;}
  .live-current-grid,.live-grid{grid-template-columns:1fr!important;}
  .live-row{grid-template-columns:1fr!important;gap:8px;}
  .timeline{gap:18px;}
  .timeline::before{display:none!important;}
  .timeline-item{grid-template-columns:1fr!important;gap:10px;}
  .timeline-year{text-align:left;width:max-content;max-width:100%;}
  .chronik-filter{grid-template-columns:1fr!important;}
}

@media(max-width:520px){
  .container{width:min(100% - 20px,1180px);}
  .card{padding:17px;border-radius:16px;}
  .hero{padding:38px 0;}
  .hero h1{font-size:2rem;}
  .badge{font-size:.82rem;}
  .live-board{font-size:2.2rem;}
  .live-clock-card{min-width:0;padding:18px;}
}
