/* AirWürttemberg Gewichtsrechner – Komponenten. Alle Farben und Schriften aus tokens.css.
   Gold nur für Marke und aktive Navigation (Sprachwahl, aktiver Typ in der Flottenliste). */
.awgr-page{margin:0;background:var(--awt-page);color:var(--awt-text);font-family:var(--awt-font-body);font-size:var(--awt-size-text);line-height:var(--awt-line-height)}
.awgr,.awgr *{box-sizing:border-box}
.awgr{max-width:1240px;margin:0 auto;padding:28px max(16px,3vw) 56px;display:grid;gap:20px;color:var(--awt-text);font-family:var(--awt-font-body);font-size:var(--awt-size-ui);line-height:var(--awt-line-height)}
.awgr>*,.awgr-form>*,.awgr-grid>*,.awgr-panel>*,.awgr-details>*{min-width:0}

/* Kopf */
.awgr-head{display:flex;flex-wrap:wrap;gap:12px 24px;align-items:flex-end;justify-content:space-between}
.awgr-head-text{display:grid;gap:6px;max-width:68ch}
.awgr h1{margin:0;font-family:var(--awt-font-head);font-weight:600;font-size:var(--awt-size-title);line-height:1.15;text-wrap:balance}
.awgr h2{margin:0;font-family:var(--awt-font-head);font-weight:600;font-size:var(--awt-size-section);line-height:1.2}
.awgr-lead{margin:0;font-size:var(--awt-size-text);color:var(--awt-text-soft)}
.awgr-label{font-family:var(--awt-font-mono);font-size:var(--awt-size-label);font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--awt-text-muted)}
.awgr-help{margin:0;font-size:var(--awt-size-help);color:var(--awt-text-muted)}
.awgr-id{font-family:var(--awt-font-mono);font-weight:500;font-size:var(--awt-size-id)}
.awgr-num{font-variant-numeric:tabular-nums lining-nums}

/* Sprachwahl = aktive Navigation */
.awgr-lang{display:flex;gap:4px}
.awgr-lang a{font-family:var(--awt-font-mono);font-size:12px;font-weight:500;letter-spacing:.14em;color:var(--awt-text-muted);text-decoration:none;padding:4px 6px}
.awgr-lang a:hover{color:var(--awt-text)}
.awgr-lang a[aria-current="true"]{color:var(--awt-gold-400)}

/* Formularelemente */
.awgr-form{display:grid;gap:20px}
.awgr-bar{display:flex;flex-wrap:wrap;gap:12px 16px;align-items:flex-end;justify-content:space-between;background:var(--awt-card);border:1px solid var(--awt-line);padding:16px}
.awgr-type{flex:1 1 320px;min-width:0}
.awgr-field{display:grid;gap:6px}
.awgr-field>label{font-family:var(--awt-font-mono);font-size:var(--awt-size-label);font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--awt-text-muted)}
.awgr input[type=number],.awgr select{width:100%;font-family:var(--awt-font-body);font-size:var(--awt-size-ui);color:var(--awt-text);background:var(--awt-page);border:1px solid var(--awt-line-strong);border-radius:0;padding:9px 10px;font-variant-numeric:tabular-nums}
.awgr select{font-size:var(--awt-size-text)}
.awgr select optgroup{font-style:normal;font-weight:500;color:var(--awt-text-muted);background:var(--awt-page)}
.awgr select option{color:var(--awt-text);background:var(--awt-page)}
.awgr input:focus-visible,.awgr select:focus-visible,.awgr button:focus-visible,.awgr a:focus-visible,.awgr summary:focus-visible{outline:2px solid var(--awt-text);outline-offset:1px}
.awgr-btn{display:inline-flex;align-items:center;justify-content:center;font-family:var(--awt-font-body);font-weight:500;font-size:var(--awt-size-ui);padding:9px 16px;border:1px solid var(--awt-line-strong);background:transparent;color:var(--awt-text);cursor:pointer;text-decoration:none;border-radius:0}
.awgr-btn:hover{border-color:var(--awt-neutral-300)}
.awgr-btn-solid{background:var(--awt-neutral-0);border-color:var(--awt-neutral-0);color:var(--awt-neutral-800)}
.awgr-btn-solid:hover{background:var(--awt-neutral-100)}
.js .awgr-nojs{display:none}

