@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";:root{--primary: #cba876;--primary-hover: #b3915f;--bg-dark: #0f1014;--bg-card: #1a1c23;--text-main: #f8fafc;--text-muted: #94a3b8;--border: rgba(255, 255, 255, .08);--glass-bg: rgba(26, 28, 35, .7);--glass-border: rgba(203, 168, 118, .15);--radius-lg: 20px;--radius-md: 12px;--radius-sm: 8px;--shadow-glow: 0 8px 32px rgba(203, 168, 118, .1)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Inter,sans-serif;background-color:var(--bg-dark);color:var(--text-main);line-height:1.6;-webkit-font-smoothing:antialiased}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .4s ease-out forwards}.app-container{max-width:1200px;margin:0 auto;padding:0 20px;min-height:100vh;display:flex;flex-direction:column}.main-content{flex:1;padding:40px 0}.navbar{display:flex;justify-content:space-between;align-items:center;padding:24px 0;border-bottom:1px solid var(--border)}.logo{font-size:1.5rem;font-weight:700;color:var(--primary);cursor:pointer;letter-spacing:-.5px}.nav-links{display:flex;gap:16px}.nav-btn{background:transparent;border:none;color:var(--text-muted);font-size:1rem;font-weight:500;cursor:pointer;padding:8px 16px;border-radius:var(--radius-sm);transition:all .2s}.nav-btn:hover{color:var(--text-main);background:#ffffff0d}.nav-btn.active{color:var(--primary);background:#cba8761a}.header-section{text-align:center;margin-bottom:48px}.view-title{font-size:2.5rem;font-weight:700;margin-bottom:12px;letter-spacing:-1px}.view-subtitle{color:var(--text-muted);font-size:1.1rem;max-width:500px;margin:0 auto}.icon{width:16px;height:16px;display:inline-block;vertical-align:middle;margin-right:4px}.salon-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:32px}.salon-card{background:var(--bg-card);border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--border);transition:all .3s ease;cursor:pointer}.salon-card:hover{transform:translateY(-5px);border-color:var(--glass-border);box-shadow:var(--shadow-glow)}.salon-image-wrapper{position:relative;height:220px}.salon-image{width:100%;height:100%;object-fit:cover}.salon-rating{position:absolute;top:16px;right:16px;background:#0009;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:6px 12px;border-radius:20px;font-weight:600;font-size:.9rem;display:flex;align-items:center;gap:4px}.star{color:var(--primary)}.reviews{color:#ccc;font-size:.8rem;font-weight:400}.salon-info{padding:24px}.salon-name{font-size:1.25rem;margin-bottom:8px}.salon-location{color:var(--text-muted);font-size:.9rem;margin-bottom:16px;display:flex;align-items:center}.salon-desc{font-size:.95rem;color:#bdc3c7;margin-bottom:24px;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.salon-card-footer{display:flex;justify-content:space-between;align-items:center;padding-top:16px;border-top:1px solid var(--border)}.service-count{font-size:.85rem;color:var(--text-muted);background:#ffffff0d;padding:4px 10px;border-radius:var(--radius-sm)}.book-btn-text{color:var(--primary);font-weight:600;font-size:.9rem}.back-btn{background:none;border:none;color:var(--text-muted);font-size:1rem;cursor:pointer;display:flex;align-items:center;gap:8px;margin-bottom:24px;transition:color .2s}.back-btn:hover{color:var(--text-main)}.back-btn svg{width:20px;height:20px}.salon-detail-header{height:350px;border-radius:var(--radius-lg);background-size:cover;background-position:center;position:relative;overflow:hidden;margin-bottom:40px}.header-overlay{position:absolute;inset:0;background:linear-gradient(to top,#0f1014,#0f101466,#0f10141a);display:flex;flex-direction:column;justify-content:flex-end;padding:40px}.header-content h2{font-size:3rem;margin-bottom:8px}.detail-location{font-size:1.1rem;color:#ccc;margin-bottom:12px}.detail-rating{font-size:1.1rem;font-weight:600}.salon-detail-body{display:grid;grid-template-columns:1fr 380px;gap:40px}@media(max-width:900px){.salon-detail-body{grid-template-columns:1fr}}.services-section h3{font-size:1.5rem;margin-bottom:24px}.services-list{display:flex;flex-direction:column;gap:16px}.service-item{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);padding:20px;display:flex;justify-content:space-between;align-items:center;cursor:pointer;transition:all .2s}.service-item:hover{border-color:#fff3}.service-item.selected{border-color:var(--primary);background:#cba8760d}.service-info h4{font-size:1.1rem;margin-bottom:4px}.service-duration{font-size:.85rem;color:var(--text-muted)}.service-price{font-size:1.2rem;font-weight:600;color:var(--primary)}.glass-panel{background:var(--glass-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--glass-border);border-radius:var(--radius-lg);padding:32px}.booking-form{position:sticky;top:40px}.booking-form h3{font-size:1.5rem;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--border)}.form-group{margin-bottom:24px}.form-group label{display:block;font-size:.9rem;color:var(--text-muted);margin-bottom:8px}input[type=date]{width:100%;background:#ffffff0d;border:1px solid var(--border);color:var(--text-main);padding:12px 16px;border-radius:var(--radius-sm);font-family:inherit;font-size:1rem;outline:none;transition:border .2s;color-scheme:dark}input[type=date]:focus{border-color:var(--primary)}.time-slots{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.time-slot{background:#ffffff0d;border:1px solid var(--border);padding:10px 0;text-align:center;border-radius:var(--radius-sm);font-size:.9rem;cursor:pointer;transition:all .2s}.time-slot:hover{background:#ffffff1a}.time-slot.selected{background:var(--primary);color:var(--bg-dark);border-color:var(--primary);font-weight:600}.booking-summary{background:#0000004d;padding:20px;border-radius:var(--radius-sm);margin:32px 0 24px}.booking-summary p{display:flex;justify-content:space-between;margin-bottom:8px}.booking-summary p:last-child{margin-bottom:0;padding-top:8px;margin-top:8px;border-top:1px dashed rgba(255,255,255,.1);font-size:1.1rem;color:var(--primary)}.placeholder-text{color:var(--text-muted);text-align:center;font-style:italic;display:block!important}.btn-primary{width:100%;background:var(--primary);color:var(--bg-dark);border:none;padding:16px;border-radius:var(--radius-sm);font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s}.btn-primary:hover:not(:disabled){background:var(--primary-hover)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.empty-state{text-align:center;padding:64px 20px;max-width:500px;margin:0 auto}.empty-icon{font-size:4rem;margin-bottom:24px;opacity:.5}.empty-subtext{color:var(--text-muted);margin-top:8px}.bookings-list{display:flex;flex-direction:column;gap:24px;max-width:800px;margin:0 auto}.booking-card{padding:24px;transition:transform .3s ease}.booking-card:hover{transform:translateY(-2px);border-color:var(--glass-border)}.booking-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid var(--border)}.booking-salon-name{font-size:1.3rem;margin-bottom:4px}.booking-salon-location{color:var(--text-muted);font-size:.9rem;display:flex;align-items:center}.booking-status{background:#2ecc7126;color:#2ecc71;padding:6px 12px;border-radius:20px;font-size:.85rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.booking-body{display:flex;gap:24px}@media(max-width:600px){.booking-body{flex-direction:column}}.salon-thumbnail-wrapper{width:140px;height:100px;border-radius:var(--radius-md);overflow:hidden;flex-shrink:0}.salon-thumbnail{width:100%;height:100%;object-fit:cover}.booking-details{flex:1;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px}.booking-detail-item{display:flex;flex-direction:column;gap:6px}.detail-label{font-size:.85rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.detail-value{font-size:1.05rem;font-weight:500}.price-text{color:var(--primary);font-weight:600;font-size:1.1rem}.admin-toggle-btn{border-left:1px solid var(--border);border-radius:0;padding-left:20px;margin-left:4px}.admin-dashboard{max-width:1000px;margin:0 auto}.admin-table-wrapper{overflow-x:auto;padding:0}.admin-table{width:100%;border-collapse:collapse;text-align:left}.admin-table th{padding:20px 24px;font-size:.85rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border);background:#0003}.admin-table td{padding:20px 24px;vertical-align:middle;border-bottom:1px solid var(--border)}.admin-table tr:last-child td{border-bottom:none}.admin-table tr:hover{background:#ffffff05}.admin-cell-main{font-weight:500;font-size:1.05rem;margin-bottom:4px}.admin-cell-sub{font-size:.85rem;color:var(--text-muted)}.status-badge{display:inline-block;padding:6px 14px;border-radius:20px;font-size:.85rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.status-pending{background:#f1c40f26;color:#f1c40f;border:1px solid rgba(241,196,15,.3)}.status-accepted{background:#2ecc7126;color:#2ecc71;border:1px solid rgba(46,204,113,.3)}.status-rejected{background:#e74c3c26;color:#e74c3c;border:1px solid rgba(231,76,60,.3)}.admin-actions{display:flex;gap:8px}.btn-action{border:none;padding:8px 16px;border-radius:var(--radius-sm);font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-accept{background:#2ecc7126;color:#2ecc71}.btn-accept:hover{background:#2ecc71;color:#0f1014}.btn-reject{background:#e74c3c26;color:#e74c3c}.btn-reject:hover{background:#e74c3c;color:#0f1014}.action-completed-text{font-size:.9rem;color:var(--text-muted);font-style:italic}.admin-login-view{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh}.login-container{width:100%;max-width:400px}.login-form{padding:40px}.login-icon{font-size:3rem;text-align:center;margin-bottom:24px}.login-input{width:100%;background:#ffffff0d;border:1px solid var(--border);color:var(--text-main);padding:14px 16px;border-radius:var(--radius-sm);font-size:1rem;transition:all .2s}.login-input:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 2px #cba87633}.login-error{color:#e74c3c;background:#e74c3c1a;padding:12px;border-radius:var(--radius-sm);font-size:.9rem;margin-bottom:20px;border:1px solid rgba(231,76,60,.2)}.login-hint{text-align:center;margin-top:24px;font-size:.85rem;color:var(--text-muted)}.admin-register-view{display:flex;flex-direction:column;align-items:center;padding:20px 0}.register-container{width:100%;max-width:800px}.register-form{padding:40px}.form-section{margin-bottom:40px;padding-bottom:24px;border-bottom:1px solid var(--border)}.form-section h3{font-size:1.3rem;color:var(--primary);margin-bottom:8px}.form-help-text{font-size:.9rem;color:var(--text-muted);margin-bottom:20px}.register-input{width:100%;background:#ffffff0d;border:1px solid var(--border);color:var(--text-main);padding:12px 16px;border-radius:var(--radius-sm);font-size:.95rem;font-family:inherit;transition:all .2s;outline:none}.register-input:focus{border-color:var(--primary)}select.register-input option,select.login-input option{background-color:var(--bg-card);color:var(--text-main)}textarea.register-input{resize:vertical}.coordinate-inputs{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:20px}.location-btn{width:100%;background:#2ecc711a;color:#2ecc71;border:1px solid rgba(46,204,113,.3);padding:12px;border-radius:var(--radius-sm);font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s}.location-btn:hover{background:#2ecc7133}.location-status{font-size:.85rem;margin-top:8px;color:var(--primary);text-align:center}.services-builder{display:flex;flex-direction:column;gap:12px}.service-row{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:12px;align-items:center}.service-row input{background:#ffffff0d;border:1px solid var(--border);color:var(--text-main);padding:10px;border-radius:var(--radius-sm);outline:none}.service-row input:focus{border-color:var(--primary)}.btn-remove-service{background:#e74c3c1a;color:#e74c3c;border:none;width:36px;height:36px;border-radius:var(--radius-sm);cursor:pointer;transition:all .2s}.btn-remove-service:hover{background:#e74c3c;color:#fff}.btn-add-service{background:transparent;color:var(--primary);border:1px dashed var(--primary);padding:12px;border-radius:var(--radius-sm);cursor:pointer;margin-top:8px;transition:all .2s}.btn-add-service:hover{background:#cba8761a}.form-actions{display:flex;flex-direction:column;gap:16px;margin-top:32px}.btn-text{background:transparent;border:none;color:var(--text-muted);cursor:pointer;font-weight:500}.btn-text:hover{color:var(--text-main)}.location-prompt{margin-top:24px;min-height:40px}.btn-location-small{background:#3498db1a;color:#3498db;border:1px solid rgba(52,152,219,.3);padding:8px 16px;border-radius:20px;font-size:.9rem;cursor:pointer;transition:all .2s}.btn-location-small:hover{background:#3498db33}.location-status-text{font-size:.9rem;color:var(--text-muted)}.location-success-text{font-size:.9rem;color:#2ecc71}.salon-distance{font-size:.85rem;color:var(--primary);margin-bottom:12px;font-weight:500}.dynamic-queue-summary{background:#2ecc710d;border:1px solid rgba(46,204,113,.2)}.queue-callout{margin-top:12px;font-size:.9rem;color:#2ecc71;line-height:1.4;font-weight:500}.booking-queue-info{display:flex;gap:20px;margin-top:16px;padding-top:16px;border-top:1px dashed var(--border)}.queue-stat{display:flex;flex-direction:column;gap:4px}.queue-label{font-size:.8rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.queue-value{font-size:1.2rem;font-weight:700;color:var(--primary)}.completed-info{justify-content:center;align-items:center;padding:12px;background:#2ecc711a;border-radius:var(--radius-sm);border-top:none}.btn-complete{background:#3498db1a;color:#3498db;border:1px solid rgba(52,152,219,.3)}.btn-complete:hover{background:#3498db33}.status.nav-admin-btn{background:#cba8761a;color:var(--primary);border:1px solid rgba(203,168,118,.2)}.nav-admin-btn:hover{background:#cba87633}.status-completed{background:#3498db26;color:#3498db;border:1px solid rgba(52,152,219,.3)}.auth-view{min-height:70vh;display:flex;justify-content:center;align-items:center;padding:20px}.auth-container{width:100%;max-width:480px;padding:40px;text-align:center}.auth-header h2{font-size:1.8rem;margin-bottom:8px;color:var(--text-light)}.auth-header p{color:var(--text-muted);font-size:.95rem;margin-bottom:30px}.auth-form{display:flex;flex-direction:column;gap:20px;text-align:left}.auth-form-header{text-align:center;margin-bottom:32px}.auth-form-header h2{font-size:2rem;margin-bottom:8px}.auth-form-header p{color:var(--text-muted)}.auth-icon{font-size:3rem;margin-bottom:16px}.auth-input{width:100%;padding:14px;background:#ffffff0d;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-light);font-family:inherit;font-size:1rem;transition:all .3s ease}.auth-input:focus{outline:none;border-color:var(--primary);background:#ffffff1a}.otp-input{text-align:center;font-size:1.5rem;letter-spacing:8px;font-weight:600}.auth-submit{width:100%;padding:14px;font-size:1.05rem;margin-top:10px}.auth-error{color:#e74c3c;font-size:.85rem;margin-bottom:-10px}.otp-info{background:#ffffff08;padding:15px;border-radius:var(--radius-sm);text-align:center;margin-bottom:10px}.otp-info p{color:var(--text-light);font-size:.9rem;margin-bottom:8px}.edit-number-btn{color:var(--primary);font-size:.85rem;cursor:pointer;font-weight:500}.edit-number-btn:hover{text-decoration:underline}.auth-nav-btn{background:#ffffff0d;border:1px solid rgba(255,255,255,.1)}.auth-nav-btn:hover{background:#ffffff1a}.selected-tag{display:inline-block;background:#ffffff1a;padding:4px 10px;border-radius:12px;margin-right:6px;font-size:.85rem;margin-bottom:6px}.service-item .checkmark{margin-left:8px;font-size:.9rem}.service-instruction{font-size:.9rem;color:var(--text-muted);margin-bottom:15px;margin-top:-5px}.booking-tags .selected-tag{background:#2ecc711a;border:1px solid rgba(46,204,113,.2);color:var(--primary);margin-top:5px}.segment-control{display:flex;background:#ffffff0d;border-radius:var(--radius-sm);padding:4px;margin-bottom:15px}.segment-btn{flex:1;padding:10px;border:none;background:transparent;color:var(--text-muted);font-family:inherit;font-weight:500;cursor:pointer;border-radius:var(--radius-sm);transition:all .2s ease}.segment-btn.active{background:var(--primary);color:var(--text-light);box-shadow:0 4px 10px #0003}.input-hide{display:none}.date-highlight{color:var(--primary);font-weight:600;margin-top:5px;display:block}.reviews-section{margin-top:60px;padding-top:40px;border-top:1px solid var(--border)}.reviews-section h3{font-size:1.8rem;margin-bottom:30px;color:var(--text-main)}.reviews-container{display:grid;grid-template-columns:1fr;gap:40px}@media(min-width:900px){.reviews-container{grid-template-columns:350px 1fr;align-items:start}}.add-review-box{position:sticky;top:40px}.add-review-box h4{font-size:1.2rem;margin-bottom:20px;color:var(--primary)}.review-form{display:flex;flex-direction:column}.star-rating-input{display:flex;gap:8px;margin-top:4px}.star-rating-input span{transition:transform .1s}.star-rating-input span:hover{transform:scale(1.2)}.login-prompt{text-align:center;padding:20px 0;color:var(--text-muted)}.login-prompt button{margin-top:15px;width:100%}.reviews-list{display:flex;flex-direction:column;gap:20px}.review-card{padding:24px}.review-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:15px}.review-author-info{display:flex;align-items:center;gap:12px}.review-avatar{width:40px;height:40px;background:var(--primary);color:var(--bg-dark);border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.2rem}.review-author{font-weight:600;font-size:1.05rem}.review-date{font-size:.85rem;color:var(--text-muted)}.review-text{color:#d1d5db;line-height:1.6;font-size:.95rem}
