.rbp-user-dashboard{max-width:800px;margin:0 auto;padding:20px}.rbp-booking-item{margin-bottom:20px;border:1px solid #ddd;border-radius:4px;padding:15px;background-color:#f9f9f9}.rbp-booking-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;padding-bottom:10px;border-bottom:1px solid #eee}.rbp-booking-header h3{margin:0;font-size:18px}.rbp-booking-status{padding:4px 8px;border-radius:3px;font-size:14px;font-weight:700}.rbp-status-pending{background-color:#f8d7da;color:#721c24}.rbp-status-accepted{background-color:#d4edda;color:#155724}.rbp-status-completed{background-color:#d1ecf1;color:#0c5460}.rbp-status-cancelled{background-color:#f8f9fa;color:#6c757d}.rbp-booking-details{margin-bottom:15px}.rbp-booking-detail{margin-bottom:5px}.rbp-detail-label{font-weight:700;margin-right:5px}.rbp-booking-actions{text-align:right}.rbp-rebook-button{display:inline-block;padding:8px 16px;background-color:#3498db;color:#fff;text-decoration:none;border-radius:4px;font-weight:700}.rbp-rebook-button:hover{background-color:#2980b9;text-decoration:none;color:#fff}.rbp-login-required{padding:20px;background-color:#f8f9fa;border:1px solid #ddd;border-radius:4px;text-align:center}.rbp-account-option{margin-top:20px;padding-top:20px;border-top:1px solid #eee}.rbp-login-success{color:#155724;background-color:#d4edda;padding:10px;border-radius:4px;margin-top:10px}.rbp-logged-in-message{margin-top:20px}.rbp-notice-info{background-color:#e7f5ff;border-left:4px solid #3498db;padding:15px;border-radius:4px}.rbp-notice-info p{margin:0;color:#0c5460}.rbp-user-dashboard{margin:20px 0}.rbp-booking-item{border:1px solid #ddd;border-radius:4px;margin-bottom:20px;padding:15px;background-color:#f9f9f9}.rbp-booking-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;border-bottom:1px solid #eee;padding-bottom:10px}.rbp-booking-details{margin-bottom:15px}.rbp-booking-detail{margin-bottom:5px}.rbp-detail-label{font-weight:700;margin-right:5px}.rbp-booking-actions{margin-top:15px;display:flex;gap:10px;flex-wrap:wrap}.rbp-rebook-button{display:inline-block;background-color:#3498db;color:white!important;padding:8px 15px;border-radius:4px;text-decoration:none!important;font-weight:700;cursor:pointer;transition:background-color 0.3s}.rbp-rebook-button:hover{background-color:#2980b9;text-decoration:none}.rbp-download-receipt{display:inline-block;background-color:#27ae60;color:white!important;padding:8px 15px;border-radius:4px;text-decoration:none!important;font-weight:700;cursor:pointer;transition:background-color 0.3s;margin-right:5px;margin-bottom:5px}.rbp-download-receipt:hover,.rbp-view-receipt:hover{background-color:#219653;text-decoration:none}.rbp-view-receipt{display:inline-block;background-color:#27ae60;color:white!important;padding:8px 15px;border-radius:4px;text-decoration:none!important;font-weight:700;cursor:pointer;transition:background-color 0.3s;margin-right:5px;margin-bottom:5px}.rbp-receipt-modal{display:none;position:fixed;z-index:99999;left:0;top:0;width:100%;height:100%;overflow:auto;background-color:rgba(0,0,0,.8)}.rbp-receipt-modal-content{background-color:#fff;margin:2% auto;padding:30px;border:2px solid #333;width:90%;max-width:900px;position:relative;max-height:90vh;overflow-y:auto;box-shadow:0 4px 20px rgba(0,0,0,.5);border-radius:8px}.rbp-receipt-modal-close{color:#333;float:right;font-size:32px;font-weight:700;cursor:pointer;position:absolute;right:15px;top:10px;z-index:1;background-color:#f0f0f0;width:40px;height:40px;line-height:40px;text-align:center;border-radius:50%}.rbp-receipt-modal-close:hover,.rbp-receipt-modal-close:focus{color:#000;text-decoration:none;cursor:pointer}#rbp-receipt-content .receipt{border:none;padding:10px;margin-top:20px}#rbp-receipt-content .no-print{display:flex;justify-content:center;margin-bottom:20px}#rbp-receipt-content .back-button{display:none}.rbp-direct-link{color:#666;text-decoration:none}.rbp-direct-link:hover{text-decoration:underline}.rbp-status-pending{background-color:#ffeeba;color:#856404;padding:3px 8px;border-radius:3px;font-size:.9em}.rbp-status-confirmed{background-color:#d4edda;color:#155724;padding:3px 8px;border-radius:3px;font-size:.9em}.rbp-status-completed{background-color:#c3e6cb;color:#155724;padding:3px 8px;border-radius:3px;font-size:.9em}.rbp-status-cancelled{background-color:#f8d7da;color:#721c24;padding:3px 8px;border-radius:3px;font-size:.9em}.rbp-discount-container{margin:15px 0;padding:15px;background-color:#f9f9f9}.rbp-discount-container h4{margin-top:0;margin-bottom:10px;font-size:16px;font-weight:600;display:flex;align-items:center}.rbp-discount-input-group{display:flex;gap:10px;margin-bottom:5px}.rbp-discount-input-group .rbp-input{flex:1}.rbp-input[type="time"]{flex:none!important;min-width:150px!important;width:auto!important}.rbp-discount-input-group .rbp-button{min-width:80px}.rbp-discount-message{margin-top:5px;font-size:14px;min-height:20px}.rbp-error-message{color:#e74c3c;font-weight:500}.rbp-success-message{color:#2ecc71;font-weight:500}.rbp-loading-message{color:#3498db;font-style:italic}.rbp-discount-row{border-top:1px dashed #ddd;padding:10px;margin-top:10px;font-weight:500;background-color:#f0f7fa;border-radius:4px}.rbp-discount-amount{color:#2ecc71;font-weight:700}.rbp-theme-modern .rbp-discount-container{background-color:#f8f9fa;border-radius:12px;border:none;box-shadow:0 2px 10px rgba(0,0,0,.05)}.rbp-theme-modern .rbp-discount-input-group .rbp-button{border-radius:30px}.rbp-theme-premium .rbp-discount-container{background-color:#fff;border-radius:0;border:2px solid #e0e0e0;padding:20px}.rbp-theme-premium .rbp-discount-input-group .rbp-button{border-radius:0;text-transform:uppercase;font-weight:600;letter-spacing:1px}.rbp-summary-discount .rbp-summary-value{font-weight:700;color:#2ecc71}@keyframes fadeInOut{0%{opacity:0}20%{opacity:1}80%{opacity:1}100%{opacity:0}}.rbp-success-message{animation:fadeInOut 3s ease-in-out}.rbp-notice{padding:15px;margin:15px 0;border-radius:4px;text-align:center}.rbp-notice-warning{background-color:#fff3cd;color:#856404;border:1px solid #ffeeba}.rbp-notice-error{background-color:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.rbp-notice-success{background-color:#d4edda;color:#155724;border:1px solid #c3e6cb}.rbp-notice-info{background-color:#d1ecf1;color:#0c5460;border:1px solid #bee5eb}:root{--rbp-primary-color:#3498db}.rbp-user-dashboard{max-width:1200px;margin:0 auto;padding:20px;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif}.rbp-user-dashboard h2{margin-bottom:20px;color:#333;font-size:28px}.rbp-user-info{background-color:#f8f9fa;padding:15px 20px;border-radius:8px;margin-bottom:30px;box-shadow:0 1px 3px rgba(0,0,0,.1)}.rbp-bookings-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:25px;margin-top:25px}.rbp-booking-item{background-color:#fff;border-radius:8px;box-shadow:0 2px 8px rgba(0,0,0,.1);overflow:hidden;transition:transform 0.3s,box-shadow 0.3s;height:450px;display:flex;flex-direction:column}.rbp-booking-item:hover{transform:translateY(-5px);box-shadow:0 5px 15px rgba(0,0,0,.15)}.rbp-booking-header{padding:15px 20px;background-color:#f8f9fa;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #ececec}.rbp-booking-header h3{margin:0;font-size:18px;font-weight:600;color:#333}.rbp-booking-status{padding:5px 12px;border-radius:20px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.rbp-status-pending{background-color:#fff7e6;color:#b45309}.rbp-status-confirmed{background-color:#e7f5ff;color:#0369a1}.rbp-status-completed{background-color:#f0fff4;color:#166534}.rbp-status-cancelled{background-color:#fef2f2;color:#b91c1c}.rbp-booking-details{padding:20px;flex:1;overflow-y:auto}.rbp-booking-detail{margin-bottom:15px}.rbp-detail-label{font-weight:600;color:#555;margin-bottom:4px;display:block;font-size:14px}.rbp-detail-value{display:block;color:#333;line-height:1.5;font-size:15px}.rbp-booking-actions{padding:15px 20px;border-top:1px solid #ececec;display:flex;justify-content:space-between;background-color:#fff;margin-top:auto}.rbp-rebook-button,.rbp-view-receipt{padding:10px 18px;background-color:var(--rbp-primary-color,#3498db);color:#fff;border:none;border-radius:4px;cursor:pointer;text-decoration:none;font-weight:600;font-size:14px;display:inline-block;transition:background-color 0.3s,transform 0.2s;text-align:center;min-width:100px}.rbp-rebook-button:hover,.rbp-view-receipt:hover{background-color:#2980b9;transform:translateY(-2px)}.rbp-no-bookings{text-align:center;padding:50px 20px;background-color:#f8f9fa;border-radius:8px;margin-top:30px;box-shadow:0 1px 3px rgba(0,0,0,.1)}.rbp-no-bookings p{font-size:18px;color:#666}.rbp-theme-modern .rbp-booking-item{border-radius:16px;box-shadow:0 8px 20px rgba(0,0,0,.08)}.rbp-theme-modern .rbp-rebook-button,.rbp-theme-modern .rbp-view-receipt{border-radius:30px}.rbp-theme-premium .rbp-booking-item{border-radius:0;border:1px solid #ddd;box-shadow:none}.rbp-theme-premium .rbp-rebook-button,.rbp-theme-premium .rbp-view-receipt{border-radius:0;text-transform:uppercase;letter-spacing:1px}@media screen and (max-width:1100px){.rbp-bookings-list{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.rbp-booking-item{height:420px}}@media screen and (max-width:768px){.rbp-bookings-list{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:15px}.rbp-booking-item{height:400px}.rbp-booking-actions{flex-direction:column;gap:10px}.rbp-rebook-button,.rbp-view-receipt{width:100%}}@media screen and (max-width:480px){.rbp-bookings-list{grid-template-columns:1fr}.rbp-booking-item{height:auto;min-height:380px}}