/* Status */
.awgr-chips{display:flex;flex-wrap:wrap;gap:8px}
.awgr-chip{font-size:var(--awt-size-help);font-weight:500;padding:4px 10px;border:1px solid var(--awt-line-strong);color:var(--awt-text-soft)}
.awgr-chip.is-ok{color:var(--awt-success);border-color:var(--awt-success)}
.awgr-chip.is-warn{color:var(--awt-warning);border-color:var(--awt-warning)}
.awgr-chip.is-crit{color:var(--awt-error);border-color:var(--awt-error)}

.awgr-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:20px}
@media (max-width:920px){.awgr-grid{grid-template-columns:minmax(0,1fr)}}
.awgr-panel{background:var(--awt-card);border:1px solid var(--awt-line);padding:20px;display:grid;gap:16px;align-content:start}

/* Kabine */
.awgr-cabin{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.awgr-cls{border:1px solid var(--awt-line);background:var(--awt-page);padding:12px;display:grid;gap:8px}
.awgr-cls-tag{display:flex;align-items:baseline;gap:8px}
.awgr-cls-tag b{font-family:var(--awt-font-head);font-weight:600;font-size:var(--awt-size-title);line-height:1}
.awgr .awgr-seat{font-family:var(--awt-font-head);font-weight:600;font-size:24px;text-align:center;padding:6px 4px;-moz-appearance:textfield;appearance:textfield}
.awgr-seat::-webkit-outer-spin-button,.awgr-seat::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.awgr-row2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.awgr-row3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
@media (max-width:520px){.awgr-cabin,.awgr-row2,.awgr-row3{grid-template-columns:minmax(0,1fr)}}

.awgr-meters{display:grid;gap:10px}
.awgr-meter{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 10px}
.awgr-meter-bar{grid-column:1/-1;height:4px;background:var(--awt-line)}
.awgr-meter-bar i{display:block;height:100%;background:var(--awt-success)}
.awgr-meter.is-warn .awgr-meter-bar i{background:var(--awt-warning)}
.awgr-meter.is-crit .awgr-meter-bar i{background:var(--awt-error)}

/* Grundwerte */
.awgr-keys{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--awt-line);border:1px solid var(--awt-line)}
@media (max-width:620px){.awgr-keys{grid-template-columns:repeat(2,minmax(0,1fr))}}
.awgr-key{background:var(--awt-page);padding:12px 14px;display:grid;gap:2px;align-content:start}
.awgr-key-val{font-family:var(--awt-font-head);font-weight:600;font-size:24px;line-height:1.1;font-variant-numeric:tabular-nums lining-nums}
.awgr-key-val small{font-family:var(--awt-font-body);font-weight:400;font-size:var(--awt-size-help);color:var(--awt-text-muted);margin-left:3px}
.awgr-key-val.is-neg{color:var(--awt-error)}
.awgr-key .awgr-help{font-size:11px}

.awgr-stackbar svg{width:100%;height:auto;display:block}
.awgr-stackbar text{font-family:var(--awt-font-body);font-size:12px;fill:var(--awt-text-soft)}
.awgr-stackbar .seg-bg{fill:var(--awt-line)}
.awgr-stackbar .seg-dow{fill:var(--awt-neutral-500)}
.awgr-stackbar .seg-pax{fill:var(--awt-neutral-200)}
.awgr-stackbar .seg-cargo{fill:var(--awt-neutral-400)}
.awgr-stackbar .seg-fuel{fill:var(--awt-info)}
.awgr-stackbar .mark{stroke:var(--awt-text);stroke-width:1.5;stroke-dasharray:3 2}
.awgr-legend{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:var(--awt-size-help);color:var(--awt-text-muted);margin-top:6px}
.awgr-legend span::before{content:"";display:inline-block;width:10px;height:10px;margin-right:6px;vertical-align:-1px}
.lg-dow::before{background:var(--awt-neutral-500)} .lg-pax::before{background:var(--awt-neutral-200)} .lg-cargo::before{background:var(--awt-neutral-400)} .lg-fuel::before{background:var(--awt-info)}

/* Tabellen */
.awgr-scroll{overflow-x:auto}
.awgr table{border-collapse:collapse;width:100%}
.awgr-sheet th,.awgr-sheet td{padding:7px 6px;border-bottom:1px solid var(--awt-line);text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums lining-nums}
.awgr-sheet th{font-family:var(--awt-font-mono);font-size:var(--awt-size-label);font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--awt-text-muted)}
.awgr-sheet td:first-child,.awgr-sheet th:first-child{text-align:left;white-space:normal}
.awgr-sheet tr.is-key td{font-weight:500;color:var(--awt-text)}
.awgr-sheet tr.is-sub td{color:var(--awt-text-muted)}
.awgr-sheet tr.is-sub td:first-child{padding-left:16px}
.awgr-sheet tr.is-total td{border-top:1px solid var(--awt-neutral-300);border-bottom:none}
.is-pos{color:var(--awt-success)} .is-neg{color:var(--awt-error)}

