/*
Theme Name: Planespotter
Description: Foto-Theme für Planespotter. Eigener Beitragstyp "Spotting" mit Kennzeichen, Typ, Flughafen und Datum, Filter nach Kategorie und Großansicht.
Author: Planespotter
Version: 1.11.0
Requires at least: 6.0
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: planespotter
*/
:root{--bg:#e8ecef;--surface:#f6f8f9;--ink:#18222d;--mute:#5b6773;--line:#c9d1d8;--acc:#e3b21c;--sky1:#9db6ca;--sky2:#d9e4ec;--frame:#18222d;--frame-w:2px}
@media (prefers-color-scheme:dark){:root{--bg:#141b23;--surface:#1c2631;--ink:#e8edf1;--mute:#93a0ac;--line:#2d3945;--sky1:#2b4258;--sky2:#5a7690;--frame:#c9d1d8}}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font:400 17px/1.6 "Barlow",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;padding-bottom:env(safe-area-inset-bottom,0px)}
a{color:inherit}
img{max-width:100%;height:auto;display:block}
:focus-visible{outline:3px solid var(--acc);outline-offset:2px}
.cond,.logo,h1,h2,h3,.plate b,.tile b,.chip{font-family:"Barlow Condensed","Arial Narrow","Roboto Condensed","Helvetica Neue",Arial,sans-serif}
.wrap{max-width:1200px;margin:0 auto;padding:0 20px}
.screen-reader-text{position:absolute;left:-9999px}
.site-header{padding:calc(14px + env(safe-area-inset-top,0px)) 0 14px}
.head-main{display:flex;justify-content:space-between;align-items:center;gap:12px 28px;flex-wrap:wrap}
.logo{font-weight:700;font-size:28px;line-height:1;text-decoration:none;letter-spacing:.02em}
.logo span{background:var(--acc);color:#18222d;padding:2px 8px;margin-right:8px}
.main-nav ul{list-style:none;margin:0;padding:0;display:flex;gap:22px;flex-wrap:wrap}
.main-nav a{text-decoration:none;color:var(--mute);font-weight:500}
.main-nav a:hover,.main-nav .current-menu-item a{color:var(--ink)}
.main-nav .current-menu-item a{border-bottom:3px solid var(--acc)}
.ph{background:linear-gradient(170deg,var(--sky1),var(--sky2));display:block;width:100%}
.ph img{width:100%}
.hero{background:var(--surface)}
.hero .ph img{width:100%;aspect-ratio:16/8;object-fit:cover}
.plate{display:grid;grid-template-columns:repeat(3,1fr);border-top:6px solid var(--acc);background:var(--surface)}
.plate div{padding:14px 18px;border-right:1px solid var(--line)}
.plate div:last-child{border:0}
.plate small{display:block;color:var(--mute);font-size:14px}
.plate b{font-weight:700;font-size:26px;line-height:1.2;font-variant-numeric:tabular-nums}
h1{font-weight:700;font-size:clamp(34px,6vw,64px);line-height:1;margin:40px 0 10px;max-width:18ch}
h2{font-weight:700;font-size:30px;line-height:1.1;margin:0 0 12px}
.lead{color:var(--mute);max-width:56ch;margin:0 0 32px}
.bar{display:flex;gap:10px;flex-wrap:wrap;margin:36px 0 20px;align-items:center}
.bar h2{margin:0 18px 0 0}
.chip{font-weight:500;font-size:18px;color:var(--ink);background:var(--surface);border:1px solid var(--line);padding:4px 16px;border-radius:999px;cursor:pointer}
.chip[aria-pressed="true"]{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.grid{columns:3 280px;column-gap:16px}
.tile{break-inside:avoid;margin:0 0 16px;background:var(--surface);cursor:pointer;border:0;padding:0;width:100%;text-align:left;font:inherit;color:inherit;display:block}
.mini{display:grid;grid-template-columns:1fr 1fr;border-top:5px solid var(--acc)}
.mini span{display:block;padding:8px 12px;border-bottom:1px solid var(--line)}
.mini span:nth-child(odd){border-right:1px solid var(--line)}
.mini span:last-child{grid-column:1/-1;border-right:0;border-bottom:0}
.mini small{display:block;color:var(--mute);font-size:13px;line-height:1.3}
.mini b{display:block;font-weight:700;font-size:19px;line-height:1.2;font-variant-numeric:tabular-nums}
.tile[hidden]{display:none}
.about{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin:56px 0;padding-top:32px;border-top:1px solid var(--line)}
dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:6px 18px}
dt{color:var(--mute)}dd{margin:0}
.entry{max-width:70ch;margin:30px 0}
.entry img{margin:20px 0}
.single-photo img{width:100%}
.pager{display:flex;justify-content:space-between;margin:28px 0;gap:16px}
.site-footer{border-top:1px solid var(--line);padding:22px 0 30px;color:var(--mute);display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;font-size:15px}
.site-footer ul{list-style:none;display:flex;gap:16px;margin:0;padding:0}
dialog{border:0;padding:0;background:var(--surface);color:var(--ink);width:min(1800px,97vw);max-height:97vh;overflow:auto}
dialog::backdrop{background:rgba(10,15,20,.85)}
dialog .cap{padding:14px 18px;display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap}
dialog button,dialog a.btn{font:500 16px inherit;background:var(--ink);color:var(--bg);border:0;padding:8px 18px;cursor:pointer;text-decoration:none}
dialog img{width:100%;max-height:86vh;object-fit:contain;background:#000;cursor:zoom-out}
@media(max-width:720px){.plate{grid-template-columns:1fr 1fr}.plate div:nth-child(2){border-right:0}.plate div:nth-child(3){grid-column:1/-1}.plate div:nth-child(-n+2){border-bottom:1px solid var(--line)}.about{grid-template-columns:1fr}.hero .ph img{aspect-ratio:4/3}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}


/* Dünner Rahmen um die Bilder */
.ph{border:var(--frame-w) solid var(--frame)}
dialog img{border:var(--frame-w) solid var(--frame)}

.taglinks{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0 0}
.taglinks a{font:500 18px "Barlow Condensed","Arial Narrow",Arial,sans-serif;background:var(--surface);border:1px solid var(--line);padding:4px 16px;border-radius:999px;text-decoration:none}
.taglinks a:hover{border-color:var(--ink)}

/* Logo */
.logo{color:var(--ink);display:block;line-height:0}
.logo img{height:56px;width:auto;display:block}
@media(max-width:720px){.logo img{height:44px}}

/* Airline-Auswahl als Aufklappliste */
.sel{margin-left:auto;display:block}
.sel select{--arrow:var(--ink);appearance:none;-webkit-appearance:none;font:500 18px "Barlow Condensed","Arial Narrow",Arial,sans-serif;color:var(--ink);background-color:var(--surface);border:1px solid var(--line);border-radius:999px;padding:4px 40px 4px 18px;cursor:pointer;
background-image:linear-gradient(45deg,transparent 50%,var(--arrow) 50%),linear-gradient(135deg,var(--arrow) 50%,transparent 50%);background-position:calc(100% - 22px) 55%,calc(100% - 16px) 55%;background-size:6px 6px;background-repeat:no-repeat}
.sel select.on{--arrow:var(--bg);background-color:var(--ink);color:var(--bg);border-color:var(--ink)}
.sel select:hover{border-color:var(--ink)}
@media(max-width:720px){.sel{margin-left:0;width:100%}.sel select{width:100%}}

/* Zurück zur Galerie */
.back{margin:0 0 14px}
.back a,.pager a{display:inline-block;font:500 18px "Barlow Condensed","Arial Narrow",Arial,sans-serif;background:var(--surface);border:1px solid var(--line);padding:4px 16px;border-radius:999px;text-decoration:none}
.back a:hover,.pager a:hover{border-color:var(--ink)}
.pager{align-items:center}

/* Größere Darstellung auf der Fotoseite */
body.single-foto .wrap{max-width:1600px}
.single-photo a.ph{cursor:pointer}

/* Kacheln als Links, Filter als Links, Seitenzahlen */
a.tile{text-decoration:none}
a.chip{text-decoration:none;display:inline-block}
.chip.on{background:var(--ink);color:var(--bg);border-color:var(--ink)}
form.sel{margin-left:auto}
.pagination ul{list-style:none;display:flex;gap:8px;flex-wrap:wrap;justify-content:center;padding:0;margin:26px 0 0}
.pagination a,.pagination span{display:inline-block;min-width:40px;text-align:center;font:500 18px "Barlow Condensed","Arial Narrow",Arial,sans-serif;background:var(--surface);border:1px solid var(--line);padding:4px 14px;border-radius:999px;text-decoration:none;color:var(--ink)}
.pagination a:hover{border-color:var(--ink)}
.pagination .current{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.pagination .dots{border-color:transparent;background:none}
.nores{color:var(--mute)}
@media(max-width:720px){form.sel{margin-left:0;width:100%}}

.pager span:last-child{text-align:right}

/* Ausrüstung */
.gear-row{display:grid;grid-template-columns:100px 1fr;gap:6px 16px;padding:12px 0;border-top:1px solid var(--line)}
.gear-row:first-child{border-top:0;padding-top:4px}
.gear-label{color:var(--mute);padding-top:4px}
.gear-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.gear-list li{font:500 17px "Barlow Condensed","Arial Narrow",Arial,sans-serif;background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:3px 14px}
@media(max-width:720px){.gear-row{grid-template-columns:1fr}}

/* Menü: Symbol mit Text, auf dem Handy als Knopf */
.main-nav{position:relative}
.main-nav .navico{gap:20px;align-items:center}
.navico a{display:flex;align-items:center;gap:6px;color:var(--mute);font-weight:500;padding:6px 4px;border-bottom:3px solid transparent;text-decoration:none}
.navico a svg{width:18px;height:18px;flex:none}
.main-nav .navico a:hover{color:var(--ink)}
.main-nav .navico a[aria-current]{color:var(--ink);border-bottom-color:var(--acc)}
.menu-btn{display:none;align-items:center;gap:8px;background:var(--acc);color:#18222d;border:0;border-radius:6px;padding:6px 14px 6px 10px;font:500 17px "Barlow Condensed","Arial Narrow",Arial,sans-serif;cursor:pointer}
@media(max-width:720px){
.menu-btn{display:inline-flex}
.main-nav .navico{display:none}
.main-nav.open .navico{display:flex;flex-direction:column;align-items:stretch;gap:2px;position:absolute;right:0;top:calc(100% + 8px);min-width:190px;background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:8px 14px;z-index:20}
.main-nav .navico a{padding:10px 4px;border-bottom:0}
.main-nav .navico a[aria-current]{border-bottom:0;box-shadow:inset 3px 0 0 var(--acc);padding-left:10px}
}

/* Über mich und Ausrüstung als Karten */
.about{display:block;margin:56px 0;padding-top:32px;border-top:1px solid var(--line)}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}
.card{background:var(--surface);border:1px solid var(--line);border-top:4px solid var(--acc);border-radius:8px;padding:16px 18px}
.card .ch{display:flex;align-items:center;gap:8px;font-size:22px;margin:0 0 10px}
.card .ch svg{width:22px;height:22px;flex:none;fill:none;stroke:var(--acc);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.card p{margin:0;line-height:1.55}
.card ul{list-style:none;margin:0;padding:0}
.card li{padding:7px 0;border-top:1px solid var(--line)}
.card li:first-child{border-top:0;padding-top:0}
