@font-face{font-family:Gustav;src:url('../assets/fonts/lilita_one.woff2') format('woff2');font-display:swap}
.cb-shell{--cb-ink:#493d32;--cb-cream:#fff4d8;--cb-gold:#f6b73c;--cb-gold-dark:#c88917;--cb-aqua:#d6ad73;--cb-slate:#765641;--cb-deep:#5b4433;--cb-red:#e95f4f;font-family:Segoe UI,system-ui,sans-serif;color:var(--cb-cream)}
.cb-shell,.cb-shell *{box-sizing:border-box}.cb-shell button{font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}
.cb-shell{position:absolute;z-index:30;inset:0;display:grid;place-items:center;padding:8px;background:rgba(73,56,44,.48)}.cb-shell[hidden]{display:none}.cb-panel{width:min(760px,100%);height:min(680px,calc(100dvh - 16px));display:grid;grid-template-areas:'header' 'saison' 'account' 'tabs' 'spruch' 'summary' 'columns' 'body' 'own' 'note';grid-template-rows:auto auto auto auto auto auto auto minmax(72px,1fr) auto auto;overflow:hidden;border:4px solid var(--cb-ink);border-radius:22px;background:linear-gradient(180deg,rgba(255,250,240,.99),rgba(255,244,216,.97));color:var(--cb-ink);box-shadow:inset 0 3px 0 #fff,0 8px 0 rgba(91,68,51,.78),0 18px 42px rgba(0,0,0,.42)}
.cb-header{grid-area:header}.cb-saison{grid-area:saison}.cb-tabs{grid-area:tabs}.cb-spruch-box{grid-area:spruch}.cb-summary{grid-area:summary}.cb-columns{grid-area:columns}.cb-body{grid-area:body}.cb-own{grid-area:own}.cb-note{grid-area:note}.cb-list[hidden],.cb-state[hidden],.cb-columns[hidden],.cb-own[hidden]{display:none!important}
.cb-header{min-height:64px;display:flex;align-items:center;gap:12px;padding:7px 10px 7px 14px;background:linear-gradient(#765641,#49382c);color:var(--cb-cream);border-bottom:3px solid var(--cb-gold)}.cb-crest{width:46px;height:46px;display:grid;place-items:center;flex:none;border:3px solid #fff0b5;border-radius:50%;color:var(--cb-ink);background:linear-gradient(#ffd96f,#f6b73c);font-size:26px;text-shadow:0 2px #fff1a9;box-shadow:inset 0 -4px 0 var(--cb-gold-dark),0 2px 0 #5b4433}.cb-title-wrap{min-width:0;display:grid}.cb-eyebrow{font-size:10px;letter-spacing:.2em;color:#ead4aa}.cb-title-wrap h1{margin:0;font:30px/.95 Gustav,Impact,sans-serif;letter-spacing:.045em}.cb-close{margin-left:auto;width:48px;height:48px;border:3px solid #fff;border-radius:12px;color:#fff;background:linear-gradient(#f57868,#d9483c);font:34px/1 Gustav,Impact,sans-serif;box-shadow:inset 0 -5px 0 #a82f2a,0 3px 0 #5b4433}.cb-close:active,.cb-retry:active,.cb-tab:active{transform:translateY(2px)}
.cb-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;padding:7px 10px 5px;background:#fff8e6}.cb-tab{min-height:44px;border:3px solid var(--cb-ink);border-radius:11px;color:var(--cb-ink);background:#fff8e7;font:18px/1 Gustav,Impact,sans-serif;letter-spacing:.04em;box-shadow:inset 0 -4px 0 #d2c7af}.cb-tab[aria-selected=true]{color:var(--cb-ink);background:linear-gradient(#ffe9a7,#efbd5b);box-shadow:inset 0 -5px 0 #b17b39}.cb-summary{min-height:28px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:2px 14px;background:#fff9e8;color:#493d32;font-size:11px}.cb-season{font-weight:900;text-transform:uppercase}.cb-fetched{white-space:nowrap}.cb-columns,.cb-row{display:grid;grid-template-columns:58px minmax(120px,1fr) 112px 92px;align-items:center;column-gap:8px}.cb-columns{height:26px;padding:0 13px;background:var(--cb-ink);color:#ead4aa;font-size:10px;font-weight:900;letter-spacing:.08em}.cb-columns span:nth-child(n+3),.cb-row span:nth-child(n+3){text-align:right}.cb-body{min-height:0;background:rgba(255,255,255,.46)}.cb-list{height:100%;margin:0;padding:4px 7px;overflow-y:auto;overscroll-behavior:contain;scrollbar-color:var(--cb-slate) transparent}.cb-row{min-height:44px;padding:0 7px;margin:2px 0;border:2px solid #c4c9c5;border-radius:9px;background:#fffdf7;box-shadow:0 2px 0 rgba(91,68,51,.14);font-size:14px;font-variant-numeric:tabular-nums}.cb-row.is-podium{border-color:#db9b22;background:linear-gradient(90deg,#fff2b8,#fffaf0 60%)}.cb-row.rank-1{border-width:3px;background:linear-gradient(90deg,#ffd967,#fff4c6 53%,#fffaf0)}.cb-rank{font:18px/1 Gustav,Impact,sans-serif;color:var(--cb-slate)}.is-podium .cb-rank{color:#9b6610}.cb-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:900}.cb-score{font-family:Gustav,Impact,sans-serif;font-size:18px}.cb-meters{color:#493d32;font-weight:800}.cb-state{height:100%;min-height:90px;display:grid;place-content:center;justify-items:center;gap:5px;padding:10px;text-align:center}.cb-state[hidden]{display:none}.cb-state strong{font:21px/1 Gustav,Impact,sans-serif}.cb-state span{color:#493d32;font-size:12px}.cb-retry{min-width:132px;min-height:44px;margin-top:5px;border:3px solid var(--cb-ink);border-radius:10px;color:var(--cb-ink);background:linear-gradient(#ffd86b,#f6b73c);font:17px/1 Gustav,Impact,sans-serif;box-shadow:inset 0 -4px 0 var(--cb-gold-dark)}
.cb-own{min-height:52px;display:grid;grid-template-columns:88px 1fr;align-items:center;gap:7px;padding:4px 8px;background:#fff8e6;border-top:3px solid var(--cb-ink)}.cb-own[hidden]{display:none}.cb-own-label{padding-left:5px;font:16px/1 Gustav,Impact,sans-serif;color:#493d32}.cb-own .cb-row{width:100%;margin:0;border-color:#b17b39;background:#fff8e6}.cb-own-copy{font-size:12px;font-weight:800;color:#493d32}.cb-note{min-height:27px;margin:0;padding:6px 12px;background:var(--cb-ink);color:#ead4aa;font-size:10px;text-align:center}.is-entering .cb-panel{animation:cb-enter 240ms cubic-bezier(.18,.86,.3,1.15) both}@keyframes cb-enter{from{opacity:0;transform:translateY(12px) scale(.975)}to{opacity:1;transform:none}}
.on-controls{grid-area:account;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 10px;padding:6px 10px;background:#fff8e6;border-bottom:2px solid #b17b39;font-size:11px}.on-local{min-width:0;font-weight:800;color:#493d32}.on-status{color:#493d32}.on-form{display:flex;align-items:center;gap:5px}.on-form input{width:150px;min-height:34px;border:2px solid var(--cb-slate);border-radius:7px;padding:4px 7px;background:#fff;color:var(--cb-ink)}.on-btn{min-height:36px;border:2px solid var(--cb-ink);border-radius:8px;padding:4px 10px;background:#fff8e7;color:var(--cb-ink);font-weight:900}.on-btn.rank{background:linear-gradient(#ffe9a7,#efbd5b)}.on-btn[disabled]{opacity:.5;cursor:default}.on-message{grid-column:1/-1;margin:0;color:#8c3b34;font-weight:800}
/* Spruch des Rekordhalters: goldenes Band ueber der Liste, Auswahl darunter. */
.cb-spruch{display:grid;grid-auto-flow:column;justify-content:start;align-items:baseline;gap:8px;padding:3px 14px;background:linear-gradient(#fff3c9,#ffe9a8);border-bottom:2px solid #e0c066;overflow:hidden;white-space:nowrap}.cb-spruch[hidden],.cb-spruch-wahl[hidden]{display:none}.cb-spruch-text{min-width:0;margin:0;font:14px/1.2 Gustav,Impact,sans-serif;color:#5a3c06;letter-spacing:.02em;overflow:hidden;text-overflow:ellipsis}.cb-spruch-wer{flex:none;font-size:10px;font-weight:900;letter-spacing:.08em;color:#8a6a1e;text-transform:uppercase}.cb-spruch-wahl{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:6px 14px;background:#fff8e6;border-bottom:2px solid #b17b39}.cb-spruch-label,.cb-spruch-fehler{width:100%;font-size:10px;font-weight:900;letter-spacing:.08em;color:#493d32}.cb-spruch-fehler{letter-spacing:0;font-size:11px;color:#8c3b34}.cb-spruch-knopf{min-height:36px;border:2px solid var(--cb-ink);border-radius:8px;padding:4px 10px;background:#fff8e7;color:var(--cb-ink);font-size:12px;font-weight:800}.cb-spruch-knopf[aria-pressed=true]{background:linear-gradient(#ffe9a7,#efbd5b);box-shadow:inset 0 -4px 0 #b17b39}.cb-spruch-knopf.is-ab{background:#f6e6e3}
.on-melden{grid-column:1/-1;margin-top:2px}.on-melden summary{min-height:26px;display:flex;align-items:center;font-weight:900;color:#493d32;cursor:pointer}.on-melden textarea{width:100%;margin:4px 0;border:2px solid var(--cb-slate);border-radius:7px;padding:5px 7px;background:#fff;color:var(--cb-ink);font:inherit;resize:vertical}
.cb-shell button:focus-visible{outline:3px solid #fff;outline-offset:2px}.cb-tab:focus-visible,.cb-retry:focus-visible{outline-color:var(--cb-red)}
@media (max-height:520px){.cb-panel{height:calc(100dvh - 12px);grid-template-rows:50px auto 46px auto 22px 22px minmax(52px,1fr) 46px 22px}.cb-header{min-height:50px}.cb-crest{width:38px;height:38px;font-size:21px}.cb-title-wrap h1{font-size:24px}.cb-close{width:44px;height:44px}.cb-tabs{padding:1px 7px}.cb-tab{min-height:42px}.cb-summary{min-height:22px}.cb-columns{height:22px}.cb-own{min-height:46px}.cb-note{min-height:22px;padding:4px}.cb-row{min-height:40px}.on-controls{max-height:72px;overflow-y:auto;padding:4px 8px}.on-form input{min-height:32px}.on-btn{min-height:34px}}
@media (max-width:760px){.cb-columns,.cb-row{grid-template-columns:42px minmax(78px,1fr) 82px 68px}.cb-score{font-size:15px}.on-controls{grid-template-columns:1fr}.on-form{grid-column:1}.on-message{grid-column:1}.on-form input{width:min(150px,42vw)}}
@media (prefers-reduced-motion:reduce){.cb-shell,.cb-shell *,.cb-shell *:before,.cb-shell *:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* Profile expands within the existing board; the game viewport never scrolls. */
.cb-panel{position:relative}.on-controls{grid-template-columns:minmax(0,1fr) auto}.on-profile{grid-column:1/-1}.on-profile summary{cursor:pointer;min-height:32px;font-weight:900;display:list-item;padding:6px}.on-profile[open]{position:absolute;z-index:3;inset:58px 8px 8px;overflow:auto;background:#fff4d8;border:3px solid #5b4433;border-radius:12px;padding:8px;box-shadow:0 5px 20px #5b443366}.on-profile[open] summary{background:#fff8e6;border-radius:7px;margin-bottom:8px}.on-profile[open] summary::after{content:' · SCHLIESSEN';font-size:11px}.on-form{display:grid;grid-template-columns:1fr 1fr;align-items:start}.on-form label{display:grid;gap:4px;font-size:13px;font-weight:700}.on-form input[type=text]{width:100%;min-height:44px}.on-form .on-consent{display:flex;align-items:flex-start;grid-column:1/-1;font-size:12px;line-height:1.5}.on-consent input{width:22px;height:22px;min-height:22px;flex:none;margin-top:2px}.on-form button{grid-column:1/-1;min-height:44px}.on-privacy{line-height:1.5;font-size:12px}.on-actions{display:flex;gap:5px;flex-wrap:wrap;grid-column:1/-1}.on-actions button[hidden]{display:none}.on-message:empty{display:none}.on-controls .on-status{grid-column:1/-1}.on-actions .on-btn{min-height:36px}.cb-shell a{color:#493d32}
@media(max-height:520px){.cb-panel{grid-template-rows:44px auto 40px auto 18px 20px minmax(32px,1fr) 40px 22px}.cb-header{min-height:44px}.cb-tabs{padding:0 6px}.cb-tab{min-height:38px;font-size:14px}.cb-spruch{padding:3px 10px}.cb-spruch-text{font-size:15px}.cb-spruch-wahl{padding:3px 10px;gap:4px}.cb-spruch-knopf{min-height:30px;font-size:11px}.on-controls{max-height:100px;gap:2px;padding:3px 8px;font-size:10px}.on-profile[open]{inset:48px 7px 7px}.on-profile summary{min-height:26px;padding:3px}.on-actions .on-btn{min-height:30px;padding:3px 7px;font-size:10px}.cb-own{min-height:40px}.cb-row{min-height:34px}.cb-columns{height:20px}}

/* Profile actions remain legible in short landscape viewports. */
.on-profile .on-form button,.on-profile .on-actions .on-btn{min-height:44px;padding:8px 12px;font-size:13px;font-weight:800;line-height:1.25}.on-profile input:focus-visible,.on-profile button:focus-visible,.on-profile summary:focus-visible{outline:3px solid #b17b39;outline-offset:2px}.on-profile[open] summary{min-height:40px;font-size:13px;line-height:1.4;padding:9px}.on-profile .on-actions{gap:8px}
/* FEHLER MELDEN, 17.09.2026: der Melder stand als 26px-Zeile in .on-controls.
   Dieser Kasten bekommt bei Fensterhoehe <= 520px max-height:100px + overflow,
   gemessen quer 915x412: Inhalt 156px (zugeklappt) bzw. 257px (offen) in 98px
   Kasten. Die Zeile lag y=153..179, die Kappungskante bei 156 - 3 Pixel
   sichtbar, Mittelpunkt ausserhalb, elementFromPoint(458,166) = button.cb-tab.
   Der Fingertipp oeffnete also den Reiter. Der Absenden-Knopf lag bei y=246,
   90px unter der Kante, und war 68x34 gross. Loesung: eigener Knopf im
   Tafelkopf (dort beschneidet nichts) mit 46px Trefferhoehe, und beim Oeffnen
   ein Blatt ueber der ganzen Tafel statt einer Zeile im gekappten Kasten. */
/* Der Melder haengt im .cb-header und wuerde dessen creme Schrift erben - im
   cremefarbenen Blatt waere die Bestaetigungszeile unsichtbar (gemessen:
   rgb(255,244,216) auf rgb(255,244,216)). Darum Tinte erzwingen. */
.on-melde{margin-left:auto;flex:none;color:var(--cb-ink)}
.on-melde>summary{display:flex;align-items:center;justify-content:center;gap:7px;min-height:46px;min-width:46px;padding:0 13px;border:3px solid #fff;border-radius:12px;color:var(--cb-ink);background:linear-gradient(#ffd86b,#f6b73c);font:16px/1 Gustav,Impact,sans-serif;letter-spacing:.04em;text-transform:uppercase;list-style:none;cursor:pointer;box-shadow:inset 0 -5px 0 var(--cb-gold-dark),0 3px 0 #5b4433}
.on-melde>summary::-webkit-details-marker{display:none}
.on-melde>summary::before{content:'!';display:grid;place-items:center;width:25px;height:25px;flex:none;border:2px solid var(--cb-ink);border-radius:50%;background:#fff;font:900 16px/1 Segoe UI,system-ui,sans-serif}
.on-melde>summary:active{transform:translateY(2px)}
/* Offen: absolut gegen .cb-panel (position:relative) - damit liegt das Blatt
   ueber Reitern und Liste, statt sich in den Kopf zu quetschen. Es waechst nur
   so hoch wie sein Inhalt (bottom:auto) und scrollt erst am Deckel: so bleibt
   bei offener Bildschirmtastatur das Textfeld oben und erreichbar. */
.on-melde[open]{position:absolute;z-index:7;inset:58px 8px auto;max-height:calc(100% - 66px);display:flex;flex-direction:column;gap:8px;padding:9px;overflow-y:auto;overscroll-behavior:contain;border:3px solid var(--cb-ink);border-radius:12px;background:#fff4d8;box-shadow:0 6px 22px rgba(91,68,51,.5)}
.on-melde[open]>summary{position:sticky;top:0;justify-content:space-between}
.on-melde[open]>summary::after{content:'SCHLIESSEN';font-size:11px}
.on-melde textarea{width:100%;min-height:86px;margin:0;border:2px solid var(--cb-slate);border-radius:8px;padding:7px 9px;background:#fff;color:var(--cb-ink);font:16px/1.35 Segoe UI,system-ui,sans-serif;resize:none}
.on-melde .on-melde-senden{width:100%;min-height:52px;border-width:3px;border-radius:11px;background:linear-gradient(#ffe9a7,#efbd5b);font:19px/1 Gustav,Impact,sans-serif;letter-spacing:.04em;box-shadow:inset 0 -5px 0 #b17b39}
.on-melde .on-melde-senden:active{transform:translateY(2px)}
.on-melde .on-privacy{margin:0;font-size:13px}
/* Flacher Kopf (44px) -> Knopf und Blattkante ziehen mit. */
@media (max-height:520px){.on-melde>summary{min-height:44px;font-size:15px}.on-melde[open]{inset:48px 7px auto;max-height:calc(100% - 55px)}}
/* INHABER-WERKZEUGE (firma.js, 25.09.2026): Firmenkarte im Profilblatt, Siegel in der Betriebe-Tafel, Einladungs-Toast. */
.on-firma-bereich{grid-column:1/-1}.on-firma[hidden]{display:none}.on-nummer-alt{display:none!important}.on-firma-team{margin:0;padding:0;list-style:none;display:grid;gap:6px}.on-firma-team li{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 10px;border-radius:10px;background:rgba(255,255,255,.1);font-weight:800}.on-firma .on-firma-knopf.is-klein{flex:none;min-height:40px;font-size:13px;padding:4px 10px}
.on-firma{display:grid;gap:8px;padding:10px;border:3px solid var(--cb-ink);border-radius:12px;background:linear-gradient(#765641,#49382c);color:var(--cb-cream);box-shadow:inset 0 2px 0 rgba(255,255,255,.14),0 4px 0 rgba(91,68,51,.55)}
.on-firma-kopf{display:flex;align-items:center;flex-wrap:wrap;gap:8px}
.gg-firmenlogo{display:block;width:48px;height:48px;flex:0 0 48px;box-sizing:border-box;object-fit:contain;padding:4px;border:2px solid #5b4433;border-radius:10px;background:#fff2cf}
.on-firma-logo-editor{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.on-firma-logo-editor>.on-firma-hinweis,.on-firma-logo-editor>.on-firma-meldung{flex:1 1 100%;min-width:0}
.on-firma-logo-editor>[hidden]{display:none!important}
.on-firma-kopf:has(.gg-firmenlogo) .on-firma-titel{flex:1 1 140px}
.cb-row.is-betrieb .cb-nick{display:flex;align-items:center;gap:6px;max-width:100%}
.cb-betriebsname{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cb-row .gg-firmenlogo.is-listenlogo{width:28px;height:28px;flex-basis:28px;padding:2px;border-radius:6px}
.cb-podium .cb-row .cb-bild.hat-firmenlogo{padding:0;place-items:center;background:#fff2cf;overflow:hidden}
.cb-podium .cb-bild .gg-firmenlogo.is-podiumlogo{position:absolute;inset:0;width:100%;height:100%;min-width:0;min-height:0;max-width:100%;max-height:100%;padding:5px;border:0;border-radius:0}
.on-firma-titel{font:22px/1 Gustav,Impact,sans-serif;letter-spacing:.03em;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.on-firma-rolle{padding:3px 8px;border:2px solid #5b4433;border-radius:999px;background:linear-gradient(#ffe19a,#d2a14c);color:#302319;font:12px/1 Gustav,Impact,sans-serif;letter-spacing:.08em}
.on-firma-siegel{padding:3px 9px;border:2px solid #5b4433;border-radius:999px;background:linear-gradient(#47653a,#31502b);color:#fff;font:12px/1 Gustav,Impact,sans-serif;letter-spacing:.04em;text-shadow:0 1px 0 rgba(0,0,0,.45)}
.on-firma-aktionen{display:flex;flex-wrap:wrap;gap:8px}
.on-profile .on-firma .on-firma-knopf,.on-firma .on-firma-knopf{flex:1 1 200px;min-height:46px;border:3px solid #5b4433;border-radius:11px;padding:6px 12px;background:linear-gradient(#fff3d8 0 18%,#e4c28d 19% 68%,#d6ad73 69% 100%);color:#302319;font:16px/1 Gustav,Impact,sans-serif;letter-spacing:.04em;text-shadow:0 2px 0 rgba(255,248,230,.45);box-shadow:0 4px 0 #5b4433}
.on-firma .on-firma-knopf.is-gruen{background:linear-gradient(#c5dd8b 0 18%,#a5c778 19% 66%,#91b85d 67% 100%)}
.on-firma .on-firma-knopf.is-gold{background:linear-gradient(#ffe19a,#d2a14c);color:#302319;text-shadow:0 1px 0 #fff5}
.on-firma .on-firma-knopf.is-rot{background:linear-gradient(#f4b2a0,#ee9a84 66%,#e4816a)}
.on-firma .on-firma-knopf:active{transform:translateY(3px);box-shadow:0 1px 0 #5b4433}
.on-firma .on-firma-knopf[disabled]{filter:saturate(.2);opacity:.8}
.on-firma-siegelform{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 8px;align-items:center;padding-top:8px;border-top:2px dashed rgba(255,242,207,.28)}
.on-firma-hinweis{grid-column:1/-1;font-size:12px;font-weight:700;color:#ead4aa}
.on-firma-siegelform input{width:100%;min-height:46px;border:3px solid #5b4433;border-radius:10px;padding:6px 10px;background:#fff;color:#493d32;font:15px/1.2 Segoe UI,system-ui,sans-serif}
.on-firma-siegelform .on-firma-knopf{flex:none}
.on-firma-meldung{margin:0;padding:7px 9px;border-radius:8px;background:rgba(255,255,255,.1);font-size:13px;font-weight:700;line-height:1.4;overflow-wrap:anywhere}
.on-firma-meldung.is-ok{background:rgba(63,180,62,.25);color:#e6ffe0}.on-firma-meldung.is-fehler{background:rgba(233,95,79,.28);color:#ffe3de}
.cb-siegel{display:inline-grid;place-items:center;width:20px;height:20px;margin-left:6px;vertical-align:-3px;border:2px solid #5b4433;border-radius:50%;background:linear-gradient(#47653a,#31502b);color:#fff;font:900 11px/1 system-ui,sans-serif}
.on-firma-toast{position:fixed;left:50%;bottom:calc(14px + env(safe-area-inset-bottom,0px));z-index:60;max-width:min(560px,calc(100vw - 24px));transform:translateX(-50%);padding:12px 16px;border:3px solid #5b4433;border-radius:14px;background:linear-gradient(#765641,#49382c);color:#fff2cf;font:700 14px/1.4 Segoe UI,system-ui,sans-serif;box-shadow:0 6px 0 #5b4433;animation:on-firma-rein .28s cubic-bezier(.18,.86,.3,1.2) both;transition:opacity .5s}
.on-firma-toast.is-weg{opacity:0}
@keyframes on-firma-rein{from{opacity:0;transform:translate(-50%,16px)}to{opacity:1;transform:translate(-50%,0)}}
@media (max-width:560px){.on-firma-siegelform{grid-template-columns:1fr}}
.on-firma .on-firma-siegelform .on-firma-knopf{grid-column:auto;flex:none}
.on-firma .on-firma-knopf.is-klein{flex:0 1 auto;min-height:40px;font-size:13px;background:linear-gradient(#fff3d8 0 18%,#e4c28d 19% 66%,#d6ad73 67%)}
/* Gustav-Schrift fuer Reiter/Knoepfe: .cb-shell button{font:inherit} (0,1,1) schlug bisher .cb-tab (0,1,0). */
.cb-shell .cb-tab,.cb-shell .cb-close,.cb-shell .cb-retry{font-family:Gustav,Impact,sans-serif}


/* ================= MEISTERTAFEL 3.0 "HERZ" (26.09.2026) =================
   Kevin: "Codex-Designs teilweise nicht passend und zu wenig Herz". Die Tafel
   haengt jetzt als Holzbrett an der Werkstattwand: Platz 1-3 stehen als Gustav
   auf Kanalrohr-Stuecken, ab Platz 4 Papierzettel mit Reisszwecke, links die
   Du-Karte aus Papier mit Gustav und Sprechblase. Querformat zuerst (667x375,
   915x412): zwei Spalten, gestapelt wird nur noch im Hochformat. Alles hier
   ueberschreibt die alte Creme-Tafel oben; die DOM-Struktur bleibt. */
.cb-shell{--gg-ink:#493d32;--gg-paper:#fff2cf;--gg-gold:#f6b73c;--gg-orange:#ff8a1f;--gg-aqua:#d6ad73;--gg-card:rgba(118,86,65,.94);--gg-card2:rgba(73,56,44,.94);
  padding:0;place-items:stretch;background:#49382c var(--gg-bg) center bottom/auto 100% repeat-x;color:var(--gg-paper)}
.cb-shell::before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(rgba(73,56,44,.2),rgba(73,56,44,.35) 40%,rgba(73,56,44,.6))}
.cb-panel{position:relative;width:100%;height:100%;max-height:none;border:0;border-radius:0;background:transparent;box-shadow:none;color:var(--gg-paper);
  grid-template-columns:minmax(200px,280px) minmax(0,1fr);column-gap:12px;padding:0 12px 10px;
  grid-template-areas:'header header' 'saison saison' 'account tabs' 'account spruch' 'account summary' 'account body' 'account own' 'account note';
  grid-template-rows:auto auto auto auto minmax(0,1fr) auto auto;
  padding-left:max(12px,env(safe-area-inset-left,0px));padding-right:max(12px,env(safe-area-inset-right,0px))}
@media (min-width:1100px){.cb-panel{width:min(1240px,100%);margin:0 auto;grid-template-columns:300px minmax(0,1fr)}}
.is-entering .cb-panel{animation:gg-tafel-rein .26s cubic-bezier(.18,.86,.3,1.12) both}
@keyframes gg-tafel-rein{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.cb-shell .cb-columns,.cb-shell .cb-columns[hidden]{display:none!important}

/* Kopf: Band wie Profil und Rennen. Hoehe 56px-Deckel (Kevin 06.10.2026: "Spruch oben nimmt soviel Platz weg") -
   Liste/Podium sollen den Platz bekommen, nicht der Kopf. */
.cb-header{margin:0 -12px 10px;min-height:0;max-height:56px;padding:4px 12px;gap:12px;background:linear-gradient(rgba(118,86,65,.97),rgba(73,56,44,.97));border-bottom:4px solid var(--gg-ink);box-shadow:0 3px 0 rgba(246,183,60,.9)}
.cb-crest{border-color:var(--gg-ink);box-shadow:inset 0 -4px 0 var(--cb-gold-dark),0 3px 0 var(--gg-ink)}
.cb-eyebrow{font:12px/1 Gustav,Impact,sans-serif;letter-spacing:.2em;color:#ead4aa}
.cb-title-wrap h1{font:30px/.95 Gustav,Impact,sans-serif;color:#fff;text-shadow:0 3px 0 var(--gg-ink),2px 0 0 var(--gg-ink),-2px 0 0 var(--gg-ink),0 -2px 0 var(--gg-ink)}
.cb-shell .cb-close{margin-left:0;width:46px;height:46px;border:3px solid var(--gg-ink);border-radius:12px;background:linear-gradient(#db5a50,#b93832 66%,#81261f);box-shadow:0 4px 0 var(--gg-ink)}
.cb-shell .cb-close:active{transform:translateY(3px);box-shadow:0 1px 0 var(--gg-ink)}

/* WAS KLEMMT? (Fehler melden): runder Knopf im Kopf, Blatt aus Papier. Ein Block statt zwei (P0.3). */
.on-melde{margin-left:auto;flex:none;color:var(--gg-ink)}
.on-melde>summary{min-height:44px;min-width:44px;padding:0 14px 0 6px;gap:8px;border:3px solid var(--gg-ink);border-radius:999px;color:#302319;background:linear-gradient(#fff3d8 0 18%,#e4c28d 19% 66%,#d6ad73 67%);
  font:14px/1 Gustav,Impact,sans-serif;letter-spacing:.06em;text-shadow:0 2px 0 rgba(255,248,230,.45);box-shadow:0 4px 0 var(--gg-ink)}
.on-melde>summary::before{width:26px;height:26px;border:2px solid var(--gg-ink);background:var(--gg-gold);color:var(--gg-ink)}
.on-melde[open]{position:absolute;z-index:9;inset:70px 12px auto;margin-inline:auto;max-width:560px;max-height:calc(100% - 80px);padding:12px;border:3px solid var(--gg-ink);border-radius:16px;
  background:var(--gg-paper);color:var(--gg-ink);box-shadow:inset 0 0 0 3px #f0d48a,0 8px 0 var(--gg-ink),0 18px 40px rgba(0,0,0,.5),0 0 0 100vmax rgba(91,68,51,.8)}
.cb-header .on-melde[open]+.cb-close{margin-left:auto}
.on-melde[open]>summary{top:-12px;justify-content:flex-start;margin:-12px -12px 4px;border-width:0 0 3px;border-radius:13px 13px 0 0;background:linear-gradient(#ffe19a,#f6b73c 60%,#e7a928);color:var(--gg-ink);text-shadow:none;box-shadow:none;font-size:17px}
.on-melde[open]>summary::after,.on-profile[open]>summary::after,.on-controls .on-melden[open]>summary::after{content:"SCHLIESSEN ×";margin-left:auto;padding:6px 10px;border:2px solid var(--gg-ink);border-radius:9px;background:var(--gg-paper);font:13px/1 Gustav,Impact,sans-serif;letter-spacing:.05em;color:var(--gg-ink)}
.on-melde textarea{border:3px solid var(--gg-ink);border-radius:12px}
.on-melde .on-melde-senden{border:3px solid var(--gg-ink)}
.on-melde .on-privacy{color:#4d3d1c}

/* Einheitliche 3D-Knoepfe: Primaer orange, Zweit blau, Gold, ruhig schiefer (Werte wie duell.css Z. 398-401). */
.cb-shell .cb-retry,.on-melde .on-melde-senden,.on-controls .on-profile>summary,.on-controls .on-melden>summary,.on-profile .on-form>button,.on-profile .on-firma-actions .on-btn,.on-controls .on-melden .on-btn,.on-controls .on-actions .on-btn{
  display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:4px 14px;border:3px solid var(--gg-ink);border-radius:12px;color:#302319;list-style:none;cursor:pointer;
  font:16px/1.1 Gustav,Impact,sans-serif;letter-spacing:.05em;text-transform:uppercase;text-align:center;text-shadow:0 2px 0 rgba(255,248,230,.45);
  background:linear-gradient(#fff3d8 0 18%,#e4c28d 19% 66%,#d6ad73 67%);box-shadow:0 4px 0 #5b4433,0 7px 0 var(--gg-ink)}
.cb-shell .cb-mitmachen,.cb-shell .cb-los,.on-melde .on-melde-senden,.on-controls .on-profile>summary.ist-mitmachen,.on-profile .on-form>button.rank,.on-controls .on-melden .on-btn:nth-of-type(1){
  background:linear-gradient(#ffc163 0 18%,#ff9a2e 19% 66%,#e8741a 67%);box-shadow:0 4px 0 #9a4a0e,0 7px 0 var(--gg-ink)}
.on-controls .on-profile>summary,.on-profile .on-firma-actions .on-btn,.on-controls .on-melden>summary,.on-controls .on-melden .on-btn:nth-of-type(n+2){background:linear-gradient(#fff3d8 0 18%,#e4c28d 19% 68%,#d6ad73 69%);box-shadow:0 4px 0 #5b4433,0 7px 0 var(--gg-ink)}
.cb-shell .cb-retry:not(.cb-mitmachen):not(.cb-los){color:#302319;text-shadow:0 1px 0 #fff6;background:linear-gradient(#ffe19a,#f6b73c 60%,#e7a928);box-shadow:0 4px 0 #8b6028,0 7px 0 var(--gg-ink)}
.cb-shell .cb-retry:active,.on-melde .on-melde-senden:active,.on-controls summary:active,.on-profile .on-form>button:active,.on-controls .on-btn:active{transform:translateY(4px);box-shadow:0 1px 0 var(--gg-ink)}
.on-controls .on-profile>summary::-webkit-details-marker,.on-controls .on-melden>summary::-webkit-details-marker{display:none}
.on-controls .on-melden>summary::before{content:"";width:12px;height:12px;flex:none;border:3px solid var(--gg-ink);border-radius:50%;background:#e7a928;box-shadow:6px 6px 0 -3px #e7a928}

/* Links: DU-Karte aus Papier. Gustav steckt im PROFIL-Knopf (board_view.js duKarte). */
.on-controls{grid-area:account;align-self:start;max-height:100%;overflow:auto;display:flex;flex-direction:column;gap:9px;padding:10px 10px 12px;border:3px solid var(--gg-ink);border-radius:16px;
  background:var(--gg-paper);color:var(--gg-ink);box-shadow:inset 0 0 0 3px #f0d48a,0 5px 0 var(--gg-ink);font-size:13px;scrollbar-width:thin}
.on-du{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-rows:auto auto 1fr;column-gap:10px;align-items:start}
.on-controls .on-btn.on-du-profil{grid-column:1;grid-row:1/4;display:grid;justify-items:center;gap:3px;width:74px;min-height:0;padding:4px 4px 5px;border:3px solid var(--gg-ink);border-radius:12px;color:#302319;
  background:linear-gradient(#fff3d8,#e4c28d 70%,#d6ad73);font:12px/1 Gustav,Impact,sans-serif;letter-spacing:.08em;text-shadow:0 2px 0 rgba(255,248,230,.45);box-shadow:0 4px 0 var(--gg-ink)}
.on-controls .on-btn.on-du-profil:active{transform:translateY(3px);box-shadow:0 1px 0 var(--gg-ink)}
.cb-du-bild{display:block;width:62px;height:64px;overflow:hidden;border:2px solid var(--gg-ink);border-radius:9px;background:#fff2cf var(--gg-gustav) 50% 6%/150% auto no-repeat}
.cb-du-bild canvas{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 0;transform:scale(1.35);transform-origin:50% 0}
.on-du-kopf{grid-column:2;font:12px/1 Gustav,Impact,sans-serif;letter-spacing:.2em;color:#493d32;margin-top:4px}
.on-du-name{grid-column:2;font:22px/1.05 Gustav,Impact,sans-serif;color:var(--gg-ink);text-shadow:none;min-width:0;overflow-wrap:anywhere;white-space:normal}
.on-du-kopf::after{content:" · INKOGNITO";letter-spacing:.08em;color:#8a5a14}.on-controls:has(.on-status.ist-an) .on-du-kopf::after{content:" · IN DER LISTE";color:#2b8b34}
.on-du-firma{grid-column:2;font-size:13px;font-weight:800;color:#7a5a1a;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
/* EINE kleine Zeile statt Sprechblase (Kevin 06.10.2026: "der Spruch nimmt soviel Platz weg") -
   kein Rahmen, kein Sprechblasen-Dreieck mehr, nur knapper Text direkt unter DU/Name. */
.on-status{margin-top:2px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#5a4a2a;font:700 12px/1.3 Segoe UI,system-ui,sans-serif;letter-spacing:0}
.on-actions{display:flex;flex-wrap:wrap;gap:8px}
.on-controls .on-actions .on-btn{flex:1 1 auto;min-height:40px;padding:4px 10px;border-style:dashed;border-width:2px;color:#4d3d1c;text-shadow:none;background:rgba(73,56,44,.06);box-shadow:none;font-size:13px}
.on-controls .on-actions .on-btn[hidden]{display:none}
.on-message{color:#b93832;font-weight:800}

/* Blaetter (MITMACHEN / NAME, FIRMA & DATENSCHUTZ, WERKZEUGKISTE): Papier, so hoch wie der Inhalt, mittig. */
.on-profile[open],.on-controls .on-melden[open]{position:fixed;z-index:9;top:66px;left:50%;right:auto;bottom:auto;transform:translateX(-50%);width:min(560px,calc(100vw - 24px - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px)));max-height:calc(100dvh - 78px);overflow:auto;padding:12px;
  border:3px solid var(--gg-ink);border-radius:16px;background:var(--gg-paper);color:var(--gg-ink);box-shadow:inset 0 0 0 3px #f0d48a,0 8px 0 var(--gg-ink),0 18px 40px rgba(0,0,0,.55),0 0 0 100vmax rgba(91,68,51,.8)}
.on-profile[open]>summary,.on-controls .on-melden[open]>summary{position:sticky;top:-12px;z-index:1;margin:-12px -12px 12px;min-height:50px;justify-content:flex-start;border-width:0 0 3px;border-radius:13px 13px 0 0;
  background:linear-gradient(#ffe19a,#f6b73c 60%,#e7a928);color:var(--gg-ink);text-shadow:none;box-shadow:none;font-size:18px;transform:none}
.on-controls .on-profile[open]>summary.ist-mitmachen{background:linear-gradient(#ffe19a,#f6b73c 60%,#e7a928);box-shadow:none;transform:none}
.on-profile[open] .on-form{display:grid;grid-template-columns:minmax(0,1fr) auto auto minmax(0,1fr);gap:8px 10px;align-items:end}
.on-profile[open] .on-form>label:nth-of-type(1){grid-area:1/1/2/3}.on-profile[open] .on-form>label:nth-of-type(2){grid-area:1/3/2/5}.on-profile[open] .on-form>label:nth-of-type(3){grid-area:2/1/3/2;white-space:nowrap;min-width:0}
.on-profile[open] .on-form .on-firma-actions{display:none}.on-profile[open] .on-form label{grid-template-columns:minmax(0,1fr)}
.on-profile .on-firma-actions>.on-btn:last-child{grid-area:2/2/3/3}.on-profile .on-firma-actions>.on-btn:first-child{grid-area:2/4/3/5}
.on-profile .on-firma-actions::before{content:"oder";grid-area:2/3/3/4;font:13px/44px Gustav,Impact,sans-serif;letter-spacing:.1em;text-transform:uppercase;color:#7a5a1a}
.on-profile .on-form>.on-privacy,.on-profile .on-form>.on-firma-bereich{grid-column:1/-1;margin:0}
.on-profile .on-form>.on-privacy:empty,.on-profile .on-firma-bereich:not(:has(.on-firma:not([hidden]))){display:none}
.on-profile input::placeholder,.on-controls textarea::placeholder,#gg-screen-profil input::placeholder{font:italic 500 14px/1.2 Segoe UI,system-ui,sans-serif;letter-spacing:0;color:#9d8b64}
.on-form:has(.on-consent input:not(:checked))>button.rank{filter:grayscale(.9);opacity:.6}
.on-controls .on-profile[open]>summary.ist-mitmachen{font-size:0}.on-controls .on-profile[open]>summary.ist-mitmachen::before{content:"NAME & FIRMA AN DIE TAFEL";font-size:18px}
.on-profile .on-form label{display:grid;gap:4px;font:13px/1.2 Gustav,Impact,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:#493d32}
.on-profile .on-form input[type=text],.on-controls .on-melden textarea{width:100%;min-height:44px;border:3px solid var(--gg-ink);border-radius:10px;padding:6px 10px;background:#fff;color:var(--gg-ink);font:17px/1.2 Gustav,Impact,sans-serif;letter-spacing:.02em;text-transform:none}
.on-profile .on-form input::placeholder{color:#9a8a66}
.on-profile .on-firma-actions .on-btn{font-size:14px}
.on-profile .on-form .on-consent{grid-column:1/4;align-self:stretch;display:flex;align-items:center;gap:12px;min-height:44px;padding:8px 10px;border:2px dashed #c9a24a;border-radius:12px;background:#fff8e4;color:var(--gg-ink);font:700 13px/1.4 Segoe UI,system-ui,sans-serif;letter-spacing:0;text-transform:none;cursor:pointer}
.on-profile .on-consent input{width:28px;height:28px;min-height:28px;margin:0;flex:none;accent-color:#e8741a}
/* MOBIL-1014-06: Einwilligungs-Haken 36 px (die ganze Zeile bleibt Tippziel). Unter 360 px Hoehe zentriert der Firmen-
   Sprung (runtime.js scrollIntoView center) unter dem klebenden Kopf, damit SPITZNAME/FIRMA nicht dahinter verschwinden. */
.on-profile .on-consent input{width:36px;height:36px;min-height:36px}
@media (max-height:360px){.on-profile[open]{scroll-padding-top:60px}.on-profile .on-form .on-consent{font-size:12px;line-height:1.3;padding:6px 10px}}
.on-profile .on-form>button{grid-column:4/5;align-self:stretch;min-height:50px;font-size:17px}
.on-profile .on-privacy,.on-controls .on-melden .on-privacy{margin:8px 2px 0;color:#4d3d1c;font-size:12px;line-height:1.45}
.on-profile a,.on-controls a{color:#493d32;font-weight:700}
.on-profile .on-firma-bereich{grid-column:1/-1}
/* WERKZEUGKISTE SICHERN: der Code haengt als Messing-Schluesselanhaenger am Brett. details ist kein
   verlaesslicher Flex-Behaelter (Inhalt liegt im Schatten-Slot), darum Block + Inline-Knoepfe. */
.on-controls .on-melden[open] textarea{display:block;width:100%;margin:3px 0 15px;min-height:88px;max-height:172px;padding:0;border:solid #fff;border-width:10px 12px;border-radius:10px;font:600 13px/19px ui-monospace,Consolas,monospace;scrollbar-color:#765641 #efe6cf;overflow-wrap:anywhere;word-break:break-all;resize:none;field-sizing:content;
  background:#fff;box-shadow:0 0 0 3px var(--gg-ink)}
.on-controls .on-melden[open] .on-btn{display:inline-flex;width:calc((100% - 17px) / 3);margin:0 8px 8px 0;vertical-align:top;padding:4px 8px}.on-controls .on-melden[open] .on-btn:nth-of-type(3){margin-right:0}
.on-controls .on-melden[open] .on-privacy{margin:4px 2px 0;font-size:13px;font-weight:700}

/* Reiter: drei Einzelknoepfe, aktiver in Gold */
.cb-tabs{grid-area:tabs;display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:0 0 4px;background:none;border:0;border-radius:0;overflow:visible;box-shadow:none}
.cb-shell .cb-tab{min-height:44px;border:3px solid var(--gg-ink);border-radius:12px;color:#302319;font:16px/1 Gustav,Impact,sans-serif;letter-spacing:.05em;text-shadow:0 2px 0 rgba(255,248,230,.45);
  background:linear-gradient(#fff3d8 0 18%,#e4c28d 19% 68%,#d6ad73 69%);box-shadow:0 4px 0 var(--gg-ink)}
.cb-shell .cb-tab[aria-selected=true]{color:var(--gg-ink);text-shadow:0 1px 0 #fff8;background:linear-gradient(#ffe19a,#f6b73c 60%,#e7a928);box-shadow:0 4px 0 var(--gg-ink)}
.cb-shell .cb-tab:active{transform:translateY(3px);box-shadow:0 1px 0 var(--gg-ink)}

/* Spruch des Rekordhalters: goldenes Band, aber nur EIN schmaler Streifen - Kevin 06.10.2026:
   "der nimmt soviel Platz weg". Jetzt immer die einzeilige Kurzform (vorher nur <430px hoch). */
.cb-spruch-box{margin-top:4px;margin-bottom:20px}   /* zentrale-16: Platz fuer das schraege Wochen-Etikett (.cb-summary), sonst liegt es auf der Reiter-Unterkante; bis 430 px Hoehe (kein Etikett) wieder 0 */
.cb-spruch{border:3px solid var(--gg-ink);border-radius:12px;background:linear-gradient(90deg,#ffe19a,#f6b73c);box-shadow:0 3px 0 var(--gg-ink)}
.cb-spruch-text{color:#302319}.cb-spruch-wer{font-size:12px;color:#5a3c06}
.cb-spruch-wahl{margin-top:6px;border:2px solid var(--gg-ink);border-radius:10px;background:var(--gg-paper)}
.cb-spruch-label,.cb-spruch-fehler{font-size:12px;color:#493d32}
.cb-spruch-knopf{min-height:40px;font-size:13px}

/* Holzbrett mit Zettelchen */
.cb-summary{position:relative;z-index:2;justify-self:start;align-self:end;min-height:0;margin:6px 0 -12px 14px;padding:4px 10px;gap:12px;border:2px solid var(--gg-ink);border-radius:7px;background:var(--gg-paper);color:#5a4a2a;font-size:12px;box-shadow:0 2px 0 var(--gg-ink);transform:rotate(-1.5deg)}
.cb-season{color:var(--gg-ink);font:13px/1 Gustav,Impact,sans-serif;letter-spacing:.08em}
.cb-fetched{font-weight:700}
.cb-body{position:relative;min-height:0;border:3px solid var(--gg-ink);border-radius:14px;overflow:hidden;
  background:repeating-linear-gradient(180deg,rgba(0,0,0,.07) 0 2px,transparent 2px 23px,rgba(255,255,255,.04) 23px 25px,transparent 25px 41px),linear-gradient(#95622f,#6e4420);box-shadow:inset 0 0 0 3px rgba(255,214,150,.18),inset 0 8px 14px rgba(0,0,0,.35),0 5px 0 var(--gg-ink)}
.cb-list{height:100%;margin:0;padding:18px 10px 30px;overflow-y:auto;list-style:none;scrollbar-color:#f0d48a transparent;
  -webkit-mask-image:linear-gradient(transparent 4px,#000 18px,#000 calc(100% - 30px),transparent);mask-image:linear-gradient(transparent 4px,#000 18px,#000 calc(100% - 30px),transparent)}
.cb-body::after{content:"";position:absolute;z-index:1;left:50%;bottom:9px;width:13px;height:13px;margin-left:-8px;border:solid var(--gg-gold);border-width:0 4px 4px 0;transform:rotate(45deg);filter:drop-shadow(1px 1px 0 var(--gg-ink));pointer-events:none;opacity:0}
@supports (animation-timeline:scroll()){.cb-panel{timeline-scope:--cb-liste}.cb-list{scroll-timeline:--cb-liste block}.cb-body::after{animation:cb-weiter linear both;animation-timeline:--cb-liste}
  .cb-summary{animation:cb-etikett linear both;animation-timeline:--cb-liste;animation-range:0 36px}}
@keyframes cb-etikett{to{opacity:0;visibility:hidden}}
@keyframes cb-weiter{0%,80%{opacity:1}100%{opacity:0}}
.cb-list>.cb-row{position:relative;display:grid;grid-template-columns:38px minmax(0,1fr) auto;grid-template-rows:auto auto;column-gap:10px;align-items:center;min-height:48px;margin:0 2px 10px;padding:4px 14px 4px 8px;
  border:3px solid var(--gg-ink);border-radius:10px;background:linear-gradient(#f7ecd0,#ecd9b0);color:var(--gg-ink);box-shadow:inset 0 0 0 2px #d9b25a,0 3px 0 var(--gg-ink);font-size:14px;transform:rotate(.35deg)}
.cb-list>.cb-row:nth-child(odd){transform:rotate(-.4deg)}
.cb-list>.cb-row::before,.cb-list>.cb-row::after{content:"";position:absolute;top:-8px;left:6px;width:40px;height:15px;background:rgba(255,248,222,.72);box-shadow:0 1px 2px rgba(0,0,0,.3);transform:rotate(-7deg)}.cb-list>.cb-row::after{left:auto;right:26px;transform:rotate(6deg)}
.cb-shell .cb-row .cb-score::after{content:" Pkt";font-size:.68em;letter-spacing:.03em}
.cb-row>.cb-rank{grid-row:1/3}
.cb-name{grid-row:1/3;display:grid;min-width:0;overflow:visible;white-space:normal}
.cb-nick,.cb-firma{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cb-nick{font:17px/1.1 Gustav,Impact,sans-serif;letter-spacing:.02em;color:var(--gg-ink)}
.cb-firma{font:700 12px/1.25 Segoe UI,system-ui,sans-serif;color:#7a5a1a}
.cb-firma:empty{display:none}
.cb-shell .cb-row .cb-score{grid-column:3;align-self:end;text-align:right;font:19px/1 Gustav,Impact,sans-serif;color:var(--gg-ink)}
.cb-shell .cb-row .cb-meters{grid-column:3;align-self:start;text-align:right;color:#5a4a2a;font:700 12px/1.3 Segoe UI,system-ui,sans-serif}
.cb-row.is-meldbar{cursor:pointer}
.cb-row.is-meldbar:hover{filter:brightness(1.06)}.cb-row.is-meldbar:focus-visible{outline:3px solid var(--gg-orange);outline-offset:2px}
.cb-siegel{border-color:var(--gg-ink)}

/* Rang als Muenze: Gold, Silber, Kupfer; ab Platz 4 Rohrschelle aus Blech */
.cb-shell .cb-rank{position:relative;display:inline-grid;place-items:center;width:36px;height:36px;min-width:0;border:3px solid var(--gg-ink);border-radius:50%;color:var(--gg-ink);font:16px/1 Gustav,Impact,sans-serif;
  background:radial-gradient(circle at 30% 25%,#fff8 0 10%,transparent 11%),linear-gradient(#c9c2b6,#c9c2b6);box-shadow:inset 0 -3px 0 rgba(0,0,0,.18),0 2px 0 var(--gg-ink)}
.cb-shell .rank-1 .cb-rank{background:radial-gradient(circle at 30% 25%,#fff8 0 10%,transparent 11%),linear-gradient(#ffe38a,#f0b83f 60%,#c88917)}
.cb-shell .rank-2 .cb-rank{background:radial-gradient(circle at 30% 25%,#fff8 0 10%,transparent 11%),linear-gradient(#ebe6db,#c9c2b6 60%,#c9c2b6)}
.cb-shell .rank-3 .cb-rank{background:radial-gradient(circle at 30% 25%,#fff8 0 10%,transparent 11%),linear-gradient(#e8a978,#c9814a 60%,#96562a)}
.cb-stern{position:absolute;top:-13px;left:50%;transform:translateX(-50%);font:16px/1 Segoe UI Symbol,system-ui,sans-serif;color:var(--gg-gold);text-shadow:0 0 0 var(--gg-ink),1px 1px 0 var(--gg-ink),-1px 1px 0 var(--gg-ink),1px -1px 0 var(--gg-ink),-1px -1px 0 var(--gg-ink)}

/* Podium: drei Kanalrohr-Stuecke, Reihenfolge 2-1-3, Gustav obendrauf, Platz 1 mit Goldener Saugglocke */
.cb-podium{display:grid;grid-template-columns:1fr 1.15fr 1fr;align-items:end;gap:10px;margin:0 0 12px;padding:4px 6px 0;border-bottom:4px solid rgba(91,68,51,.55)}
.cb-podium>.cb-row{position:relative;display:flex;flex-direction:column;align-items:center;min-width:0;min-height:0;margin:0;padding:0;border:0;border-radius:12px;background:none;box-shadow:none;color:#fff;transform:none;text-align:center}
.cb-podium>.rank-2{grid-column:1}.cb-podium>.rank-1{grid-column:2}.cb-podium>.rank-3{grid-column:3}.cb-podium>.cb-row{grid-row:1}
.cb-bild{--helm:#ffd23f;position:relative;display:grid;place-items:end center;width:60px;height:60px;padding-bottom:6%;border:3px solid var(--gg-ink);border-radius:50%;color:var(--gg-ink);font:24px/.8 Gustav,Impact,sans-serif;background:radial-gradient(circle at 30% 16%,#fff9 0 7%,transparent 8%),linear-gradient(var(--helm) 34%,var(--gg-ink) 34% 41%,#fff2cf 41%);box-shadow:0 0 0 3px #c9c2b6,0 4px 0 3px var(--gg-ink)}
.rank-1>.cb-bild{--helm:#ebe6db}.rank-3>.cb-bild{--helm:#ff9a2e}
.rank-1>.cb-bild{width:72px;height:72px;box-shadow:0 0 0 3px #f0b83f,0 4px 0 3px var(--gg-ink)}
.rank-3>.cb-bild{box-shadow:0 0 0 3px #c9814a,0 4px 0 3px var(--gg-ink)}
.rank-1>.cb-bild::before{content:"";position:absolute;right:-30px;top:-4px;width:6px;height:22px;border:2px solid var(--gg-ink);border-radius:3px;background:linear-gradient(90deg,#ffe38a,#c88917);transform:rotate(18deg)}
.rank-1>.cb-bild::after{content:"";position:absolute;right:-36px;top:14px;width:24px;height:13px;border:3px solid var(--gg-ink);border-radius:14px 14px 4px 4px;background:linear-gradient(#ffe38a,#f0b83f 60%,#c88917);transform:rotate(18deg)}
.cb-shell .cb-podium .cb-rank{margin:-22px 0 0 -46px;z-index:1;width:30px;height:30px;font-size:14px}.cb-podium .cb-stern{display:none}
.cb-shell .cb-podium .cb-meters{display:none}
.cb-shell .cb-podium .cb-name{display:grid;justify-items:center;width:100%;margin-top:3px;text-align:center}
.cb-podium .cb-nick{max-width:100%;color:#fff;font-size:16px;text-shadow:0 2px 0 var(--gg-ink),1px 0 0 var(--gg-ink),-1px 0 0 var(--gg-ink),0 -1px 0 var(--gg-ink)}
.cb-podium .cb-firma{max-width:100%;color:#f5dfae}
.cb-shell .cb-podium .cb-score{position:absolute;z-index:1;left:0;right:0;bottom:6px;line-height:1;color:var(--gg-ink);font-size:17px;text-align:center;text-shadow:0 1px 0 rgba(255,255,255,.6)}
.cb-sockel{position:relative;width:66%;height:48px;margin-top:6px;border:3px solid var(--gg-ink);border-bottom:0;border-radius:6px 6px 0 0;background:linear-gradient(90deg,#8b8070,#c9c2b6 38%,#ebe6db 46%,#c9c2b6 72%,#8b8070)}
.cb-sockel::before{content:"";position:absolute;left:-7px;right:-7px;top:-4px;height:13px;border:3px solid var(--gg-ink);border-radius:5px;background:linear-gradient(90deg,#5b5145,#c9c2b6 40%,#ebe6db 48%,#8b8070 74%,#5b5145)}
.cb-podium>.cb-row>.cb-sockel{width:84%}.rank-1>.cb-sockel{height:72px}.rank-2>.cb-sockel{height:66px}.rank-3>.cb-sockel{height:60px}
.cb-podium>.cb-row.is-meldbar:hover,.cb-podium>.cb-row.is-meldbar:focus-visible{filter:brightness(1.1);outline-offset:4px}
@media (prefers-reduced-motion:no-preference){.cb-podium>.rank-1>.cb-bild{animation:cb-hurra 1.8s ease-in-out .3s 2}}
@keyframes cb-hurra{0%,100%{transform:none}30%{transform:translateY(-5px) rotate(-4deg)}60%{transform:translateY(0) rotate(3deg)}}

/* Leerzustand: Gustav mit leerem Pokal, Text, Handlung */
.cb-state{display:grid;grid-template-columns:auto minmax(0,260px);grid-template-rows:auto auto auto;column-gap:14px;row-gap:6px;place-content:center;justify-items:start;align-items:center;height:100%;padding:12px;text-align:left}
.cb-leer-gustav{grid-row:1/4;position:relative;width:118px;height:148px;background:var(--gg-gustav) 50% 0/contain no-repeat;filter:drop-shadow(0 3px 0 rgba(73,56,44,.6))}
.cb-state[data-art=betriebe] .cb-leer-gustav{display:grid;place-items:center;width:128px;height:84px;margin-top:14px;border:4px solid var(--gg-ink);border-radius:10px;background:radial-gradient(circle at 10px 10px,#e4c28d 0 3px,transparent 4px),radial-gradient(circle at calc(100% - 10px) 10px,#e4c28d 0 3px,transparent 4px),#fff;box-shadow:inset 0 0 0 4px #5b4433,0 4px 0 var(--gg-ink);filter:none;transform:rotate(-3deg)}
.cb-state[data-art=betriebe] .cb-leer-gustav::after{content:"DEIN\A BETRIEB?";white-space:pre;text-align:center;font:21px/1 Gustav,Impact,sans-serif;letter-spacing:.04em;color:#493d32}
.cb-state[data-art=betriebe] .cb-leer-gustav::before{content:"";position:absolute;left:18px;right:18px;top:-24px;height:22px;border:solid var(--gg-ink);border-width:3px 3px 0;border-radius:40px 40px 0 0}
.cb-panel:has(.cb-state:not([hidden])) .cb-summary{visibility:hidden}
.cb-shell .cb-state strong{padding:4px 10px;border:3px solid var(--gg-ink);border-radius:8px;background:var(--gg-paper);color:var(--gg-ink);font:19px/1.1 Gustav,Impact,sans-serif;letter-spacing:.04em;box-shadow:0 3px 0 var(--gg-ink);transform:rotate(-1deg)}
.cb-shell .cb-state span:not(.cb-leer-gustav){color:#fff2cf;font-size:13px;font-weight:700;text-shadow:0 1px 0 var(--gg-ink)}
.cb-shell .cb-state .cb-retry{margin-top:4px;min-width:150px}

/* DEIN RANG: Ansporn unter dem Brett */
.cb-own{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;margin-top:10px;padding:6px 10px;border:3px solid var(--gg-ink);border-radius:12px;background:rgba(73,56,44,.88);box-shadow:0 4px 0 var(--gg-ink)}
.cb-own-label{flex:none;padding:0;font:15px/1.1 Gustav,Impact,sans-serif;letter-spacing:.08em;color:var(--gg-gold)}
.cb-own .cb-row{flex:1 1 240px;display:grid;grid-template-columns:36px minmax(0,1fr) auto;grid-template-rows:auto auto;column-gap:10px;align-items:center;min-height:44px;margin:0;padding:2px 12px 2px 6px;
  border:3px dashed #f1cd55;border-radius:10px;background:rgba(255,242,207,.12);box-shadow:none;color:#fff}
.cb-own .cb-nick{color:#fff}.cb-own .cb-firma{color:#e8d3a2}
.cb-shell .cb-own .cb-score{color:#fff}.cb-shell .cb-own .cb-meters{color:#ead4aa}
.cb-own-copy{flex:1 1 180px;color:#ffe19a;font:700 13px/1.3 Segoe UI,system-ui,sans-serif}
.cb-own .cb-retry{flex:none;min-height:44px;font-size:15px}
.cb-note{padding:6px 4px 0;background:none;color:rgba(255,242,207,.85);font-size:12px;text-shadow:0 1px 0 var(--gg-ink)}

/* Kurzes Querformat (667x375, 640x360, 915x412): alles kompakter, Liste bleibt scrollbar */
@media (max-height:520px){
  .cb-panel{grid-template-columns:minmax(180px,220px) minmax(0,1fr);grid-template-rows:auto auto auto auto auto minmax(0,1fr) auto 0;column-gap:10px;padding-bottom:6px}/* 12.11.2026: acht Bereiche brauchen acht Zeilengroessen. Seit dem Saison-Band fehlte eine - die Liste bekam 'auto', die Leiste DEIN DUELL 0 px und war auf Handys unsichtbar */
  .cb-header{min-height:48px;margin-bottom:8px;padding:4px 10px}.cb-crest{width:38px;height:38px;font-size:21px}.cb-title-wrap h1{font-size:24px}.cb-eyebrow{font-size:12px;letter-spacing:.14em}
  .cb-shell .cb-close{width:44px;height:44px}
  .on-melde>summary{min-height:44px;font-size:13px}
  .on-melde[open]{inset:58px 10px auto;max-height:calc(100% - 66px)}
  .cb-tabs{gap:6px}.cb-shell .cb-tab{min-height:44px;font-size:14px}
  .cb-spruch{padding:3px 10px}.cb-spruch-text{font-size:14px}.cb-spruch-knopf{min-height:40px;font-size:12px}
  .cb-summary{margin:4px 0 -11px 12px;padding:3px 8px}.cb-fetched{display:none}.cb-spruch-box{margin-bottom:15px}
  .cb-list{padding:14px 8px 30px}
  .cb-list>.cb-row{min-height:44px;margin-bottom:8px;padding:3px 12px 3px 6px}
  .cb-nick{font-size:15px}.cb-shell .cb-row .cb-score{font-size:16px}
  .cb-shell .cb-rank{width:32px;height:32px;font-size:15px}
  .cb-podium{gap:6px;margin-bottom:6px;padding-top:4px}
  .cb-bild{width:40px;height:40px;font-size:16px}.rank-1>.cb-bild{width:46px;height:46px;font-size:19px}
  .cb-shell .cb-podium .cb-rank{margin:-16px 0 0 -36px;width:24px;height:24px;font-size:12px;border-width:2px}
  .cb-podium .cb-nick{font-size:14px}.cb-podium .cb-firma{font-size:12px;line-height:1.15}.cb-shell .cb-podium .cb-score{font-size:14px;bottom:3px}
  .cb-sockel{margin-top:4px}.rank-1>.cb-sockel{height:38px}.rank-2>.cb-sockel{height:33px}.rank-3>.cb-sockel{height:30px}.cb-sockel::before{height:10px}.cb-shell .cb-podium .cb-score{line-height:1}
  .cb-own{flex-wrap:nowrap;margin-top:8px;padding:3px 8px;gap:4px 10px}.cb-own-label{font-size:13px}
  .cb-own .cb-row{flex:1 1 auto;min-width:0;min-height:40px}.cb-own .cb-meters,.cb-own .cb-firma{display:none}.cb-own-copy{flex:1 1 auto;font-size:12px}.cb-own .cb-row+.cb-own-copy{flex:0 1 150px}.cb-own:has(.cb-row) .cb-own-label{display:none}
  .cb-note{display:none}
  .cb-leer-gustav{width:96px;height:122px}.cb-shell .cb-state strong{font-size:16px}.cb-shell .cb-state span:not(.cb-leer-gustav){font-size:12px}
  .on-controls{padding:8px 8px 10px;gap:7px}
  .on-du-name{font-size:18px}.on-controls .on-status{display:none}
  .on-controls .on-melden>summary{font-size:13px;letter-spacing:.02em;padding:4px 8px}.on-controls .on-melden>summary::before{display:none}
  .on-controls .on-btn.on-du-profil{width:58px;padding:3px 3px 4px}.cb-du-bild{width:46px;height:44px}
  .on-controls .on-profile>summary{font-size:13px;line-height:1.05;letter-spacing:.03em}
  .on-controls .on-profile>summary,.on-controls .on-melden>summary{font-size:14px}
  .on-profile[open],.on-controls .on-melden[open]{top:50%;transform:translate(-50%,-50%);width:min(760px,calc(100vw - 24px - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px)));max-height:calc(100dvh - 16px)}
  .on-controls .on-profile[open]>summary.ist-mitmachen::before{font-size:16px}
  .on-profile[open]>summary,.on-controls .on-melden[open]>summary{min-height:44px;font-size:16px}
}
/* Hochformat: Spalten stapeln (P0.1 - vorher griff das auch quer bei 667 und verdeckte Reiter und Liste) */
@media (max-width:760px) and (min-height:521px){
  .cb-panel{grid-template-columns:1fr;grid-template-areas:'header' 'saison' 'account' 'tabs' 'spruch' 'summary' 'body' 'own' 'note';grid-template-rows:auto auto auto auto auto auto minmax(0,1fr) auto auto}
  .on-controls{max-height:none}
  .on-melde>summary{font-size:0;padding:0 6px;gap:0}
  .on-melde[open]>summary{font-size:15px;padding:0 12px 0 6px;gap:8px}
  .on-profile[open] .on-form{grid-template-columns:1fr}.on-profile .on-form>*,.on-profile .on-firma-actions>.on-btn,.on-profile .on-firma-actions::before{grid-area:auto!important;grid-column:1/-1!important}.on-profile .on-firma-actions::before{line-height:1.2;text-align:center}
}
@media (max-width:560px){.cb-shell .cb-tab{font-size:13px;letter-spacing:.02em}}

.cb-shell.vom-profil .cb-panel>:not(.on-controls),.cb-shell.vom-profil .on-controls>:not([open]){visibility:hidden}
.cb-shell.vom-profil .on-controls{border-color:transparent;background:none;box-shadow:none}

/* ================= PROFIL als Monteursausweis (26.09.) =================
   Das Profil (profil.js) laedt duell.css erst mit dem Rennen; board.css liegt
   immer an. Darum stehen die Regeln hier und tragen die Bildschirm-ID. */
#gg-screen-profil .duell-eyebrow{font-size:12px;letter-spacing:.18em}
#gg-screen-profil .gg-profil-zahl span{font-size:12px;letter-spacing:.04em}
#gg-screen-profil .gg-profil-crest{background:#fff2cf var(--gg-gustav) 50% 6%/165% auto no-repeat}
#gg-screen-profil .gg-profil-inhalt{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) minmax(0,.9fr);grid-auto-rows:max-content;align-content:start;gap:12px}
#gg-screen-profil .gg-profil-ausweis{position:relative;flex-direction:row;align-items:flex-start;gap:14px;padding:14px;background:linear-gradient(#f7ecd0,#ecd9b0);color:#493d32;border:3px solid #5b4433;border-radius:14px;box-shadow:inset 0 0 0 3px #d9b25a,0 5px 0 #5b4433}
#gg-screen-profil .gg-profil-ausweis::before{content:"";position:absolute;inset:0;z-index:4;border-radius:11px;pointer-events:none;opacity:0;background:linear-gradient(105deg,transparent 42%,rgba(255,255,255,.85) 50%,transparent 58%) 100% 0/250% 100% no-repeat}
#gg-screen-profil .gg-profil-ausweis.ist-frisch::before{animation:gg-glanz .8s ease-out .15s}@keyframes gg-glanz{from{opacity:1;background-position:100% 0}to{opacity:1;background-position:0 0}}
#gg-screen-profil .gg-profil-bild::after{content:attr(data-name);position:absolute;z-index:3;left:50%;bottom:-13px;max-width:150%;padding:3px 8px;border:2px solid #5b4433;border-radius:6px;background:#fff2cf;color:#493d32;font:14px/1.1 Gustav,Impact,sans-serif;letter-spacing:.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-shadow:0 2px 0 #5b4433;transform:translateX(-50%) rotate(3deg)}
#gg-screen-profil .gg-profil-bild[data-name=""]::after{display:none}
#gg-screen-profil .ist-frisch .gg-profil-bild::after{animation:gg-stempeln .45s cubic-bezier(.2,1.5,.4,1) both}@keyframes gg-stempeln{from{opacity:0;transform:translateX(-50%) rotate(-8deg) scale(2)}to{opacity:1;transform:translateX(-50%) rotate(3deg) scale(1)}}
#gg-screen-profil .gg-profil-bild{position:relative;flex:none;width:116px;height:146px;overflow:visible;display:grid;place-items:center;border:3px solid #5b4433;border-radius:8px;background:#f5e6c4;box-shadow:inset 0 0 0 4px var(--betrieb,#5b4433),0 3px 0 #5b4433;transform:rotate(-2deg)}
#gg-screen-profil .gg-profil-bild canvas{width:100%;height:100%;object-fit:contain;border-radius:5px}
#gg-screen-profil .gg-profil-bild::before{content:"";position:absolute;z-index:2;top:-12px;left:16px;width:11px;height:32px;border:3px solid #b17b39;border-radius:8px;box-shadow:inset 0 0 0 2px #e4c28d}
#gg-screen-profil .gg-profil-angaben{gap:8px}
#gg-screen-profil .gg-profil-feld span,#gg-screen-profil .gg-profil-label{font:12px/1 Gustav,Impact,sans-serif;letter-spacing:.14em;color:#493d32}
#gg-screen-profil .gg-profil-feld{grid-template-columns:minmax(0,1fr)}
#gg-screen-profil .gg-profil-nickreihe{display:flex;gap:8px;align-items:stretch;min-width:0}
#gg-screen-profil .gg-profil-feld input{flex:1 1 0;width:0;min-width:0;min-height:44px;border:3px solid #5b4433;border-radius:10px;padding:4px 8px;background:#fff;color:#493d32;font:16px/1.1 Gustav,Impact,sans-serif}
#gg-screen-profil .gg-profil-feld input::placeholder{color:#9a8a66}
#gg-screen-profil .gg-profil-titel{margin:0;font:15px/1.2 Gustav,Impact,sans-serif;letter-spacing:.03em;color:#8a5a14}
#gg-screen-profil .gg-profil-firma strong{color:#493d32}
#gg-screen-profil .gg-profil-status{align-self:flex-start;padding:2px 10px;border:2px dashed #b07a2a;border-radius:999px;color:#6b4a12;font-size:13px}
#gg-screen-profil .gg-profil-status.ist-an{border-style:solid;border-color:#2b8b34;color:#1f6b27}
#gg-screen-profil .gg-profil-stempel{position:absolute;z-index:3;left:20px;top:125px;padding:3px 8px;border:3px solid currentColor;border-radius:7px;font:14px/1 Gustav,Impact,sans-serif;letter-spacing:.14em;color:#493d32;background:rgba(255,242,207,.55);transform:rotate(-12deg);pointer-events:none}
/* HUD-STEMPEL: das Wort (MONTEUR/INHABER) liegt ganz auf dem Foto; Ausweis-Foto 96-116 px breit, daher enge Laufweite und je Viewport eine Groesse */
#gg-screen-profil .gg-profil-stempel.is-monteur{font-size:15px;letter-spacing:.06em;color:#2b8b34}
#gg-screen-profil .gg-profil-stempel.is-inhaber{font-size:16px;letter-spacing:.06em;color:#db5a50}
#gg-screen-profil .duell-knopf{justify-content:center;text-transform:uppercase}
#gg-screen-profil .duell-knopf-primaer{background:linear-gradient(#ffc163 0 18%,#ff9a2e 19% 66%,#e8741a 67%);box-shadow:0 4px 0 #9a4a0e,0 7px 0 #5b4433}
#gg-screen-profil .duell-knopf.ist-gespeichert{background:linear-gradient(#65cf58 0 18%,#3fb43e 19% 66%,#2b8b34 67%);box-shadow:0 4px 0 #1f6b27,0 7px 0 #5b4433}
#gg-screen-profil .gg-profil-nickreihe .duell-knopf{flex:none;align-self:stretch;width:100px;min-height:44px;padding:0 6px;font-size:14px}
#gg-screen-profil .gg-profil-nickreihe .duell-knopf.ist-gespeichert{white-space:nowrap}
#gg-screen-profil .gg-profil-liga>.duell-knopf{margin-top:auto}
#gg-screen-profil .duell-knopf-blau{background:linear-gradient(#fff3d8 0 18%,#e4c28d 19% 68%,#d6ad73 69%);box-shadow:0 4px 0 #5b4433,0 7px 0 #5b4433}
#gg-screen-profil .gg-profil-satz{margin:0;font-size:13px;font-weight:800;line-height:1.4;color:#fff2cf}
#gg-screen-profil .gg-profil-klein{font-size:12px}
#gg-screen-profil .gg-profil-ausweis .gg-profil-klein{color:#5a4a2a}
#gg-screen-profil .gg-profil-bald{opacity:.8}
#gg-screen-profil .gg-profil-angaben>.duell-fehler{margin:0;padding:5px 10px;border:2px solid #5b4433;border-radius:10px;background:#fbe0dc;color:#7a2a22;font:700 13px/1.3 Segoe UI,system-ui,sans-serif}
#gg-screen-profil .gg-profil-angaben>.duell-fehler.ist-gut{background:linear-gradient(#c5dd8b,#a5c778);color:#302319;text-shadow:0 1px 0 rgba(0,0,0,.4);animation:gg-stempeln-z .3s cubic-bezier(.2,1.5,.4,1) both}@keyframes gg-stempeln-z{from{opacity:0;transform:scale(.8)}}
#gg-screen-profil .gg-profil-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}
#gg-screen-profil .gg-profil-links a{display:inline-flex;align-items:center;min-height:40px;padding:0 14px;border:2px solid #5b4433;border-radius:999px;background:#fff2cf;color:#493d32;font:14px/1 Gustav,Impact,sans-serif;letter-spacing:.04em;text-decoration:none;box-shadow:0 3px 0 #5b4433}
#gg-screen-profil .gg-profil-links a:active{transform:translateY(2px);box-shadow:0 1px 0 #5b4433}
#gg-screen-profil .gg-block-liste p{font-size:13px}
#gg-screen-profil .gg-block-zeile button{min-height:40px;padding:8px 12px;font:800 13px/1 system-ui,sans-serif}
@media (max-height:520px){
  #gg-screen-profil .gg-profil-inhalt{padding:10px;gap:10px}
  #gg-screen-profil .gg-profil-bild{width:96px;height:122px}
  #gg-screen-profil .gg-profil-stempel{left:21px;top:98px;padding:2px 6px;border-width:2px}
  #gg-screen-profil .gg-profil-stempel.is-monteur{font-size:13px}#gg-screen-profil .gg-profil-stempel.is-inhaber{font-size:14px}
}
@media (max-height:520px){
  #gg-screen-profil .gg-profil-inhalt{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr)}
  #gg-screen-profil .gg-profil-ausweis{grid-column:1;grid-row:1}#gg-screen-profil .gg-profil-liga{grid-column:2;grid-row:1}
  #gg-screen-profil .gg-profil-konto{grid-column:1/-1;grid-row:2;display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:16px;align-items:center}
  #gg-screen-profil .gg-profil-konto>.duell-knopf{grid-column:2;grid-row:1/4;align-self:center}
}
@media (max-width:760px) and (min-height:521px){#gg-screen-profil .gg-profil-inhalt{grid-template-columns:1fr}#gg-screen-profil .gg-profil-inhalt>*{grid-column:1;grid-row:auto}}
#gg-screen-profil .gg-profil-recht{grid-column:1/-1}

/* Firmenzugang: genau ein gewählter Weg; Verwaltung bleibt beim Chef. */
.on-firma-aktionen .on-btn[aria-pressed]{flex:1 1 160px}
.on-firma .on-firma-meldung{line-height:1.45}
.on-profile .on-datenschutz>summary{font:700 13px/1.4 system-ui;letter-spacing:0}
.on-profile .on-datenschutz>summary::after{content:''}

/* Tafel bei wenig Hoehe (29.09.2026, Kevin + Tester am iPhone/Android quer MIT Browserleiste: 285-400 px hoch).
   Das Treppchen war nur noch ein Streifen, weil Kopf, Spruchband, Spruchwahl und Saisonzeile die Hoehe frassen.
   Kurz: Kopf flacher, Spruch in EINE Zeile (der Rekordhalter sieht nur die Wahl - sie zeigt seinen Satz schon),
   Saisonzeile weg. Tippziele bleiben 44 px (Apple HIG). Sehr kurz: Treppchen kompakt, Eigenzeile weg
   (die Du-Karte links sagt "in der Liste"). */
@media (max-height:430px){
  .cb-header{min-height:44px;margin-bottom:6px;padding:0 10px}.cb-eyebrow{display:none}.cb-crest{width:34px;height:34px;font-size:19px}.cb-title-wrap h1{font-size:22px}
  .cb-spruch-box{margin-top:6px;margin-bottom:0}
  .cb-spruch{grid-auto-flow:column;justify-content:start;align-items:baseline;gap:10px;padding:2px 10px;white-space:nowrap;overflow:hidden}
  .cb-spruch-text{min-width:0;font-size:14px;overflow:hidden;text-overflow:ellipsis}.cb-spruch-wer{font-size:11px}
  .cb-spruch-box:has(.cb-spruch-wahl:not([hidden])) .cb-spruch{display:none}
  .cb-spruch-wahl{margin-top:0;flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-x:contain;padding:3px 8px;gap:6px;scrollbar-width:none}
  .cb-spruch-label,.cb-spruch-fehler{flex:none;width:auto;font-size:11px}.cb-spruch-knopf{flex:0 1 auto;min-width:0;max-width:170px;min-height:44px;padding:3px 9px;font-size:12px;line-height:1.15;text-align:left}.cb-spruch-knopf.is-ab{flex:none}
  .cb-spruch-label{width:min-content;font-size:0}.cb-spruch-label::before{content:'DEIN SPRUCH';font-size:10px;line-height:1.1}
  .cb-summary{display:none}
  .cb-list{padding:8px 8px 24px}
  .cb-own{margin-top:6px}
  .cb-body::after{bottom:4px}
}
@media (max-height:340px){
  .cb-panel{padding-bottom:4px}.cb-header{margin-bottom:4px}.cb-shell .cb-panel .cb-tabs{padding-bottom:10px}
  .cb-list{padding:10px 6px 20px}
  .cb-podium{gap:4px;margin-bottom:4px;padding-top:2px}
  .cb-bild{width:32px;height:32px;font-size:13px;border-width:2px}.rank-1>.cb-bild{width:36px;height:36px;font-size:15px}
  .rank-1>.cb-bild::before,.rank-1>.cb-bild::after{transform:rotate(18deg) scale(.7)}
  .cb-shell .cb-podium .cb-rank{margin:-12px 0 0 -28px;width:20px;height:20px;font-size:11px}
  .cb-podium .cb-nick{font-size:12px}.cb-podium .cb-firma{display:none}
  .cb-sockel{margin-top:2px}.rank-1>.cb-sockel{height:30px}.rank-2>.cb-sockel{height:25px}.rank-3>.cb-sockel{height:22px}.cb-sockel::before{height:8px}
  .cb-shell .cb-podium .cb-score{font-size:12px;bottom:2px}
  .cb-own{display:none}
}
/* FIRMEN EINFACH (01.10.): Start-Banner mit Knoepfen (Angebot annehmen) - oben mittig, nicht ueber der Navigation. */
.on-firma-toast:has(button){top:calc(64px + env(safe-area-inset-top,0px));bottom:auto;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px;font-size:16px}.on-firma-toast:has(button)>span{flex:1 1 100%;text-align:center;font:20px/1.1 Gustav,Impact,sans-serif;letter-spacing:.03em}.on-firma-toast .on-firma-knopf{flex:0 1 auto;min-width:130px;background:linear-gradient(#fff3d8 0 18%,#e4c28d 19% 68%,#d6ad73 69% 100%);color:#302319}.on-firma-toast .on-firma-knopf.is-gruen{background:linear-gradient(#c5dd8b 0 18%,#a5c778 19% 66%,#91b85d 67% 100%)}
.on-firma .on-firma-knopf.is-gruen.is-klein,.on-firma-toast .on-firma-knopf.is-gruen.is-klein{background:linear-gradient(#c5dd8b 0 18%,#a5c778 19% 66%,#91b85d 67% 100%);color:#302319}
.gg-tafel-banner{z-index:420}
/* WETTKAMPF MIT HERZ (01.10.): vier Reiter, Titel, eigener Gustav, Dein Duell */
.cb-tabs{grid-template-columns:1.25fr 1fr 1fr 1fr}.cb-tab-woche[aria-selected="true"]{background:linear-gradient(#ffe38a,#f0b83f 60%,#d99a1f)}
.cb-titel{justify-self:start;margin-top:2px;padding:1px 7px;border:2px solid var(--gg-ink);border-radius:999px;background:#ffe38a;color:var(--gg-ink);font:11px/1.3 Gustav,Impact,sans-serif;letter-spacing:.06em;white-space:nowrap}
.cb-titel.is-laterne{background:#ff8a5c;animation:cb-laterne 1.6s ease-in-out infinite alternate}@keyframes cb-laterne{to{box-shadow:0 0 10px 2px #ffb36b}}
.cb-podium .cb-titel{justify-self:center}.rank-1 .cb-titel{background:linear-gradient(#fff3b0,#f6c544);font-size:13px}
.cb-nick .cb-gustav{width:38px;height:46px;margin:-10px 8px -8px 0;vertical-align:middle;border:2px solid var(--gg-ink);border-radius:7px;background:#fff2cf;object-fit:cover;object-position:50% 0}
.cb-bild.hat-gustav{overflow:hidden;padding:0;background:#fff2cf}.cb-bild.hat-gustav .cb-gustav{width:100%;height:100%;object-fit:cover;object-position:50% 8%;transform:scale(1.25);transform-origin:50% 0}
.cb-podium .rank-1 .cb-bild{width:76px;height:76px}.cb-podium .rank-1 .cb-bild::before{content:"♛";position:absolute;top:-24px;left:50%;transform:translateX(-50%) rotate(-8deg);font:28px/1 Gustav,Impact,sans-serif;color:#f6b73c;text-shadow:0 2px 0 var(--gg-ink);z-index:2}
.cb-duell{display:grid;grid-template-columns:1fr 1fr;gap:3px 10px;align-items:center;min-width:0}
.cb-duell-spruch{grid-column:1/-1;font:800 13px/1.25 Segoe UI,system-ui,sans-serif;color:#fff2cf}
.cb-duell-balken{grid-column:1/-1;height:10px;border:2px solid var(--gg-ink);border-radius:999px;background:#fff8e7;overflow:hidden}.cb-duell-balken i{display:block;height:100%;background:linear-gradient(90deg,#3fb43e,#f6b73c);border-radius:999px;transition:width .6s}
.cb-duell-ziel,.cb-duell-jaeger{font:12px/1.2 Gustav,Impact,sans-serif;letter-spacing:.03em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cb-duell-ziel{color:#7be07a}.cb-duell-jaeger{color:#ff9a7a;text-align:right}
.cb-own{grid-template-columns:88px minmax(0,1.1fr) minmax(0,1fr)}
.gg-melde-k.ist-blick{width:min(620px,100%)}.gg-blick{display:grid;grid-template-columns:120px 1fr;grid-template-rows:auto auto;gap:8px 12px;align-items:center;margin:4px 0 6px}
.gg-blick .cb-gustav{grid-row:1/3;width:120px;height:152px;border:3px solid #5b4433;border-radius:14px;background:#fff8e6;object-fit:cover;object-position:50% 0}
.gg-blick>canvas:not(.cb-gustav){width:100%;max-height:150px;object-fit:contain;border:3px solid #5b4433;border-radius:14px;background:radial-gradient(circle at 50% 30%,#fff8e7,#e8d6a8)}
.gg-blick-info{grid-column:2;display:grid;gap:2px;font:700 13px/1.3 Segoe UI,system-ui,sans-serif}.gg-blick-info b{justify-self:start;padding:1px 8px;border:2px solid #5b4433;border-radius:999px;background:#ffe38a;font:13px/1.3 Gustav,Impact,sans-serif;letter-spacing:.05em}
@media (max-height:520px){.gg-blick{grid-template-columns:90px 1fr}.gg-blick .cb-gustav{width:90px;height:114px}.gg-blick>canvas:not(.cb-gustav){max-height:100px}}
/* Werkstatt-Blick im eigenen Raum (01.10.): Wand/Boden/Licht/Werkbank des Spielers, Gustav links, Maschine rechts */
.gg-blick{grid-template-columns:1fr;grid-template-rows:auto auto}.gg-blick-raum{position:relative;aspect-ratio:1000/562;width:100%;overflow:hidden;border:3px solid #5b4433;border-radius:14px;background:#fff8e6}
.gg-blick-raum>svg{position:absolute;inset:0;width:100%;height:100%}.gg-blick-raum.ist-leer{background:radial-gradient(circle at 50% 30%,#fff8e7,#e8d6a8)}
.gg-blick .gg-blick-raum .cb-gustav{position:absolute;left:4%;bottom:3%;grid-row:auto;width:24%;height:auto;aspect-ratio:84/106;border:3px solid #5b4433;border-radius:12px;background:#fff2cfdd;box-shadow:0 5px 0 #5b4433}
.gg-blick .gg-blick-raum>canvas:not(.cb-gustav){position:absolute;right:2%;bottom:2%;width:62%;max-height:none;height:auto;border:0;background:none;filter:drop-shadow(0 6px 4px rgba(73,56,44,.45))}
.gg-blick-info{grid-column:1}
@media (max-height:520px){.gg-melde-k.ist-blick{width:min(720px,100%)}.gg-blick{grid-template-columns:1.35fr 1fr;grid-template-rows:auto;align-items:start}.gg-blick-info{grid-column:2;font-size:12px}.gg-blick .gg-blick-raum .cb-gustav{width:26%;height:auto}}

/* Rangfeedback bleibt im Layout; Ergebnis und Navigation bleiben erreichbar. */
.gg-rang-hinweis{display:grid;grid-template-columns:minmax(0,1fr) auto 44px;align-items:center;gap:8px;min-width:0;box-sizing:border-box;padding:4px 6px 4px 12px;border:1px solid #c59c45;border-radius:10px;background:#49382c;color:#fff2cf;font:700 13px/1.3 Segoe UI,system-ui,sans-serif;text-align:left}
.gg-rang-hinweis>span{min-width:0;overflow-wrap:anywhere}
.gg-rang-hinweis>button{min-width:44px;min-height:44px;margin:0;padding:6px 10px;border:1px solid #b17b39;border-radius:8px;background:#49382c;color:#fff2cf;font:800 12px/1.2 Segoe UI,system-ui,sans-serif;cursor:pointer}
.gg-rang-hinweis>.gg-rang-zu{padding:0;font-size:24px}
#schichtende>.gg-rang-hinweis{grid-column:1/-1;grid-row:7}
#schichtende.clean-result>.gg-rang-hinweis{grid-row:8}
@media(max-width:540px){#schichtende.clean-result>.gg-rang-hinweis{grid-row:auto;order:3}}
@media(max-width:520px){#schichtende>.gg-rang-hinweis{grid-row:auto;order:3}.gg-rang-hinweis{gap:4px;font-size:12px}.gg-rang-hinweis>button{padding:4px 6px;font-size:11px}}

/* MEISTERTAFEL FARBEN ZURUECK (06.10.2026, Kevin: "du hast die Farben veraendert, sieht
   richtig dumm aus"): die Papier-Variante (WARM 2.0, selbe Sitzung) und davor ILLUSTRATED-UI-1005
   bleichten Kopf/Koerper auf ein flaches Beige und nahmen dem Holzbrett+Gold-Kontrast der
   MEISTERTAFEL-3.0-HERZ-Gestaltung (26.09., weiter oben in dieser Datei) die Tiefe. Beide Patches
   ersatzlos entfernt, nur die Spaltenbreite 200-240px (915x412, nichts abgeschnitten) bleibt. */

/* MEISTERTAFEL LUFTIG (05.10., Kevin: "wirkt uebertrieben gequetscht"): Im Querformat-Handy frass das Treppchen die ganze
   Liste. Jetzt: Treppchen als flache Dreierreihe (Bild, Platz, Name, Punkte nebeneinander), darunter sofort die Plaetze ab 4. */
@media (max-height:520px){
  .cb-shell .cb-panel{grid-template-columns:minmax(200px,240px) minmax(0,1fr);column-gap:8px}
  .cb-shell .cb-list{padding:10px 8px 22px}
  .cb-shell .cb-podium{grid-template-columns:1fr 1fr 1fr;align-items:stretch;gap:6px;margin:0 0 8px;padding:0 0 8px;border-bottom:3px solid rgba(91,68,51,.45)}
  .cb-shell .cb-podium>.cb-row{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-rows:auto auto;align-items:center;justify-items:start;column-gap:8px;row-gap:0;padding:5px 8px 5px 6px;border:3px solid var(--gg-ink);border-radius:12px;background:linear-gradient(#fff8e6,#f1dcae);color:var(--gg-ink);text-align:left;box-shadow:0 3px 0 rgba(91,68,51,.45)}
  .cb-shell .cb-podium>.rank-1{grid-column:1;background:linear-gradient(#fff3b0,#f6c544)}.cb-shell .cb-podium>.rank-2{grid-column:2;background:linear-gradient(#fff8e6,#fff8e6)}.cb-shell .cb-podium>.rank-3{grid-column:3;background:linear-gradient(#f6d7b5,#d99a62)}
  .cb-shell .cb-podium .cb-bild,.cb-shell .cb-podium .rank-1>.cb-bild{grid-row:1/3;width:46px;height:46px;font-size:18px;border-width:3px;box-shadow:none;animation:none}
  .cb-shell .cb-podium .rank-1>.cb-bild::before,.cb-shell .cb-podium .rank-1>.cb-bild::after{display:none}
  .cb-shell .cb-podium .cb-rank{position:absolute;left:-6px;top:-7px;margin:0;width:24px;height:24px;font-size:13px;border-width:2px}
  .cb-shell .cb-podium .cb-name{display:block;width:100%;min-width:0;margin:0;text-align:left}
  .cb-shell .cb-podium .cb-nick{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--gg-ink);font-size:15px;line-height:1.1;text-shadow:none}
  .cb-shell .cb-podium .cb-firma{display:none}
  .cb-shell .cb-podium .cb-titel{display:inline-block;margin-top:2px;padding:0 6px;font-size:10px;line-height:1.35;max-width:100%;overflow:hidden;text-overflow:ellipsis;vertical-align:top}
  .cb-shell .cb-podium .cb-score{position:static;grid-column:2;justify-self:start;font-size:16px;line-height:1.1;color:var(--gg-ink);text-shadow:none}
  .cb-shell .cb-podium .cb-score::after{font-size:.7em}
  .cb-shell .cb-podium .cb-sockel{display:none}
  .cb-shell .cb-list>.cb-row{min-height:42px;margin-bottom:6px}
  .cb-shell .cb-list>.cb-row .cb-name{display:flex;flex-wrap:wrap;align-items:center;gap:1px 8px}.cb-shell .cb-list>.cb-row .cb-nick{flex:1 1 100%}.cb-shell .cb-list>.cb-row .cb-titel{margin-top:0}
  .cb-shell .cb-own{margin-top:6px;min-height:40px}
}
@media (max-height:520px) and (max-width:800px){
  .cb-shell .cb-podium .cb-titel{display:none}
  .cb-shell .cb-podium .cb-bild,.cb-shell .cb-podium .rank-1>.cb-bild{width:38px;height:38px}
}

/* SAISON-BANNER (06.10.2026, SAISONS.md Tag 1): schmaler Streifen unter dem Kopf, nur waehrend des Events (board_view.js render()), keine Umfaerbung der Tafel. */
.cb-saison{display:flex;align-items:center;gap:6px;min-height:0;padding:3px 14px;background:rgba(0,0,0,.22);color:#f0d48a;font:13px/1.2 Gustav,Impact,sans-serif;letter-spacing:.05em;border-bottom:2px solid var(--cb-ink)}
.cb-saison-icon{font-size:14px;flex:none}.cb-saison[hidden]{display:none!important}
@media (max-height:430px){.cb-saison{display:none}}
#gg-screen-profil .gg-profil-konto>.duell-knopf:not(.gg-profil-loeschen){grid-row:1/3;align-self:end}
#gg-screen-profil .gg-profil-konto>.duell-knopf.gg-profil-loeschen{grid-column:2;grid-row:3/5;align-self:start;margin-top:8px}
.gg-profil-konto .gg-profil-loeschen{background:linear-gradient(#db5a50,#b93832 66%,#81261f)!important;box-shadow:0 3px 0 #5b4433!important}
.gg-profil-konto .gg-profil-loeschen.ist-sicher{background:linear-gradient(#ffe19a,#e7a928 60%,#c78a22)!important;color:#493d32!important;text-shadow:none!important}
/* LIGA-Reiter (Kevin 12.10.: Meisterschaft auf die Tafel): links Medaille/Balken/Bilanz/Start, rechts Top 10 der Saison. */
.cb-liga{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:10px;height:100%;padding:8px 10px;overflow:auto}.cb-liga[hidden]{display:none}
.cb-liga-kopf{display:grid;gap:6px;align-content:start;padding:8px 10px;border:3px solid var(--gg-ink);border-radius:14px;background:#fff8e7;box-shadow:0 4px 0 #8f6a43}
.cb-liga-med{display:flex;align-items:center;gap:10px}.cb-liga-med::before{content:"\2605";display:grid;place-items:center;width:44px;height:44px;border:3px solid var(--gg-ink);border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff8,transparent 50%),var(--stufe,#c9814a);font:22px/1 Gustav,Impact,sans-serif;color:#302319}
.cb-liga-med b{font:24px/1 Gustav,Impact,sans-serif;letter-spacing:.04em;color:#302319}.cb-liga-med span{margin-left:auto;font:18px/1 Gustav,Impact,sans-serif;color:#302319}
.cb-liga-balken{display:block;height:12px;border:2px solid var(--gg-ink);border-radius:999px;background:#e9dcc3;overflow:hidden}.cb-liga-balken i{display:block;height:100%;background:linear-gradient(#ffe19a,#f6b73c)}
.cb-liga-stufen{display:flex;justify-content:space-between;font:11px/1 Gustav,Impact,sans-serif;letter-spacing:.06em;color:#7a6548}.cb-liga-stufen .is-an{color:#302319;text-decoration:underline}
.cb-liga-text,.cb-liga-stat{font:600 12px/1.3 system-ui,sans-serif;color:#5b4433}.cb-liga-stat{display:flex;flex-wrap:wrap;gap:4px 12px}
.cb-liga-topkopf{display:block;margin:2px 0 6px;font:13px/1 Gustav,Impact,sans-serif;letter-spacing:.08em;color:#fff2cf;text-shadow:0 2px 0 #3b2a1c}.cb-liga-top{margin:0;padding:0;list-style:none;display:grid;gap:4px;align-content:start}
.cb-liga-top li{display:grid;grid-template-columns:28px minmax(0,1fr) auto auto;gap:8px;align-items:center;min-height:34px;padding:0 10px;border:2.5px solid var(--gg-ink);border-radius:10px;background:#fff8e7;font:14px/1 Gustav,Impact,sans-serif;color:#302319}
.cb-liga-top li.is-own{background:linear-gradient(#ffe19a,#f6b73c)}.cb-liga-top li .cb-liga-nick{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cb-liga-top li .cb-liga-stufe{font-size:10px;letter-spacing:.06em;color:#7a6548}
.cb-liga-top li.is-leer{display:block;padding:8px 10px;font:600 12px/1.3 system-ui,sans-serif;color:#5b4433}
@media (max-width:700px){.cb-liga{grid-template-columns:1fr}}
@media (max-height:520px){.cb-liga{padding:5px 8px;gap:8px}.cb-liga-kopf{gap:4px;padding:6px 8px;box-shadow:none}.cb-liga-med::before{width:32px;height:32px;font-size:15px}.cb-liga-med b{font-size:19px}.cb-liga-med span{font-size:15px}.cb-liga-balken{height:9px}.cb-liga-text,.cb-liga-stat{font-size:11px}.cb-liga-kopf .cb-retry{min-height:36px;font-size:14px;order:-1}.cb-liga-top li{min-height:28px;font-size:13px;padding:0 8px}.cb-liga-topkopf{margin:0 0 4px;font-size:11px}}

/* Kevin 30.10. 'durch die Buttons Allzeit, Liga und so ist die Tafel sehr klein': alle fuenf Reiter in EINER Zeile, flacher - die Liste bekommt die Hoehe. */
.cb-shell .cb-tabs{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}
.cb-shell .cb-tab{min-height:44px;padding:2px 4px;font-size:13px;letter-spacing:.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media (max-height:520px){.cb-shell .cb-tab{min-height:30px;font-size:12px}.cb-shell .cb-tabs{padding-top:6px;margin-top:-6px;padding-bottom:12px;margin-bottom:-8px}}   /* zentrale-7: Reiter bleiben 30 px flach (Kevin 30.10.), die Leiste faengt 6/8 px darueber/darunter mit ab (board_view.js leitet an den naechsten Reiter) = 44 px Trefferhoehe */
#ggRekord:not([hidden]){display:grid;gap:2px;max-width:29vw;font:600 clamp(8px,1.8vw,12px)/1.15 system-ui;color:white}#ggRekord progress{width:100%;height:4px;accent-color:#ffd969}#ggD1Pin{font:inherit;white-space:normal}

.cb-auftrag{flex:1;min-width:0;font:600 12px/1.25 system-ui,sans-serif;color:#fff4dc}
.cb-auftrag .cb-regel{display:block;color:#ffe095;font-weight:800}
.cb-auftrag .cb-regel-hilfe{display:block;margin-top:2px;color:#f3dcae;font-size:.82em;font-weight:600;line-height:1.25}
.cb-ohnehilfe{width:1.15em;height:1.15em;margin-right:5px;vertical-align:-.2em;object-fit:contain;filter:drop-shadow(0 0 2px #ffd34d)}.cb-regel-hilfe .cb-ohnehilfe{margin:0 2px 0 3px}   /* Rekordlauf 06.11.: Gold-Handschuh */
.cb-shell .cb-podium .cb-meters{display:block;position:absolute;z-index:1;bottom:24px;left:0;right:0;text-align:center;white-space:nowrap;color:var(--gg-ink)}
@media(max-height:520px){.cb-shell .cb-podium .cb-meters{position:static;grid-column:2;grid-row:3;justify-self:start;text-align:left}.cb-shell .cb-podium .cb-bild{grid-row:1/4}}
@media(max-width:630px){.cb-shell .cb-header{flex-wrap:wrap;max-height:none}.cb-auftrag{order:3;flex-basis:100%;max-width:none}}
.cb-panel[data-wertung=meter] .cb-row .cb-meters{font:17px/1.15 Gustav,Impact,sans-serif}
.cb-panel[data-wertung=meter] .cb-row .cb-score{font:700 12px/1.25 system-ui,sans-serif}
@media(max-height:520px){.cb-shell .cb-podium .cb-name{grid-column:2;grid-row:1}.cb-shell .cb-podium .cb-score{grid-row:2}.cb-panel[data-wertung=meter] .cb-podium .cb-meters{grid-row:2}.cb-panel[data-wertung=meter] .cb-podium .cb-score{grid-row:3}}
.cb-bestfahrten{display:flex;flex-wrap:wrap;gap:2px 14px;margin:0 0 7px;padding:5px 9px;border-radius:7px;background:#fff1c9;color:#49382c;font:750 12px/1.3 system-ui,sans-serif}.cb-shell .cb-firma-wechsel{position:relative;display:inline-block;height:21px;margin:0;padding:0 9px;border:2px solid var(--gg-ink);border-radius:7px;background:linear-gradient(#ffe19a,#f6b73c 60%,#e7a928);color:#302319;font:400 13px/17px var(--gk-display,'Gustav Display','Arial Black',sans-serif);letter-spacing:.04em;white-space:nowrap;vertical-align:middle;cursor:pointer}.cb-shell .cb-firma-wechsel::after{content:"";position:absolute;inset:-14px -6px -8px}.cb-panel[data-wertung=team] .cb-regel-hilfe,.cb-panel[data-wertung=betriebe] .cb-regel-hilfe{display:none}.cb-panel[data-wertung=team] .cb-regel,.cb-panel[data-wertung=betriebe] .cb-regel{display:inline;margin-right:8px}   /* zentrale-9/-11/-7: Firmenschalter in Spielschrift neben der Regel statt dritter Kopfzeile (Kopf springt nicht), Trefferflaeche per ::after */
@media(min-width:631px) and (max-width:750px){.cb-shell .cb-header{gap:7px}.cb-shell .cb-crest{display:none}.cb-shell .cb-title-wrap h1{font-size:19px}.cb-shell .on-melde:not([open])>summary{font-size:0;padding:0 7px;gap:0}.cb-auftrag{font-size:11px}.cb-auftrag .cb-firma-wechsel{min-height:20px}.cb-panel[data-wertung=team] .cb-regel,.cb-panel[data-wertung=betriebe] .cb-regel{display:none}}
@media (orientation:landscape) and (max-width:750px) and (max-height:430px) {
  .cb-shell .cb-podium {display:flex;flex-direction:column;gap:3px;padding-bottom:4px}
  .cb-shell .cb-podium>.cb-row {display:flex;flex-flow:row nowrap;align-items:center;gap:5px;padding:2px 6px;min-height:32px;text-align:left}
  .cb-shell .cb-podium .cb-rank {position:static;order:0;flex:none;width:20px;height:20px}
  .cb-shell .cb-podium .cb-bild,.cb-shell .cb-podium .rank-1>.cb-bild {order:1;flex:none;width:24px;height:24px}
  .cb-shell .cb-podium .cb-name {order:2;flex:1;min-width:0}
  .cb-shell .cb-podium .cb-nick {white-space:normal;overflow-wrap:anywhere;font-size:13px}
  .cb-shell .cb-podium .cb-score,.cb-shell .cb-podium .cb-meters {order:3;flex:none;white-space:nowrap;font-size:12px}
  .cb-shell .cb-podium .cb-meters {order:4}
  .cb-panel[data-wertung=meter] .cb-podium .cb-score {order:4}
  .cb-panel[data-wertung=meter] .cb-podium .cb-meters {order:3}
}

body.gg-meister-hud #hudTop #ggRekord>span{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 5px;min-width:0;line-height:1.2}
body.gg-meister-hud #hudTop #ggRekord>span>b{flex:none;padding:1px 4px;border:1px solid #ba965e;border-radius:4px;background:#f5d693;color:#513818;font:800 10px/1.1 system-ui;white-space:nowrap}
body.gg-meister-hud #hudTop #ggRekord>span>strong{color:#493721;font:800 11px/1.15 system-ui;white-space:nowrap}
body.gg-meister-hud #hudTop #ggRekord>span>i{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#634a32;font:600 10px/1.15 system-ui}

/* Kevin 02.11.: Wertungsschalter Meisterpunkte | Weiteste Fahrt (Higgsfield-Icons tafel_pokal/tafel_zollstock). */
.cb-wertung{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0 0 8px;padding:0;list-style:none}.cb-wertung-knopf{position:relative;display:grid;grid-template-columns:40px 1fr;grid-template-rows:auto auto;column-gap:8px;align-items:center;min-height:48px;padding:4px 10px 5px 6px;border:3px solid var(--gg-ink,#3b2a1e);border-radius:12px;color:var(--gg-ink,#3b2a1e);background:linear-gradient(#fff8e7,#ecdcbc);box-shadow:inset 0 -4px 0 #cdb98f,0 3px 0 rgba(59,42,30,.55);text-align:left;cursor:pointer;opacity:.82}.cb-wertung-knopf[aria-pressed=true]{opacity:1;background:linear-gradient(#ffe9a7,#f2b84a);box-shadow:inset 0 -5px 0 #b17b39,0 3px 0 rgba(59,42,30,.7),0 0 0 3px #fff1b5}.cb-wertung-knopf:active{transform:translateY(2px)}.cb-wertung-icon{grid-row:1/3;width:40px;height:40px;background:var(--gg-tafel-pokal) center/contain no-repeat;filter:drop-shadow(0 2px 0 rgba(59,42,30,.35))}.cb-wertung-knopf.is-meter .cb-wertung-icon{background-image:var(--gg-tafel-zollstock)}.cb-wertung-knopf[aria-pressed=false] .cb-wertung-icon{filter:grayscale(.55) drop-shadow(0 2px 0 rgba(59,42,30,.25))}.cb-wertung-name{font:17px/1 Gustav,Impact,sans-serif;letter-spacing:.04em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cb-wertung-wert{font-size:12px;font-weight:800;color:#5b4433;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-variant-numeric:tabular-nums}.cb-wertung-knopf[aria-pressed=true]::after{content:"";position:absolute;left:50%;bottom:-9px;width:12px;height:12px;margin-left:-6px;background:#f2b84a;border-right:3px solid var(--gg-ink,#3b2a1e);border-bottom:3px solid var(--gg-ink,#3b2a1e);transform:rotate(45deg)}@media (max-height:420px){.cb-wertung{gap:6px;margin-bottom:6px}.cb-wertung-knopf{min-height:44px;grid-template-columns:32px 1fr;padding:3px 8px 4px 5px}.cb-wertung-icon{width:32px;height:32px}.cb-wertung-name{font-size:15px}.cb-wertung-wert{font-size:11px}}
/* Podium ohne gespeicherte Optik: Gustav statt Initialen-Helm. */
.cb-podium .cb-bild:not(.hat-gustav):not(.hat-firmenlogo){color:transparent;background:var(--gg-gustav) center 18%/118% auto no-repeat,radial-gradient(circle at 50% 40%,#fff6dc,#f3d79c)}
/* Schmales Querformat: im Podium nur der Wert der gewählten Wertung, dafür groß. */
@media (orientation:landscape) and (max-width:750px) and (max-height:430px){.cb-panel:not([data-wertung=meter]) .cb-podium .cb-meters,.cb-panel[data-wertung=meter] .cb-podium .cb-score{display:none!important}.cb-shell .cb-podium .cb-score,.cb-shell .cb-podium .cb-meters{font-size:15px}}
/* V1.5 Saison 2: Ehrentafel-Zugang unter den Wertungsplaketten, festes Gruender-Abzeichen (Gold wie die Meisterleiste). */ .cb-ehrentafel-knopf{grid-column:1/-1;min-height:34px;padding:4px 10px;border:2px solid var(--cb-ink,#493d32);border-radius:9px;background:#f6e7c4;color:#493d32;font:900 12px/1.1 system-ui;letter-spacing:.06em}.cb-ehrentafel-knopf[aria-pressed=true]{background:linear-gradient(#ffeaa6,#f3be4f 70%,#dc9a2c)}.cb-gruender{display:inline-block;margin-left:5px;padding:0 5px;border:1.5px solid #493d32;border-radius:5px;background:linear-gradient(#ffeaa6,#f3be4f 70%,#dc9a2c);color:#493d32;font:900 9px/1.5 system-ui;letter-spacing:.05em;vertical-align:middle;white-space:nowrap}
/* V1.5 Liga (Kevin 02.11.): sechs Reiter in einer Zeile (HEUTE, WOCHE, LIGA, ALLE, FIRMA, RENNEN); Ansichten aus online/liga.js. */
.cb-shell .cb-tabs{grid-template-columns:repeat(6,minmax(0,1fr));gap:5px}.cb-shell .cb-tab{min-width:0;padding:0 2px;font-size:14px;letter-spacing:.02em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media (max-width:640px){.cb-shell .cb-tabs{gap:3px}.cb-shell .cb-tab{font-size:11px;letter-spacing:0}}
.cb-liga.lg-box{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:10px;height:100%;padding:8px 10px;overflow:hidden}
.lg-kopf{display:flex;flex-direction:column;gap:6px;min-height:0;overflow:auto;padding:9px 11px;border:3px solid #493d32;border-radius:12px;background:linear-gradient(#fff6dc,#f3e2b9);color:#493d32;box-shadow:0 3px 0 #b58a4a}
.lg-eyebrow{font:900 10px/1 system-ui;letter-spacing:.14em;color:#8a5a17}.lg-titel{font:22px/1.05 Gustav,Impact,sans-serif;letter-spacing:.02em}.lg-uhr{font:800 12px/1.2 system-ui;color:#6b5540}.lg-text{font:800 13px/1.25 system-ui}.lg-regel{font:600 10.5px/1.25 system-ui;color:#6b5540}
.lg-ziel{padding:5px 8px;border:2px solid #493d32;border-radius:9px;background:linear-gradient(#d7f3b7,#9fdc6f);font:900 14px/1.2 system-ui}.lg-ziel.is-sicher{background:linear-gradient(#ffeaa6,#f3be4f)}
.lg-titelzeile{display:flex;align-items:center;gap:9px}.lg-titelzeile>span{display:flex;flex-direction:column;gap:3px;min-width:0}.lg-wappen{width:64px;height:64px;flex-shrink:0;filter:drop-shadow(0 2px 0 rgba(73,61,50,.35))}
.lg-leiter{display:flex;gap:4px}.lg-leiter img{width:30px;height:30px;opacity:.38;filter:grayscale(.7)}.lg-leiter img.is-an{opacity:1;filter:none;transform:scale(1.18)}
.lg-los{align-self:stretch;margin-top:auto}
.lg-liste{margin:0;padding:2px 4px;list-style:none;overflow-y:auto;overscroll-behavior:contain;min-height:0}
.lg-zeile{display:grid;grid-template-columns:34px 30px minmax(0,1fr) auto;align-items:center;gap:6px;min-height:40px;margin:2px 0;padding:1px 8px;border:2px solid #c4c9c5;border-radius:9px;background:#fffdf7;color:#493d32;font-variant-numeric:tabular-nums}
.lg-zeile.is-auf{border-color:#6fae3c;background:linear-gradient(90deg,#e4f6cf,#fffdf7 55%)}.lg-zeile.is-ab{border-color:#c9674a;background:linear-gradient(90deg,#f8ddd2,#fffdf7 55%)}
.lg-zeile.is-du{border:3px solid #493d32;background:linear-gradient(90deg,#ffd967,#fff4c6 60%);box-shadow:0 2px 0 #b8782a}
.lg-zeile.is-geist{border-style:dashed;background:#eef0f2;color:#5d6670}.lg-zeile.is-geist .lg-nick{font-style:italic}
.lg-rang{font:17px/1 Gustav,Impact,sans-serif}.lg-nick{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:900}.lg-wert{font:16px/1 Gustav,Impact,sans-serif}
.lg-zeile canvas,.lg-bild{width:30px;height:38px}.lg-bild{background:var(--gg-gustav) center 18%/118% auto no-repeat}.lg-bild.is-geist{opacity:.45;filter:grayscale(1)}
.lg-geist{display:inline-block;margin-left:5px;padding:0 4px;border:1.5px solid #5d6670;border-radius:5px;background:#fff;color:#5d6670;font:900 9px/1.5 system-ui;font-style:normal;letter-spacing:.06em;vertical-align:middle}.lg-geist-icon,.lg-krone{margin-right:3px;font-style:normal}
.lg-strich{margin:4px 0 2px;padding:1px 8px;border-radius:6px;font:900 10px/1.4 system-ui;letter-spacing:.12em;text-align:center}.lg-strich.is-auf{background:#6fae3c;color:#fff}.lg-strich.is-ab{background:#c9674a;color:#fff}
.lg-leer{padding:14px;text-align:center;font:800 13px/1.3 system-ui;color:#fff2cf;text-shadow:0 1px 0 #3b2a1c}   /* zentrale-10: Leerzustand liegt auf dem Holzbrett - helle Schrift wie .cb-state span */
@media (max-width:700px){.cb-liga.lg-box{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr)}.lg-kopf{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:3px 8px;overflow:visible}.lg-kopf>:not(.lg-titelzeile):not(.lg-ziel):not(.lg-los):not(.lg-titel):not(.lg-eyebrow){display:none}.lg-kopf>.lg-eyebrow,.lg-kopf>.lg-titel{grid-column:1}.lg-kopf>.lg-los{grid-column:2;grid-row:1/3;margin:0;min-width:0;max-width:150px;min-height:36px;padding:3px 8px;font-size:13px;line-height:1.05}.lg-kopf>.lg-titel{font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lg-kopf>.lg-text{grid-column:1/-1;display:block!important;font-size:11px}.lg-titelzeile .lg-uhr{display:none}.lg-ziel{grid-column:1/-1}.lg-wappen{width:36px!important;height:36px!important}}
@media (max-height:520px){.cb-liga.lg-box{gap:7px;padding:4px 7px}.lg-kopf{gap:3px;padding:5px 8px}.lg-titel{font-size:17px}.lg-wappen{width:44px;height:44px}.lg-leiter img{width:22px;height:22px}.lg-text,.lg-ziel{font-size:11.5px}.lg-regel{font-size:9.5px}.lg-zeile{min-height:32px;grid-template-columns:28px 24px minmax(0,1fr) auto}.lg-zeile canvas,.lg-bild{width:24px;height:30px}.lg-rang,.lg-wert{font-size:14px}.lg-los{min-height:36px;font-size:14px}}
@media (max-height:340px){.lg-regel{display:none}.lg-leiter img{width:18px;height:18px}}
/* Zentrale: Rohr-des-Tages-Karte im Auftragszettel */
#lgTagKarte.gkAuftragPin{position:static;display:flex;flex-direction:column;gap:2px;align-self:stretch;min-height:44px;padding:5px 9px 5px 40px;border:2px solid #493d32;border-radius:8px;background:#fff1ce var(--lg-tagesrohr) 5px 50%/30px 30px no-repeat;color:#4c3927;text-align:left;font:650 12px/1.25 system-ui;box-shadow:0 2px 0 #b58a4a}#lgTagKarte b{font:900 10px/1 system-ui;letter-spacing:.12em;color:#8a5a17}
/* Schichtende-Show: eigener kurzer Schritt ueber dem Zeugnis mit eigenem WEITER-Knopf. */
#lgShow{position:fixed;inset:0;z-index:460;display:grid;place-items:center;padding:12px;background:rgba(40,25,15,.72);opacity:0;transition:opacity .2s}#lgShow.is-los{opacity:1}#lgShow.is-zu{opacity:0}
.lgShowKarte{display:flex;flex-direction:column;align-items:stretch;gap:6px;width:min(420px,92vw);max-height:calc(100dvh - 24px);overflow:auto;padding:12px 16px;border:4px solid #493d32;border-radius:18px;background:linear-gradient(#fff6dc,#f0dcae);color:#493d32;box-shadow:0 6px 0 #70411f;text-align:center;font-family:system-ui}
.lgShowEyebrow{font:900 10px/1 system-ui;letter-spacing:.16em;color:#8a5a17}.lgShowKarte h2{margin:0;font:24px/1.05 Gustav,Impact,sans-serif}.lgShowPlatz{margin:0;font:900 14px/1 system-ui}
.lgShowListe{position:relative;height:calc(var(--n) * 40px);margin:4px 0;padding:0;list-style:none}
.lgShowZeile{position:absolute;left:0;right:0;top:calc(var(--i,0) * 40px);display:grid;grid-template-columns:34px 30px minmax(0,1fr) auto;align-items:center;gap:6px;height:36px;padding:0 9px;border:2px solid #c4c9c5;border-radius:9px;background:#fffdf7;font-variant-numeric:tabular-nums;text-align:left;transition:transform .55s cubic-bezier(.5,0,.3,1) .5s}
.lgShowZeile.is-du{top:calc(var(--hoch) * 40px);z-index:2;border:3px solid #493d32;background:linear-gradient(90deg,#ffd967,#fff4c6 60%);box-shadow:0 3px 0 #b8782a;transition:transform .7s cubic-bezier(.3,1.5,.5,1) .35s}
.lgShowZeile.is-du::before{content:"";position:absolute;left:50%;top:50%;width:260px;height:64px;margin:-32px 0 0 -130px;background:var(--lg-sprung) 0 0/2600px 64px no-repeat;pointer-events:none;opacity:0}
#lgShow.is-los .lgShowZeile.is-du{transform:translateY(calc(var(--hoch) * -40px))}#lgShow.is-los .lgShowZeile.is-du::before{opacity:1;animation:lgSprung .9s steps(9) .45s forwards}
#lgShow.is-los .lgShowZeile.is-weg{transform:translateY(40px);filter:saturate(.6)}
@keyframes lgSprung{to{background-position:-2340px 0}}
.lgShowRang{font:17px/1 Gustav,Impact,sans-serif}.lgShowNick{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:900}.lgShowBild{width:30px;height:36px;background:var(--gg-gustav) center 18%/118% auto no-repeat}.lgShowBild canvas{width:30px;height:36px}.lgShowZeile.is-weg .lgShowBild{filter:grayscale(.4);opacity:.8}
.lgShowWeiter,.lgEinwKnoepfe button{min-height:44px;border:3px solid #493d32;border-radius:12px;background:linear-gradient(#ffd86b,#f6b73c);color:#493d32;font:18px/1 Gustav,Impact,sans-serif;box-shadow:inset 0 -4px 0 #b8782a}
@media (max-height:420px){.lgShowKarte{gap:3px;padding:7px 12px}.lgShowKarte h2{font-size:19px}}
@media (prefers-reduced-motion:reduce){.lgShowZeile,.lgShowZeile.is-du{transition:none}#lgShow.is-los .lgShowZeile.is-du::before{animation:none;opacity:0}}
/* Einwilligung Rueckhol-Nachricht (erster Start) */
#lgEinw{margin:auto;max-width:min(620px,92vw);max-height:calc(100dvh - 20px);overflow:auto;padding:14px 20px;border:4px solid #3a2418;border-radius:22px;background:#f6e7c8;color:#3a2418;box-shadow:0 7px 0 #70411f;font-family:system-ui}#lgEinw::backdrop{background:#28190fc9}
.lgEinwInnen{display:flex;align-items:center;gap:16px}.lgEinwBild{width:110px;flex-shrink:0}#lgEinw p{margin:6px 0 12px;font:800 19px/1.2 system-ui}#lgEinw small{display:block;margin-top:9px;color:#7a5a3a;font-size:11.5px}.lgEinwKnoepfe{display:flex;gap:10px}.lgEinwKnoepfe button{flex:1;padding:6px 10px;font-size:16px}.lgEinwKnoepfe .lgEinwNein{background:#ead8af;box-shadow:none}
@media (max-height:420px){.lgEinwBild{width:78px}#lgEinw p{font-size:16px;margin:4px 0 8px}#lgEinw{padding:10px 16px}}
.lg-ico{display:inline-block;width:18px;height:18px;vertical-align:-4px;margin-right:4px;object-fit:contain}.lg-zeile .lg-ico.lg-krone,.lg-zeile .lg-ico.lg-geist-icon{width:20px;height:20px}.lg-tagesrohr{width:46px;height:46px}.lg-lohn{display:flex;flex-wrap:wrap;gap:4px 10px;font:800 10.5px/1.2 system-ui;color:#493d32}.lg-lohn>span{display:inline-flex;align-items:center}.lg-lohn .lg-ico{width:26px;height:26px}@media (max-width:700px){.lg-kopf>.lg-tagesrohr{display:none}}@media (max-height:520px){.lg-lohn .lg-ico{width:20px;height:20px}.lg-tagesrohr{width:34px;height:34px}}
/* V1.5 Liga: bei schmaler Tafel (568 px) Plaketten im ALLE-Reiter ohne Abschneiden: kleines Symbol, Name und Bestwert duerfen umbrechen. */
@media (max-width:640px){.cb-wertung{gap:5px}.cb-wertung-knopf{grid-template-columns:24px minmax(0,1fr);column-gap:5px;padding:3px 5px 4px 4px}.cb-wertung-icon{width:24px;height:24px}.cb-shell .cb-wertung-name{font-size:12px;letter-spacing:0;white-space:normal;overflow:visible}.cb-wertung-wert{font-size:10px;white-space:normal;overflow:visible;line-height:1.1}}
.cb-hinweis{list-style:none;margin:8px 0 0;padding:6px 10px;border-radius:8px;background:rgba(0,0,0,.18);color:inherit;font:700 12px/1.3 system-ui;text-align:center;opacity:.9}
/* S4-4 Meistertafel (13.11.): Druck-Zustand mit federndem Loesen fuer jeden Knopf und jede meldbare Zeile (hud.js setzt gDruck beim Druck), Raengtitel und Regelhinweis nicht unter 12 px, Reiter und Knoepfe mit voller Tippflaeche (>=44 px). Nur scale, nichts je Bild. */
.cb-shell :is(button,summary,.cb-row.is-meldbar) { transition:scale .32s cubic-bezier(.3,1.75,.5,1); }
.cb-shell :is(button,summary):not(:disabled):is(:active,.gDruck) { scale:.94; transition-duration:.06s; }
.cb-shell .cb-row.is-meldbar:active { scale:.97; transition-duration:.06s; }
.cb-shell .cb-panel .cb-titel { font-size:12px!important; line-height:1.3; }
.cb-shell .cb-panel .cb-regel-hilfe { font-size:12px; line-height:1.2; }
.cb-shell .cb-panel .cb-tabs .cb-tab { min-height:44px; }
.cb-shell .on-firma .on-firma-knopf.is-klein { min-height:44px; }
.cb-shell .on-melde>summary,.cb-shell .on-controls summary { min-height:44px; }
@media (prefers-reduced-motion:reduce) { .cb-shell :is(button,summary,.cb-row.is-meldbar) { transition:none; } .cb-shell :is(button,summary):not(:disabled):is(:active,.gDruck),.cb-shell .cb-row.is-meldbar:active { scale:.97; } }
