*{margin:0;padding:0;box-sizing:border-box;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}:root{--pastel-red: #ffccd5;--dark-magenta: #c9184a;--light-pink: #ff8fa3;--white: #ffffff;--gray: #f8f9fa;--dark: #343a40;--shadow: rgba(0, 0, 0, .1)}body{background-color:var(--pastel-red);color:var(--dark);padding-bottom:80px;min-height:100vh}.service-option.selected{border-color:var(--dark-magenta);background-color:#ff14930d;box-shadow:0 0 0 2px #ff149333}.photo-indicator{margin-left:8px;color:var(--dark-magenta);font-size:.9em}.booking-comment{margin-top:8px;padding:8px;background:#00000008;border-radius:8px;font-size:.9em;color:#666}.booking-comment i{margin-right:5px;color:var(--dark-magenta)}.container{max-width:100%;padding:16px}.app-header{text-align:center;padding:20px 16px;background:linear-gradient(135deg,var(--light-pink),var(--dark-magenta));color:#fff;border-radius:0 0 24px 24px;margin-bottom:20px;box-shadow:0 4px 12px var(--shadow)}.app-header h1{font-size:1.8rem;margin-bottom:8px}.app-header p{opacity:.9}.rounded-card{background-color:var(--white);border-radius:24px;padding:20px;margin-bottom:20px;box-shadow:0 6px 16px var(--shadow);transition:transform .3s ease}.rounded-card:hover{transform:translateY(-5px)}.section-title{font-size:1.4rem;margin-bottom:16px;color:var(--dark-magenta);display:flex;align-items:center;gap:10px}.section-title i{font-size:1.2rem}.services-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;margin-top:20px}.service-card{background:#fff;border-radius:20px;overflow:hidden;box-shadow:0 4px 12px var(--shadow);transition:all .3s ease}.service-card:hover{box-shadow:0 8px 20px #c9184a26}.service-image{height:180px;width:100%;background-color:var(--light-pink);background-image:url(https://images.unsplash.com/photo-1604654894610-df63bc536371?ixlib=rb-4.0.3&auto=format&fit=crop&w=800&q=80);background-size:cover;background-position:center}.service-info{padding:16px}.service-name{font-size:1.2rem;font-weight:600;margin-bottom:8px;color:var(--dark)}.service-desc{font-size:.9rem;color:#666;margin-bottom:12px;line-height:1.4}.service-price{font-size:1.3rem;font-weight:700;color:var(--dark-magenta);margin-bottom:16px}.book-btn{display:block;width:100%;padding:12px;background:linear-gradient(to right,var(--light-pink),var(--dark-magenta));color:#fff;border:none;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:opacity .3s}.book-btn:hover{opacity:.9}.profile-form{max-width:500px;margin:0 auto}.form-group{margin-bottom:20px}.form-label{display:block;margin-bottom:8px;font-weight:600;color:var(--dark)}.form-input{width:100%;padding:16px;border:2px solid #e9ecef;border-radius:12px;font-size:1rem;transition:border-color .3s}.form-input:focus{outline:none;border-color:var(--dark-magenta)}.login-btn{width:100%;padding:16px;background:linear-gradient(to right,var(--light-pink),var(--dark-magenta));color:#fff;border:none;border-radius:12px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:opacity .3s;margin-top:10px}.login-btn:hover{opacity:.9}.bottom-nav{position:fixed;bottom:0;left:0;width:100%;background-color:var(--white);display:flex;justify-content:space-around;align-items:center;padding:12px 0;box-shadow:0 -4px 12px var(--shadow);z-index:1000;border-radius:24px 24px 0 0}.nav-item{display:flex;flex-direction:column;align-items:center;text-decoration:none;color:#777;transition:all .3s;flex:1;padding:8px 0}.nav-item.active{color:var(--dark-magenta)}.nav-item i{font-size:1.5rem;margin-bottom:4px}.nav-item span{font-size:.8rem;font-weight:500}.nav-item:hover{color:var(--dark-magenta)}.page-content{display:none;animation:fadeIn .5s}.page-content.active{display:block}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.offer-card{background:linear-gradient(135deg,#ffccd5,#ff8fa3);color:var(--dark);padding:20px;border-radius:20px;margin-bottom:20px;display:flex;justify-content:space-between;align-items:center}.offer-title{font-size:1.3rem;font-weight:700;margin-bottom:5px}.offer-desc{font-size:1rem;opacity:.9}.offer-badge{background-color:var(--dark-magenta);color:#fff;padding:8px 16px;border-radius:50px;font-weight:700;font-size:1.2rem}@media (max-width: 768px){.services-grid{grid-template-columns:1fr}.app-header h1{font-size:1.5rem}}@media (min-width: 769px){.container{max-width:1200px;margin:0 auto}.bottom-nav{max-width:1200px;left:50%;transform:translate(-50%);border-radius:24px;bottom:20px;width:calc(100% - 40px)}body{padding-bottom:100px}}.booking-form{margin-top:20px}.form-grid{display:grid;gap:20px}@media (min-width: 768px){.form-grid{grid-template-columns:repeat(2,1fr)}.calendar-group{grid-column:span 2}}.services-selector,.masters-selector{display:grid;gap:10px;margin-top:10px}.service-option,.master-option{background:#f8f9fa;border:2px solid #e9ecef;border-radius:12px;padding:12px;cursor:pointer;transition:all .3s}.service-option:hover,.master-option:hover{border-color:var(--light-pink);background:#fff}.service-option.selected,.master-option.selected{border-color:var(--dark-magenta);background:#c9184a0d}.service-option-name{font-weight:600;margin-bottom:4px}.service-option-price{color:var(--dark-magenta);font-weight:700}.master-option{display:flex;align-items:center;gap:12px}.master-avatar{width:40px;height:40px;background:linear-gradient(135deg,var(--light-pink),var(--dark-magenta));border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:20px}.master-info{flex:1}.master-name{font-weight:600;margin-bottom:2px}.master-specialization{font-size:12px;color:#666}.calendar-group{margin-top:10px}.calendar-navigation{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px}.current-month{font-weight:600;color:var(--dark);font-size:1.1rem}.calendar-nav-btn{background:#f8f9fa;border:none;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--dark);transition:all .3s}.calendar-nav-btn:hover{background:var(--light-pink);color:#fff}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;margin-bottom:10px;text-align:center;font-weight:600;color:#666;font-size:14px}.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.calendar-day{aspect-ratio:1;display:flex;align-items:center;justify-content:center;border-radius:8px;cursor:pointer;font-weight:600;transition:all .3s;background:#f8f9fa;border:2px solid transparent}.calendar-day.available{background:#fff;border-color:#e9ecef}.calendar-day.available:hover{border-color:var(--light-pink);background:#ff8fa31a}.calendar-day.available.selected{background:var(--dark-magenta);color:#fff;border-color:var(--dark-magenta)}.calendar-day.unavailable{background:#f8f9fa;color:#ccc;cursor:not-allowed}.calendar-day.today{border-color:var(--dark-magenta);background:#c9184a1a}.calendar-day.empty{background:transparent;cursor:default}.time-slots{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}.time-slot{padding:10px 16px;border:2px solid #e9ecef;border-radius:8px;cursor:pointer;font-weight:600;transition:all .3s;background:#fff}.time-slot.available{background:#fff}.time-slot.available:hover{border-color:var(--light-pink);background:#ff8fa31a}.time-slot.available.selected{background:var(--dark-magenta);color:#fff;border-color:var(--dark-magenta)}.time-slot.unavailable{background:#f8f9fa;color:#ccc;cursor:not-allowed}.booking-summary{margin-top:30px;padding:20px;background:#f8f9fa;border-radius:16px;border:2px solid #e9ecef}.summary-title{font-weight:700;color:var(--dark);margin-bottom:15px;font-size:1.1rem;display:flex;align-items:center;gap:10px}.summary-title:before{content:"";width:4px;height:20px;background:var(--dark-magenta);border-radius:2px}.summary-content{display:grid;gap:10px}.summary-item{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid #e9ecef}.summary-item:last-child{border-bottom:none}.summary-item.total{font-weight:700;font-size:1.2rem;color:var(--dark-magenta);margin-top:10px;padding-top:10px;border-top:2px solid var(--light-pink)}.confirm-booking-btn{width:100%;padding:16px;background:linear-gradient(135deg,var(--light-pink),var(--dark-magenta));color:#fff;border:none;border-radius:12px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s;margin-top:20px;display:flex;align-items:center;justify-content:center;gap:10px}.confirm-booking-btn:hover{opacity:.9;transform:translateY(-2px);box-shadow:0 6px 20px #c9184a4d}.confirm-booking-btn:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.admin-controls{background:#ff8fa30d;border-radius:16px}.admin-controls-grid{display:grid;gap:20px}@media (min-width: 768px){.admin-controls-grid{grid-template-columns:repeat(2,1fr)}}.admin-control-group{padding:15px;background:#fff;border-radius:12px;border:1px solid #e9ecef}.admin-btn{width:100%;padding:12px;background:#f8f9fa;border:2px solid #e9ecef;border-radius:8px;cursor:pointer;font-weight:600;color:var(--dark);transition:all .3s;margin-bottom:10px;display:flex;align-items:center;justify-content:center;gap:8px}.admin-btn:hover{background:var(--light-pink);color:#fff;border-color:var(--light-pink)}.admin-btn:last-child{margin-bottom:0}.booking-notification{animation:slideInRight .3s ease}.profile-header,.avatar-container{position:relative}.user-avatar{width:80px;height:80px;background:linear-gradient(135deg,var(--light-pink),var(--dark-magenta));border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:40px}.avatar-badge{position:absolute;bottom:0;right:0;width:28px;height:28px;background:#ffc107;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#333;font-size:14px;border:2px solid white}.user-name{font-size:1.5rem;font-weight:700;color:var(--dark);margin:0 0 10px}.user-stats{display:flex;gap:15px;margin-bottom:10px}.stat-item{display:flex;align-items:center;gap:6px;font-size:14px;color:#666}.social-link{display:inline-flex;align-items:center;gap:8px;color:var(--dark-magenta);text-decoration:none;font-weight:600;transition:opacity .3s}.social-link:hover{opacity:.8}.profile-form .form-grid{display:grid;gap:20px}@media (min-width: 768px){.profile-form .form-grid{grid-template-columns:repeat(2,1fr)}}.favorite-services{display:flex;flex-wrap:wrap;gap:10px;margin:10px 0}.service-tag{background:var(--pastel-red);padding:8px 16px;border-radius:20px;display:inline-flex;align-items:center;gap:8px;font-weight:600;color:var(--dark)}.remove-service{background:none;border:none;color:#666;cursor:pointer;padding:2px;font-size:12px;transition:color .3s}.remove-service:hover{color:#f44336}.add-service-container{display:flex;gap:10px;margin-top:10px}.add-service-btn{padding:12px 20px;background:var(--light-pink);color:#fff;border:none;border-radius:12px;cursor:pointer;font-weight:600;transition:opacity .3s}.add-service-btn:hover{opacity:.9}.form-actions{display:flex;gap:15px;margin-top:25px}.save-btn{flex:1;padding:15px;background:linear-gradient(135deg,var(--light-pink),var(--dark-magenta));color:#fff;border:none;border-radius:12px;font-size:1.1rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px;transition:opacity .3s}.save-btn:hover{opacity:.9}.logout-btn{padding:15px 25px;background:#f8f9fa;color:#666;border:2px solid #e9ecef;border-radius:12px;font-size:1.1rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px;transition:all .3s}.logout-btn:hover{background:#f44336;color:#fff;border-color:#f44336}.stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}@media (min-width: 768px){.stats-grid{grid-template-columns:repeat(4,1fr)}}.stat-card{background:#fff;padding:15px;border-radius:12px;display:flex;align-items:center;gap:12px;border:1px solid #e9ecef}.booking-filters{margin-bottom:20px}.filter-btn{padding:10px 20px;background:#f8f9fa;border:2px solid #e9ecef;border-radius:8px;cursor:pointer;font-weight:600;color:#666;transition:all .3s;display:flex;align-items:center;gap:8px}.filter-btn:hover{border-color:var(--light-pink);color:var(--dark)}.filter-btn.active{background:var(--dark-magenta);color:#fff;border-color:var(--dark-magenta)}.booking-item{padding:20px;border-bottom:1px solid #eee;transition:background .3s}.booking-item:hover{background:#f8f9fa}.booking-item:last-child{border-bottom:none}.booking-content{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:15px}.booking-main{flex:1}.booking-service{font-weight:700;font-size:1.1rem;color:var(--dark);margin-bottom:8px}.booking-meta{display:flex;flex-wrap:wrap;gap:15px;font-size:14px;color:#666}.booking-meta span{display:flex;align-items:center;gap:6px}.booking-side{text-align:right}.booking-price{font-size:1.2rem;font-weight:700;color:var(--dark-magenta);margin-bottom:8px}.booking-status{padding:6px 12px;border-radius:20px;font-size:12px;font-weight:700}.status-completed{background:#4caf501a;color:#4caf50}.status-upcoming{background:#2196f31a;color:#2196f3}.booking-actions{display:flex;gap:10px}.booking-action-btn{padding:8px 16px;background:#f8f9fa;border:2px solid #e9ecef;border-radius:8px;cursor:pointer;font-weight:600;color:#666;transition:all .3s;display:flex;align-items:center;gap:8px}.booking-action-btn:hover{transform:translateY(-2px)}.edit-booking:hover{background:#4caf50;color:#fff;border-color:#4caf50}.cancel-booking:hover{background:#f44336;color:#fff;border-color:#f44336}.repeat-booking:hover{background:#2196f3;color:#fff;border-color:#2196f3}.empty-bookings{text-align:center;padding:40px 20px}.book-now-btn{padding:12px 24px;background:linear-gradient(135deg,var(--light-pink),var(--dark-magenta));color:#fff;border:none;border-radius:12px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:10px;margin-top:15px;transition:opacity .3s}.book-now-btn:hover{opacity:.9}.admin-profile-controls{margin-top:20px}.admin-actions{display:grid;grid-template-columns:repeat(2,1fr);gap:15px;margin-bottom:25px}@media (max-width: 768px){.admin-actions{grid-template-columns:1fr}}.admin-action-btn{padding:15px;background:#f8f9fa;border:2px solid #e9ecef;border-radius:12px;cursor:pointer;font-weight:600;color:var(--dark);transition:all .3s;display:flex;align-items:center;justify-content:center;gap:10px;text-align:center}.admin-action-btn:hover{background:var(--light-pink);color:#fff;border-color:var(--light-pink)}.admin-stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}@media (min-width: 768px){.admin-stats-grid{grid-template-columns:repeat(4,1fr)}}.admin-stat{background:#fff;padding:20px;border-radius:12px;border:1px solid #e9ecef;text-align:center}.admin-stat-value{font-size:1.5rem;font-weight:700;color:var(--dark-magenta);margin-bottom:5px}.admin-stat-label{font-size:12px;color:#666}.profile-notification{animation:slideInRight .3s ease}.users-stats{margin-top:20px}.users-controls{padding:20px}.users-list{display:grid;gap:15px;margin-bottom:30px}.user-card{background:#fff;border-radius:16px;padding:20px;border:1px solid #e9ecef;transition:all .3s;cursor:pointer}.user-card:hover{transform:translateY(-2px);box-shadow:0 8px 25px #0000001a;border-color:var(--light-pink)}.user-card.vip{border-left:4px solid #FFC107}.user-card.inactive{opacity:.7;border-left:4px solid #f44336}.user-card-header{display:flex;align-items:center;gap:15px;margin-bottom:15px}.user-avatar{position:relative;width:60px;height:60px;background:linear-gradient(135deg,var(--light-pink),var(--dark-magenta));border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:30px}.vip-badge{position:absolute;bottom:-5px;right:-5px;width:24px;height:24px;background:#ffc107;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#333;font-size:12px;border:2px solid white}.user-info{flex:1}.user-instagram{font-size:14px;color:var(--dark-magenta);margin-bottom:2px;display:flex;align-items:center;gap:6px}.user-email{font-size:12px;color:#666}.user-status{padding:6px 12px;border-radius:20px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.status-active{background:#4caf501a;color:#4caf50}.status-vip{background:#ffc1071a;color:#ffc107}.status-inactive{background:#f443361a;color:#f44336}.user-card-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:15px;margin-bottom:15px;padding:15px;background:#f8f9fa;border-radius:12px}@media (min-width: 768px){.user-card-stats{grid-template-columns:repeat(4,1fr)}}.user-stat{text-align:center}.user-stat .stat-label{font-size:11px;color:#666;margin-bottom:4px;text-transform:uppercase;letter-spacing:.5px}.user-stat .stat-value{font-weight:700;font-size:1rem;color:var(--dark)}.user-card-actions{display:flex;gap:10px;flex-wrap:wrap}.user-action-btn{padding:8px 16px;background:#f8f9fa;border:2px solid #e9ecef;border-radius:8px;cursor:pointer;font-weight:600;color:#666;transition:all .3s;display:flex;align-items:center;gap:6px;font-size:14px}.user-action-btn:hover{transform:translateY(-2px)}.view-user:hover{background:#2196f3;color:#fff;border-color:#2196f3}.edit-user:hover,.activate-user:hover{background:#4caf50;color:#fff;border-color:#4caf50}.deactivate-user:hover{background:#f44336;color:#fff;border-color:#f44336}.users-pagination{display:flex;justify-content:space-between;align-items:center;padding:20px 0;border-top:1px solid #e9ecef}.pagination-info{color:#666;font-size:14px}.pagination-controls{display:flex;gap:5px}.pagination-btn{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:#f8f9fa;border:2px solid #e9ecef;border-radius:8px;cursor:pointer;color:#666;font-weight:600;transition:all .3s}.pagination-btn:hover:not(.disabled):not(.active){border-color:var(--light-pink);color:var(--dark)}.pagination-btn.active{background:var(--dark-magenta);color:#fff;border-color:var(--dark-magenta)}.pagination-btn.disabled{opacity:.5;cursor:not-allowed}.user-modal .modal-content{animation:modalFadeIn .3s ease}.user-avatar-large{position:relative;width:80px;height:80px;background:linear-gradient(135deg,var(--light-pink),var(--dark-magenta));border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:40px}.vip-badge-large{position:absolute;bottom:-5px;right:-5px;width:32px;height:32px;background:#ffc107;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#333;font-size:16px;border:3px solid white}.info-content p{margin:8px 0;color:#666;display:flex;align-items:center;gap:8px}.edit-btn{background:#4caf50;color:#fff}.edit-btn:hover{background:#45a049}.history-btn{background:#2196f3;color:#fff}.history-btn:hover{background:#0b7dda}.admin-notification{animation:slideInRight .3s ease}@media (max-width: 768px){.user-card-header{flex-direction:column;text-align:center;gap:10px}.user-status{align-self:center}.user-card-actions{justify-content:center}.controls-row,.filters-container{flex-direction:column}.filter-group{min-width:100%}.actions-row{justify-content:stretch}.action-btn{flex:1;justify-content:center}.users-pagination{flex-direction:column;gap:15px;text-align:center}}.empty-users{text-align:center;padding:40px 20px;color:#666}.analytics-period-selector .period-btn{padding:10px 20px;background:#f8f9fa;border:2px solid #e9ecef;border-radius:8px;cursor:pointer;font-weight:600;color:#666;transition:all .3s;display:flex;align-items:center;gap:8px}.analytics-period-selector .period-btn:hover{border-color:var(--light-pink);color:var(--dark)}.analytics-period-selector .period-btn.active{background:var(--dark-magenta);color:#fff;border-color:var(--dark-magenta)}.kpi-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:15px}@media (min-width: 768px){.kpi-grid{grid-template-columns:repeat(3,1fr)}}@media (min-width: 1200px){.kpi-grid{grid-template-columns:repeat(6,1fr)}}.kpi-card{background:#fff;padding:20px;border-radius:12px;border:1px solid #e9ecef;transition:all .3s;display:flex;align-items:center;gap:15px}.kpi-card:hover{transform:translateY(-2px);box-shadow:0 6px 20px #0000001a}.kpi-icon{width:50px;height:50px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:24px;color:#fff}.kpi-icon i{filter:brightness(0) invert(1)}.kpi-content{flex:1}.kpi-value{font-weight:800;font-size:1.8rem;color:var(--dark);margin-bottom:4px;line-height:1}.kpi-label{font-size:14px;color:#666;margin-bottom:6px}.kpi-change{font-size:12px;font-weight:600;padding:4px 8px;border-radius:12px;display:inline-block}.kpi-change.positive{background:#4caf501a;color:#4caf50}.kpi-change.negative{background:#f443361a;color:#f44336}.kpi-change.neutral{background:#9e9e9e1a;color:#666}.charts-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:15px}@media (max-width: 768px){.charts-grid{grid-template-columns:1fr}}.chart-container{background:#fff;padding:20px;border-radius:12px;border:1px solid #e9ecef}.chart-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.chart-header h4{margin:0;color:var(--dark);font-size:1rem}.chart-legend{display:flex;gap:15px;flex-wrap:wrap}.legend-item{display:flex;align-items:center;gap:6px;font-size:12px;color:#666}.legend-color{width:12px;height:12px;border-radius:2px}.table-container{overflow-x:auto;margin-top:15px}.analytics-table{width:100%;border-collapse:collapse;font-size:14px}.analytics-table th{background:#f8f9fa;padding:12px 16px;text-align:left;font-weight:700;color:var(--dark);border-bottom:2px solid #e9ecef;white-space:nowrap}.analytics-table td{padding:12px 16px;border-bottom:1px solid #e9ecef;color:#666}.analytics-table tbody tr:hover{background:#f8f9fa}.current-month-row{background:#ff8fa30d!important;font-weight:600}.current-month-row td:first-child{color:var(--dark-magenta)}.summary-row{background:#f8f9fa;font-weight:700}.summary-row td{color:var(--dark)}.retention-cell{display:flex;align-items:center;gap:10px}.retention-value{min-width:50px;font-weight:600;color:var(--dark)}.retention-bar{flex:1;height:8px;background:#e9ecef;border-radius:4px;overflow:hidden}.retention-fill{height:100%;background:linear-gradient(90deg,#4caf50,#8bc34a);border-radius:4px;transition:width .3s ease}.export-controls{padding:20px}.export-options{display:flex;gap:10px;flex-wrap:wrap}.export-btn{padding:12px 20px;background:#f8f9fa;border:2px solid #e9ecef;border-radius:8px;cursor:pointer;font-weight:600;color:var(--dark);transition:all .3s;display:flex;align-items:center;gap:8px;flex:1;min-width:150px;justify-content:center}.export-btn:hover{background:var(--light-pink);color:#fff;border-color:var(--light-pink)}.insights-list{display:grid;gap:12px}.insight-item{padding:15px;border-radius:12px;border-left:4px solid;background:#fff;border:1px solid #e9ecef;display:flex;align-items:flex-start;gap:12px;font-size:14px}.insight-item.positive{border-left-color:#4caf50}.insight-item.negative{border-left-color:#f44336}.insight-item.warning{border-left-color:#ff9800}.insight-item.neutral{border-left-color:#9e9e9e}.insight-item i{font-size:16px;margin-top:2px}.insight-item.positive i{color:#4caf50}.insight-item.negative i{color:#f44336}.insight-item.warning i{color:#ff9800}.insight-item.neutral i{color:#9e9e9e}.analytics-notification{animation:slideInRight .3s ease}@media (max-width: 576px){.analytics-period-selector .period-btn{padding:8px 14px;font-size:13px;justify-content:center}.kpi-grid{grid-template-columns:1fr;gap:12px}.kpi-card{padding:14px;gap:12px}.kpi-icon{width:42px;height:42px;font-size:20px}.kpi-value{font-size:1.4rem}.kpi-label{font-size:12px}.chart-container{padding:14px}.chart-header{flex-direction:column;align-items:flex-start;gap:8px}.chart-header h4{font-size:.95rem}.chart-legend{gap:10px}.table-container{overflow-x:auto;-webkit-overflow-scrolling:touch}.analytics-table{font-size:12px;min-width:600px}.retention-cell{gap:6px}.retention-value{min-width:42px;font-size:12px}.retention-bar{height:6px}.export-controls{padding:14px}.export-btn{padding:10px 14px;font-size:13px}.insight-item{padding:12px;font-size:13px;gap:10px}.insight-item i{font-size:14px}.analytics-period-selector>div{margin-left:0!important;width:100%;display:grid!important;grid-template-columns:44px 1fr 44px;gap:8px}.period-btn{padding:10px;font-size:13px;justify-content:center;white-space:nowrap}#prev-period-btn,#next-period-btn{padding:10px}#prev-period-btn span,#next-period-btn span{display:none}#prev-period-btn i,#next-period-btn i{font-size:14px}#current-period-btn{font-weight:700;font-size:13px}}.time-slot.unavailable{background-color:#ffebee;color:#c62828;cursor:not-allowed}.user-admin .time-slot.unavailable{cursor:pointer;opacity:.7;border:2px dashed #ff9800}.user-admin .time-slot.unavailable:hover{opacity:1;background-color:#fff3e0}.admin-add-time-btn{margin-top:10px;padding:8px 16px;background-color:#4caf50;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px;display:flex;align-items:center;gap:5px;justify-content:center;width:100%}.admin-add-time-btn:hover{background-color:#45a049}.services-selector{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px;margin-top:12px}.service-option{padding:20px;border:2px solid var(--light-pink);border-radius:20px;cursor:pointer;background:var(--white);transition:all .3s ease;box-shadow:0 4px 10px var(--shadow)}.service-option:hover{border-color:var(--dark-magenta);transform:translateY(-4px);box-shadow:0 8px 20px #c9184a26}.service-option.selected{border-color:var(--dark-magenta);background:linear-gradient(135deg,#ff8fa326,#c9184a14)}.service-option-name{font-weight:600;font-size:1.15rem;margin-bottom:6px;color:var(--dark)}.service-option-description{font-size:.9rem;color:#666;margin-bottom:14px;line-height:1.4}.service-option-details{display:flex;justify-content:space-between;align-items:center}.service-time{background-color:var(--gray);padding:6px 14px;border-radius:50px;font-size:.85rem;font-weight:500;color:var(--dark)}.service-price{font-weight:700;font-size:1.25rem;color:var(--dark-magenta)}.no-services{text-align:center;padding:32px;color:#777;font-style:italic;grid-column:1 / -1}.booking-extra{margin-top:15px}.form-textarea{width:100%;padding:12px 14px;border-radius:12px;border:2px solid #e9ecef;font-size:14px;resize:vertical;transition:all .2s ease;font-family:inherit}.form-textarea:focus{outline:none;border-color:#da9c4b;box-shadow:0 0 0 3px #da9c4b26}.form-file{width:100%;padding:10px;border-radius:12px;border:2px dashed #e9ecef;background:#fafafa;cursor:pointer;transition:all .2s ease}.form-file:hover{border-color:#da9c4b;background:#fff}.file-upload{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:14px;border-radius:12px;border:2px dashed #e9ecef;background:#fafafa;font-weight:600;color:#666;cursor:pointer;transition:all .2s ease}.file-upload i{font-size:18px;color:#da9c4b}.file-upload:hover{border-color:#da9c4b;background:#fff}.file-upload:active{transform:scale(.98)}.appointments-stats{margin-top:20px}.stat-card{background:#fff;padding:15px;border-radius:12px;display:flex;align-items:center;gap:12px;border:1px solid #e9ecef;transition:transform .3s}.stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.stat-icon{width:50px;height:50px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:24px}.stat-content{flex:1}.stat-value{font-weight:700;font-size:1.2rem;color:var(--dark);margin-bottom:4px}.stat-label{font-size:12px;color:#666}.appointments-controls{padding:20px}.controls-row{display:flex;flex-direction:column;gap:20px;margin-bottom:20px}@media (min-width: 768px){.controls-row{flex-direction:row;align-items:flex-end}}.search-container{flex:1}.search-input-wrapper{position:relative}.search-input-wrapper i{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:#999}.search-input{padding-left:45px!important}.filters-container{display:flex;gap:15px;flex-wrap:wrap}.filter-group{flex:1;min-width:200px}.actions-row{display:flex;gap:10px;justify-content:flex-end}.action-btn{padding:12px 24px;background:#f8f9fa;border:2px solid #e9ecef;border-radius:8px;cursor:pointer;font-weight:600;color:var(--dark);transition:all .3s;display:flex;align-items:center;gap:8px}.action-btn:hover{background:var(--light-pink);color:#fff;border-color:var(--light-pink)}.appointments-list{display:grid;gap:15px;margin-top:20px}.appointment-card{background:#fff;border-radius:16px;padding:20px;border:1px solid #e9ecef;transition:all .3s;cursor:pointer}.appointment-card:hover{transform:translateY(-2px);box-shadow:0 8px 25px #0000001a;border-color:var(--light-pink)}.appointment-card.status-confirmed{border-left:4px solid #4CAF50}.appointment-card.status-completed{border-left:4px solid #2196F3}.appointment-card.status-cancelled{border-left:4px solid #f44336}.appointment-card.status-pending{border-left:4px solid #FF9800}.appointment-card-header{margin-bottom:15px}.appointment-info{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:10px}.appointment-user{display:flex;align-items:center;gap:15px}.user-avatar-small{width:50px;height:50px;background:linear-gradient(135deg,var(--light-pink),var(--dark-magenta));border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:24px}.user-details{flex:1}.user-name{font-weight:700;font-size:1.1rem;color:var(--dark);margin-bottom:4px}.appointment-time{font-size:14px;color:#666}.appointment-meta{text-align:right}.appointment-cost{font-size:1.2rem;font-weight:700;color:var(--dark-magenta);margin-bottom:8px}.appointment-status{padding:6px 12px;border-radius:20px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;display:inline-block}.status-confirmed{background:#4caf501a;color:#4caf50}.status-completed{background:#2196f31a;color:#2196f3}.status-cancelled{background:#f443361a;color:#f44336}.status-pending{background:#ff98001a;color:#ff9800}.appointment-preview{padding:10px;background:#f8f9fa;border-radius:8px}.appointment-comment{font-size:14px;color:#666;display:flex;align-items:center;gap:8px}.appointment-comment i{color:var(--dark-magenta)}.appointment-card-actions{display:flex;gap:10px;flex-wrap:wrap}.appointment-action-btn{padding:8px 16px;background:#f8f9fa;border:2px solid #e9ecef;border-radius:8px;cursor:pointer;font-weight:600;color:#666;transition:all .3s;display:flex;align-items:center;gap:6px;font-size:14px}.appointment-action-btn:hover{transform:translateY(-2px)}.view-details:hover{background:#2196f3;color:#fff;border-color:#2196f3}.change-status:hover{background:#4caf50;color:#fff;border-color:#4caf50}.appointment-modal .modal-content,.status-change-modal .modal-content{animation:modalFadeIn .3s ease}@keyframes modalFadeIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.user-avatar-large{width:80px;height:80px;background:linear-gradient(135deg,var(--light-pink),var(--dark-magenta));border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:40px}.info-card{background:#f8f9fa;padding:15px;border-radius:12px}.info-label{font-weight:700;color:var(--dark);margin-bottom:10px;font-size:14px;text-transform:uppercase;letter-spacing:.5px}.info-content{color:#666}.appointment-status-large{padding:10px 20px;border-radius:20px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;display:inline-block}.appointment-cost-large{font-size:1.5rem;font-weight:800;color:var(--dark-magenta)}.modal-btn{padding:12px 20px;border:none;border-radius:8px;cursor:pointer;font-weight:600;transition:all .3s;display:flex;align-items:center;justify-content:center;gap:8px;flex:1}.change-status-btn{background:#4caf50;color:#fff}.change-status-btn:hover{background:#45a049}.save-btn{background:var(--dark-magenta);color:#fff}.save-btn:hover{background:#b8123f}.close-btn{background:#f8f9fa;color:#666;border:2px solid #e9ecef}.close-btn:hover{background:#e9ecef}.cancel-btn{background:#f44336;color:#fff}.cancel-btn:hover{background:#d32f2f}.loading-appointments{text-align:center;padding:40px 20px}.spinner{width:40px;height:40px;border:3px solid var(--light-pink);border-top:3px solid var(--dark-magenta);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 20px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.empty-appointments{text-align:center;padding:40px 20px;color:#666}.appointments-notification{animation:slideInRight .3s ease}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@media (max-width: 768px){.appointment-info{flex-direction:column;gap:15px}.appointment-meta{text-align:left}.appointment-card-actions{justify-content:stretch}.appointment-action-btn{flex:1;justify-content:center}.controls-row,.filters-container{flex-direction:column}.filter-group{min-width:100%}.actions-row{justify-content:stretch}.action-btn{flex:1;justify-content:center}}.modal{position:fixed;top:0;left:0;width:100%;height:100%;background:#0000004d;display:flex;justify-content:center;align-items:center;z-index:10000}.modal-content{background-color:var(--white);border-radius:24px;padding:30px;max-width:500px;width:90%;box-shadow:0 6px 16px var(--shadow);font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;animation:fadeIn .3s;position:relative}.modal-content h3{font-size:1.4rem;color:var(--dark-magenta);margin-bottom:0}.modal-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--dark)}#edit-service-form{display:flex;flex-direction:column;gap:16px}#edit-service-form input,#edit-service-form textarea{width:100%;padding:14px;border:2px solid #e9ecef;border-radius:12px;font-size:1rem;transition:border-color .3s}#edit-service-form input:focus,#edit-service-form textarea:focus{outline:none;border-color:var(--dark-magenta)}#edit-service-form button[type=submit]{padding:14px;background:linear-gradient(to right,var(--light-pink),var(--dark-magenta));color:var(--white);border:none;border-radius:12px;font-weight:600;cursor:pointer;transition:opacity .3s}#edit-service-form button[type=submit]:hover{opacity:.9}#edit-service-form .btn-cancel{padding:14px;background:var(--gray);color:var(--dark);border:none;border-radius:12px;cursor:pointer;transition:opacity .3s}#edit-service-form .btn-cancel:hover{opacity:.8}.file-upload-area{padding:14px;background:var(--gray);border-radius:12px;text-align:center;cursor:pointer}.file-upload-area:hover{background:#e2e6ea}#image-preview{height:100px;border-radius:12px;background-size:cover;background-position:center}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}
