/* Eventmaster 3.3.3 · Token-Abrechnung, Tarife, Freitickets · (c) Philipp Seel
   Eigener heller Stil: Hintergrund #f6f5f1, Karten weiß, Rand #ebeae5, petrol #134e5e */
:root{--tk-pet:#134e5e;--tk-line:#ebeae5;--tk-in:#d9d8d2;--tk-mu:#6c7075;--tk-soft:#f1f7f8;--tk-bg:#f6f5f1;--tk-or:#e8a33a;--tk-red:#b03a2e;--tk-ok:#1f7a45}

/* Token-Pille in der Hauptleiste */
.tk-pill{display:inline-flex;align-items:center;gap:6px;border:0;border-radius:10px;background:rgba(255,255,255,.14);color:#fff;font:inherit;font-weight:800;font-size:13.5px;padding:7px 11px;cursor:pointer;white-space:nowrap;margin-right:6px}
.tk-pill i{font-style:normal}.tk-pill:hover{background:rgba(255,255,255,.24)}.tk-pill:focus-visible{outline:2px solid #fff;outline-offset:2px}
.tk-pill.low{background:#ffb547;color:#3d2800}.tk-pill.neg{background:#f2c9c4;color:#7a1f15}
.sh-bar:not(.lay-m1):not(.lay-top) .tk-pill{background:var(--tk-soft);color:var(--tk-pet)}
@media (max-width:760px){.tk-pill{padding:6px 8px;font-size:12.5px}}

/* Seite Guthaben */
.tk-g{display:grid;grid-template-columns:1.1fr 1fr;gap:16px;align-items:start;margin-top:16px}
@media (max-width:1100px){.tk-g{grid-template-columns:1fr}}
.tk-c{background:#fff;border:1px solid var(--tk-line);border-radius:16px;padding:16px 18px;margin-bottom:16px;color:#1d2024}
.tk-c h2{margin:0 0 12px;font-size:16px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.tk-test{font-size:11px;font-weight:800;letter-spacing:.03em;background:#fff1d6;color:#8a5a00;border-radius:7px;padding:2px 8px}
.tk-ban{display:flex;gap:10px;align-items:center;flex-wrap:wrap;background:#fff1d6;border:1px solid #f0dcb0;border-radius:12px;padding:10px 14px;font-size:13.5px;color:#5c3d00;margin:16px 0 0}
.tk-ban b{color:#3d2800}.tk-ban .linkbtn{margin-left:auto;font-weight:800;color:var(--tk-pet)}
.tk-ban.bad{background:#fdf1ef;border-color:#efc4bf;color:#7a1f15}.tk-ban.bad b{color:#7a1f15;margin-right:4px}
.tk-bal{display:flex;gap:22px;align-items:center;flex-wrap:wrap}
.tk-big{font-size:52px;font-weight:900;letter-spacing:-.02em;color:var(--tk-pet);line-height:1}.tk-big.neg{color:var(--tk-red)}.tk-big small{font-size:18px;color:var(--tk-mu);font-weight:700;margin-left:6px;letter-spacing:0}
.tk-meter{flex:1;min-width:200px}
.tk-mb{height:14px;background:#ecebe6;border-radius:7px;position:relative}.tk-mb i{display:block;height:100%;background:var(--tk-pet);border-radius:7px}.tk-mb i.low{background:var(--tk-or)}
.tk-mb em{position:absolute;top:-4px;bottom:-4px;width:2px;background:var(--tk-or)}
.tk-ml{position:relative;display:flex;justify-content:space-between;font-size:12px;color:#7a7e84;margin-top:6px;min-height:34px}
.tk-ml .th.l{transform:translateX(-1px)}.tk-ml .th.r{transform:translateX(-100%)}
.tk-ml .th{position:absolute;top:17px;transform:translateX(-50%);color:#8a5a00;font-weight:700;white-space:nowrap}
.tk-kv{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:16px}
.tk-kv>div{background:var(--tk-bg);border-radius:11px;padding:9px 11px}.tk-kv small{display:block;font-size:11px;color:#7a7e84;font-weight:800;letter-spacing:.03em}.tk-kv b{font-size:17px}.tk-kv span{display:block;font-size:11.5px;color:var(--tk-mu)}
@media (max-width:600px){.tk-kv{grid-template-columns:1fr}.tk-big{font-size:42px}}
.tk-two{display:grid;grid-template-columns:1fr 1fr;gap:10px}@media (max-width:600px){.tk-two{grid-template-columns:1fr}}
.tk-two label,.tk-f{display:flex;flex-direction:column;gap:5px;font-size:12.5px;font-weight:700;margin:8px 0 0}
.tk-f input,.tk-f textarea,.ftm textarea,.ftm-ppl input,.ftm-u input{border:1.5px solid var(--tk-in);border-radius:11px;padding:9px 12px;font:inherit;font-size:14px;font-weight:400;background:#fff;color:#1d2024;width:100%;box-sizing:border-box}
.tk-f input:focus,.tk-f textarea:focus,.ftm textarea:focus,.ftm-ppl input:focus,.ftm-u input:focus{outline:0;border-color:var(--tk-pet);box-shadow:0 0 0 4px #dcebee}
.tk-sm{font-size:12.5px;color:var(--tk-mu);margin:8px 0 0;line-height:1.45}
.tk-lab{display:block;font-size:12.5px;font-weight:700;margin:12px 0 0}
.tk-pay{display:flex;align-items:center;gap:12px;border:1.5px solid #e1e0da;border-radius:12px;padding:10px 12px;margin-top:6px}
.tk-pay i{width:44px;height:28px;border-radius:6px;background:#1d5d99;color:#fff;font-style:normal;font-size:10.5px;font-weight:900;display:grid;place-items:center;flex:none}.tk-pay i.card{background:#4b4f55}
.tk-pay b{display:block;font-size:14px}.tk-pay small{display:block;color:var(--tk-mu);font-size:12px}.tk-pay>.linkbtn,.tk-pay>.bt-ok,.tk-pay>.bt-no{margin-left:auto}
.tk-pay.none{border-style:dashed}
.tk-note{background:var(--tk-soft);border-radius:11px;padding:9px 12px;font-size:12.5px;margin-top:12px;color:#1d2024;line-height:1.45}
.tk-sw{all:unset;display:flex;align-items:center;gap:10px;font-size:14px;font-weight:700;padding:4px 0 8px;cursor:pointer}
.tk-sw i{width:40px;height:22px;border-radius:11px;background:#c9cbcf;position:relative;flex:none;transition:background .15s}
.tk-sw i:after{content:"";position:absolute;left:2px;top:2px;width:18px;height:18px;border-radius:50%;background:#fff;transition:left .15s}
.tk-sw[aria-checked=true] i{background:var(--tk-pet)}.tk-sw[aria-checked=true] i:after{left:20px}
.tk-sw:focus-visible i{box-shadow:0 0 0 3px #b9d6dc}.tk-sw[disabled]{cursor:default;opacity:.6}
.tk-how ul{list-style:none;margin:0;padding:0}.tk-how li{display:flex;justify-content:space-between;gap:12px;padding:6px 0;border-top:1px solid #f1f0ec;font-size:13.5px}.tk-how li:first-child{border:0}.tk-how li b{white-space:nowrap}
.tk-mo{margin-left:auto;font-size:13px;font-weight:700}.tk-mo select{font-size:13px}
.tk-ev{display:grid;grid-template-columns:1fr 70px;gap:8px;font-size:13.5px;padding:6px 0}.tk-ev small{color:var(--tk-mu)}.tk-ev>b{text-align:right}
.tk-eb{height:8px;background:#ecebe6;border-radius:4px;overflow:hidden;margin-top:5px}.tk-eb i{display:block;height:100%;background:var(--tk-pet)}
.tk-evs{display:flex;justify-content:space-between;gap:10px;border-top:1px solid var(--tk-line);margin-top:6px;padding-top:9px;font-size:13px;color:var(--tk-mu)}.tk-evs b{color:#1d2024}
.tk-r{display:grid;grid-template-columns:70px 1fr 64px 128px;gap:10px;padding:8px 0;border-top:1px solid #f1f0ec;font-size:13px;align-items:center}
.tk-r.h{border:0;font-size:11.5px;color:#7a7e84;font-weight:800;padding-top:0}.tk-r .n{text-align:right;font-weight:800}.tk-r .pl{color:var(--tk-ok)}
.tk-r small{display:block;color:#7a7e84;font-size:11.5px}.tk-r a{color:var(--tk-pet);font-weight:700;white-space:nowrap;font-size:12.5px}.tk-r.fail>span:nth-child(2){color:var(--tk-red)}
@media (max-width:600px){.tk-r{grid-template-columns:62px 1fr 60px}.tk-r>:nth-child(4){grid-column:2/4;text-align:left}}

/* Fenster (Token aufladen, Zahlungsart, Tarifwechsel) */
.tkdlg{position:relative;background:#fff;border-radius:20px;width:min(560px,100%);max-height:calc(100vh - 48px);display:flex;flex-direction:column;box-shadow:0 20px 60px rgba(0,0,0,.25);color:#1d2024;overflow:hidden}
.tkdlg.tkdlg-s{width:min(500px,100%)}
.tkdlg-h{display:flex;align-items:baseline;gap:10px;padding:18px 20px 6px}.tkdlg-h h2{margin:0;font-size:19px}.tkdlg-h>span{color:var(--tk-mu);font-size:13px}
.tkdlg-x,.ftm-x{margin-left:auto;align-self:center;width:32px;height:32px;border-radius:9px;border:1.5px solid var(--tk-line);background:#fff;color:var(--tk-pet);font:inherit;font-weight:800;cursor:pointer}
.tkdlg-x:hover{background:var(--tk-soft)}
.tkdlg-b{padding:8px 20px 16px;overflow:auto}
.tkdlg-k{display:block;margin:10px 0 8px;font-size:11.5px;letter-spacing:.06em;color:#7a7e84;font-weight:800}
.tkdlg-q{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.tkq{all:unset;box-sizing:border-box;border:1.5px solid #e1e0da;border-radius:14px;padding:10px 8px;text-align:center;cursor:pointer;background:#fff}
.tkq:hover{border-color:#b9c9cd}.tkq:focus-visible{box-shadow:0 0 0 4px #dcebee;border-color:var(--tk-pet)}
.tkq b{display:block;font-size:21px}.tkq span,.tkq small{display:block;font-size:12px;color:var(--tk-mu)}.tkq strong{display:block;font-size:15px;margin-top:5px}
.tkq em{display:inline-block;font-style:normal;background:#e3f4ea;color:var(--tk-ok);border-radius:7px;padding:1px 7px;font-size:11px;font-weight:800;margin-top:4px}
.tkq.on{border:2px solid var(--tk-pet);background:var(--tk-soft);padding:9.5px 7.5px}
.tkdlg-n{display:flex;align-items:center;gap:8px}
.tkdlg-n button{width:44px;height:44px;border-radius:12px;border:1.5px solid var(--tk-in);background:#fff;color:var(--tk-pet);font:inherit;font-size:22px;font-weight:800;cursor:pointer;flex:none}
.tkdlg-n button:hover:not([disabled]){background:var(--tk-soft)}.tkdlg-n button[disabled]{opacity:.4;cursor:default}
.tkdlg-n input{flex:1;min-width:0;height:44px;box-sizing:border-box;border:1.5px solid var(--tk-in);border-radius:12px;padding:0 12px;font:inherit;font-size:20px;font-weight:800;text-align:center;color:#1d2024;-moz-appearance:textfield}
.tkdlg-n input::-webkit-inner-spin-button,.tkdlg-n input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.tkdlg-n input:focus{outline:0;border-color:var(--tk-pet);box-shadow:0 0 0 4px #dcebee}.tkdlg-n span{font-weight:700;color:var(--tk-mu)}
.tkdlg-h2{display:block;font-size:12px;color:var(--tk-mu);margin-top:6px}.tkdlg-h2.bad{color:var(--tk-red);font-weight:700}
.tkdlg-t{width:100%;border-collapse:collapse;margin-top:14px;font-size:14px;background:var(--tk-bg);border-radius:12px;overflow:hidden}
.tkdlg-t td{padding:8px 12px}.tkdlg-t td:last-child{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
.tkdlg-t tfoot td{border-top:1px solid #e1e0da;font-weight:800;font-size:15px}
.tkdlg-i{font-size:12.5px;color:#4b4f55;margin:12px 0 0;line-height:1.5}
.tkdlg-f{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px 20px;border-top:1px solid var(--tk-line);background:#fff}
.tkdlg-f .sp{flex:1}
.tkdlg-f .ft-b{display:inline-flex;align-items:center;gap:7px;border:1.5px solid var(--tk-in);border-radius:22px;background:#fff;color:#1d2024;font:inherit;font-weight:800;font-size:14px;padding:8px 15px;cursor:pointer}
.tkdlg-f .ft-b i{font-style:normal}.tkdlg-f .ft-b:hover{background:#f6f6f3}
.tkdlg-f .ft-c{border:0;background:none;font:inherit;font-weight:800;font-size:14px;color:#1d2024;padding:8px 12px;cursor:pointer;border-radius:22px}.tkdlg-f .ft-c:hover{background:#f6f6f3}
.tkdlg-f .ft-p{border:1.5px solid var(--tk-pet);background:var(--tk-pet);color:#fff;border-radius:22px;font:inherit;font-weight:800;font-size:14px;padding:9px 18px;cursor:pointer}
.tkdlg-f .ft-p:hover:not([disabled]){background:#0e3d4a}.tkdlg-f .ft-p[disabled]{opacity:.5;cursor:default}
.tkdlg-f button:focus-visible{outline:2px solid var(--tk-pet);outline-offset:2px}
.tk-op{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.tk-op button{all:unset;box-sizing:border-box;border:1.5px solid #e1e0da;border-radius:12px;padding:9px 12px;font-size:12.5px;color:var(--tk-mu);cursor:pointer;background:#fff}
.tk-op button b{display:block;color:#1d2024;font-size:14px}.tk-op button span{display:block}
.tk-op button.on{border:2px solid var(--tk-pet);background:var(--tk-soft);padding:8.5px 11.5px}.tk-op button:focus-visible{box-shadow:0 0 0 4px #dcebee}
@media (max-width:520px){.tkdlg-q,.tk-op{grid-template-columns:1fr}}

/* Freitickets verschicken */
.ftm{position:relative;background:#fff;border-radius:20px;width:min(1120px,100%);max-height:calc(100vh - 48px);display:flex;flex-direction:column;box-shadow:0 20px 60px rgba(0,0,0,.3);color:#1d2024;overflow:hidden}
.ftm.ftm-done{width:min(560px,100%)}
.ftm-h{background:var(--tk-pet);color:#fff;display:flex;align-items:center;gap:10px;padding:14px 20px;flex-wrap:wrap}.ftm-h h2{margin:0;font-size:17px}.ftm-h small{opacity:.85;font-size:13px}
.ftm-x{border:0}
.ftm-load{padding:40px 20px;text-align:center}
.ftm-bd{display:grid;grid-template-columns:1.3fr 1fr;overflow:auto;min-height:0}
@media (max-width:860px){.ftm-bd{grid-template-columns:1fr}}
.ftm-l{padding:16px 20px;border-right:1px solid var(--tk-line)}.ftm-r{padding:16px 20px;background:var(--tk-bg)}
.ftm-sec{margin-bottom:18px}.ftm-sec h4{margin:0 0 8px;font-size:12px;letter-spacing:.06em;color:#7a7e84}
.ftm-sec textarea{resize:vertical;min-height:90px;line-height:1.45}
.ftm-ppl{border:1.5px solid var(--tk-in);border-radius:11px;padding:4px 8px;background:#fff}
.ftm-ppl>div{display:grid;grid-template-columns:1fr 1.2fr auto 32px;gap:6px;align-items:center;padding:5px 0;border-bottom:1px solid #f4f3ef}.ftm-ppl>div:last-child{border:0}
.ftm-ppl input{padding:7px 9px;font-size:13.5px}
.ftm-q{display:flex;align-items:center;gap:5px;font-size:12px;color:var(--tk-mu)}.ftm-q span{min-width:40px}.ftm-q input{width:58px;padding:7px 6px;text-align:center}
.ftm-rm{width:30px;height:30px;border-radius:8px;border:0;background:none;color:var(--tk-mu);cursor:pointer;font:inherit}.ftm-rm:hover{background:#fdf1ef;color:var(--tk-red)}
@media (max-width:600px){.ftm-ppl>div{grid-template-columns:1fr 32px}.ftm-ppl>div>input:nth-child(2),.ftm-ppl .ftm-q{grid-column:1}}
.ftm-empty{margin:0 0 4px}
.ftm-add{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.ftm-add .addz{display:inline-flex;width:auto;margin:0;padding:6px 12px;font-size:13px;gap:7px;border-radius:10px}.ftm-add .addz>i{width:20px;height:20px;font-size:14px}
.ftm-row{display:flex;gap:8px;justify-content:flex-end;margin-top:10px}
.ftm-pl{max-height:260px;overflow:auto;border:1.5px solid var(--tk-in);border-radius:11px;margin-top:10px;background:#fff}
.ftm-pl label{display:grid;grid-template-columns:20px 1fr 1fr;gap:4px 8px;align-items:center;padding:7px 10px;border-bottom:1px solid #f4f3ef;font-size:13px;cursor:pointer}
.ftm-pl label span{color:var(--tk-mu);overflow:hidden;text-overflow:ellipsis}.ftm-pl label small{grid-column:2/4;color:#7a7e84;font-size:11.5px}
.ftm-codes>div{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center;padding:7px 0;border-top:1px solid #f1f0ec;font-size:13px}.ftm-codes code{font-weight:800}
.ftm-card{background:#fff;border:1px solid var(--tk-line);border-radius:14px;padding:12px 14px;margin-bottom:12px;font-size:13px}.ftm-card>b{font-size:14px;display:block;margin-bottom:8px}
.ftm-sum{background:var(--tk-bg);border-radius:12px;padding:8px 12px;font-size:13.5px}.ftm-sum>div{display:flex;justify-content:space-between;gap:10px;padding:3px 0}
.ftm-sum .mu{color:var(--tk-mu);font-size:12.5px}.ftm-sum .ftm-tot{border-top:1px solid #e1e0da;margin-top:4px;padding-top:6px;font-weight:800}.ftm-sum .neg{color:var(--tk-red)}
.ftm-warn{background:#fdf1ef;color:#7a1f15;border-radius:10px;padding:8px 11px;font-size:12.5px;font-weight:700;margin:8px 0 0}
.ftm-u{display:flex;align-items:center;gap:6px}.ftm-u input{width:72px}.ftm-u i{font-style:normal;font-weight:400;color:var(--tk-mu);font-size:12px}
.ftm-qn{font-size:12.5px;color:var(--tk-mu);margin-top:10px}
.ftm-bar{display:flex;height:14px;border-radius:7px;overflow:hidden;margin:6px 0;background:#ecebe6}.ftm-bar i{display:block;height:100%}
.ftm-lg{display:flex;flex-wrap:wrap;gap:10px;font-size:12px;color:#4b4f55}.ftm-lg span:before{content:"";display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:5px;vertical-align:-1px;background:var(--c)}
.ftm-res{padding:24px 24px 18px;text-align:center;overflow:auto}.ftm-res h3{margin:6px 0 4px;font-size:19px}.ftm-res p{margin:4px 0;color:#4b4f55}
.ftm-ok{width:46px;height:46px;border-radius:50%;background:#e3f4ea;color:var(--tk-ok);display:grid;place-items:center;font-size:22px;font-weight:900;margin:0 auto}
.ftm-rl{list-style:none;margin:12px 0 0;padding:0;text-align:left;border:1px solid var(--tk-line);border-radius:12px}
.ftm-rl li{display:grid;grid-template-columns:1fr auto;gap:2px 10px;padding:8px 12px;border-top:1px solid #f1f0ec;font-size:13px}.ftm-rl li:first-child{border:0}.ftm-rl small{color:var(--tk-mu)}
.ftm-link{display:flex;gap:8px;align-items:center;justify-content:center;flex-wrap:wrap;margin-top:12px}.ftm-link code{background:var(--tk-bg);border-radius:8px;padding:7px 10px;font-size:12.5px;word-break:break-all}

/* Tarif */
.bt-g{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:22px 0 16px;align-items:stretch}
@media (max-width:1000px){.bt-g{grid-template-columns:1fr}}
.bt-c{position:relative;background:#fff;border:1.5px solid var(--tk-line);border-radius:16px;padding:18px;display:flex;flex-direction:column;color:#1d2024}
.bt-c.on{border:2px solid var(--tk-pet);box-shadow:0 0 0 4px #e3eff2;padding:17.5px}
.bt-cur{position:absolute;top:-11px;left:16px;background:var(--tk-pet);color:#fff;font-size:11.5px;font-weight:800;border-radius:8px;padding:3px 10px}
.bt-c h2{margin:4px 0 4px;font-size:19px}.bt-lead{margin:0 0 12px;color:var(--tk-mu);font-size:13.5px;line-height:1.45}
.bt-pr{background:var(--tk-bg);border-radius:12px;padding:10px 12px;margin-bottom:12px}.bt-pr b{font-size:26px;font-weight:900;color:var(--tk-pet);letter-spacing:-.01em}.bt-pr span{margin-left:6px;font-size:13px;font-weight:700;color:#4b4f55}.bt-pr small{display:block;font-size:12px;color:var(--tk-mu);margin-top:2px}
.bt-c ul{list-style:none;margin:0 0 10px;padding:0;font-size:13.5px;flex:1}.bt-c li{padding:4px 0 4px 22px;position:relative}.bt-c li:before{content:"✓";position:absolute;left:2px;color:var(--tk-pet);font-weight:900}
.bt-term{font-size:12.5px;color:var(--tk-mu);margin:0 0 12px}
.bt-act{width:100%}.bt-act.on{text-align:center;font-size:13px;font-weight:800;color:var(--tk-pet);background:var(--tk-soft);border-radius:10px;padding:9px}
.bt-lock{margin-left:auto;font-size:11.5px;font-weight:800;background:var(--tk-bg);color:#4b4f55;border-radius:8px;padding:3px 9px}
.bt-cond dl{margin:6px 0 0}.bt-cond dl>div{display:grid;grid-template-columns:200px 1fr;gap:10px;padding:7px 0;border-top:1px solid #f1f0ec;font-size:13.5px}.bt-cond dt{color:var(--tk-mu)}.bt-cond dd{margin:0;font-weight:700}
@media (max-width:600px){.bt-cond dl>div{grid-template-columns:1fr;gap:2px}}
.bt-ok,.bt-no{font-size:11.5px;font-weight:800;border-radius:8px;padding:3px 9px}.bt-ok{background:#e3f4ea;color:var(--tk-ok)}.bt-no{background:#fff1d6;color:#8a5a00}
.bt-pay{margin-top:12px}.bt-p{margin:0 0 10px;font-size:14px;line-height:1.5}

/* Monatsberichte und Rechnungen */
.tk-c.br,.tk-c.bi{margin-top:16px}
.br-r,.bi-r{display:grid;gap:10px;align-items:center;padding:10px 0;border-top:1px solid #f1f0ec;font-size:13.5px}
.br-r{grid-template-columns:1.3fr 1fr .8fr .7fr 1.3fr .9fr 120px}.bi-r{grid-template-columns:120px 80px 1.4fr 1fr .8fr .7fr .8fr 80px 120px}
.br-r.h,.bi-r.h{border:0;font-size:11.5px;color:#7a7e84;font-weight:800;padding-top:0}
.br-r .n,.bi-r .n{text-align:right;font-variant-numeric:tabular-nums}.br-r small{display:block;font-size:11.5px;color:var(--tk-mu)}
.br-r.run{background:var(--tk-soft);margin:0 -10px;padding:10px;border-radius:10px;border-top-color:transparent}
.br-run{display:inline-block!important;margin-top:3px;background:#fff;color:var(--tk-pet)!important;border-radius:7px;padding:1px 7px;font-weight:800}
.br-a,.bi-a{display:flex;gap:12px;justify-content:flex-end}.br-a a,.bi-a a{color:var(--tk-pet);font-weight:800;font-size:13px}
.bi-st{font-style:normal;font-size:11.5px;font-weight:800;border-radius:8px;padding:2px 9px}.bi-st.paid{background:#e3f4ea;color:var(--tk-ok)}.bi-st.open{background:#fff1d6;color:#8a5a00}
@media (max-width:1000px){.br-r,.bi-r{grid-template-columns:1fr 1fr}.br-r.h,.bi-r.h{display:none}.br-r .n,.bi-r .n{text-align:left}.br-r [data-l]:before{content:attr(data-l) ": ";color:var(--tk-mu);font-size:12px}.br-a,.bi-a{justify-content:flex-start}}

/* Rechnung / Bericht zum Drucken (ext_token.php) */
.tkinv-b{background:#f6f5f1}
.tkinv-test{background:#fff1d6;color:#5c3d00;border-radius:10px;padding:8px 12px;font-size:13px;margin:0 0 18px}
.tkinv-s{font-size:18px;color:#134e5e}.tkinv-r{text-align:right}.tkinv-r h1{margin:0 0 6px;font-size:24px}
.tkinv-to{margin:24px 0}.tkinv-to>small{display:block;font-size:11px;color:#7a7e84;text-decoration:underline;margin-bottom:6px}
.tkinv-t{width:100%;border-collapse:collapse;margin:18px 0}.tkinv-t th{text-align:left;font-size:12px;color:#6c7075;border-bottom:1px solid #d9d8d2;padding:6px}.tkinv-t td{padding:8px 6px;border-bottom:1px solid #f1f0ec}
.tkinv-t .r{text-align:right;white-space:nowrap}.tkinv-t tfoot td{border:0}.tkinv-t .tot td{font-weight:800;font-size:15px;border-top:2px solid #1d2024}
.tkinv footer{margin-top:28px;font-size:11.5px;color:#6c7075;border-top:1px solid #ebeae5;padding-top:10px}
.tkinv-p{display:inline-block;margin-top:14px;background:#134e5e;color:#fff;border-radius:22px;padding:9px 18px;font-weight:800;text-decoration:none}
@media print{.noprint,.tkinv-test{display:none}.tkinv-b{background:#fff}}

/* Code-Link einlösen (ext_free.php, Gäste) */
.ftr-b{margin:0;background:#f6f5f1;font:15px/1.5 Inter,system-ui,sans-serif;color:#1d2024}
.ftr{max-width:460px;margin:40px auto;background:#fff;border:1px solid #ebeae5;border-radius:18px;padding:26px 24px}
.ftr-o{margin:0 0 4px;font-size:12px;letter-spacing:.06em;color:#7a7e84;font-weight:800;text-transform:uppercase}
.ftr h1{margin:0 0 4px;font-size:24px;color:#134e5e}.ftr-w{margin:0 0 14px;color:#6c7075}
.ftr label{display:flex;flex-direction:column;gap:5px;font-size:13px;font-weight:700;margin:12px 0 0}
.ftr input{border:1.5px solid #d9d8d2;border-radius:11px;padding:10px 12px;font:inherit}.ftr input:focus{outline:0;border-color:#134e5e;box-shadow:0 0 0 4px #dcebee}
.ftr-sum{display:flex;justify-content:space-between;background:#f1f7f8;border-radius:12px;padding:10px 14px;margin:16px 0 12px}
.ftr button{width:100%;border:0;background:#134e5e;color:#fff;border-radius:24px;padding:12px;font:inherit;font-weight:800;cursor:pointer}.ftr button:hover{background:#0e3d4a}
.ftr-e{background:#fdf1ef;color:#7a1f15;border-radius:10px;padding:9px 12px;font-weight:700;font-size:14px}.ftr-n{font-size:12.5px;color:#7a7e84;text-align:center;margin:10px 0 0}
@media (max-width:500px){.ftr{margin:16px}}
