.stat-row{display:grid; grid-template-columns:repeat(3,1fr); gap:16px;}
.stat-card{background:var(--panel); border:1px solid var(--line-soft); border-radius:14px; padding:20px;}
.stat-card b{display:block; font-family:var(--display); font-size:30px; color:var(--teal); line-height:1;}
.stat-card.gold b{color:var(--gold);}
.stat-card span{font-size:13px; color:var(--muted); margin-top:6px; display:block;}
.cp-banner{display:flex; align-items:center; gap:12px; padding:14px 18px; border-radius:12px; font-weight:500;}
.cp-banner.pending{background:rgba(231,180,74,.12); border:1px solid rgba(231,180,74,.4); color:var(--gold);}
.cp-banner.active{background:rgba(87,180,90,.12); border:1px solid rgba(87,180,90,.4); color:var(--green);}
.cp-banner a{margin-left:auto; color:var(--teal); font-size:14px;}
.booking{display:flex; align-items:center; gap:16px; background:var(--panel); border:1px solid var(--line-soft);
  border-radius:14px; padding:16px 18px; margin-bottom:12px;}
.booking .bk-av{width:44px; height:44px; border-radius:11px; background:var(--panel-2); border:1px solid var(--line);
  display:flex; align-items:center; justify-content:center; font-family:var(--display); font-weight:800; color:var(--teal); flex-shrink:0;}
.booking .bk-main{flex:1; min-width:0;}
.booking .bk-name{font-weight:600; font-size:15px;}
.booking .bk-when{font-size:13px; color:var(--muted); font-family:var(--mono); margin-top:2px;}
.booking .bk-amt{font-family:var(--mono); font-weight:700; color:var(--gold); flex-shrink:0;}
.cp-empty{text-align:center; padding:36px; border:1px dashed var(--line); border-radius:14px; color:var(--muted);}
@media(max-width:600px){ .stat-row{grid-template-columns:1fr;} .booking{flex-wrap:wrap;} }
