/* ---------------------------------------------------------------------------
   Fahrtbriefing — Layout. Phone first, iPad second, desktop as a widened iPad.
   Tokens and component idiom from base.css (GaforCast family).
   --------------------------------------------------------------------------- */

.app{min-height:100vh;display:flex;flex-direction:column;}
.main{flex:1;padding:12px 12px calc(28px + var(--safe-b));max-width:1480px;width:100%;margin:0 auto;}
@media (min-width:600px){ .main{padding:14px 16px 40px;} }

/* ---------- header ---------- */
header.topbar .btn.primary{font-weight:400;}   /* 0.12.8: «Freigeben als Final» nicht fett */
header.topbar{position:sticky;top:0;z-index:60;background:var(--bg);
  padding:calc(8px + var(--safe-t)) 12px 8px;border-bottom:1px solid var(--line);
  display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.title-block{flex:1;min-width:0;display:flex;flex-direction:column;}
.title-block h1{font-size:17px;margin:1px 0 0;font-weight:600;letter-spacing:-.01em;color:var(--text-strong);
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.title-block .sub{margin:1px 0 0;font-size:11.5px;color:var(--text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.title-block .sub .rev{font-family:var(--mono);}
.header-tools{display:flex;gap:6px;align-items:center;flex-wrap:wrap;justify-content:flex-end;}
.mainnav{display:flex;gap:4px;align-items:center;}
.mainnav[hidden]{display:none;}
.mainnav a{display:inline-block;padding:7px 12px;border-radius:999px;border:1px solid var(--line);color:var(--text);text-decoration:none;font-size:13px;font-family:var(--mono);letter-spacing:.02em;white-space:nowrap;background:var(--panel);}
.mainnav a:hover{border-color:var(--amber);color:var(--amber);}
.mainnav a.on{background:var(--text-strong);color:var(--bg);border-color:var(--text-strong);}
.mainnav a.primary{background:var(--amber);color:#fff;border-color:var(--amber);font-weight:400;}   /* 0.12.8: nicht fett */
.mainnav a.primary:hover{filter:brightness(1.08);color:#fff;}
.header-logo{height:34px;width:auto;object-fit:contain;display:none;}
@media (min-width:600px){ .header-logo{display:block;} .title-block h1{font-size:19px;} }
.ver{font-family:var(--mono);font-size:10.5px;font-weight:500;letter-spacing:.02em;color:var(--text-dim);
  background:transparent;border:1px solid var(--line);border-radius:5px;padding:1px 6px;vertical-align:3px;cursor:pointer;}
.ver:hover{color:var(--amber);border-color:var(--amber);}
.modebadge{font-family:var(--mono);font-size:10px;color:var(--text-dim);border:1px dashed var(--line);border-radius:5px;padding:1px 6px;}
.modebadge.local{color:var(--gafor-d);border-color:var(--gafor-d);}

.menu{position:absolute;right:12px;top:calc(100% - 4px);background:var(--panel);border:1px solid var(--line);
  border-radius:10px;box-shadow:0 10px 30px rgba(0,0,0,.25);min-width:220px;z-index:80;padding:6px;display:flex;flex-direction:column;}
.menu button{background:none;border:0;color:var(--text);text-align:left;padding:10px 12px;font-size:13.5px;border-radius:7px;cursor:pointer;}
.menu button:hover{background:var(--panel-2);}
.menu .sep{height:1px;background:var(--line-soft);margin:4px 0;}
.menu .menu-user{font-family:var(--mono);font-size:11px;color:var(--text-dim);padding:6px 12px;letter-spacing:.04em;}

/* ---------- Zugangssperre ---------- */
.gate{position:fixed;inset:0;z-index:2000;background:var(--bg);display:flex;align-items:center;justify-content:center;padding:24px;}
.gate-box{width:100%;max-width:320px;text-align:center;display:flex;flex-direction:column;gap:12px;}
.gate-ver{position:absolute;left:14px;bottom:10px;font-family:var(--mono);font-size:10.5px;color:var(--text-dim);opacity:.75;letter-spacing:.02em}   /* 0.12.6: Version diskret unten links */
.gate-logo{height:44px;width:auto;object-fit:contain;margin:0 auto 4px;opacity:.94;}
.gate-box h1{margin:0;font-size:21px;font-weight:600;color:var(--text-strong);letter-spacing:-.01em;}
.gate-box p{margin:0;font-size:12.5px;line-height:1.6;color:var(--text-dim);}
.gate-box input{width:100%;height:44px;text-align:center;font-family:var(--mono);font-size:19px;letter-spacing:.4em;text-indent:.4em;
  background:var(--panel);border:1px solid var(--line);border-radius:9px;color:var(--text-strong);}
.gate-box input:focus{border-color:var(--amber);outline:none;}
.gate-box input#gateUser{font-family:var(--sans);font-size:15px;letter-spacing:0;text-indent:0;}
.gate-box input::placeholder{letter-spacing:0;text-indent:0;font-family:var(--sans);font-size:13px;opacity:.55;}
.gate-box .btn{height:42px;}
.gate-err{font-size:12px;color:var(--gafor-x);}
.gate-hint{font-size:12px;color:var(--gafor-d);}

/* ---------- forms ---------- */
.frow{display:grid;grid-template-columns:1fr;gap:10px 12px;margin-bottom:10px;align-items:end;}   /* Felder unten bündig, auch bei zweizeiligen Beschriftungen */
@media (min-width:600px){ .frow{grid-template-columns:repeat(2,minmax(0,1fr));} .frow.c3{grid-template-columns:repeat(3,minmax(0,1fr));} .frow.c4{grid-template-columns:repeat(4,minmax(0,1fr));} }
@media (min-width:1100px){ .frow.c4{grid-template-columns:repeat(4,minmax(0,1fr));} }
.f{display:flex;flex-direction:column;gap:4px;min-width:0;}
.f > label, .lbl{font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim);}
.frow .f > label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.f.span2{grid-column:span 2;}
.wiz .card-body > .f,.wiz .card-body > .row-actions,.wiz .card-body > .note{margin-bottom:10px;}   /* einzeln stehende Felder im Ablauf: Abstand wie Zeilen */
.wiz .frow.top{align-items:start;}
.frow.top > .f > label:first-child{display:flex;align-items:center;min-height:24px;margin-bottom:2px}   /* gleiche Höhe wie .lblrow mit «+» → Kästchen bündig */
@media (min-width:600px){ .frow.meet{grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);} }
input[type="text"],input[type="search"],input[type="number"],input[type="date"],input[type="time"],input[type="password"],input[type="email"],input[type="tel"],input[type="url"],select,textarea{
  width:100%;min-height:40px;background:var(--panel-2);border:1px solid var(--line);border-radius:8px;color:var(--text);
  font-family:var(--sans);font-size:15px;padding:8px 11px;outline:none;-webkit-appearance:none;appearance:none;}
input[type="number"],input[type="date"],input[type="time"]{font-family:var(--mono);font-size:14px;}
select{background-image:linear-gradient(45deg,transparent 50%,var(--text-dim) 50%),linear-gradient(135deg,var(--text-dim) 50%,transparent 50%);
  background-position:calc(100% - 16px) 50%,calc(100% - 11px) 50%;background-size:5px 5px;background-repeat:no-repeat;padding-right:30px;}
textarea{min-height:72px;line-height:1.45;resize:vertical;}
input:focus,select:focus,textarea:focus{border-color:var(--amber);}
input:read-only,.ro{background:var(--panel);color:var(--text-dim);}
.inline{display:flex;gap:8px;align-items:center;flex-wrap:wrap;}
.inline > *{flex:1;min-width:0;}
.inline > .btn{flex:0 0 auto;}
.unit{font-family:var(--mono);font-size:11px;color:var(--text-dim);white-space:nowrap;}
.check{display:inline-flex;align-items:center;gap:7px;font-size:14px;padding:6px 10px 6px 0;cursor:pointer;min-height:40px;}
.check input{width:20px;height:20px;accent-color:var(--amber);margin:0;}
.chips{display:flex;flex-wrap:wrap;gap:6px;}
.chip.lg{font-size:13px;padding:8px 12px;font-family:var(--sans);min-height:40px;}
.warn{color:var(--gafor-m);font-size:12.5px;line-height:1.5;}
.ok{color:var(--green);}
.bad{color:var(--temp);}
.muted{color:var(--text-dim);}
.mono{font-family:var(--mono);}
.small{font-size:12px;}
.row-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center;}

/* ---------- Liste ---------- */
.list-head{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:10px;}
.list-head h2{margin:0;font-size:18px;flex:1;}
table.tbl{width:100%;border-collapse:collapse;font-size:13px;}
table.tbl th{font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim);text-align:left;padding:8px 10px;border-bottom:1px solid var(--line);}
table.tbl td{padding:10px;border-bottom:1px solid var(--line-soft);vertical-align:top;}
table.tbl tr:hover td{background:var(--panel-2);}
table.tbl td .sm,.item-box .sm{font-size:11.5px;color:var(--text-dim);font-family:var(--mono);}
.cards-list{display:flex;flex-direction:column;gap:8px;}
.bcard{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);padding:10px 12px;display:flex;flex-direction:column;gap:4px;}
.bcard .t{font-weight:600;color:var(--text-strong);}
.list-sect{font-family:var(--mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim);margin:16px 0 6px;padding-bottom:4px;border-bottom:1px solid var(--line)} .list-sect.archive,.list-sect.running{margin-top:26px} .list-sect.running{color:var(--accent)} table.tbl.list button.amend{border-color:var(--accent);color:var(--accent)}   /* 0.12.10: Laufende Fahrten, Nachtrag-Stift */   /* 0.12.9: Abschnitte der Briefings-Seite */
.bcard .m{font-size:12px;color:var(--text-dim);font-family:var(--mono);}
.tag{display:inline-block;font-family:var(--mono);font-size:10px;letter-spacing:.04em;padding:2px 7px;border-radius:5px;border:1px solid var(--line);color:var(--text-dim);white-space:nowrap;}
.tag.auto{color:var(--dew);border-color:var(--dew);} .tag.calc{color:var(--green);border-color:var(--green);} .tag.half{color:var(--gafor-d);border-color:var(--gafor-d);} .tag.must{color:var(--temp);border-color:var(--temp);} .tag.final{color:var(--green);border-color:var(--green);}
.tag.pre{color:var(--text-dim);} .tag.plan{color:var(--dew);border-color:var(--dew);} .tag.final-phase{color:var(--green);border-color:var(--green);}
.layout-2{display:grid;grid-template-columns:1fr;gap:12px;}
@media (min-width:900px){ .layout-2{grid-template-columns:minmax(0,1fr) 300px;} }

/* ---------- Wizard ---------- */
.wiz{max-width:760px;margin:0 auto;} .wiz.wide{max-width:1140px;}
.steps{display:none;align-items:center;gap:4px;margin:4px 0 14px;font-size:12px;}
@media (min-width:600px){ .steps{display:flex;} }
.step{display:flex;align-items:center;gap:6px;color:var(--text-dim);cursor:default;}
.step .n{width:22px;height:22px;border-radius:50%;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:11px;background:var(--panel);}
.step.done{cursor:pointer;} .step.done .n{background:var(--amber);color:#1a1200;border-color:var(--amber);}
.step.cur{color:var(--text-strong);font-weight:600;} .step.cur .n{border:2px solid var(--amber);}
.step-bar{flex:1;height:1px;background:var(--line);}
.prog{height:4px;background:var(--line-soft);border-radius:2px;margin:6px 0 12px;}
.prog i{display:block;height:4px;background:var(--amber);border-radius:2px;transition:width .2s;}
@media (min-width:600px){ .prog{display:none;} }
.wiz h2{margin:0 0 10px;font-size:18px;}
.wiz .foot{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:14px;}
.wiz .foot .hint{display:none;font-size:11px;color:var(--text-dim);text-align:center;}
@media (min-width:600px){ .wiz .foot .hint{display:block;} }
.wiz .foot .btn{min-width:120px;height:44px;}
.wiz-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;}
.wiz-layout>*{min-width:0;}
@media (min-width:1100px){ .wiz-layout{grid-template-columns:minmax(0,1fr) 240px;} }
.sofar{font-size:12.5px;line-height:1.6;}
.sofar .done{color:var(--text);} .sofar .todo{color:var(--text-dim);}
.map{height:220px;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:var(--panel-2);}
@media (min-width:600px){ .map{height:280px;} }
.results{display:flex;flex-direction:column;gap:4px;margin-top:6px;}
.results button{text-align:left;background:var(--panel-2);border:1px solid var(--line);border-radius:7px;color:var(--text);padding:8px 10px;cursor:pointer;font-size:13.5px;}
.results button:hover{border-color:var(--amber);}
.pax-row{display:grid;grid-template-columns:minmax(0,1fr) 110px 40px;gap:6px;align-items:center;margin-bottom:6px;}
.sched{width:100%;border-collapse:collapse;font-size:14px;}
.sched td{padding:6px 6px;border-bottom:1px solid var(--line-soft);}
.sched td.tm{font-family:var(--mono);width:84px;}
.sched td.tm input{min-height:36px;padding:4px 8px;font-size:14px;}
.sched td.act{width:34px;text-align:right;}
.sched .ov{color:var(--amber);}
.kv{display:grid;grid-template-columns:auto 1fr;gap:3px 12px;font-size:13px;}
.kv .k{color:var(--text-dim);font-family:var(--mono);font-size:11px;letter-spacing:.04em;padding-top:2px;}
.kv .v{color:var(--text-strong);}
.kv .v b{color:var(--text-strong);}

/* ---------- Editor ---------- */
.editor{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;}
.editor>*{min-width:0;}
.panel,.panel-body,.auto-wrap,.autoblock{min-width:0;max-width:100%;}
@media (min-width:900px){ .editor{grid-template-columns:236px minmax(0,1fr);} .editor > .emain{max-height:calc(100vh - var(--topbar-h, 70px) - 8px);overflow-y:auto;scrollbar-gutter:stable;padding-right:6px;overscroll-behavior:contain} .editor > .emain .refresh-all{top:0} }   /* 0.12.8: mittlere Spalte rollt selbst, Rollbalken sichtbar */
@media (min-width:1280px){ .editor{grid-template-columns:236px minmax(0,1fr) 260px;} }
.enav{font-size:13px;}
.enav details{margin-bottom:6px;}
.enav summary{cursor:pointer;font-family:var(--mono);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-strong);padding:7px 4px;border-bottom:1px solid var(--line);margin-bottom:2px;}   /* 0.12.8: Zwischentitel deutlicher */
.enav details.stage>summary{color:var(--pf-stage)}
/* 0.12.13: hängender Einzug der Abschnittstitel (Dreieck | Kennung | Text), offene Pflicht-Panels rot */
.enav summary{display:grid;grid-template-columns:10px auto minmax(0,1fr);column-gap:6px;align-items:start;list-style:none;line-height:1.3}
.enav summary::-webkit-details-marker{display:none} .enav summary::before{content:'▸';font-size:11px;line-height:1.3} .enav details[open]>summary::before{content:'▾'}
.enav summary .sl{white-space:nowrap} .enav .it.must .nm{color:var(--temp)}
/* 0.12.8: Zeile als Raster Punkt · Nummer · Titel – Nummer bricht nicht um, Titel linksbündig, alle gleich gross, weniger Einzug */
.enav .it{display:grid;grid-template-columns:9px auto minmax(0,1fr);align-items:start;column-gap:6px;padding:4px 4px;border-radius:6px;cursor:pointer;color:var(--text);font-size:12.5px;line-height:1.3;}
.enav .it .dot{margin-top:4px}
.enav .it .pno{white-space:nowrap;font-size:12.5px;color:var(--text-dim);margin:0;letter-spacing:.02em}
.enav .legend{display:flex;flex-wrap:wrap;gap:4px 10px;margin-top:8px;font-size:11.5px;color:var(--text-dim)} .enav .legend span{display:inline-flex;align-items:center;gap:4px}
.enav .it:hover{background:var(--panel-2);}
.enav .it.sel{background:var(--panel-2);color:var(--text-strong);font-weight:600;}
.dot{width:9px;height:9px;border-radius:50%;background:var(--gafor-none);flex:0 0 auto;}
.dot.ok{background:var(--green);} .dot.auto{background:var(--dew);} .dot.man{background:var(--gafor-d);} .dot.must{background:var(--temp);} .dot.na{background:var(--gafor-none);}
.enav-wrap{position:sticky;top:calc(var(--topbar-h, 70px) + 4px);max-height:calc(100vh - var(--topbar-h, 70px) - 10px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;padding-right:4px}
@media (max-width:899px){ .enav-wrap{position:static;} .enav{display:flex;flex-wrap:wrap;gap:4px 12px;} .enav details{margin:0;} .enav .note{flex-basis:100%;} }
.sect-title{display:flex;align-items:baseline;gap:10px;font-family:var(--sans);font-size:15px;font-weight:700;color:var(--text-strong);margin:24px 0 10px;padding:7px 12px;border-left:4px solid var(--amber);background:var(--panel-2);border-radius:0 8px 8px 0;}
.sect-title .id{font-family:var(--mono);font-size:13px;color:var(--amber);letter-spacing:.06em;}
.sect-title:first-child,.refresh-all + .sect-title{margin-top:0;}
.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);margin-bottom:10px;scroll-margin-top:80px;}
.panel.must-open{border-color:var(--temp);}
/* Panel-Kopf (0.11): links Nummer + Titel, darunter Stand; rechts Kennzeichen + KI-Knöpfe, darunter der Quell-Link — alle Köpfe gleich strukturiert */
.panel-head{display:flex;align-items:flex-start;gap:8px;padding:6px 12px;min-height:52px;border-bottom:1px solid var(--line-soft);background:var(--panel-2);border-radius:var(--r) var(--r) 0 0;}
.panel-head .lft{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.panel-head .ttl{min-width:0;font-weight:600;color:var(--text-strong);font-size:14px;line-height:1.25;}
.panel-head .src{font-size:11px;color:var(--text-dim);}
.panel-head .rgt{display:flex;flex-direction:column;align-items:flex-end;gap:3px;flex:0 0 auto;max-width:55%}
.panel-head .rrow{display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.panel-head a.srclink{max-width:100%;font-size:10.5px;color:var(--text-dim);text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-family:var(--mono)}
.panel-head a.srclink:hover{color:var(--text);text-decoration:underline}
.ptools{flex-wrap:wrap;gap:6px;margin-bottom:6px;align-items:center}
.ptools .inline{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap}
.ptools::-webkit-scrollbar{display:none}
.ptools .btn.small{height:30px;min-height:30px;padding:0 10px;font-size:12px;flex:0 0 auto}
.ptools .btn.icon.small{width:30px;height:30px;min-height:30px;padding:0}
.ptools input,.ptools select{height:30px;min-height:30px;padding:0 8px;font-size:12.5px;flex:0 0 auto;box-sizing:border-box;width:auto}
.ptools select{padding-right:26px}
.ptools .note,.ptools .status{font-size:12px}
.ptools .inline{gap:4px}
.panel-body{padding:10px 12px;}
.sub{margin-top:8px;border-top:1px dashed var(--line-soft);padding-top:8px;}
.sub .lbl{margin-bottom:4px;display:block;}
details.sub{padding-top:4px;}
details.sub > summary{list-style:none;cursor:pointer;font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim);padding:4px 0;}
details.sub > summary::-webkit-details-marker{display:none;}
details.sub > summary::before{content:'+ ';}
details.sub[open] > summary::before{content:'− ';}
details.sub.extra > summary{color:var(--dew);} details.sub.cmt > summary{color:var(--amber);}
.sub.extra .lbl{color:var(--dew);} .sub.ai .lbl{color:var(--violet);} .sub.cmt .lbl{color:var(--amber);}
.pastebox{border:1px dashed var(--line);border-radius:8px;padding:10px;min-height:60px;background:var(--panel-2);color:var(--text-dim);font-size:13px;cursor:text;outline:none;}
.pastebox:focus,.pastebox.drag{border-color:var(--amber);color:var(--text);}
.imgs{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px;}
.imgs figure{margin:0;max-width:100%;position:relative;}
.imgs img{max-width:100%;max-height:360px;border:1px solid var(--line);border-radius:6px;display:block;}
.imgs figcaption{font-size:11px;color:var(--text-dim);margin-top:3px;}
.imgs .rm{position:absolute;top:4px;right:4px;}
.imgs .cap{min-height:30px;font-size:12px;padding:3px 8px;margin-top:3px;}
.content-text{white-space:pre-wrap;font-size:13.5px;line-height:1.5;}
.side{font-size:13px;}
.side .card-body{padding:10px 12px;}
.side-wrap{position:sticky;top:calc(var(--topbar-h, 70px) + 4px);max-height:calc(100vh - var(--topbar-h, 70px) - 10px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}   /* 0.12.8: unter der Kopfzeile, Titel bleibt sichtbar */
.gonogo .card-body{display:block}   /* 0.12.8: Blöcke untereinander statt dreispaltig */
.gonogo .gn-model{padding-top:4px;border-top:1px dashed var(--line);margin-top:4px}
.side .basics .kv.small{font-size:12.5px;gap:2px 8px} .side .basics label.inline{display:inline-flex;align-items:center;gap:4px;white-space:nowrap} .side .basics .kv.small .v{min-width:0;overflow-wrap:anywhere}
.editor-head{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin-bottom:10px;}
.editor-head .spacer{flex:1;}
.viewtoggle{display:inline-flex;border:1px solid var(--line);border-radius:999px;overflow:hidden;}
.viewtoggle button{background:transparent;border:0;color:var(--text-dim);font-family:var(--mono);font-size:11.5px;padding:7px 12px;cursor:pointer;min-height:36px;}
.viewtoggle button.on{background:var(--amber);color:#1a1200;}
.calc-grid{display:grid;grid-template-columns:1fr;gap:10px;}
@media (min-width:700px){ .calc-grid{grid-template-columns:1fr 1fr;} }
table.cyl{width:100%;border-collapse:collapse;font-size:12.5px;}
table.cyl th,table.cyl td{padding:4px 6px;border-bottom:1px solid var(--line-soft);text-align:right;font-family:var(--mono);}
table.cyl th:first-child,table.cyl td:first-child{text-align:left;font-family:var(--sans);}
table.cyl input{min-height:32px;padding:2px 6px;width:64px;text-align:right;}
svg.curve{width:100%;height:auto;display:block;background:var(--panel-2);border-radius:8px;}
.stat-strip .v.pos{color:var(--green);} .stat-strip .v.neg{color:var(--temp);}
.stat{display:flex;flex-direction:column;justify-content:space-between;}   /* Werte unten auf einer Linie, Beschriftung oben */
.stat .v{white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:break-word;font-size:14px;line-height:1.25;}
.stat .k{overflow-wrap:break-word;hyphens:auto;-webkit-hyphens:auto;}
.btn.add{width:28px;height:28px;min-height:0;padding:0;border-radius:7px;background:var(--amber);color:#1a1200;border-color:transparent;font-size:18px;line-height:1;font-weight:600;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}
.btn.add:hover{filter:brightness(1.1)}
.card-head .btn.add{margin-left:auto}
.lblrow{display:flex;align-items:center;gap:8px;min-height:24px;margin-bottom:2px}
.lblrow > label{flex:0 1 auto;font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim)}
.lblrow .btn.add{width:24px;height:24px;font-size:16px}
.btn.icon.small{min-height:30px;height:30px;width:30px;padding:0;font-size:12px}
/* Tabellarischer Zeitplan */
table.sched.plan{width:100%;min-width:640px;table-layout:auto}
table.sched.plan th{font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim);text-align:left;padding:4px 4px;border-bottom:1px solid var(--line);white-space:nowrap}
table.sched.plan td{vertical-align:middle;padding:4px 4px}
table.sched.plan td.handle{width:26px;padding:2px 0;text-align:center;white-space:nowrap}
table.sched.plan td.handle .handle{display:block;cursor:grab;color:var(--text-dim);font-size:17px;line-height:1;user-select:none}
table.sched.plan td.handle .updown{display:flex;flex-direction:column;align-items:center;gap:1px;margin-top:2px}
table.sched.plan td.handle .tiny{border:0;background:transparent;color:var(--text-dim);font-size:9px;line-height:1;padding:1px 4px;cursor:pointer;min-height:0;height:12px} table.sched.plan td.handle .tiny:disabled{opacity:.25;cursor:default} table.sched.plan td.handle .tiny:hover:not(:disabled){color:var(--amber)}
table.sched.plan td.tm{width:122px;white-space:nowrap} table.sched.plan td.tm input{width:84px;min-height:30px;padding:3px 4px;font-size:13px;display:inline-block;vertical-align:middle;text-align:center} table.sched.plan td.tm input::-webkit-calendar-picker-indicator{display:none} table.sched.plan td.tm .btn{margin-left:2px;vertical-align:middle}
table.sched.plan td.act{width:132px;text-align:left} table.sched.plan td.act select,table.sched.plan td.act input{min-height:30px;padding:3px 4px;font-size:13px;width:100%;min-width:120px}
table.sched.plan td.info{min-width:110px} table.sched.plan td.info input{min-height:30px;padding:3px 8px;font-size:13px;width:100%;min-width:100px}
table.sched.plan td.min{width:62px} table.sched.plan td.min input{width:60px;min-height:30px;padding:3px 4px;font-size:13px}
table.sched.plan td.min input.auto{color:var(--amber);border-style:dashed}
table.sched.plan td.place{min-width:150px;max-width:260px} table.sched.plan td.place .pcell{display:flex;align-items:center;gap:4px} table.sched.plan td.place .pcell .ghost{border-color:transparent;background:transparent;color:var(--text-dim)} table.sched.plan td.place .pcell .ghost:hover{color:var(--text)} table.sched.plan td.place .pname{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
table.sched.plan td.ops{width:34px;text-align:right}
table.sched.plan tr.anchor td{background:var(--panel-2)} table.sched.plan tr.anchor td.tm input{border-color:var(--amber)}
table.sched.plan tr.dragging td{opacity:.5} table.sched.plan tr.over td{border-top:2px solid var(--amber)}
table.sched.plan td.min span.mono,table.sched.plan td.tm span.mono{font-size:13px}
/* schmale Container (Telefon, iPad hochkant, Seitenspalte): Zeile zweizeilig als Raster */
.sched-wrap{container-type:inline-size}
@container (max-width:680px){
  table.sched.plan{min-width:0;display:block} table.sched.plan thead{display:none} table.sched.plan tbody{display:block}
  table.sched.plan tr{display:grid;grid-template-columns:22px 84px minmax(90px,1fr) 56px 30px;grid-template-areas:"h tm act min ops" "h info info info info" "h place place place place";gap:3px 4px;align-items:center;padding:5px 0;border-bottom:1px solid var(--line-soft)}
  table.sched.plan td.tm input{width:100%} table.sched.plan td.tm .btn{display:none} table.sched.plan td.tm input.ov{border-color:var(--amber);border-style:dashed}
  table.sched.plan td.min input{width:100%} table.sched.plan td.ops .btn{width:30px;min-height:30px;height:30px}
  table.sched.plan td{display:block;padding:0;border:0;width:auto;min-width:0;max-width:none}
  table.sched.plan td.handle{grid-area:h} table.sched.plan td.tm{grid-area:tm;width:auto} table.sched.plan td.act{grid-area:act;width:auto} table.sched.plan td.min{grid-area:min;width:auto}
  table.sched.plan td.ops{grid-area:ops;width:auto} table.sched.plan td.info{grid-area:info} table.sched.plan td.place{grid-area:place}
  table.sched.plan td.act select,table.sched.plan td.act input{min-width:0}
  table.sched.plan td.place.none{display:none} table.sched.plan td.place .pcell .pname{white-space:normal}
  table.sched.plan tr.anchor{background:var(--panel-2)} table.sched.plan tr.anchor td{background:transparent}
  table.sched.plan tr.over td{border-top:0} table.sched.plan tr.over{border-top:2px solid var(--amber)}
}
.sched-tools{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;margin-bottom:6px} .sched-tools .note{flex:1 1 320px;margin:0}
.sumcols{columns:1;column-gap:12px;margin-bottom:10px}
@media (min-width:600px){ .sumcols{columns:2;} }
.sumcols .kv{grid-template-columns:minmax(90px,36%) 1fr;font-size:13px}
.sumcols .kv .k{font-size:11px}
.sumcols > .card{break-inside:avoid;-webkit-column-break-inside:avoid;display:inline-block;width:100%;margin:0 0 12px;vertical-align:top}
.alt-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;align-items:start}
@media (min-width:760px){ .alt-grid{grid-template-columns:minmax(0,1fr) 280px;} }
.alt-grid .stat-strip{grid-template-columns:repeat(2,1fr)}
.alt-grid figure.curve-fig{margin:0} .alt-grid svg.curve{width:100%}
.section-title.two{display:flex;flex-direction:column;gap:2px}
.section-title.two .sub2{font-weight:400;text-transform:none;letter-spacing:0;font-size:11px;color:var(--text-dim)}
.ret-row{grid-template-columns:minmax(0,1fr) 40px;}
.ret-row select{flex:1;min-width:0;}

/* ---------- Dialog / Toast ---------- */
.backdrop{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:1000;display:flex;align-items:center;justify-content:center;padding:16px;}
.dialog{background:var(--panel);border:1px solid var(--line);border-radius:12px;width:100%;min-width:0;max-width:min(640px,100%);max-height:92vh;display:flex;flex-direction:column;overflow:hidden;}
.dialog-head{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-bottom:1px solid var(--line-soft);background:var(--panel-2);}
.dialog-body{padding:12px;overflow:auto;}
.dialog-foot{display:flex;justify-content:flex-end;gap:8px;padding:10px 12px;border-top:1px solid var(--line-soft);}
.toast{position:fixed;left:50%;bottom:calc(24px + var(--safe-b));transform:translate(-50%,20px);background:var(--text-strong);color:var(--bg);
  padding:10px 16px;border-radius:999px;font-size:13px;opacity:0;pointer-events:none;transition:all .2s;z-index:3000;white-space:nowrap;max-width:90vw;overflow:hidden;text-overflow:ellipsis;}
.toast.show{opacity:1;transform:translate(-50%,0);}

/* ---------- Settings ---------- */
.settings{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;}
.settings>*{min-width:0;}
@media (min-width:900px){ .settings{grid-template-columns:220px minmax(0,1fr);} }
.snav{display:flex;flex-wrap:wrap;gap:6px;}
@media (min-width:900px){ .snav{flex-direction:column;position:sticky;top:70px;} }
/* Handy/Tablet: eine Zeile, seitlich scrollbar, kompakte Chips */
@media (max-width:899px){
  .snav{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;gap:5px;padding:2px 0 6px;margin:0 -4px 6px;position:sticky;top:0;background:var(--bg);z-index:5;}
  .snav::-webkit-scrollbar{display:none;}
  .snav button{flex:0 0 auto;padding:5px 9px;font-size:12px;border-radius:999px;white-space:nowrap;}
}
.snav button{text-align:left;background:var(--panel);border:1px solid var(--line);border-radius:8px;color:var(--text);padding:8px 10px;cursor:pointer;font-size:13px;}
.snav button.on{border-color:var(--amber);color:var(--amber);}
.item-box{border:1px solid var(--line-soft);border-radius:8px;padding:10px;margin-bottom:8px;background:var(--panel);}
.item-box .head{display:flex;align-items:center;gap:8px;margin-bottom:8px;}
.item-box .head b{flex:1;}
details.exp summary{cursor:pointer;font-weight:600;padding:8px 0;}

/* ---------- Briefingsicht (Bildschirm) ---------- */
.brief{max-width:900px;margin:0 auto;background:#fff;color:#111;border:1px solid var(--line);padding:22px 26px;border-radius:6px;font-size:12.5px;line-height:1.4;}
:root[data-theme="dark"] .brief{box-shadow:0 0 0 1px #333;}
/* Kopf der Briefingsicht: links Datum · Ort und Ballonzeile, rechts Logo, Titelzeile, letzte Änderung, Status – eine Schriftfamilie */
.brief .bh{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 24px;align-items:start;border-bottom:2px solid #1f2937;padding-bottom:8px;margin-bottom:12px;font-family:var(--sans);}
.brief .bh .l{display:flex;flex-direction:column;gap:3px;min-width:0;}
.brief .bh h1{margin:0;font-family:var(--sans);font-size:18px;font-weight:700;line-height:1.25;color:#111;letter-spacing:-.01em;}
.brief .bh .l .bline{font-size:12px;color:#444;line-height:1.35;}
.brief .bh .r{justify-self:end;}
.brief .bh .r img{height:28px;display:block;}
.brief .bh .tline{grid-column:1 / -1;text-align:right;font-size:12.5px;font-weight:700;color:#111;margin-top:6px;}
@media (min-width:700px){ .brief .bh .tline{white-space:nowrap;} }   /* schmal: umbrechen, sonst wächst das Layout über die Bildschirmbreite */
.brief .bh .meta{grid-column:1 / -1;text-align:right;font-size:11px;color:#555;line-height:1.35;}
.brief .bh img.bimg{height:2cm;width:2cm;margin:0;}
.brief .bh .l.row{flex-direction:row;align-items:flex-start;gap:10px;}
.brief .bs{background:#1f2937;color:#fff;padding:3px 8px;font-weight:600;font-size:12px;margin:12px 0 6px;break-after:avoid;}
.brief .bs.stage{background:#2f6f9f;}   /* Etappen-Briefing (0.12.5) */
.brief .bs.sub{background:#4b5563;margin-top:6px;font-weight:500;}   /* 0.12.7: Untertitel B/C unter dem Etappenkopf E1 */
.brief table.bp{width:100%;table-layout:fixed;border-collapse:collapse;margin-bottom:4px;}
.brief table.bp td{min-width:0;overflow-wrap:break-word;hyphens:auto;-webkit-hyphens:auto;}
.brief table.bp td .tbl-scroll{max-width:100%;}
.brief table.bp td pre.report{overflow-wrap:anywhere;}
.brief table.bp th{width:24%;text-align:left;vertical-align:top;background:#e8edf5;border:1px solid #bfc5cc;padding:5px 7px;font-size:11.5px;color:#111;}
.brief table.bp td{border:1px solid #bfc5cc;padding:5px 7px;vertical-align:top;color:#111;}
.brief .ex{margin-top:5px;padding-top:4px;border-top:1px dotted #bfc5cc;color:#0c4a6e;font-size:11.5px;}
.brief .aiN{margin-top:4px;color:#4c1d95;font-size:11.5px;}
.brief .cm{margin-top:4px;color:#555;font-style:italic;font-size:11.5px;}
.brief img.pimg{max-width:100%;width:auto;height:auto;display:block;margin:5px 0;border:1px solid #ccc;}
.brief .bf{border-top:1px solid #bfc5cc;margin-top:12px;padding-top:4px;font-size:10px;color:#666;display:flex;justify-content:space-between;}
.brief .kv{grid-template-columns:minmax(100px,34%) 1fr;gap:1px 10px;font-size:11.5px;}
.brief .cols .kv{grid-template-columns:minmax(100px,42%) 1fr;}
.brief .kv .k{color:#555;} .brief .kv .v{color:#111;}
.brief .cols{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
.brief .ns{color:#b45309;font-weight:600;}
.neg-val{color:#b91c1c}   /* 0.12.9: Δ max. Startgewicht negativ */
.brief .mini{font-size:10.5px;color:#555;}
/* 0.12.9: drei Schriften in der Briefingsicht – Titel (linke Spalte, wie «Stammdaten»), Beschriftungen (wie «Briefingnummer»: mono, klein, grau)
   und Angaben (wie «2'600 m³»: Sans 11.5 px, schwarz) – auch für METAR/NOTAM-Texte, Tabellen und Hinweise. Grafiken (SVG) und das Höhenprofil-Werkzeug bleiben unberührt. */
.brief table.bp td, .brief table.bp td pre.report, .brief table.bp td .mono, .brief table.bp td table.auto, .brief table.bp td table.auto td, .brief table.bp td table.inner td, .brief table.bp td ul.decoded, .brief table.bp td .metar, .brief table.bp td .note, .brief table.bp td .ex, .brief table.bp td .aiN, .brief table.bp td .cm, .brief table.bp td .wxtext, .brief table.bp td .pline, .brief table.bp td table.pf-stages td, .brief table.bp td table.pf-ballast td{font-family:var(--sans);font-size:11.5px;color:#111;}
.brief table.bp td pre.report{line-height:1.45;}
.brief table.bp td .kv .k, .brief table.bp td div.lbl, .brief table.bp td table.auto th, .brief table.bp td table.inner th, .brief table.bp td table.pf-stages th, .brief table.bp td table.pf-ballast th, .brief table.bp td .mhead, .brief table.bp td .note.stand{font-family:var(--mono);font-size:11px;letter-spacing:.04em;color:#555;text-transform:none;font-weight:400;}
.brief table.bp td .mhead b{font-weight:600;color:#333;}
.brief table.bp td .mini, .brief table.bp td .muted.small, .brief table.bp td figcaption.mini{font-family:var(--sans);font-size:11px;letter-spacing:0;color:#555;}   /* Nebenangaben (Distanz, Dauer, Bildunterschrift): Angaben-Schrift, grau */
.brief table.bp td .pline .pname{font-weight:400;color:inherit;}   /* 0.12.9: A4 Geplanter Landeraum – Ortsname nicht fett */
.brief table.bp td .bad, .brief table.bp td .warn, .brief table.bp td .ns{color:#b91c1c;}
.brief table.inner{border-collapse:collapse;width:100%;font-size:11px;}
.brief table.inner td,.brief table.inner th{border:1px solid #d1d5db;padding:2px 5px;text-align:right;}
.brief table.inner th:first-child,.brief table.inner td:first-child{text-align:left;}
.brief .chk{display:inline-block;margin-right:10px;}
@media (max-width:599px){
  .brief{padding:12px 12px;}
  .brief table.bp,.brief table.bp tr,.brief table.bp th,.brief table.bp td{display:block;width:auto;}
  .brief table.bp th{border-bottom:0;background:#e8edf5;}
  .brief table.bp td{border-top:0;margin-bottom:4px;}
  .brief .cols{grid-template-columns:1fr;}
}
.phone-hint{font-size:11.5px;color:var(--text-dim);margin:6px 0;}

/* ---------- Kopfzeile auf iPad und Handy: Titel oben, Werkzeuge in zweiter Zeile ---------- */
@media (max-width:1099px){
  .title-block{flex:1 1 auto;min-width:0;order:0;}
  .header-logo{order:1;height:30px;}
  #menuBtn{order:2;}
  .mainnav{order:3;flex:1 1 100%;}
  .header-tools{order:4;flex:1 1 100%;justify-content:flex-start;}
}
@media (max-width:599px){
  header.topbar{gap:6px;}
  header.topbar .eyebrow{display:none;}
  .title-block{flex:1 1 calc(100% - 50px);}
  .mainnav a{padding:6px 10px;font-size:12px;}
  .header-tools{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;padding-bottom:2px;}
  .header-tools::-webkit-scrollbar{display:none;}
  .header-tools .btn,.header-tools .viewtoggle{flex:0 0 auto;}
}

/* ---------- Ortswahl ---------- */
.prow{display:flex;align-items:center;gap:8px;flex-wrap:nowrap;min-height:38px;}
.prow .pline-wrap{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.prow .row-actions{margin:0;flex:0 0 auto;}
.pline{display:inline;white-space:normal;}
.prow .pline{white-space:nowrap;}
.pline .mono,.pline .maps,.pline .sep,.pline > span:not(.pname){font-size:11.5px;}
@media (max-width:599px){ .prow{flex-wrap:wrap;} .prow .pline-wrap,.prow .pline{white-space:normal;} }
.pline .pname{color:var(--text-strong);font-weight:600;}
.kv .pline .pname{font-weight:400;color:inherit;}   /* 0.12.8: Stammdaten – Ortsname nicht fett */
.pline .sep{color:var(--text-dim);}
a.maps{color:var(--amber);text-decoration:none;font-weight:600;white-space:nowrap;}
a.maps:hover{text-decoration:underline;}
.dialog.wide{max-width:min(820px,100%);}
.dialog-body textarea,.dialog-body input,.dialog-body select{max-width:100%;}
.dialog-body .row-actions{flex-wrap:wrap;}
.pick-body .map.pick{height:42vh;min-height:220px;max-height:420px;margin-top:8px;}
.pick-body .coords{font-size:14px;padding-top:8px;}
.pick-body .inline{display:flex;gap:6px;}
.pick-body .inline input{flex:1;min-width:0;}
@media (max-width:599px){ .backdrop{padding:6px;align-items:flex-start;} .dialog{max-height:calc(100vh - 12px);} .pick-body .map.pick{height:38vh;} }

/* ---------- Automatische Panels ---------- */
.tag.pos{color:var(--green);border-color:var(--green);} .tag.neg{color:var(--temp);border-color:var(--temp);}
.meteobar{margin-bottom:10px;}
.autoblock .row-actions{margin-bottom:6px;flex-wrap:wrap;}
.autoblock .inline{display:inline-flex;gap:6px;flex-wrap:wrap;align-items:center;}
.auto .stand{margin:2px 0 6px;}
.auto-wrap{display:flex;flex-direction:column;gap:8px;}
.tbl-scroll{overflow:auto;max-width:100%;}
table.auto{border-collapse:collapse;font-size:12.5px;white-space:nowrap;}
table.auto th,table.auto td{padding:3px 7px;border-bottom:1px solid var(--line-soft);text-align:left;vertical-align:top;}
table.auto th{font-family:var(--mono);font-size:10.5px;letter-spacing:.04em;color:var(--text-dim);font-weight:500;background:var(--panel-2);position:sticky;top:0;}
table.auto tr.win td{background:rgba(214,138,0,.08);}
table.auto td.b{font-weight:700;}
table.auto.dwd th{position:static;text-align:left;}
table.auto.dwd td,table.auto.dwd th{white-space:normal;}
.wind-charts{display:flex;gap:10px;flex-wrap:wrap;}
.wind-charts figure{margin:0;flex:1 1 200px;max-width:280px;}
.wind-charts figcaption{text-align:center;}
.traj-grid{display:grid;grid-template-columns:1fr;gap:10px;}
@media (min-width:900px){ .traj-grid{grid-template-columns:minmax(0,420px) minmax(0,1fr);} }
.traj-grid.maponly{grid-template-columns:1fr}
.traj-grid.maponly .traj-svg{display:none}
.map.traj,.map.radar{height:420px;}
.traj-legend{display:flex;flex-wrap:wrap;gap:4px 14px;align-items:center;font-size:12.5px;margin-bottom:6px}
.traj-legend .item{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}
.sw{display:inline-block;width:14px;height:4px;border-radius:2px;vertical-align:middle}
.docs{display:flex;flex-direction:column;gap:4px;margin-bottom:6px}
.doc-row{display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.doc-row select{flex:1 1 180px;min-height:32px;padding:4px 26px 4px 8px;font-size:13px}
.doc-row input[type=text]{flex:1 1 160px;min-height:32px;padding:4px 8px;font-size:13px}
.doc-row input[type=date]{flex:0 0 150px;min-height:32px;padding:4px 8px;font-size:13px}
.doc-row input.neg{border-color:var(--temp)} .doc-row input.half{border-color:var(--gafor-d)}
.doc-row .btn.small{min-height:30px;padding:3px 9px;font-size:12px}
.cam-ico{font-size:18px;line-height:22px;text-align:center;filter:drop-shadow(0 0 2px #fff)}
.cam-ico.own{filter:drop-shadow(0 0 3px var(--accent,#1d6fb8))}
.cams{margin-top:6px;font-size:.9em}.cams summary{cursor:pointer}.cams ul.plain{margin:4px 0 0;padding-left:1em;columns:2;column-gap:1.5em}.cams li{break-inside:avoid}
@media(max-width:700px){.cams ul.plain{columns:1}}
.land-dot{width:16px;height:16px;border-radius:50%;background:#2f8f4e;border:2px solid #fff;box-shadow:0 0 0 2px rgba(47,143,78,.5);cursor:grab}
.leaflet-bar.fb-ctl a{font-size:17px;line-height:30px;text-align:center;width:30px;height:30px;color:#333}
.leaflet-bar.fb-ctl a.on{background:var(--accent,#1673a8);color:#fff}
.metar{border:1px solid var(--line-soft);border-radius:8px;padding:6px 8px;background:var(--panel-2);}
.metar pre.report{margin:4px 0 0;white-space:pre-wrap;font-size:12px;}
.metar-cols{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:6px 14px;margin-top:6px;align-items:start}
.metar-cols .lbl{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.03em;margin-bottom:2px}
.metar-cols.compact{margin-top:3px;gap:2px 12px}
.metar-cols.compact pre.report{margin:0}
.metar-cols.compact ul.decoded{margin:0}
.metar .mhead{font-size:12.5px;display:flex;align-items:center;flex-wrap:wrap;gap:0 2px}
.metar .mhead .hide-x,.metar .mhead .mh-btns{margin-left:auto}   /* 0.12.8: Karte/Schliessen rechts in der Kopfzeile */
.metar .mhead .mh-btns{display:inline-flex;gap:4px}
.metar .mhead .btn.icon.small{width:24px;height:24px;min-height:24px;font-size:11px}
.notam-map{height:420px} .map.notam-ov{height:320px;margin:6px 0 8px;border-radius:8px}   /* 0.12.13: Kartenübersicht über den NOTAM */
.astro-grid{display:flex;flex-wrap:wrap;gap:6px 20px;align-items:flex-start} table.auto.astro{width:auto;font-size:11px} table.auto.astro th,table.auto.astro td{padding:1px 6px;line-height:1.3} table.auto.astro th:first-child{text-align:left;font-family:var(--mono);font-size:10px}   /* 0.12.8: A2 als Tabellen; 0.12.9: kompakter */
.now-warn{display:inline-flex;align-items:center;background:none;color:#b91c1c;line-height:1;margin-left:7px;cursor:help;vertical-align:-2px} .now-warn .ico{stroke-width:1.6}
.panel.cover-warn{position:relative} .panel .cover-stripe{position:absolute;left:0;top:0;bottom:0;width:5px;border-radius:var(--r) 0 0 var(--r);background:repeating-linear-gradient(135deg,rgba(185,28,28,.55) 0 2px,transparent 2px 5px);cursor:help}   /* 0.12.13: Schraffur links, Tooltip */   /* 0.12.8: Warnsymbol «gegenwärtiger Stand»; 0.12.10: rotes Dreieck ohne Hintergrund in der Titelzeile */
.pre.small,pre.report.small{font-size:11px}
.metar-cols ul.decoded{margin:4px 0 0;padding-left:16px;font-size:12.5px;line-height:1.4}
.metar-cols ul.decoded li:first-child,.metar-cols ul.decoded li.head{list-style:none;margin-left:-16px}   /* 0.12.2: ohne Fettschrift */
.metar-cols ul.decoded li.chg{list-style:none;margin-left:0;padding-left:1.3em;text-indent:-1.3em;color:var(--text)}   /* 0.12.8: Pfeil bündig mit dem Text der Punkte darüber, Umbruch rechts von der Pfeilspitze (hängender Einzug) */
.metar .bad{color:var(--temp);font-weight:600}
.th-sum{margin-bottom:8px;border:1px solid var(--line);border-radius:8px;overflow:hidden}
.side-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;align-items:start}
@media (min-width:900px){ .side-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);} }
.side-grid .num table.auto{font-size:11px;white-space:nowrap}
.side-grid .num table.auto th,.side-grid .num table.auto td{padding:1px 5px;line-height:1.3}
.side-grid .gfx svg.tall{height:100%}
.side-grid.fill{align-items:stretch}
.side-grid .gfx .wind-charts{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-start}
.side-grid .gfx .wind-charts figure{margin:0;flex:1 1 150px;max-width:220px}
.side-grid .gfx .sv-svg{max-width:100%}
.dirarrow{display:inline-block;color:var(--amber);font-size:13px;line-height:1;transform-origin:50% 50%;margin:0 2px;vertical-align:middle}
@media (max-width:640px){.metar-cols{grid-template-columns:1fr}}
.auto-imgs{display:block;}
.auto-imgs figure{margin:0 0 10px;max-width:900px;}
.auto-imgs img{max-width:100%;width:auto;height:auto;max-height:none;border:1px solid var(--line);border-radius:6px;}   /* Seitenverhältnis bleibt */
/* Grafiken */
:root{ --sv-humid:#3d74b4; --sv-cloud:#d9432a; --sv-temp:#c2481a; --sv-dew:#1673a8; --mg-cloud:#5b6b7d; }
:root[data-theme="dark"]{ --sv-humid:#4f86c6; --sv-cloud:#e8614a; --sv-temp:#e0662a; --sv-dew:#2f9bd4; --mg-cloud:#9aa8b8; }
.sv-svg,.wp-svg,.mg-svg,.traj-svg{width:100%;height:auto;display:block;background:var(--panel-2);border-radius:8px;}
.sv-svg{max-width:620px;} .traj-svg{max-width:460px;}
.sv-grid line,.wp-grid line{stroke:var(--line-soft);stroke-width:1;}
.sv-grid.minor line,.wp-grid.minor line{stroke-width:.6;opacity:.55;}
.sv-grid line.sv-zero{stroke:var(--dew);stroke-width:1.2;opacity:.85;}
.sv-adiabat line{stroke:var(--text-dim);stroke-width:.6;opacity:.5;stroke-dasharray:3 3;}
.sv-frame{fill:none;stroke:var(--line);stroke-width:1;}
.sv-ax,.wp-ax,.mg-ax,.tl{font-family:var(--mono);font-size:8px;fill:var(--text-dim);}
.sv-alt{opacity:.78;}
.sv-curve{fill:none;stroke-width:1.8;stroke-linejoin:round;} .sv-curve.temp{stroke:var(--sv-temp);} .sv-curve.dew{stroke:var(--sv-dew);}
.sv-dot.temp{fill:var(--sv-temp);} .sv-dot.dew{fill:var(--sv-dew);}
.sv-lab{font-family:var(--mono);font-size:8.5px;font-weight:600;} .sv-lab.temp{fill:var(--sv-temp);} .sv-lab.dew{fill:var(--sv-dew);}
.sv-mark,.wp-mark{stroke-width:1;stroke-dasharray:4 3;} .sv-mark.fzl,.wp-mark.fzl{stroke:var(--dew);} .sv-mark.pbl,.wp-mark.pbl{stroke:var(--green);} .wp-mark.lvl{stroke:var(--amber);}
.sv-mlab,.wp-mlab{font-family:var(--mono);font-size:8px;} .sv-mlab.fzl,.wp-mlab.fzl{fill:var(--dew);} .sv-mlab.pbl,.wp-mlab.pbl{fill:var(--green);} .wp-mlab.lvl{fill:var(--amber);}
.sv-wind{fill:none;stroke:var(--amber);stroke-width:1.4;stroke-opacity:.8;}
.wp-line{fill:none;stroke:var(--amber);stroke-width:1.4;stroke-opacity:.8;}
.sv-barb path,.wp-barb path,.mg-barb path{stroke:var(--text-strong);stroke-width:1.3;fill:none;stroke-linecap:round;}
.sv-barb path.fill,.wp-barb path.fill,.mg-barb path.fill{fill:var(--text-strong);}
.sv-barb .calm,.wp-barb .calm,.mg-barb .calm{fill:none;stroke:var(--text-strong);stroke-width:1.2;}
.wp-dot{fill:var(--amber);}
.mg-grid{stroke:var(--line-soft);stroke-width:1;} .mg-grid.mg-hour{stroke-opacity:.5} .mg-grid.mg-day{stroke:var(--text-dim);stroke-width:1.2} .mg-grid.mg-sep{stroke:var(--text-dim);stroke-opacity:.6} .mg-grid.mg-zero{stroke:var(--text-dim);stroke-dasharray:3 2}
.mg-frame{fill:none;stroke:var(--line);stroke-width:1}
.mg-vis{fill:var(--dew);opacity:.7} .mg-vis.warn{fill:var(--amber)} .mg-vis.bad{fill:var(--temp)} .mg-fog{fill:var(--text-dim);opacity:.12} .mg-fog2{opacity:.22} .mg-fog3{opacity:.34} .mg-pbl{fill:none;stroke:var(--amber);stroke-width:1.4;stroke-dasharray:4 3} .mg-fzl{fill:none;stroke:#3d74b4;stroke-width:1.4} .mg-fzlt{fill:#3d74b4}   /* 0.12.14: Sicht, Grenzschicht, 0 °C */
.mg-title{font-family:var(--sans);font-size:9.5px;font-weight:600;fill:var(--text);}
.mg-val{font-family:var(--mono);font-size:8.5px;fill:var(--text);} .mg-val.mg-tv{fill:var(--sv-temp);font-weight:600} .mg-dayl{font-weight:600;fill:var(--text)}
.mg-night{fill:var(--text-dim);fill-opacity:.14;} .mg-window{fill:var(--amber);fill-opacity:.14;}
.mg-mark{stroke:var(--text-strong);stroke-width:1.2;stroke-dasharray:4 3} .mg-mark.mg-land{stroke:var(--green)} .mg-val.mg-land{fill:var(--green)}
.mg-temp{fill:none;stroke:var(--sv-temp);stroke-width:2;} .mg-dew{fill:none;stroke:var(--sv-dew);stroke-width:1.5;stroke-dasharray:4 2}
.mg-wind{fill:var(--amber);} .mg-gust{fill:var(--amber);fill-opacity:.35;}
.mg-cloud{fill:var(--mg-cloud);} .mg-precip{fill:var(--dew);} .mg-cape{font-size:10px;} .mg-capeline{fill:none;stroke:#8a4fb5;stroke-width:1.3;stroke-dasharray:2 2}
.mg-fly.f2{fill:var(--green);} .mg-fly.f1{fill:var(--amber);} .mg-fly.f0{fill:var(--temp);}
.mg-legend{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:12px;margin:6px 0 2px;align-items:center}
.mg-legend .item{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}
.mg-legend .sw.line{height:3px;background:var(--sv-temp)} .mg-legend .sw.dash{height:0;border-top:2px dashed var(--sv-dew);background:none}
.mg-legend .sw.box{width:12px;height:10px;border-radius:2px}
.traj-svg .tg{stroke:var(--line-soft);stroke-width:.8;} .traj-svg .tz{stroke:var(--line);stroke-width:1.2;}
.traj-svg .tsite{fill:var(--amber);stroke:var(--text-strong);stroke-width:1;} .traj-svg .tland{fill:var(--green);}

/* ---------- Phase 3 ---------- */
.more{position:relative;}
.more .more-menu{display:none;right:0;top:calc(100% + 4px);min-width:220px;}
.more.open .more-menu{display:flex;flex-direction:column;}
.gonogo .gn-level{font-size:12.5px;margin-bottom:4px;display:flex;align-items:center;gap:6px}
.gonogo .gn-level .dot{flex:0 0 auto;margin:0}
.gonogo .gn-level b{font-size:12.5px}
.gn-why{margin:4px 0 6px;padding-left:18px;font-size:12.5px;}
.brief .bsum{border:1px solid var(--line);border-radius:8px;padding:8px 10px;margin:8px 0 10px;font-size:12.5px;background:var(--panel-2);}
.paxcard .pax-list{margin:4px 0 8px;padding-left:20px;font-size:14px;line-height:1.5;}
.paxcard .pax-kv{font-size:14px;margin:6px 0 10px;}
.paxcard .pax-kv .v{font-size:14px;}

/* Benutzer & Freigaben, Statistik (0.5.0) */
.share-row{display:flex;flex-wrap:wrap;gap:6px 16px;align-items:center;padding:8px 0;border-bottom:1px solid var(--line-soft);}
.share-row .who{min-width:180px;}
.share-row .cats{display:flex;flex-wrap:wrap;gap:4px 14px;}
.share-row .cats label.check{margin:0;}
.tblwrap{overflow-x:auto;max-width:100%;margin-bottom:10px;}
.tbl.compact th,.tbl.compact td{padding:4px 8px;font-size:12.5px;white-space:nowrap;}
tr.inactive td,.item-box.inactive{opacity:.55;}
.item-box .head{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap;}
ul.plain{margin:4px 0 8px;padding-left:18px;font-size:13px;}
ul.plain li{margin:2px 0;}
.stammview h3,.card-body h3{font-family:var(--mono);font-size:11px;color:var(--text-dim);letter-spacing:.08em;text-transform:uppercase;margin:14px 0 4px;}
.chips.scopes{margin:0 0 10px;}
.card-head .btn{margin-left:auto;}
a.bcard{display:block;color:inherit;text-decoration:none;}
.pwwrap{display:flex;gap:4px;align-items:stretch;}
.pwwrap input{flex:1;min-width:0;font-family:var(--mono);font-size:12.5px;}
.pwwrap .eye{flex:0 0 auto;width:38px;padding:0;font-size:15px;line-height:1;}
.print-only{display:none}
.pager{outline:none}
details.wxtext{margin-top:8px;border-top:1px dashed var(--line-soft);padding-top:6px}
details.wxtext pre.report.wx{white-space:pre-wrap;font-size:12.5px;line-height:1.4;max-height:420px;overflow:auto;font-family:var(--sans)}
.pager-bar{display:flex;align-items:center;gap:8px;margin:4px 0 6px}
.pager .pages figure{display:none;margin:0}
.pager .pages figure.cur{display:block}
.pager .pages img.pimg{max-height:70vh;width:auto;max-width:100%}
.brief .appendix{display:none}
.brief.noatt .appendix{display:none;}
.brief .appendix .att{margin-top:14px;}
.brief .attref{color:#0c4a6e;}
.mp-sec{border:1px solid var(--line);border-radius:8px;padding:8px 10px;margin-bottom:10px;}
.mp-sec > .lbl{margin-bottom:6px;}
.mp-sec.in{border-color:var(--amber);background:var(--panel-2);} .mp-sec.in > .lbl{color:var(--amber);}
.mp-sec.res > .lbl{color:var(--green);} .mp-sec.given > .lbl{color:var(--text-dim);}
.mp-sec .stat-strip{margin:4px 0;}
.ampel-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:6px 10px;border:1px solid var(--line);border-radius:8px;font-size:13px;}
.ampel-row.pos{border-color:var(--green);} .ampel-row.half{border-color:var(--gafor-d);} .ampel-row.neg{border-color:var(--temp);}
.ampel-row .dot{width:12px;height:12px;border-radius:50%;flex:0 0 auto;}
.ampel-row .dot.pos{background:var(--green);} .ampel-row .dot.half{background:var(--gafor-d);} .ampel-row .dot.neg{background:var(--temp);}
.map.trajprev{height:300px;border-radius:8px;}
.paxcard ul.trackers{font-family:var(--mono);font-size:12px;}
.pax-meet{display:flex;gap:12px;align-items:flex-start}
.pax-meet .pax-kv{flex:1;min-width:0}
.pax-qr{margin:0;flex:0 0 auto;text-align:center} .pax-qr svg{width:96px;height:96px;display:block}
.paxsheet .copy{display:none}

table.auto.as-tbl{white-space:normal;width:100%}.as-tbl td,.as-tbl th{vertical-align:top}.as-tbl td:first-child,.as-tbl td:nth-child(2){white-space:nowrap}.as-tbl td:nth-child(4),.as-tbl td:nth-child(5),.as-tbl td:nth-child(6){white-space:nowrap}.as-tbl td:nth-child(3){min-width:140px}.as-tbl tr.as-cross td:first-child{border-left:3px solid #c2481a}.as-tbl tr.as-near td:first-child{border-left:3px solid #d08a1a}.as-tbl tr.as-above{color:var(--text-dim)}.as-fir{margin:4px 0 6px}
/* 0.12.13: Schriftgrössen wie der übrige Panelinhalt; FIR-Folge als Tabelle (wie A02); ✕-Spalte */
table.auto.as-tbl{font-size:12.5px} table.auto.as-tbl td.acts{white-space:nowrap;text-align:right} table.auto.as-tbl .btn.icon.small.hide-x{width:22px;height:22px;min-height:22px;font-size:11px} table.auto.astro.as-firtbl{font-size:12.5px} table.auto.astro.as-firtbl th:first-child{font-size:11px}
.brief table.bp table.auto th{width:auto;font-size:10px}.brief table.bp table.auto td{overflow-wrap:normal}.brief .as-tbl td,.brief .as-tbl th{border:0;border-bottom:1px solid #d1d5db;padding:3px 6px}

.chip-sep{display:inline-block;width:1px;height:26px;background:var(--line);margin:0 4px;align-self:center}
.chip.nvfr[aria-pressed="true"]{background:#1f2a44;color:#fff;border-color:#1f2a44}

/* Thermik: Balken je Stunde, gleiche Zeilenhöhe wie die Tabelle */
.th-tbl{width:100%;border-collapse:collapse}.th-tbl th,.th-tbl td{padding:0 5px!important;line-height:20px;height:21px;box-sizing:border-box}.th-tbl td .tag{padding:0 6px;line-height:15px;font-size:10.5px;display:inline-block;vertical-align:middle}
.th-bars{font-size:11px;display:flex;flex-direction:column}
.th-bars .th-head{height:21px;line-height:20px;box-sizing:border-box;font-family:var(--mono);font-size:10px;color:var(--text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border-bottom:1px solid var(--line-soft)}
.th-bars .th-row{display:flex;align-items:center;gap:6px;height:21px;box-sizing:border-box;line-height:20px;border-bottom:1px solid var(--line-soft)}
.th-bars .th-row.win{background:rgba(214,138,0,.08)}
.th-bars .tm{width:2ch;color:var(--text-dim);font-size:10px}
.th-bars .bar{flex:1;height:10px;background:var(--panel-2);border-radius:3px;overflow:hidden}
.th-bars .fill{display:block;height:100%;border-radius:3px}
.th-bars .val{width:3ch;text-align:right;font-size:10px;color:var(--text-dim)}
table.auto td.pd-half{background:rgba(214,138,0,.28);color:var(--text-strong)}table.auto td.pd-neg{background:rgba(194,72,26,.35);color:var(--text-strong)}
.sumcols ul.mand{margin:0;padding-left:16px;font-size:13px;line-height:1.5}

/* KI-Kommentar: Knöpfe im Titelbalken, Text unter dem Panelinhalt */
.aibtns{display:inline-flex;gap:0;margin-left:4px}
.aibtns .btn.ai{height:26px;min-height:26px;padding:0 9px;font-size:11.5px;border-radius:6px 0 0 6px;background:var(--violet,#7a6aa5);color:#fff;border-color:transparent}
.btn.ai .ico,.ai-lbl .ico{vertical-align:-2px;margin-right:4px}   /* 0.12.13: Sternsymbol statt «KI» */
.aibtns .btn.ai.more{border-radius:0 6px 6px 0;padding:0 7px;border-left:1px solid rgba(255,255,255,.35)}
.aibtns .btn.ai:disabled{opacity:.6}
.sub.ai{border-left:3px solid var(--violet,#6b4fb5);padding-left:10px;margin-top:8px}
.ai-text{white-space:pre-wrap;font-size:13.5px;line-height:1.5;margin-top:4px}

/* Hamburger: Untermenüs */
.menu{min-width:240px;max-height:calc(100vh - 80px);overflow-y:auto}
.menu details.submenu summary{list-style:none;cursor:pointer;padding:10px 12px;font-size:13.5px;border-radius:7px;color:var(--text-strong);font-weight:600;display:flex;align-items:center;gap:8px}
.menu details.submenu summary::-webkit-details-marker{display:none}
.menu details.submenu summary::after{content:'▸';margin-left:auto;color:var(--text-dim);font-size:12px}
.menu details.submenu[open] summary::after{content:'▾'}
.menu details.submenu summary:hover{background:var(--panel-2)}
.menu details.submenu button{display:block;width:100%;padding-left:24px;font-size:13px}
.btn.icon.print{font-size:16px}
.brief .pax-append{display:none}
.sonde-ico{font-size:14px;line-height:20px;text-align:center;color:#1673a8;filter:drop-shadow(0 0 2px #fff)}.sonde-ico.live{font-size:17px}
.map.radar .leaflet-control-layers{font-size:12px}.map.radar .leaflet-control-layers label{display:block;padding:1px 0}
.notam-places{margin:4px 0 8px}.notam-places .np-row{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center;padding:4px 0;border-bottom:1px solid var(--line-soft)}.notam-places .np-row .pline-wrap{flex:1 1 260px}
/* 0.9.2: Panel-Nummern, Dämmerungs-Schattierung im Tagesplan, Speichern-Zustand, Zielzeile */
.pno{font-family:var(--mono);font-size:11px;color:var(--text-dim);letter-spacing:.04em;margin-right:2px}
.panel-head .ttl .pno{font-size:12px}
.brief table.bp th .pno{display:block;font-size:10px;margin-bottom:2px}
table.sched.plan tr.night td,table.inner.sched-view tr.night td{background:rgba(42,61,110,.16)}
table.sched.plan tr.dusk td,table.inner.sched-view tr.dusk td{background:rgba(42,61,110,.07)}
table.sched.plan tr.anchor.night td,table.sched.plan tr.anchor.dusk td{background:rgba(42,61,110,.22)}
[data-theme=dark] table.sched.plan tr.night td,[data-theme=dark] table.inner.sched-view tr.night td{background:rgba(120,150,230,.16)}
[data-theme=dark] table.sched.plan tr.dusk td,[data-theme=dark] table.inner.sched-view tr.dusk td{background:rgba(120,150,230,.07)}
.sch-legend{margin-top:6px}.sch-legend .sw{display:inline-block;width:14px;height:10px;border-radius:2px;vertical-align:middle;border:1px solid var(--line)}.sch-legend .sw.night{background:rgba(42,61,110,.16)}.sch-legend .sw.dusk{background:rgba(42,61,110,.07)}
@container (max-width:680px){ table.sched.plan tr.night{background:rgba(42,61,110,.16)} table.sched.plan tr.dusk{background:rgba(42,61,110,.07)} table.sched.plan tr.night td,table.sched.plan tr.dusk td{background:transparent} }
.btn.save{border-style:solid}.btn.save:not(.dirty){background:transparent;color:var(--text);border-color:var(--line)}
.stat .sub{font-size:11px;line-height:1.3;margin-top:2px}
.traj-legend .item.target{flex-basis:100%;white-space:normal;font-weight:600}
table.auto.acts input[type=number]{width:70px;min-height:28px;padding:2px 6px}
table.sched.plan td.place .pcell select{min-height:30px;padding:3px 24px 3px 6px;font-size:13px;width:auto;max-width:220px;flex:1}
table.auto.acts{width:auto;min-width:420px}
/* Flugplan-Panel */
.fpl-form{display:flex;flex-direction:column;gap:6px}
.fpl-item{border-top:1px solid var(--line-soft);padding-top:8px;margin-top:4px}
.fpl-no{font-family:var(--mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim);margin-bottom:6px}.fpl-no b{color:var(--amber);margin-right:4px}
.fpl-eet{display:flex;align-items:center;gap:6px;margin-bottom:4px}.fpl-eet input{min-height:30px;padding:3px 6px;font-size:13px}
.fpl-msg{margin-top:10px}.fpl-msg pre,pre.fpl-msg{background:var(--panel-2);border:1px solid var(--line);border-radius:8px;padding:10px 12px;font-size:13px;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;margin:4px 0 0;max-width:100%}
.fpl-view{max-width:100%;min-width:0}.fpl-view table.inner td{overflow-wrap:anywhere}
.fpl-form .note.mono{font-size:12px;overflow-wrap:anywhere}
.fpl-form .chips .chip{min-height:28px;padding:2px 10px;font-size:12px}
.fpl-tbl td.k{font-family:var(--mono);font-size:11px;color:var(--text-dim);white-space:nowrap;width:40px}
.brief .fpl-msg{font-size:11.5px}
/* Radar: Karte + Sonden-Fenster */
.radar-grid{display:grid;grid-template-columns:1fr;gap:10px}
.radar-grid.with-sonde{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
@media (max-width:899px){ .radar-grid.with-sonde{grid-template-columns:1fr} }
.sonde-win{border:1px solid var(--line);border-radius:10px;padding:8px 10px;background:var(--panel);min-width:0;overflow:auto}
.sonde-win .sonde-head{display:flex;align-items:center;gap:8px;margin-bottom:4px}
.sonde-win .gfx svg{max-width:100%;height:auto}
table.auto.obs-tbl td.bad{color:var(--red,#c0392b);font-weight:600}

/* 0.10.1: Bild der Hülle (2 × 2 cm) — Stammdaten-Titel (Erarbeitung + Ansicht), Pax-Blatt, Einstellungen */
img.bimg,.bimg.empty{width:2cm;height:2cm;object-fit:cover;border-radius:6px;border:1px solid var(--line-soft);background:#fff;flex:0 0 auto}
.bimg.empty{display:flex;align-items:center;justify-content:center;color:var(--text-dim);font-size:11px}
.core-grid{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 16px;align-items:start}
.core-grid img.core-img{width:2.4cm;height:2.4cm;justify-self:end}
.brief .core-grid img.core-img{width:2cm;height:2cm}
@media (max-width:599px){ .core-grid{grid-template-columns:1fr} .core-grid img.core-img{justify-self:start} }
.wiz .bimg-f{flex:0 0 auto}
.wiz .bimg-f img.bimg{width:64px;height:64px}

.imgfield{display:flex;align-items:flex-start;gap:10px}
.imgfield .col{display:flex;flex-direction:column;gap:4px;align-items:flex-start}
/* 0.10.1: Panels & Pflicht als kompakte Tabelle */
table.panels-tbl{width:100%;border-collapse:collapse;margin-bottom:10px;font-size:12.5px}
table.panels-tbl th{text-align:left;font-size:11px;color:var(--text-dim);font-weight:600;padding:4px 6px;border-bottom:1px solid var(--line-soft);background:var(--panel-2)}
table.panels-tbl td{padding:3px 6px;border-bottom:1px solid var(--line-soft);vertical-align:middle}
table.panels-tbl .no{width:44px;white-space:nowrap}
table.panels-tbl .ck{width:88px;text-align:center}
table.panels-tbl td.nm .tag{margin-left:6px}
table.panels-tbl tr.off td.nm{color:var(--text-dim)}
table.panels-tbl input[type=checkbox]{width:16px;height:16px;margin:0;vertical-align:middle}

/* 0.11: KI-Knopf «erneuern» violett schraffiert (anders als «erzeugen») */
.btn.ai.renew,.aibtns .btn.ai.renew{background:repeating-linear-gradient(135deg,var(--violet,#7a6aa5) 0 6px,color-mix(in srgb,var(--violet,#7a6aa5) 72%,#fff) 6px 12px);color:#fff;border-color:transparent}
/* 0.11: Kopf der Briefingsicht — rechts Logo oben, darunter Titelzeile rechtsbündig, letzte Änderung, Status */
/* 0.11: Sperre (Fahrt vorbei) */
.lockbar{margin:0 0 10px;border-color:#d9a400;background:#fff8e1}
.lockbar .card-body{align-items:center;flex-wrap:wrap}
.lock{font-size:12px}
.card.summary .btn{margin-top:6px}
/* 0.11.2: «Alle verfügbaren Daten aktualisieren» über dem Abschnitt A */
.refresh-all{margin:0 0 12px;align-items:center;position:sticky;top:var(--topbar-h, 70px);z-index:40;background:var(--bg);padding:6px 0;box-shadow:0 8px 8px -8px rgba(0,0,0,.18)}   /* 0.12.2: bleibt unter der Kopfzeile stehen */
.refresh-all .must-btn.done{opacity:.6}
.tbl td.mono{font-family:var(--mono);font-size:12px;white-space:nowrap}
@media (max-width:680px){ .panel-head{flex-wrap:wrap} .panel-head .rgt{max-width:100%;align-items:flex-start;width:100%} .panel-head .rrow{justify-content:flex-start} }

/* 0.11.1: Länder-Matrix */
.tbl-wrap{overflow:auto}
table.cm-tbl{width:100%;border-collapse:collapse;font-size:12px;min-width:900px}
table.cm-tbl th{text-align:left;font-size:11px;color:var(--text-dim);padding:4px 6px;border-bottom:1px solid var(--line-soft);background:var(--panel-2);vertical-align:bottom}
table.cm-tbl td{padding:5px 6px;border-bottom:1px solid var(--line-soft);vertical-align:top}
table.cm-tbl td.cc{white-space:nowrap}
table.cm-tbl textarea{width:100%;min-width:160px;font-size:11.5px}

/* 0.11.2: Übersicht kompakt – je Zelle höchstens zwei Zeilen, Aktionen als Symbole in einer Zeile */
table.tbl.list{font-size:12px}
table.tbl.list th{padding:6px 8px;font-size:9.5px}
table.tbl.list td{padding:6px 8px;line-height:1.3;vertical-align:middle}
table.tbl.list td.nowrap,table.tbl.list td.no{white-space:nowrap}
table.tbl.list.fixed{table-layout:fixed}table.tbl.list.fixed td,table.tbl.list.fixed th{overflow:hidden;text-overflow:ellipsis}table.tbl.list.fixed td.acts{overflow:visible;white-space:nowrap;flex-wrap:nowrap;justify-content:flex-end}   /* 0.12.10: Abschnitte untereinander ausgerichtet */
table.tbl.list .l1{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:220px}
table.tbl.list .l2{white-space:nowrap;font-size:11px;color:var(--text-dim);font-family:var(--mono);margin-top:2px;overflow:hidden;text-overflow:ellipsis;max-width:220px}
table.tbl.list td.acts{white-space:nowrap;flex-wrap:nowrap;display:table-cell}
table.tbl.list td.acts .btn.icon.small{width:26px;height:26px;min-height:26px;font-size:12px;margin-right:3px;border-radius:6px}
table.tbl.list td.acts .btn.icon.small.edit{color:var(--amber);border-color:var(--amber-dim)}
table.tbl.list tr.locked td.no{color:var(--text-dim)}
table.tbl.list .tag{font-size:9.5px;padding:1px 6px}

/* 0.11.2: Zusatzboxen (📝 blau · 💬 gelb) und Symbolknöpfe im Panelkopf */
.panel-head .addrow{display:flex;gap:4px;justify-content:flex-end;margin-top:4px}
.btn.icon.small.add{width:26px;height:26px;min-height:26px;font-size:13px;border-radius:6px;padding:0}
.btn.icon.small.add.extra{border-color:var(--line);background:transparent;color:var(--text-dim)} .btn.icon.small.add.extra:hover{color:var(--dew);border-color:var(--dew)}   /* 0.12.13: wie die übrigen Symbolknöpfe */
.sub .sub-head{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-bottom:4px} .sub .sub-head .lbl{margin:0} .sub-close{width:22px;height:22px}
.btn.icon.small.add.cmt{border-color:var(--amber);background:color-mix(in srgb,var(--amber) 14%,transparent)}
.sub.extra{border-left:3px solid var(--dew);padding-left:10px}
.sub.cmt{border-left:3px solid var(--amber);padding-left:10px}
.sub.half{border-top:none;margin-top:6px;padding-top:0}
.sub.half .lbl{color:var(--gafor-d)}
.sub .lbl{font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase}
.card.summary .aibtns .btn.ai{height:28px;min-height:28px}
@media (max-width:680px){ .panel-head .addrow{justify-content:flex-start} }

/* 0.11.2: vergrösserte Ansicht (Lightbox) in der Briefingsicht */
.brief svg,.brief img.pimg,.brief table.auto,.brief table.inner,.brief table.dwd{cursor:zoom-in}
.editor .panel svg:not(.ico),.editor .panel img.pimg,.editor .panel table.auto,.editor .panel table.dwd{cursor:zoom-in}
.editor .panel .leaflet-container svg,.editor .panel .lvl-pick svg{cursor:inherit}
.backdrop.lightbox{z-index:1200}
.dialog.lb{max-width:min(96vw,1400px);width:auto;max-height:94vh}
.dialog.lb .lb-body{padding:14px;overflow:auto;font-size:14px}
.dialog.lb .lb-body table{font-size:13.5px}
.dialog.lb .lb-body table td,.dialog.lb .lb-body table th{padding:5px 9px}
.dialog.lb .lb-body img{max-width:92vw;max-height:84vh;width:auto;height:auto}
.dialog.lb .lb-body svg{display:block;min-width:min(900px,90vw)}

/* 0.11.3: Niveauliste der Trajektorien (Klick ins Feld) */
.lvl-wrap{position:relative;display:inline-flex;min-width:0;max-width:100%;flex:1 1 160px}
.lvl-wrap>input{min-width:0;max-width:100%;flex:1 1 auto}
.lvl-pick{position:absolute;left:0;top:calc(100% + 4px);z-index:50;background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:6px 4px;display:flex;flex-direction:column;gap:2px;max-height:280px;overflow:auto;min-width:150px;box-shadow:0 8px 24px rgba(0,0,0,.25)}
.lvl-pick .lvl-it{display:flex;align-items:center;gap:6px;padding:3px 8px;font-size:12.5px;font-family:var(--mono);cursor:pointer;border-radius:5px;white-space:nowrap}
.lvl-pick .lvl-it:hover{background:var(--panel-2)}
.nvfr-row{margin-top:6px}
table.tbl.list th.sortable{cursor:pointer;user-select:none;white-space:nowrap}
table.tbl.list th.sortable:hover{color:var(--text)}
table.tbl.list th .sarrow{color:var(--amber)}
table.tbl.list tbody tr{cursor:default}
/* 0.11.3: schmale Bildschirme – die Seite darf nie breiter als der Bildschirm werden (breite Tabellen scrollen in ihren Rahmen) */
@media (max-width:599px){ html,body{overflow-x:hidden;max-width:100vw} }

/* 0.11.3: Symbolsatz «Linie» (SVG) */
.ico{display:inline-block;vertical-align:-0.2em;flex:0 0 auto}
.btn .ico{vertical-align:-0.22em}
.btn.icon .ico{vertical-align:middle}
.btn.icon{display:inline-flex;align-items:center;justify-content:center}
.btn.icon.small .ico{width:16px;height:16px}
.btn.icon.print .ico{width:20px;height:20px}
#menuBtn .ico{width:22px;height:22px}

.btn.icon.small.add .ico{width:17px;height:17px;stroke-width:2.2}
.sub.ai .lbl .ico{color:var(--violet)}
table.tbl.list td.acts .btn.icon.small .ico{width:15px;height:15px}
.leaflet-bar.fb-ctl a .ico{vertical-align:middle;margin-top:6px}
.sarrow .ico{vertical-align:-1px;margin-left:2px}
.handle .ico{color:var(--text-dim)}

/* ---------- 0.12 Höhenprofil-Werkzeug (Gasfahrt) ---------- */
:root{ --pf-fg:var(--text); --pf-dim:var(--text-dim); --pf-line:var(--line); --pf-panel:var(--panel); --pf-night:#9fb4d8; --pf-relief:#a28f6c; --pf-cloud:#5c6e82; --pf-inv:#f0a04b; --pf-zero:#5fc3d6; --pf-ok:#5cc08a; --pf-warn:#e0b23c; --pf-bad:#e06c5c; --pf-pt:#e0923c; --pf-stage:#6aa6d6; --pf-as-c:#6aa6d6; --pf-as-d:#b784d8; --pf-as-ctr:#e06c5c; --pf-as-sua:#f0a04b; }
:root[data-theme="light"]{ --pf-night:#1f2a44; --pf-relief:#8a7a5d; --pf-cloud:#9fb3c8; --pf-inv:#d9822b; --pf-zero:#1f7a8c; --pf-ok:#2e8b57; --pf-warn:#c08a00; --pf-bad:#c0392b; --pf-pt:#b8640f; --pf-stage:#2f6f9f; --pf-as-c:#2f6f9f; --pf-as-d:#7a3fa0; --pf-as-ctr:#c0392b; --pf-as-sua:#d9822b; }
.brief{ --pf-fg:#1d2126; --pf-dim:#5d646d; --pf-line:#d9d4c9; --pf-panel:#ffffff; --pf-night:#1f2a44; --pf-relief:#8a7a5d; --pf-cloud:#9fb3c8; --pf-inv:#d9822b; --pf-zero:#1f7a8c; --pf-ok:#2e8b57; --pf-warn:#c08a00; --pf-bad:#c0392b; --pf-pt:#b8640f; --pf-stage:#2f6f9f; --pf-as-c:#2f6f9f; --pf-as-d:#7a3fa0; --pf-as-ctr:#c0392b; --pf-as-sua:#d9822b; }
.pf-chart{overflow-x:auto;position:relative;background:var(--pf-panel);border:1px solid var(--line);border-radius:8px;padding:6px}
.pf-svg{display:block;width:100%;max-width:100%;height:auto;min-width:640px;font-family:var(--sans)}
.pf-chart.tool .pf-svg{min-width:900px}
.pf-chart.tool.zoomed{overflow:auto;max-height:72vh}   /* 0.12.6: Spreizung – Ausschnitt rollt im Rahmen */
.pf-brush .pf-br-h{cursor:ew-resize}.pf-brush .pf-br-band{cursor:grab}.pf-brush .pf-br-track{cursor:pointer}   /* 0.12.7: Ausschnitt-Schieber */
.pf-zoombox{display:inline-flex;align-items:center;gap:4px}.pf-zoombox .seg button{padding:3px 7px;font-size:11.5px}
.pf-closebtns{margin-left:auto;align-items:center}.pf-tool .dialog-head{display:flex;align-items:center;gap:10px}
.pf-pt{cursor:grab}.pf-pt:active{cursor:grabbing}.pf-mi{cursor:pointer}.pf-mi:hover rect{stroke:var(--pf-pt)}.pf-sh{cursor:ew-resize}.pf-sh:hover rect{stroke:var(--pf-pt)}.pf-axis{cursor:crosshair}
.pf-legend{display:flex;flex-wrap:wrap;gap:2px 14px;font-size:11px;line-height:1.3;color:var(--text-dim);margin:4px 0 2px}
.pf-legend span{display:inline-flex;align-items:center;gap:5px}
.pf-legend i.sw{width:16px;height:9px;border-radius:2px;display:inline-block;box-sizing:border-box}
.pf-legend svg{flex:0 0 auto}
.pf-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;margin-bottom:6px}
.pf-toolbar .seg,.pf-maptools .seg{display:inline-flex;border:1px solid var(--line);border-radius:8px;overflow:hidden}
.pf-toolbar .seg button,.pf-maptools .seg button{background:var(--panel);color:var(--text);border:0;padding:6px 11px;font:inherit;font-size:12.5px;cursor:pointer;min-height:32px}
.pf-toolbar .seg button.on,.pf-maptools .seg button.on{background:var(--pf-stage);color:#fff}
.pf-toolbar .pf-hint{flex:1 1 240px}
.pf-layers{margin-left:auto;display:flex;gap:12px;font-size:12.5px;border:1px solid var(--line);border-radius:8px;padding:5px 10px;background:var(--panel-2)}
.pf-layers label{display:inline-flex;align-items:center;gap:5px;cursor:pointer}
.pf-layers input{accent-color:var(--pf-stage)}
.pf-status{color:var(--pf-pt);min-width:0}
.pf-menu{position:absolute;z-index:30;background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:0 8px 24px rgba(0,0,0,.28);padding:4px;min-width:220px;font-size:13px}
.pf-menu button{display:block;width:100%;text-align:left;background:none;border:0;color:var(--text);padding:7px 10px;border-radius:6px;font:inherit;cursor:pointer}
.pf-menu button:hover{background:var(--panel-2)}
.pf-menu .ttl{font-family:var(--mono);font-size:11px;color:var(--text-dim);padding:4px 10px 2px}
.pf-menu input{width:100%;box-sizing:border-box;margin:4px 0;padding:5px 8px;border:1px solid var(--line);border-radius:6px;font:inherit;background:var(--panel-2);color:var(--text);min-height:0}
/* 0.12.5: Ops-Briefing je Etappe – Klickbox im Etappenmenü, Dialog «Neue Etappe», Marke B/C */
.pf-menu label.pf-ops-row{display:flex;align-items:center;gap:6px;padding:6px 10px;font-size:13px;cursor:pointer}
.pf-menu label.pf-ops-row input{width:auto;margin:0}
.pf-menu .note.small{padding:0 10px 4px;color:var(--text-dim)}
.pf-newstage{min-width:260px}
.pf-legend .pf-opsleg,.tag.pf-opstag{display:inline-block;background:var(--pf-stage);color:#fff;font-family:var(--mono);font-size:9px;font-weight:700;padding:1px 5px;border-radius:4px;border:0;vertical-align:middle;width:auto;height:auto;line-height:13px}
.tag.pf-opstag{margin-left:6px}
/* Abschnitte je Etappe im Editor (E2 …) */
.sect-title.stage{border-left-color:var(--pf-stage)}.sect-title.stage .id{color:var(--pf-stage)}
/* 0.12.6: Untertitel B/C innerhalb einer Etappe, Etappen-Gruppen in der Navigation, Etappen-Knöpfe */
.sect-title.sub{font-size:13.5px;margin:14px 0 8px;padding:5px 12px;border-left-width:3px;background:transparent;border-bottom:1px solid var(--line-soft);border-radius:0}
.sect-title.sub .id{font-size:12px}
.enav .subhead{font-family:var(--mono);font-size:10px;letter-spacing:.05em;color:var(--text-dim);margin:6px 0 2px 6px;text-transform:uppercase}
.refresh-all .stage-btn{border-color:var(--pf-stage);color:var(--pf-stage)}
.sect-sub{margin:-6px 0 10px;padding:0 12px;font-size:12.5px;color:var(--text-dim)}
.sect-sub .warn{display:inline-block;margin-left:8px}
.dialog.pf-tool{max-width:min(98vw,1480px);width:100%;max-height:96vh}
.pf-backdrop{padding:8px}
.pf-body{padding:10px 12px}
.pf-map-wrap .pf-map{height:min(62vh,640px);border-radius:8px;border:1px solid var(--line)}
.pf-maptools{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin:0 0 6px;font-size:12.5px}
.pf-tip{background:rgba(255,255,255,.9);border:1px solid #999;color:#1d2126;font-size:10.5px;padding:1px 5px;box-shadow:none}
.pf-tip.stage{border-color:#2f6f9f;color:#2f6f9f;font-weight:600}
.pf-stage-icon{background:none;border:0}
.pf-tables{display:grid;gap:10px;margin-top:8px}
.pf-ballast-wrap,.pf-stages-wrap{margin-top:8px}
table.pf-ballast,table.pf-stages{border-collapse:collapse;width:100%;font-size:12px;font-variant-numeric:tabular-nums}
table.pf-ballast th,table.pf-stages th{text-align:left;font-size:10.5px;color:var(--text-dim);font-weight:600;padding:3px 6px;border-bottom:1px solid var(--line);white-space:nowrap}
table.pf-ballast td,table.pf-stages td{padding:3px 6px;border-bottom:1px solid var(--line-soft);vertical-align:top}
table.pf-ballast td.n,table.pf-ballast th.n,table.pf-stages td.n,table.pf-stages th.n{text-align:right;font-family:var(--mono);white-space:nowrap}
table.pf-stages td.mono{font-family:var(--mono);white-space:nowrap}
table.pf-stages td.ct{min-width:150px}
.brief table.bp table.pf-stages{table-layout:auto;width:100%}   /* 0.12.8: Etappenübersicht in der Briefingsicht */
table.pf-ballast tr.total td{font-weight:600;border-top:2px solid var(--line)}
.pf-bar{height:8px;border-radius:4px;background:var(--line);overflow:hidden;margin-top:6px}
.pf-bar i{display:block;height:100%}
.tscroll{overflow-x:auto}
.brief .pf-svg{min-width:0}
.brief .pf-chart{border:0;padding:0;background:#fff}
.brief table.pf-ballast,.brief table.pf-stages{font-size:10.5px}
.brief table.pf-ballast th,.brief table.pf-stages th{color:#444;border-bottom-color:#ccc}
.brief table.pf-ballast td,.brief table.pf-stages td{border-bottom-color:#e4e4e4}
.brief .pf-legend{color:#555}
@media (max-width:599px){ .pf-layers{margin-left:0} .pf-toolbar .pf-hint{display:none} }
.brief table.bp table.pf-ballast th,.brief table.bp table.pf-stages th{width:auto;background:none;border:0;border-bottom:1px solid #ccc;padding:2px 5px;font-size:10px;color:#444;vertical-align:bottom}
.brief table.bp table.pf-ballast td,.brief table.bp table.pf-stages td{border:0;border-bottom:1px solid #e4e4e4;padding:2px 5px;font-size:10.5px;height:auto}
.brief table.bp table.pf-stages.wrap{table-layout:auto}.brief table.bp table.pf-stages.wrap tr.st1 td{border-bottom:0;padding-bottom:0}.brief table.bp table.pf-stages.wrap tr.st2 td{padding:0 5px 3px 28px}.brief table.bp table.pf-stages.wrap tr.st2 .k{color:#555}   /* 0.12.9: Etappenübersicht in der Briefingsicht zweizeilig (Lufträume/Achtung/Kontakte) */
.brief table.bp table.pf-ballast tr.total td{border-top:2px solid #ccc}
:root{ --pf-water:#4f86c6; }
:root[data-theme="light"]{ --pf-water:#5b9bd5; }
.brief{ --pf-water:#5b9bd5; }
.pf-right{margin-left:auto;display:grid;gap:4px;justify-items:end}
.pf-layers select.pf-model{min-height:0;height:26px;padding:0 6px;font-size:12px;width:auto}
.pf-modelwarn{font-size:12px;color:var(--pf-bad);max-width:520px;text-align:right}
/* 0.12.1: Werkzeugleiste einzeilig, Modell-Pille, Beispiel, Erklärungen, Ballast in Spalten */
:root{ --pf-grid:#6b7788; }
:root[data-theme="light"]{ --pf-grid:#9aa3ad; }
.brief{ --pf-grid:#9aa3ad; }
.pf-toolbar2{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:4px 12px;margin:-2px 0 6px}
.pf-toolbar{position:relative}
.pf-toolbar .pf-layers{margin-left:auto}
.pf-modelbtn{gap:6px}
.pf-modelbtn:disabled{opacity:.5}
.pf-sample.on{background:var(--pf-stage);color:#fff;border-color:var(--pf-stage)}
.pf-callouts{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:10px 18px;margin:8px 0 4px;font-size:12.5px}
.pf-callouts ol{list-style:none;margin:0;padding:0;display:grid;gap:5px}
.pf-callouts li{display:grid;grid-template-columns:22px 1fr;gap:8px;align-items:start}
.pf-callouts b.k{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--pf-pt);color:#fff;font-family:var(--mono);font-size:11px}
.pf-callouts .pf-sources ul{margin:4px 0 0;padding-left:16px;display:grid;gap:4px}
.pf-legend .pf-legaxis{color:var(--text-dim);font-style:italic}
.pf-ballast-grid{display:grid;gap:4px 12px;align-items:start}
.pf-ballast-grid table.pf-ballast td,.pf-ballast-grid table.pf-ballast th{white-space:nowrap}
@media (max-width:900px){ .pf-callouts{grid-template-columns:1fr} .pf-ballast-grid{grid-template-columns:1fr !important} }
.pf-ballast-grid.cols2 table.pf-ballast{font-size:11px}.pf-ballast-grid.cols3 table.pf-ballast{font-size:10.5px}
.pf-ballast-grid.cols2 table.pf-ballast td,.pf-ballast-grid.cols2 table.pf-ballast th,.pf-ballast-grid.cols3 table.pf-ballast td,.pf-ballast-grid.cols3 table.pf-ballast th{padding:2px 4px}
/* 0.12.2: einklappbare Legende und Modell der Schätzung, Bedienhinweis in der Legende, Werkzeugleiste 2 nur mit Warnung */
details.pf-fold{margin:4px 0 2px;width:100%}
details.pf-fold>summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:6px;font-family:var(--mono);font-size:10.5px;letter-spacing:.04em;text-transform:uppercase;color:var(--text-dim);padding:2px 0;user-select:none}
details.pf-fold>summary::-webkit-details-marker{display:none}
details.pf-fold>summary .caret{width:0;height:0;border-left:5px solid currentColor;border-top:4px solid transparent;border-bottom:4px solid transparent;transition:transform .15s}
details.pf-fold[open]>summary .caret{transform:rotate(90deg)}
details.pf-fold .pf-fold-body{margin-top:2px}
details.pf-fold.model{grid-column:1 / -1;border-top:1px solid var(--line-soft);padding-top:4px;margin-top:6px}
details.pf-fold.model .pf-cols{margin:4px 0 0;padding-left:16px;display:grid;gap:2px}
.pf-legend .pf-leghint{color:var(--text);flex-basis:100%}
.pf-toolbar2[hidden]{display:none}
.brief details.pf-fold>summary{color:#444}

/* 0.12.10: TAF-Änderungsgruppen im Fahrtzeitraum – feiner Rahmen im Rohtext und Klartext */
.taf-hit{outline:1px solid #b45309;outline-offset:1px;border-radius:3px}
ul.decoded li.taf-hit{padding:1px 4px;margin-left:-5px}
pre.report .taf-hit{padding:0 2px}
/* 0.12.12: Supermaster – ausgeblendete Archiv-Einträge einblenden */
.list-sect.archive{display:flex;align-items:center;justify-content:space-between;gap:10px} .list-sect .hidden-toggle{font-family:var(--sans);text-transform:none;letter-spacing:0;font-size:12px;padding:2px 8px} .list-sect.hidden-sect{margin-top:14px;border-bottom-style:dashed}
table.tbl.list tr.hidden-row td{opacity:.6} table.tbl.list tr.hidden-row td.acts{opacity:1} table.tbl.list button.unhide{border-color:var(--accent);color:var(--accent)}

/* 0.12.13: A01 Regeln – Kästchen unmittelbar links von NVFR, Abstand zu VFR */
.rules{display:inline-flex;align-items:center;gap:14px} .rules .nvfr-lbl{display:inline-flex;align-items:center;gap:4px;cursor:pointer}

/* 0.12.14: Modellvergleich/Ensemble (B06), Warnungen (B14) */
details.cmp{margin-top:8px} details.cmp>summary{cursor:pointer;font-weight:600} table.auto.cmp-tbl tr.warn td{background:color-mix(in srgb,var(--amber) 14%,transparent)} table.auto.cmp-tbl tr.bad td{background:color-mix(in srgb,var(--temp) 14%,transparent)} table.auto td.warn{color:var(--gafor-d)} table.auto td.bad{color:var(--temp);font-weight:600}
.warn-wrap{margin-top:10px} .warn-head{font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim);margin-bottom:4px} .tag.wlvl{font-weight:700} .tag.wlvl.l1{color:var(--green);border-color:var(--green)} .tag.wlvl.l2{color:var(--gafor-d);border-color:var(--gafor-d)} .tag.wlvl.l3{color:#d97706;border-color:#d97706} .tag.wlvl.l4,.tag.wlvl.l5{color:var(--temp);border-color:var(--temp)}
.sub.extra.collapsed{cursor:pointer;padding-top:4px;padding-bottom:4px} .sub.extra.collapsed .sub-head{margin:0} .sub.extra.collapsed .prev{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin:0 8px}   /* 0.12.14: eingeklappte Zusatzbox */
/* 0.12.15: eingefügte Berichte in der Briefingsicht (B05 u. a.) und Gültigkeitszeile */
.report-fmt{line-height:1.4} .report-fmt .rp-title{font-weight:700;margin:2px 0 4px} .report-fmt .rp-h{font-weight:700;margin:8px 0 2px} .report-fmt p.rp-p{margin:0 0 4px} .report-fmt .rp-kv{margin:1px 0} .report-fmt .rp-kv .k{font-weight:600}
.report-fmt .rp-wind{display:flex;flex-wrap:wrap;gap:8px 16px;margin:4px 0 8px} .report-fmt table.rp-wt{font-size:11.5px;width:auto} .report-fmt table.rp-wt th{text-align:left;white-space:nowrap} .report-fmt table.rp-wt thead tr:first-child th{font-weight:700;border-bottom:0;padding-bottom:0}
.brief table.bp td .report-fmt table.rp-wt td,.brief table.bp td .report-fmt table.rp-wt th{font-size:10.5px;padding:1px 6px}
.valid-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:4px 12px;margin-top:6px;font-size:12px} .valid-row .lbl{font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim)} .valid-row .vb{display:flex;align-items:center;gap:6px} .valid-row input[type=datetime-local]{height:26px;font-size:12px}

/* 0.12.17c: Amateurstationen (MeteoNetwork) in B04 */
.obs-tbl tr.amateur td { color: var(--muted); font-style: italic; }
.obs-tbl tr.amateur td b { font-weight: 500; }

/* 0.13.0: Betriebsdokumente (Beförderungsschein, Flugauftrag) – A4-Seiten, Stil der BHB-Formulare */
.docpages{display:flex;flex-direction:column;gap:18px;align-items:center;margin:8px 0 24px}
.docsheet{width:794px;max-width:100%;min-height:1123px;box-sizing:border-box;padding:44px 48px 36px;background:#fff;color:#141414;font-family:Arial,Helvetica,'Liberation Sans',sans-serif;font-size:11.5px;line-height:1.35;display:flex;flex-direction:column;gap:12px;box-shadow:0 1px 6px rgba(0,0,0,.18);border:1px solid #d7dce3}
.docsheet .dhead{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;padding-bottom:6px}
.docsheet .dhead.line{border-bottom:2px solid #141414;padding-bottom:8px}
.docsheet .dtitle{font-size:19px;font-weight:700;letter-spacing:.2px}
.docsheet .dsub{font-size:11px;color:#444}
.docsheet .dright{display:flex;flex-direction:column;align-items:flex-end;gap:2px;text-align:right;flex:none}
.docsheet .dlogo{width:170px;height:58px;object-fit:contain;flex:none}
.docsheet .mini{font-size:10px;color:#444}
.docsheet .mini b{color:#141414}
.docsheet table.dtab{width:100%;border-collapse:collapse;font-size:11.5px}
.docsheet table.dtab td{border:1px solid #141414;padding:5px 7px;vertical-align:top}
.docsheet table.dtab td.k{width:118px;background:#ededed;font-weight:700}
.docsheet table.dtab td.k2{width:86px;background:#ededed;font-weight:700}
.docsheet table.dtab td.w2{width:240px}
.docsheet table.dtab td.lines div{line-height:1.5}
.docsheet table.paxtab td{height:34px}
.docsheet table.paxtab thead td{height:auto;background:#ededed;font-weight:700}
.docsheet .cb{display:inline-block;width:10px;height:10px;border:1px solid #141414;vertical-align:-1px;background:#fff}
.docsheet .cb.on{background:#141414}
.docsheet .dot{display:inline-block;width:9px;height:9px;border-radius:50%;vertical-align:-1px;background:#2e7d32}
.docsheet .dot.half{background:#e0a100}
.docsheet .dot.neg{background:#c62828}
.docsheet .dbox{border:1px solid #141414;padding:8px 10px;font-size:10.5px;line-height:1.4;display:flex;flex-direction:column;gap:5px}
.docsheet .dbox ul,.docsheet .dbox ol{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:2px}
.docsheet .dbox p{margin:0}
.docsheet .dbox.two{display:grid;grid-template-columns:1fr 1fr;column-gap:24px}
.docsheet .dbox.two>div{display:flex;flex-direction:column;gap:6px}
.docsheet .dsec{font-size:12px;font-weight:700;border-bottom:1px solid #141414;padding-bottom:2px}
.docsheet .dtext{font-size:11px}
.docsheet .paxgrid{display:grid;grid-template-columns:1fr 1fr;column-gap:18px;row-gap:2px}
.docsheet .sigrow{display:grid;grid-template-columns:1fr 1fr;column-gap:32px;margin-top:6px}
.docsheet .sig{display:flex;flex-direction:column;gap:3px}
.docsheet .sig-img{height:46px;display:flex;align-items:flex-end;padding-bottom:2px}
.docsheet .sig-img img{max-height:44px;max-width:220px}
.docsheet .sig-line{border-top:1px solid #141414;padding-top:4px;font-size:10.5px}
.docsheet .dfoot{margin-top:auto;display:flex;justify-content:space-between;font-size:9.5px;color:#444;border-top:1px solid #c8c8c8;padding-top:5px}
.docsheet .muted{color:#444}
.docsheet .p2{font-size:10.5px}
.sigimg{max-height:60px;max-width:220px;border:1px solid var(--line);background:#fff;padding:4px}
.note.neg{color:#c62828}
