.pb-dash__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:35px;flex-wrap:wrap;gap:15px}.pb-dash__heading{font-family:"Playfair Display",serif;font-size:2rem;font-weight:700;color:#2c3e50;margin:0}.pb-dash__sub{font-size:.85rem;color:#888;margin:5px 0 0}.pb-dash__logout{font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:1px;color:#e74c3c;text-decoration:none;padding:8px 20px;border:2px solid #e74c3c;border-radius:8px;transition:all .3s}.pb-dash__logout:hover{background:#e74c3c;color:#fff}.pb-dash__stats{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:40px}.pb-dash__stat{background:#fff;border-radius:14px;padding:25px 20px;text-align:center;box-shadow:0 4px 20px rgba(0,0,0,.06);border:1px solid #f0f0f0}.pb-dash__stat-num{display:block;font-family:"Playfair Display",serif;font-size:2.2rem;font-weight:700;color:#c5a048}.pb-dash__stat-label{font-size:.78rem;font-weight:600;color:#888;text-transform:uppercase;letter-spacing:.5px;margin-top:5px;display:block}.pb-dash__section-title{font-family:"Playfair Display",serif;font-size:1.4rem;font-weight:700;color:#2c3e50;margin:0 0 20px}.pb-dash__bookings{display:flex;flex-direction:column;gap:20px}.pb-dash__booking{background:#fff;border-radius:14px;box-shadow:0 4px 20px rgba(0,0,0,.06);border:1px solid #f0f0f0;overflow:hidden}.pb-dash__booking-header{display:flex;justify-content:space-between;align-items:center;padding:18px 25px;background:#fafafa;border-bottom:1px solid #f0f0f0}.pb-dash__booking-ref{font-size:.9rem;font-weight:700;color:#2c3e50;font-family:monospace}.pb-dash__booking-status{display:inline-block;padding:4px 14px;border-radius:20px;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:1px}.pb-dash__booking-status--confirmed{background:#d4edda;color:#155724}.pb-dash__booking-status--pending{background:#fff3cd;color:#856404}.pb-dash__booking-status--completed{background:#e8e8e8;color:#555}.pb-dash__booking-status--cancelled{background:#f8d7da;color:#721c24}.pb-dash__booking-body{padding:20px 25px}.pb-dash__booking-row{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid #f8f8f8;font-size:.85rem}.pb-dash__booking-row:last-child{border-bottom:none}.pb-dash__booking-key{color:#888;font-weight:500}.pb-dash__booking-val{color:#2c3e50;font-weight:600;text-align:right}.pb-dash__booking-val--balance-due{color:#e74c3c}.pb-dash__booking-val--balance-paid{color:#27ae60}.pb-dash__booking-footer{display:flex;justify-content:space-between;align-items:center;padding:12px 25px;background:#fafafa;border-top:1px solid #f0f0f0}.pb-dash__booking-created{font-size:.75rem;color:#aaa}.pb-dash__booking-download{display:inline-flex;align-items:center;gap:6px;padding:6px 16px;background:#c5a048;color:#fff;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;border:none;border-radius:6px;cursor:pointer;text-decoration:none;transition:all .3s}.pb-dash__booking-download:hover{background:#b08a30;transform:translateY(-1px);color:#fff}.pb-dash__booking-download svg{width:14px;height:14px}.pb-dash__empty{text-align:center;padding:60px 20px;background:#fff;border-radius:14px;box-shadow:0 4px 20px rgba(0,0,0,.06)}.pb-dash__empty svg{color:#ddd;margin-bottom:15px}.pb-dash__empty h4{font-family:"Playfair Display",serif;font-size:1.3rem;color:#2c3e50;margin:0 0 8px}.pb-dash__empty p{font-size:.85rem;color:#888;margin:0 0 20px}.pb-dash__empty-btn{display:inline-block;padding:12px 28px;background:#c5a048;color:#fff;font-weight:600;font-size:.82rem;text-transform:uppercase;letter-spacing:1px;border-radius:8px;text-decoration:none;transition:all .3s}.pb-dash__empty-btn:hover{background:#b08a30;transform:translateY(-2px)}@media print{.pb-dash__print-receipt,.pb-dash__print-receipt *{visibility:visible!important}.pb-dash__print-receipt{position:absolute;left:0;top:0;width:100%;padding:40px}}@media (max-width:768px){.pb-dash__stats{grid-template-columns:1fr}.pb-dash__booking-body{padding:15px 18px}.pb-dash__booking-header{padding:14px 18px}.pb-dash__booking-footer{padding:10px 18px;flex-direction:column;gap:8px;align-items:flex-start}}@media (max-width:600px){.pb-dash__heading{font-size:1.5rem}.pb-dash__stat{padding:18px 15px}}