.fitfight-my-bookings{background:radial-gradient(circle at 16% 10%,#343a40 0,rgba(52,58,64,0) 46%),#212529;border-radius:16px;color:#f8f9fa;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;padding:16px;width:100%}.fitfight-my-bookings .text-muted{color:#ced4da!important}.fitfight-my-bookings .alert-info{background:rgba(13,110,253,.18);color:#cfe2ff}.bg-primary-soft{background-color:rgba(248,249,250,.12)!important}.bg-success-soft{background-color:rgba(22,163,74,.1)!important}.bg-warning-soft{background-color:rgba(245,158,11,.1)!important}.text-primary{color:#f8f9fa!important}.text-success{color:#16a34a!important}.text-warning{color:#f59e0b!important}.hover-lift:hover{box-shadow:0 10px 20px rgba(0,0,0,.05)!important;transform:translateY(-3px)}.ff-booking-thumb{flex:0 0 auto;height:48px;-o-object-fit:cover;object-fit:cover;width:48px}.ff-booking-thumb--placeholder{background:rgba(15,23,42,.05);color:#64748b}.ff-bookings-layout{display:flex;flex-direction:column;gap:16px}.ff-section{background:#2b3035;border:1px solid rgba(248,249,250,.12);border-radius:14px;box-shadow:0 8px 20px rgba(15,23,42,.24);padding:14px}.ff-section-header{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:10px}.ff-eyebrow{color:#ced4da;font-size:12px;letter-spacing:.18em;margin:0 0 2px;text-transform:uppercase}.ff-mobile-stack{display:flex;flex-direction:column;gap:12px;width:100%}.ff-mobile-stack>.ff-mobile-card{align-self:stretch;max-width:none!important;width:100%!important}.ff-mobile-card{background:#343a40;border:1px solid rgba(248,249,250,.12);border-radius:12px;box-shadow:0 10px 24px rgba(15,23,42,.25);padding:12px;width:100%}.ff-card-row{align-items:center;display:flex;gap:8px;justify-content:space-between}.ff-card-title{color:#f8f9fa;font-size:15px;font-weight:800;line-height:1.25}.ff-class-type{color:#f8f9fa;font-size:13px;font-weight:700}.ff-date-time{color:#ced4da;font-size:13px}.ff-row-sub{margin-top:6px}.ff-row-trainer{color:#ced4da;font-size:13px;gap:6px;line-height:1.25;margin-top:6px}.ff-row-footer{justify-content:flex-end;margin-top:6px}.ff-status-chip{border-radius:999px;font-size:12px;font-weight:700;padding:4px 8px;text-transform:capitalize}.ff-status-chip.is-confirmed{background:rgba(16,185,129,.12);color:#8be4c2}.ff-status-chip.is-pending{background:rgba(245,158,11,.2);color:#ffe08a}.ff-cancel-btn{background:transparent;border:1px solid hsla(0,91%,71%,.6);border-radius:999px;color:#dc2626;cursor:pointer;font-size:12px;font-weight:700;padding:6px 12px;transition:all .15s ease}.ff-cancel-btn:hover{background:hsla(0,91%,71%,.08)}.ff-empty{background:#343a40;border:1px dashed rgba(248,249,250,.2);border-radius:12px;color:#ced4da;display:grid;gap:6px;padding:14px;place-items:center;text-align:center}.ff-empty--soft{background:#2b3035}.ff-history-list{display:flex;flex-direction:column;gap:8px;list-style:none;margin:0;padding:0}.ff-history-item{align-items:center;background:#343a40;border:1px solid rgba(248,249,250,.12);border-radius:10px;display:flex;gap:8px;justify-content:space-between;padding:10px}.ff-history-title{font-size:15px;font-weight:700;margin:0}.ff-history-meta{color:#ced4da;font-size:13px}.ff-history-status{color:#e9ecef;font-size:12px;font-weight:700}@media (max-width:768px){.fitfight-my-bookings{padding:12px}.ff-history-item{align-items:flex-start;flex-direction:column}}
