:root{ --zbd-bg:#1a1712; --zbd-card:#241f18; --zbd-line:#3a3228; --zbd-fg:#f3ece0; --zbd-mut:#b6a888; --zbd-gold:#d8b56a; --zbd-red:#e0684a; --zbd-green:#57b06a; }
#zbd-app,.zbd-login,.zbd-denied{ font-family:Manrope,system-ui,sans-serif; max-width:640px; margin:0 auto; color:var(--zbd-fg); }
#zbd-app{ background:var(--zbd-bg); border-radius:14px; overflow:hidden; min-height:82vh; display:flex; flex-direction:column; }
.zbd-top{ display:flex; justify-content:space-between; align-items:center; padding:14px 16px; background:#15120e; border-bottom:1px solid var(--zbd-line); }
.zbd-brand{ font-family:Oswald,sans-serif; letter-spacing:.5px; text-transform:uppercase; }
.zbd-brand b{ color:var(--zbd-gold); }
.zbd-hi{ font-size:13px; color:var(--zbd-mut); }
.zbd-tab{ flex:1 0 auto; }
.zbd-h{ font-family:Oswald,sans-serif; padding:14px 16px 2px; margin:0; color:var(--zbd-mut); text-transform:uppercase; font-size:13px; letter-spacing:1px; }
.zbd-daybar{ display:flex; align-items:center; justify-content:space-between; padding:10px 16px; background:var(--zbd-card); border-bottom:1px solid var(--zbd-line); }
.zbd-daybar button{ background:none; border:1px solid var(--zbd-line); color:var(--zbd-fg); width:40px; height:40px; border-radius:10px; font-size:22px; cursor:pointer; }
#zbd-date{ font-family:Oswald,sans-serif; font-size:17px; text-transform:capitalize; }
.zbd-list{ padding:12px; display:flex; flex-direction:column; gap:10px; min-height:120px; }
.zbd-empty{ text-align:center; color:var(--zbd-mut); padding:32px 0; }
.zbd-card{ background:var(--zbd-card); border:1px solid var(--zbd-line); border-radius:12px; padding:12px 14px; }
.zbd-card-top{ display:flex; align-items:center; justify-content:space-between; }
.zbd-time{ font-family:Oswald,sans-serif; font-size:22px; color:var(--zbd-gold); }
.zbd-cust{ margin-top:6px; font-weight:600; } .zbd-cust a{ color:var(--zbd-fg); }
.zbd-meta{ font-size:13px; color:var(--zbd-mut); margin-top:2px; }
.zbd-actions{ display:flex; gap:8px; margin-top:10px; flex-wrap:wrap; }
.zbd-btn{ flex:1; min-width:90px; padding:11px 10px; border-radius:10px; border:1px solid var(--zbd-line); background:#2c261d; color:var(--zbd-fg); font-weight:600; cursor:pointer; }
.zbd-btn.primary{ background:var(--zbd-gold); color:#241a08; border-color:var(--zbd-gold); }
.zbd-btn.danger{ color:var(--zbd-red); }
.zbd-btn[disabled]{ opacity:.5; }
.zbd-badge{ font-size:12px; padding:3px 9px; border-radius:20px; background:#2c261d; }
.zbd-badge.zbd-confirmed{ color:var(--zbd-green);} .zbd-badge.zbd-cancelled{ color:var(--zbd-red);} .zbd-badge.zbd-pending{ color:var(--zbd-gold);}
.zbd-badge.zbd-checked_in{ color:#7fc7e0;} .zbd-badge.zbd-in_progress{ color:#c79bf0;} .zbd-badge.zbd-completed{ color:#8fb98f;}
.zbd-badge.zbd-no_show{ color:#e0684a;} .zbd-badge.zbd-refunded{ color:#d8b56a;} .zbd-badge.zbd-expired{ color:#8a8378;}
/* Bottom-Navigation */
.zbd-nav{ position:sticky; bottom:0; display:flex; background:#15120e; border-top:1px solid var(--zbd-line); }
.zbd-nav button{ flex:1; background:none; border:none; color:var(--zbd-mut); padding:9px 4px; display:flex; flex-direction:column; align-items:center; gap:3px; font-size:11px; font-weight:600; cursor:pointer; }
.zbd-nav button .zbd-ni{ font-size:20px; line-height:1; }
.zbd-nav button.active{ color:var(--zbd-gold); }
/* Dashboard-Tab */
.zbd-stats{ padding:12px; display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.zbd-stat{ background:var(--zbd-card); border:1px solid var(--zbd-line); border-radius:12px; padding:16px; text-align:center; }
.zbd-stat-num{ display:block; font-family:Oswald,sans-serif; font-size:32px; color:var(--zbd-gold); }
.zbd-stat-lbl{ font-size:12px; color:var(--zbd-mut); }
.zbd-teaser{ grid-column:1 / -1; background:var(--zbd-card); border:1px dashed var(--zbd-line); border-radius:12px; padding:16px; text-align:center; color:var(--zbd-mut); font-size:13px; }
.zbd-chart{ grid-column:1 / -1; background:var(--zbd-card); border:1px solid var(--zbd-line); border-radius:12px; padding:14px; }
.zbd-chart-t{ font-size:12px; color:var(--zbd-mut); text-transform:uppercase; letter-spacing:.5px; margin-bottom:10px; }
.zbd-svg{ width:100%; height:90px; display:block; }
.zbd-sline{ display:flex; align-items:center; gap:8px; padding:7px 0; border-bottom:1px solid var(--zbd-line); font-size:14px; }
.zbd-sline:last-child{ border-bottom:none; }
.zbd-sline b{ margin-left:auto; color:var(--zbd-gold); font-family:Oswald,sans-serif; }
.zbd-dot{ width:10px; height:10px; border-radius:50%; display:inline-block; }
/* Detail-/Umbuchen-Modal (Bottom-Sheet) */
.zbd-modal{ position:fixed; inset:0; background:rgba(0,0,0,.55); display:flex; align-items:flex-end; justify-content:center; z-index:99999; }
.zbd-sheet{ width:100%; max-width:640px; background:var(--zbd-bg); border-top-left-radius:16px; border-top-right-radius:16px; border:1px solid var(--zbd-line); padding:16px; max-height:85vh; overflow:auto; font-family:Manrope,sans-serif; color:var(--zbd-fg); }
.zbd-sheet-h{ display:flex; justify-content:space-between; align-items:center; }
.zbd-sheet-h b{ font-family:Oswald,sans-serif; font-size:18px; }
.zbd-x{ background:none; border:none; color:var(--zbd-mut); font-size:20px; cursor:pointer; }
.zbd-sheet-meta{ color:var(--zbd-mut); font-size:14px; margin:8px 0 16px; line-height:1.5; }
.zbd-sheet .zbd-btn{ width:100%; margin-top:8px; }
.zbd-resched,.zbd-cancelbox{ margin-top:8px; padding:12px; background:var(--zbd-card); border:1px solid var(--zbd-line); border-radius:12px; }
.zbd-rd,.zbd-reason{ width:100%; box-sizing:border-box; padding:11px; border-radius:10px; border:1px solid var(--zbd-line); background:var(--zbd-bg); color:var(--zbd-fg); margin-bottom:8px; }
.zbd-reason{ min-height:70px; resize:vertical; }
.zbd-slots{ display:flex; flex-wrap:wrap; gap:8px; margin-top:6px; }
.zbd-slot{ padding:9px 12px; border-radius:10px; border:1px solid var(--zbd-line); background:#2c261d; color:var(--zbd-fg); font-weight:600; cursor:pointer; }
.zbd-slot[disabled]{ opacity:.5; }
.zbd-rdrow{ display:flex; align-items:center; gap:8px; margin-bottom:8px; }
.zbd-rdrow .zbd-rd{ flex:1; margin-bottom:0; }
.zbd-rnav{ width:42px; height:42px; flex:0 0 auto; border-radius:10px; border:1px solid var(--zbd-line); background:#2c261d; color:var(--zbd-fg); font-size:22px; cursor:pointer; }
/* View-Switcher + Woche/Monat */
.zbd-vswitch{ display:flex; gap:6px; padding:10px 12px 0; }
.zbd-vswitch button{ flex:1; padding:8px; border-radius:9px; border:1px solid var(--zbd-line); background:var(--zbd-card); color:var(--zbd-mut); font-weight:600; cursor:pointer; }
.zbd-vswitch button.active{ background:var(--zbd-gold); color:#241a08; border-color:var(--zbd-gold); }
.zbd-wday{ margin:0 12px 10px; }
.zbd-wday-h{ display:flex; justify-content:space-between; font-family:Oswald,sans-serif; text-transform:capitalize; color:var(--zbd-fg); padding:8px 0 4px; border-bottom:1px solid var(--zbd-line); }
.zbd-wday-h span{ color:var(--zbd-gold); }
.zbd-wempty{ color:var(--zbd-mut); padding:6px 0; font-size:13px; }
.zbd-row{ display:flex; align-items:center; gap:10px; padding:9px 0; border-bottom:1px solid var(--zbd-line); cursor:pointer; }
.zbd-row:last-child{ border-bottom:none; }
.zbd-rt{ font-family:Oswald,sans-serif; color:var(--zbd-gold); min-width:46px; }
.zbd-rc{ flex:1; font-weight:600; }
.zbd-month{ display:grid; grid-template-columns:repeat(7,1fr); gap:4px; padding:12px; }
.zbd-mh{ text-align:center; font-size:11px; color:var(--zbd-mut); padding:4px 0; }
.zbd-mc{ position:relative; aspect-ratio:1; background:var(--zbd-card); border:1px solid var(--zbd-line); border-radius:8px; display:flex; align-items:flex-start; padding:5px; cursor:pointer; }
.zbd-mc-empty{ background:none; border:none; cursor:default; }
.zbd-mn{ font-size:12px; color:var(--zbd-mut); }
.zbd-mcnt{ position:absolute; right:4px; bottom:4px; background:var(--zbd-gold); color:#241a08; font-size:11px; font-weight:700; min-width:16px; height:16px; border-radius:8px; display:flex; align-items:center; justify-content:center; padding:0 3px; }
/* Agenda-Feed (Endlos-Scroll) */
.zbd-feedday{ margin-bottom:4px; }
.zbd-feedh{ position:sticky; top:0; background:var(--zbd-bg); font-family:Oswald,sans-serif; text-transform:capitalize; color:var(--zbd-gold); padding:10px 12px 5px; border-bottom:1px solid var(--zbd-line); z-index:2; }
.zbd-feedday .zbd-row{ margin:0 12px; }
#zbd-sentinel{ padding:18px 0; }
/* Team-Tab */
.zbd-team{ padding:12px; display:flex; flex-direction:column; gap:10px; }
.zbd-tcard{ background:var(--zbd-card); border:1px solid var(--zbd-line); border-radius:12px; padding:14px; }
.zbd-tname{ font-family:Oswald,sans-serif; font-size:17px; display:flex; align-items:center; gap:8px; }
.zbd-streak{ background:#3a2a12; color:var(--zbd-gold); font-size:12px; padding:2px 8px; border-radius:20px; font-family:Manrope,sans-serif; }
.zbd-trow{ display:flex; justify-content:space-between; align-items:center; margin-top:8px; color:var(--zbd-mut); font-size:14px; }
.zbd-trow b{ color:var(--zbd-gold); font-family:Oswald,sans-serif; font-size:18px; }
/* Kunden-Tab */
.zbd-kbar{ display:flex; gap:8px; padding:10px 12px 0; }
.zbd-kbar input{ flex:1; padding:11px; border-radius:10px; border:1px solid var(--zbd-line); background:var(--zbd-bg); color:var(--zbd-fg); }
.zbd-kbar .zbd-btn{ flex:0 0 auto; width:auto; padding:11px 14px; }
.zbd-klist{ padding:12px; display:flex; flex-direction:column; gap:8px; }
.zbd-kcard{ display:flex; align-items:center; justify-content:space-between; background:var(--zbd-card); border:1px solid var(--zbd-line); border-radius:12px; padding:10px 14px; }
.zbd-kinfo{ display:flex; flex-direction:column; }
.zbd-kinfo b{ font-weight:600; } .zbd-kinfo span{ font-size:13px; color:var(--zbd-mut); }
.zbd-kact{ display:flex; gap:6px; }
.zbd-kbtn{ width:38px; height:38px; border-radius:9px; border:1px solid var(--zbd-line); background:#2c261d; font-size:16px; cursor:pointer; }
.zbd-kbtn.danger{ border-color:#5a2a22; }
.zbd-sheet select.zbd-rd{ width:100%; box-sizing:border-box; }
/* Benachrichtigungen + Nav-Badge */
.zbd-notifs-wrap{ padding:12px 12px 0; }
.zbd-notifs-h{ font-size:12px; color:var(--zbd-mut); text-transform:uppercase; letter-spacing:.5px; margin-bottom:8px; }
.zbd-notif{ display:flex; justify-content:space-between; align-items:center; gap:10px; background:var(--zbd-card); border:1px solid var(--zbd-line); border-radius:10px; padding:10px 12px; margin-bottom:6px; font-size:14px; }
.zbd-notif.unread{ border-left:3px solid var(--zbd-gold); }
.zbd-notif small{ color:var(--zbd-mut); font-size:11px; white-space:nowrap; }
.zbd-nav button{ position:relative; }
.zbd-navbadge{ position:absolute; top:3px; right:28%; min-width:16px; height:16px; background:var(--zbd-red); color:#fff; font-size:10px; font-weight:700; border-radius:8px; display:flex; align-items:center; justify-content:center; padding:0 3px; }
/* Mehr-Tab */
.zbd-more{ padding:12px; display:flex; flex-direction:column; gap:8px; }
.zbd-more-row{ display:flex; justify-content:space-between; background:var(--zbd-card); border:1px solid var(--zbd-line); border-radius:10px; padding:12px 14px; }
.zbd-more-link{ display:block; background:var(--zbd-card); border:1px solid var(--zbd-line); border-radius:10px; padding:14px; color:var(--zbd-fg); text-decoration:none; }
.zbd-more-link.zbd-logout{ color:var(--zbd-gold); }
/* Login / Denied */
.zbd-login,.zbd-denied{ background:var(--zbd-card); border:1px solid var(--zbd-line); border-radius:14px; padding:28px; text-align:center; }
.zbd-login h2{ font-family:Oswald,sans-serif; }
.zbd-login input{ display:block; width:100%; box-sizing:border-box; margin:10px 0; padding:12px; border-radius:10px; border:1px solid var(--zbd-line); background:var(--zbd-bg); color:var(--zbd-fg); }
.zbd-login button{ width:100%; padding:12px; border:none; border-radius:10px; background:var(--zbd-gold); color:#241a08; font-weight:700; cursor:pointer; margin-top:6px; }
/* Timeline (Plan) */
.zbd-vswitch button{ font-size:13px; padding:8px 4px; }
.zbd-tl{ overflow:auto; max-height:70vh; position:relative; border:1px solid var(--zbd-line); border-radius:12px; -webkit-overflow-scrolling:touch; }
.zbd-tl-head{ position:sticky; top:0; z-index:5; display:flex; background:#15120e; border-bottom:1px solid var(--zbd-line); }
.zbd-tl-corner{ width:46px; flex:0 0 46px; }
.zbd-tl-hcell{ flex:0 0 auto; padding:8px 6px; font-family:Oswald,sans-serif; font-size:12px; color:var(--zbd-gold); text-align:center; border-left:1px solid var(--zbd-line); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.zbd-tl-body{ position:relative; }
.zbd-tl-gutter{ position:absolute; left:0; top:0; width:46px; height:100%; }
.zbd-tl-hr{ position:absolute; left:0; width:44px; text-align:right; padding-right:4px; font-size:11px; color:var(--zbd-mut); transform:translateY(-6px); }
.zbd-tl-col{ position:absolute; top:0; border-left:1px solid var(--zbd-line); }
.zbd-tl-line{ position:absolute; left:0; right:0; height:1px; background:var(--zbd-line); opacity:.5; }
.zbd-tl-block{ position:absolute; box-sizing:border-box; background:#2c261d; border:1px solid var(--zbd-line); border-left:3px solid var(--zbd-gold); border-radius:7px; padding:3px 6px; font-size:12px; color:var(--zbd-fg); overflow:hidden; cursor:grab; touch-action:none; user-select:none; }
.zbd-tl-block .zbd-tl-bt{ font-family:Oswald,sans-serif; color:var(--zbd-gold); font-size:12px; }
.zbd-tl-drag{ cursor:grabbing; opacity:.85; z-index:20; box-shadow:0 6px 18px rgba(0,0,0,.5); }
.zbd-tl-block.zbd-b-confirmed{ border-left-color:var(--zbd-green); }
.zbd-tl-block.zbd-b-checked_in{ border-left-color:#7fc7e0; }
.zbd-tl-block.zbd-b-in_progress{ border-left-color:#c79bf0; }
.zbd-tl-block.zbd-b-completed{ border-left-color:#8fb98f; opacity:.7; }
.zbd-tl-block.zbd-b-cancelled,.zbd-tl-block.zbd-b-no_show,.zbd-tl-block.zbd-b-expired{ border-left-color:var(--zbd-red); opacity:.55; text-decoration:line-through; }
/* Termin-Drawer: Zahlung, Verlauf, Kommentar */
.zbd-paymini{ margin-left:6px; font-size:13px; }
.zbd-pay{ display:flex; align-items:center; justify-content:space-between; gap:8px; margin-top:14px; padding-top:12px; border-top:1px solid var(--zbd-line); }
.zbd-pay>span{ color:var(--zbd-mut); font-size:13px; }
.zbd-payopts{ display:flex; gap:6px; }
.zbd-paybtn{ padding:7px 10px; border-radius:9px; border:1px solid var(--zbd-line); background:#2c261d; color:var(--zbd-fg); font-size:13px; font-weight:600; cursor:pointer; }
.zbd-paybtn.active{ background:var(--zbd-gold); color:#241a08; border-color:var(--zbd-gold); }
.zbd-hist{ margin-top:16px; }
.zbd-hist-h{ font-family:Oswald,sans-serif; text-transform:uppercase; letter-spacing:1px; font-size:12px; color:var(--zbd-mut); margin-bottom:6px; }
.zbd-hist-list{ display:flex; flex-direction:column; gap:6px; max-height:200px; overflow:auto; }
.zbd-hist-i{ background:var(--zbd-card); border:1px solid var(--zbd-line); border-left:3px solid var(--zbd-line); border-radius:8px; padding:7px 10px; }
.zbd-hist-i.zbd-hi-comment{ border-left-color:var(--zbd-gold); }
.zbd-hist-i.zbd-hi-reschedule{ border-left-color:#7fc7e0; }
.zbd-hist-i.zbd-hi-payment{ border-left-color:var(--zbd-green); }
.zbd-hist-m{ display:block; font-size:14px; }
.zbd-hist-meta{ display:block; color:var(--zbd-mut); font-size:11px; margin-top:2px; }
.zbd-commentbox{ margin-top:10px; }
.zbd-cnote{ width:100%; box-sizing:border-box; min-height:56px; padding:10px; border-radius:10px; border:1px solid var(--zbd-line); background:var(--zbd-bg); color:var(--zbd-fg); font-family:inherit; resize:vertical; }
/* Statistik-Periodenwähler */
.zbd-pbar{ display:flex; flex-wrap:wrap; gap:6px; }
.zbd-pbtn{ padding:7px 11px; border-radius:9px; border:1px solid var(--zbd-line); background:var(--zbd-card); color:var(--zbd-mut); font-size:13px; font-weight:600; cursor:pointer; }
.zbd-pbtn.active{ background:var(--zbd-gold); color:#241a08; border-color:var(--zbd-gold); }
.zbd-pcustom{ display:flex; align-items:center; gap:6px; margin-top:8px; }
.zbd-pcustom input{ flex:1; min-width:0; padding:8px; border-radius:9px; border:1px solid var(--zbd-line); background:var(--zbd-bg); color:var(--zbd-fg); }
.zbd-kpi{ background:var(--zbd-card); border:1px solid var(--zbd-line); border-radius:12px; padding:12px 14px; }
.zbd-kpi-h{ font-family:Oswald,sans-serif; text-transform:uppercase; letter-spacing:1px; font-size:12px; color:var(--zbd-mut); margin-bottom:8px; }
.zbd-kpi-r{ display:flex; justify-content:space-between; padding:5px 0; border-bottom:1px solid rgba(255,255,255,.04); font-size:14px; }
.zbd-kpi-r:last-child{ border-bottom:none; }
.zbd-kpi-r b{ color:var(--zbd-gold); }
/* SP19: Team-Bars + Activity-Feed */
.zbd-hbar{ display:flex; align-items:center; gap:8px; padding:4px 0; font-size:13px; }
.zbd-hbar-l{ flex:0 0 84px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; color:var(--zbd-mut); }
.zbd-hbar-t{ flex:1; height:10px; background:#2c261d; border-radius:6px; overflow:hidden; }
.zbd-hbar-f{ display:block; height:100%; background:var(--zbd-gold); }
.zbd-hbar-v{ flex:0 0 auto; color:var(--zbd-fg); font-weight:600; }
.zbd-act-i{ display:flex; align-items:baseline; gap:8px; padding:6px 0; border-bottom:1px solid rgba(255,255,255,.04); font-size:13px; }
.zbd-act-ic{ flex:0 0 auto; }
.zbd-act-ic.zbd-hi-comment{ color:var(--zbd-gold); } .zbd-act-ic.zbd-hi-reschedule{ color:#7fc7e0; } .zbd-act-ic.zbd-hi-payment{ color:var(--zbd-green); }
.zbd-act-m{ flex:1; }
.zbd-act-t{ flex:0 0 auto; color:var(--zbd-mut); font-size:11px; }
/* SP20: Services-Verwaltung */
.zbd-more-btn{ width:100%; text-align:left; font:inherit; cursor:pointer; }
.zbd-svc-list{ margin-top:10px; display:flex; flex-direction:column; gap:8px; }
.zbd-svc-row{ display:flex; align-items:center; justify-content:space-between; gap:8px; background:var(--zbd-card); border:1px solid var(--zbd-line); border-radius:10px; padding:10px 12px; }
.zbd-svc-info b{ display:block; } .zbd-svc-info span{ font-size:12px; color:var(--zbd-mut); }
.zbd-svc-act{ display:flex; gap:6px; flex:0 0 auto; }
.zbd-f-row{ display:flex; gap:10px; margin:8px 0; }
.zbd-f-row label,.zbd-f-lbl{ flex:1; display:flex; flex-direction:column; gap:4px; font-size:12px; color:var(--zbd-mut); }
.zbd-f-lbl{ margin:8px 0; }
.zbd-sheet input[type=color]{ width:100%; height:40px; padding:2px; border-radius:9px; border:1px solid var(--zbd-line); background:var(--zbd-bg); }
.zbd-hint{ font-size:12px; color:var(--zbd-mut); text-align:center; margin:8px 0 0; }
/* SP22: Kunden-Profil */
.zbd-kinfo{ cursor:pointer; }
.zbd-prof-h{ margin-bottom:12px; } .zbd-prof-h b{ font-family:Oswald,sans-serif; font-size:18px; } .zbd-prof-h span{ display:block; color:var(--zbd-mut); font-size:13px; }
.zbd-prof-stats{ display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-bottom:12px; }
/* SP23: Zahlung im Drawer */
.zbd-paydetail{ display:flex; gap:6px; margin-top:8px; align-items:center; }
.zbd-paydetail input{ padding:9px 10px; border-radius:9px; border:1px solid var(--zbd-line); background:var(--zbd-bg); color:var(--zbd-fg); min-width:0; }
.zbd-pamt{ flex:0 0 96px; } .zbd-pmethod{ flex:1; }
.zbd-paydetail .zbd-btn{ flex:0 0 auto; width:auto; min-width:44px; margin-top:0; }
/* SP24: Ticket-Prioritäten */
.zbd-tpr{ font-weight:700; }
.zbd-pr-urgent{ color:var(--zbd-red); } .zbd-pr-high{ color:var(--zbd-gold); } .zbd-pr-normal{ color:var(--zbd-mut); } .zbd-pr-low{ color:#8a8378; }
/* SP29: Politur — Light-Mode, Skeleton, Animation */
#zbd-app.zbd-light{ --zbd-bg:#faf7f1; --zbd-card:#ffffff; --zbd-line:#e6ddcd; --zbd-fg:#2a241b; --zbd-mut:#7a6f58; }
#zbd-app.zbd-light .zbd-top, #zbd-app.zbd-light .zbd-nav{ background:#fff; }
#zbd-app.zbd-light .zbd-badge, #zbd-app.zbd-light .zbd-btn, #zbd-app.zbd-light .zbd-paybtn, #zbd-app.zbd-light .zbd-pbtn, #zbd-app.zbd-light .zbd-tl-head, #zbd-app.zbd-light .zbd-tl-block, #zbd-app.zbd-light .zbd-paydetail input{ background:#f2ecdf; }
#zbd-app.zbd-light .zbd-btn.primary, #zbd-app.zbd-light .zbd-paybtn.active, #zbd-app.zbd-light .zbd-pbtn.active{ background:var(--zbd-gold); color:#241a08; }
.zbd-skel{ height:78px; border-radius:12px; margin-bottom:2px; background:linear-gradient(90deg,var(--zbd-card) 25%,rgba(255,255,255,.06) 37%,var(--zbd-card) 63%); background-size:400% 100%; animation:zbd-shimmer 1.3s ease infinite; }
@keyframes zbd-shimmer{ 0%{ background-position:100% 0; } 100%{ background-position:0 0; } }
.zbd-card,.zbd-tcard,.zbd-kcard,.zbd-stat{ animation:zbd-in .22s ease both; }
@keyframes zbd-in{ from{ opacity:0; transform:translateY(4px); } to{ opacity:1; transform:none; } }
@media (prefers-reduced-motion: reduce){ .zbd-skel,.zbd-card,.zbd-tcard,.zbd-kcard,.zbd-stat{ animation:none; } }
