@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700&display=swap";:root{--primary-color:#d1bfae;--secondary-color:#8c7a6b;--accent-color:#4a3f35;--bg-color:#fcfbf9;--text-color:#2b2b2b;--glass-bg:#fff6;--glass-border:#ffffff2e;--glass-shadow:0 8px 32px 0 #1f268712}*{box-sizing:border-box;margin:0;padding:0;font-family:Outfit,sans-serif}body{background-color:var(--bg-color);color:var(--text-color);background-image:radial-gradient(circle at 15%,#d1bfae26,#0000 25%),radial-gradient(circle at 85% 30%,#8c7a6b1a,#0000 25%);background-attachment:fixed;min-height:100vh}.glass-panel{background:var(--glass-bg);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);border-radius:24px}.btn{background-color:var(--accent-color);color:#fff;cursor:pointer;border:none;border-radius:50px;padding:12px 28px;font-size:1rem;font-weight:500;transition:all .3s;box-shadow:0 4px 15px #4a3f3533}.btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #4a3f354d}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.home-container{flex-direction:column;align-items:center;padding:40px 20px;display:flex}.hero{text-align:center;margin-bottom:40px;animation:.8s ease-out fadeInDown}.title{letter-spacing:-1px;color:var(--accent-color);margin-bottom:10px;font-size:4rem;font-weight:700}.subtitle{font-size:1.2rem;font-weight:300}.booking-widget{width:100%;max-width:600px;padding:40px;animation:.8s ease-out slideUp}.step-content h2{text-align:center;margin-bottom:24px;font-weight:600}.services-grid{grid-template-columns:1fr;gap:16px;margin-bottom:30px;display:grid}.service-card{cursor:pointer;background:#ffffff80;border:1px solid #0000;border-radius:16px;padding:20px;transition:all .3s}.service-card:hover{background:#fffc;transform:translateY(-2px)}.service-card.selected{border-color:var(--secondary-color);background:#fff;box-shadow:0 4px 15px #8c7a6b33}.service-img{object-fit:cover;border-radius:12px;width:100%;height:150px;margin-bottom:12px}.summary-box{text-align:center;background:#ffffff80;border-radius:12px;margin-bottom:20px;padding:15px}.price{color:var(--accent-color);margin-top:8px;font-weight:700}.date-input{border:1px solid #0000001a;border-radius:12px;outline:none;width:100%;margin-bottom:24px;padding:14px;font-size:1rem}.slots-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:12px;margin-bottom:30px;display:grid}.slot-btn{cursor:pointer;background:#fff;border:1px solid #0000001a;border-radius:12px;padding:12px;transition:all .2s}.slot-btn:hover{border-color:var(--secondary-color)}.slot-btn.selected{background:var(--accent-color);color:#fff;border-color:var(--accent-color)}.details-form{flex-direction:column;gap:16px;display:flex}.details-form input[type=text],.details-form input[type=tel]{border:1px solid #0000001a;border-radius:12px;outline:none;padding:14px;font-size:1rem}.upload-box{border:1px dashed var(--secondary-color);background:#ffffff80;border-radius:12px;padding:20px}.actions{justify-content:space-between;margin-top:20px;display:flex}.back-btn{color:var(--text-color);border:1px solid var(--text-color);box-shadow:none;background-color:#0000}.success{text-align:center}.success p{margin-bottom:24px}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.custom-calendar{background:#fff;border-radius:12px;margin-bottom:24px;padding:20px;box-shadow:0 4px 15px #0000000d}.calendar-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.calendar-header h3{text-transform:capitalize;margin:0;font-size:1.1rem;font-weight:600}.calendar-header button{cursor:pointer;background:#fff;border:1px solid #ddd;border-radius:50%;justify-content:center;align-items:center;width:30px;height:30px;font-weight:700;transition:all .2s;display:flex}.calendar-header button:hover{background:var(--bg-color);border-color:var(--secondary-color)}.calendar-weekdays{text-align:center;color:#888;grid-template-columns:repeat(7,1fr);margin-bottom:10px;font-size:.9rem;font-weight:600;display:grid}.calendar-days{grid-template-columns:repeat(7,1fr);gap:5px;display:grid}.calendar-day{aspect-ratio:1;cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;font-size:1rem;transition:all .2s;display:flex}.calendar-day:not(.empty):not(.past):hover{background:var(--bg-color)}.calendar-day.empty{visibility:hidden}.calendar-day.past{color:#ddd;cursor:not-allowed;text-decoration:line-through}.calendar-day.selected{background:var(--accent-color);color:#fff;font-weight:700}.animation-slide-up{animation:.4s ease-out slideUp}.admin-container{min-height:100vh;padding:40px}.login-bg{justify-content:center;align-items:center;display:flex}.login-box{text-align:center;width:100%;max-width:400px;padding:40px}.login-box h2{margin-bottom:24px}.admin-form{flex-direction:column;gap:16px;display:flex}.admin-form input{border:1px solid #0000001a;border-radius:12px;outline:none;padding:14px;font-size:1rem}.error-msg{color:#ff4d4f;margin-bottom:16px}.admin-header{justify-content:space-between;align-items:center;margin-bottom:30px;padding:20px 40px;display:flex}.admin-section{padding:30px}.appointments-list{flex-direction:column;gap:16px;margin-top:20px;display:flex}.appointment-card{border-left:6px solid var(--secondary-color);background:#fff;border-radius:12px;justify-content:space-between;align-items:center;padding:20px;display:flex;box-shadow:0 4px 10px #0000000d}.appt-info{line-height:1.6}.appt-date{color:var(--accent-color);font-weight:500}.status-badge{text-transform:uppercase;border-radius:8px;margin-left:8px;padding:4px 8px;font-size:.85rem;font-weight:700}.status-badge.pending{color:#fa8c16;background:#ffe58f}.status-badge.confirmed{color:#13c2c2;background:#b5f5ec}.status-badge.cancelled{color:#f5222d;background:#ffa39e}.appt-actions{align-items:center;gap:10px;display:flex}.btn-link{color:var(--secondary-color);cursor:pointer;margin-right:15px;text-decoration:underline}.action-btn{cursor:pointer;border:none;border-radius:8px;padding:8px 16px;font-weight:600;transition:opacity .2s}.action-btn:hover{opacity:.8}.action-btn.confirm{color:#fff;background:#13c2c2}.action-btn.cancel{color:#fff;background:#f5222d}@media (width<=768px){.admin-container{padding:15px}.admin-header{text-align:center;flex-direction:column;gap:15px;padding:20px}.admin-header div{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.admin-header button{margin:0!important}.admin-section{padding:15px}.appointment-card{flex-direction:column;align-items:flex-start;gap:15px}.appt-actions{flex-wrap:wrap;width:100%}.admin-form div{flex-direction:column}.services-grid{grid-template-columns:1fr!important}}