.awgr-details{background:var(--awt-card);border:1px solid var(--awt-line);padding:16px 20px}
.awgr-details>summary{cursor:pointer;font-family:var(--awt-font-head);font-weight:600;font-size:var(--awt-size-section);list-style:none}
.awgr-details>summary::-webkit-details-marker{display:none}
.awgr-details>summary::before{content:"+";display:inline-block;width:1.1em;color:var(--awt-text-muted)}
.awgr-details[open]>summary::before{content:"−"}
.awgr-details[open]>summary{margin-bottom:14px}
.awgr-stack{display:grid;gap:18px}
.awgr-actions{display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center;margin-bottom:12px}

.awgr-fleetbox{max-height:560px;overflow:auto;border:1px solid var(--awt-line)}
.awgr-fleet th,.awgr-fleet td{padding:7px 10px;border-bottom:1px solid var(--awt-line);text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums lining-nums}
.awgr-fleet thead th{position:sticky;top:0;z-index:1;background:var(--awt-card);font-family:var(--awt-font-mono);font-size:var(--awt-size-label);font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--awt-text-muted)}
.awgr-fleet td:nth-child(-n+2),.awgr-fleet th:nth-child(-n+2){text-align:left}
.awgr-fleet td:first-child a{font-family:var(--awt-font-mono);font-weight:500;color:var(--awt-text);text-decoration:none}
.awgr-fleet tbody tr[data-type]{cursor:pointer}
.awgr-fleet tbody tr[data-type]:hover td{background:var(--awt-neutral-600)}
.awgr-fleet tr.is-current td:first-child{box-shadow:inset 3px 0 0 var(--awt-gold-400)}
.awgr-fleet tr.is-current td:first-child a{color:var(--awt-gold-400)}
.awgr-fleet tr.is-group th{text-align:left;background:var(--awt-page);font-family:var(--awt-font-head);font-weight:600;font-size:15px;color:var(--awt-text-soft);padding-top:12px}
.awgr-mod{display:inline-block;margin-left:8px;font-size:11px;color:var(--awt-info);border:1px solid var(--awt-info);padding:0 5px}

.awgr-params th,.awgr-params td{padding:4px;text-align:left;font-size:var(--awt-size-help)}
.awgr-params th{font-family:var(--awt-font-mono);font-size:var(--awt-size-label);font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--awt-text-muted)}
.awgr-params input{width:76px;padding:6px 7px}
.awgr-params tr.is-current td:first-child{color:var(--awt-text);font-weight:500}
.awgr.is-loading #awgr-results{opacity:.8;transition:opacity .15s}
@media (prefers-reduced-motion:reduce){.awgr *{transition:none!important}}

/* Speichern */
.awgr-btn:disabled{opacity:.45;cursor:not-allowed}
.awgr-mod.is-unsaved{color:var(--awt-warning);border-color:var(--awt-warning)}
.awgr-flash{border:1px solid var(--awt-success);color:var(--awt-success);padding:10px 14px;font-weight:500}
.awgr-flash.is-error{border-color:var(--awt-error);color:var(--awt-error)}

/* Logo-Leiste: Kartenfläche #1E1E1E = Hintergrund der offiziellen Logopräsentation,
   die Bildmarke bringt ihren Schutzraum (0,5a) in der Datei mit. Keine Effekte, nur proportional skaliert. */
.awgr-brand{background:var(--awt-card);border-bottom:1px solid var(--awt-line)}
.awgr-brand-inner{box-sizing:border-box;max-width:1240px;margin:0 auto;padding-left:max(16px,3vw);padding-right:max(16px,3vw)}
.awgr-brand-inner a{margin-left:-17px}
.awgr-brand img{display:block;height:72px;width:auto}
.awgr-brand a{width:auto}

/* Gewichtsvariante: geänderte Felder markieren (Information, nicht Gold) */
.awgr-field.is-changed input{border-color:var(--awt-info)}
.awgr-field.is-changed .awgr-help{color:var(--awt-info)}
