:root{--ink:#1c2430;--muted:#5f6b7d;--blue:#1a56db;--line:#d5dbe6;--font:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
*{box-sizing:border-box}html,body{height:100%}body{margin:0;background:#fff;color:var(--ink);font:18px/1.45 var(--font)}
button{font:inherit;cursor:pointer}.muted{color:var(--muted)}
.btn{height:64px;padding:0 22px;border:2px solid var(--ink);background:#fff;color:var(--ink);border-radius:8px;font-weight:700;font-size:19px}
.btn.go{background:var(--blue);border-color:var(--blue);color:#fff}.btn:disabled{opacity:.4}
.center{min-height:100%;display:grid;place-items:center;text-align:center;padding:24px}.center>div{max-width:640px;display:grid;gap:14px;justify-items:center}
.logo{width:76px;height:76px;border:2px dashed #b9c1cf;border-radius:10px;display:grid;place-items:center;color:#aab3c4;font-size:11px}
h1{margin:0;font-size:clamp(26px,4vw,40px);font-weight:600}
.pulse{width:12px;height:12px;border-radius:50%;background:#1b8a4b;animation:p 2s infinite}@keyframes p{0%,100%{opacity:.3}50%{opacity:1}}
.banner{position:fixed;left:0;right:0;top:0;background:#b3261e;color:#fff;text-align:center;padding:10px;font-weight:700;z-index:9}.banner.pend{background:#9a5b00}
.wrap{max-width:1180px;margin:0 auto;padding:22px;display:grid;gap:18px}
.cols{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:24px}@media(max-width:880px){.cols{grid-template-columns:minmax(0,1fr)}}
table{width:100%;border-collapse:collapse;font-size:16px}th{text-align:left;font-size:12px;color:var(--muted);padding:0 8px 6px 0;border-bottom:2px solid var(--ink)}td{padding:8px 8px 8px 0;border-bottom:1px solid var(--line);vertical-align:top}.r{text-align:right}
.sum{margin-left:auto;width:280px;margin-top:8px}.sum div{display:flex;justify-content:space-between;padding:2px 0}.sum .g{border-top:2px solid var(--ink);font-weight:700;font-size:22px;margin-top:4px;padding-top:4px}
.padbox{position:relative;background:#fff;border:3px solid var(--ink);height:clamp(190px,34vh,320px);touch-action:none}.padbox canvas{position:absolute;inset:0;width:100%;height:100%;touch-action:none}
.padbox::after{content:"✕  Unterschrift";position:absolute;left:16px;right:16px;bottom:34px;border-bottom:2px solid var(--ink);color:var(--muted);font-size:14px;padding-bottom:4px;pointer-events:none}
.pb{display:grid;grid-template-columns:1fr 2fr;gap:12px;margin-top:12px}
.opt{display:flex;gap:10px;align-items:center;font-size:16px;margin:6px 0}.opt input{width:22px;height:22px}
input[type=text],input[type=email],input[type=password],select{font:inherit;padding:14px;border:2px solid var(--ink);border-radius:8px;width:min(480px,100%)}
.list{display:grid;gap:10px;width:min(480px,100%)}.err{color:#b3261e;font-weight:600}

.adbar{position:fixed;left:0;right:0;bottom:0;z-index:2;background:rgba(255,255,255,.95);padding:12px 22px;display:flex;gap:16px;align-items:center;font-size:18px;border-top:1px solid var(--line)}.adbar .logo{width:54px;height:54px;font-size:9px}
@media (prefers-reduced-motion:reduce){.ads img{transition:none}}

.slides{position:fixed;inset:0 0 82px 0;z-index:1;background:#0b1220}
.slide{position:absolute;inset:0;opacity:0;transition:opacity 1s;pointer-events:none;min-width:0;min-height:0}.slide.on{opacity:1}
.slide.ad img{width:100%;height:100%;object-fit:contain;display:block}
.slide.tram{background:#fff;padding:26px 34px 18px;display:flex;flex-direction:column;gap:10px;overflow:hidden}
.slide.tram h2,.slide.hinweis h2{margin:0}.abf-t{font-size:clamp(22px,3vw,32px);margin:0}.oder{font-size:clamp(20px,2.6vw,26px);margin-top:6px}.abf-l{flex:1;min-height:0;overflow:hidden}.abf-f{font-size:14px;color:var(--muted)}
.abfrow{display:grid;grid-template-columns:84px minmax(0,1fr) auto;gap:16px;align-items:center;padding:9px 0;border-bottom:1px solid var(--line);font-size:clamp(20px,2.6vw,28px)}
.lin{background:#1c2430;color:#fff;border-radius:8px;text-align:center;font-weight:700;padding:4px 6px}.lin.t-tram{background:#b3261e}.lin.t-bus{background:#6a2f8a}.lin.t-sbahn{background:#127a43}.lin.t-zug,.lin.t-ubahn,.lin.t-stadtbahn{background:#00326e}
.ri{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ri small{display:block;font-size:14px;color:var(--muted)}.zt{text-align:right;white-space:nowrap}.zt b{font-size:1.25em}.zt small{display:block;font-size:15px;color:var(--muted)}.zt em{color:#b3261e;font-style:normal;font-weight:700}
.rent{background:#00326e;color:#fff;border-radius:14px;padding:22px 26px;display:grid;gap:6px}.rent strong{font-size:18px;letter-spacing:.06em;text-transform:uppercase;color:#ffd0cc}.rent h2{font-size:clamp(28px,4vw,44px);line-height:1.15}.rent .preis{font-size:clamp(26px,3.6vw,40px);font-weight:700;background:#ce100c;border-radius:10px;padding:8px 16px;justify-self:start}.rent small{font-size:20px;opacity:.92}
.slide.hinweis{background:#fff;display:flex;flex-wrap:wrap;align-items:center;align-content:center;justify-content:center;gap:40px;padding:30px}.slide.hinweis strong{font-size:16px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.slide.hinweis h2{font-size:clamp(34px,5vw,56px);margin:6px 0 10px}.slide.hinweis p{font-size:clamp(22px,2.8vw,30px);margin:0;max-width:520px}.slide.hinweis img{background:#fff;border:1px solid var(--line);padding:12px;max-width:min(300px,60vw);height:auto}
@media (prefers-reduced-motion:reduce){.slide{transition:none}}

.slide.ad{background:#00326e}.slide.ad img{object-fit:contain}

.wahl{display:flex;gap:0;margin:14px 0 0;border:2px solid var(--ink);border-radius:8px;overflow:hidden}.wahl button{flex:1;padding:12px 10px;border:0;background:#fff;color:var(--ink);font-weight:600;font-size:16px}.wahl button[aria-selected="true"]{background:var(--ink);color:#fff}
