*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--accent: #4f46e5;--accent-dark: #3730a3;--accent-light: #eef2ff;--text-primary: #0f0f13;--text-secondary: #6b7280;--text-muted: #9ca3af;--bg: #f2f3f8;--card: #ffffff;--border: rgba(0,0,0,.07);--shadow-sm: 0 1px 3px rgba(0,0,0,.06), 0 1px 2px rgba(0,0,0,.04);--shadow-md: 0 4px 16px rgba(0,0,0,.08), 0 1px 3px rgba(0,0,0,.05);--shadow-lg: 0 12px 40px rgba(0,0,0,.12), 0 4px 8px rgba(0,0,0,.06);--radius: 20px;--radius-sm: 12px}body{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;background:var(--bg);color:var(--text-primary);min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.ep{max-width:600px;margin:0 auto;min-height:100vh;padding-bottom:100px}.ep-hero{position:relative;overflow:hidden;background:linear-gradient(160deg,#0f0c29,#1a1040 30%,#302b63,#24243e);padding:56px 24px;text-align:center}.ep-hero-blob{position:absolute;border-radius:50%;pointer-events:none}.ep-hero-blob-1{width:400px;height:400px;background:radial-gradient(circle,#818cf8 0%,transparent 70%);top:-180px;right:-120px;opacity:.25;animation:blobFloat 8s ease-in-out infinite}.ep-hero-blob-2{width:280px;height:280px;background:radial-gradient(circle,#6366f1 0%,transparent 70%);bottom:-100px;left:-80px;opacity:.2;animation:blobFloat 10s ease-in-out infinite reverse}.ep-hero-blob-3{width:180px;height:180px;background:radial-gradient(circle,#a78bfa 0%,transparent 70%);top:50%;left:50%;transform:translate(-50%,-50%);opacity:.1}@keyframes blobFloat{0%,to{transform:translate(0) scale(1)}50%{transform:translate(20px,-20px) scale(1.05)}}.ep-hero-inner{position:relative;z-index:1}.ep-avatar-ring{width:130px;height:130px;margin:0 auto 22px;padding:4px;border-radius:50%;background:linear-gradient(135deg,#ffffff59,#ffffff14);box-shadow:0 0 0 1px #ffffff26,0 8px 32px #0000004d;position:relative}.ep-avatar-img{width:100%;height:100%;border-radius:50%;object-fit:cover;display:block}.ep-avatar-initials{width:100%;height:100%;border-radius:50%;background:#ffffff1a;display:flex;align-items:center;justify-content:center;font-size:48px;font-weight:800;color:#ffffffe6;letter-spacing:-2px}.ep-avatar-online{position:absolute;bottom:8px;right:8px;width:16px;height:16px;border-radius:50%;background:#4ade80;border:3px solid #1a1040;box-shadow:0 0 10px #4ade8099}.ep-hero-name{font-size:30px;font-weight:800;color:#fff;letter-spacing:-.8px;line-height:1.1;margin-bottom:10px}.ep-hero-tagline{font-size:15px;color:#fff9;line-height:1.5;margin-bottom:28px;max-width:300px;margin-left:auto;margin-right:auto}.ep-hero-btn{display:inline-flex;align-items:center;gap:10px;background:#ffffff1f;border:1.5px solid rgba(255,255,255,.25);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:#fff;font-size:16px;font-weight:700;padding:14px 28px;border-radius:50px;cursor:pointer;transition:all .2s;letter-spacing:-.1px}.ep-hero-btn:hover{background:#ffffff38;border-color:#fff6;transform:translateY(-2px);box-shadow:0 8px 24px #00000040}.ep-hero-btn-arrow{font-size:18px;transition:transform .2s}.ep-hero-btn:hover .ep-hero-btn-arrow{transform:translate(4px)}.ep-stats-strip{margin:-28px 16px 0;background:var(--card);border-radius:20px;box-shadow:var(--shadow-lg);display:flex;align-items:center;padding:20px 0;position:relative;z-index:10;border:1px solid var(--border)}.ep-stat{flex:1;text-align:center}.ep-stat-val{font-size:22px;font-weight:800;color:var(--text-primary);letter-spacing:-.5px;line-height:1;margin-bottom:4px}.ep-stat-lbl{font-size:12px;color:var(--text-muted);font-weight:500;text-transform:uppercase;letter-spacing:.3px}.ep-stat-divider{width:1px;height:38px;background:var(--border);flex-shrink:0}.ep-body{padding:14px 16px 0;margin-top:14px}.ep-card{background:var(--card);border-radius:var(--radius);padding:22px 20px;margin-bottom:12px;box-shadow:var(--shadow-sm);border:1px solid var(--border)}.ep-section-head{display:flex;align-items:center;gap:8px;margin-bottom:18px}.ep-section-icon{font-size:18px;line-height:1}.ep-section-title{font-size:17px;font-weight:700;color:var(--text-primary);letter-spacing:-.3px}.ep-about{font-size:14px;color:#4b5563;line-height:1.8}.ep-services-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.ep-service-card{position:relative;background:#fff;border-radius:16px;padding:18px 16px 16px;border:1.5px solid #f0f0f5;display:flex;flex-direction:column;overflow:hidden;transition:transform .15s,box-shadow .15s,border-color .15s}.ep-service-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px #4f46e51f;border-color:#c7d2fe}.ep-service-accent{position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#4f46e5,#818cf8);border-radius:16px 16px 0 0}.ep-service-name{font-size:15px;font-weight:700;color:var(--text-primary);line-height:1.3;margin-bottom:4px}.ep-service-dur{font-size:12px;color:var(--text-muted);margin-bottom:14px;font-weight:500}.ep-service-price{font-size:22px;font-weight:800;color:var(--accent);letter-spacing:-.5px;margin-bottom:14px}.ep-service-btn{margin-top:auto;width:100%;background:var(--accent-light);color:var(--accent);border:none;padding:10px 0;border-radius:10px;font-size:13px;font-weight:700;cursor:pointer;transition:all .15s}.ep-service-btn:hover{background:var(--accent);color:#fff}.ep-week{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;margin-bottom:16px}.ep-week-day{text-align:center;border-radius:12px;padding:10px 4px 8px;transition:all .15s}.ep-week-day.on{background:linear-gradient(160deg,#f0fdf4,#dcfce7);border:1px solid #bbf7d0}.ep-week-day.off{background:#fafafa;border:1px solid #f3f4f6}.ep-week-day-name{font-size:10px;font-weight:700;letter-spacing:.3px;margin-bottom:6px;text-transform:uppercase}.on .ep-week-day-name{color:#16a34a}.off .ep-week-day-name{color:#d1d5db}.ep-week-day-dot{width:8px;height:8px;border-radius:50%;margin:0 auto}.on .ep-week-day-dot{background:#4ade80}.off .ep-week-day-dot{background:#e5e7eb}.ep-hours{text-align:center;font-size:15px;font-weight:700;color:#374151;padding:12px 0 2px;border-top:1px solid #f3f4f6}.ep-booking-card{padding:24px 20px}.ep-book-prompt{text-align:center}.ep-nearest{display:flex;align-items:center;justify-content:center;gap:10px;background:#f8f9ff;border:1px solid #e0e7ff;border-radius:12px;padding:12px 16px;margin-bottom:18px;margin-top:-4px}.ep-nearest-label{font-size:13px;color:var(--text-muted)}.ep-nearest-date{font-size:14px;font-weight:700;color:var(--accent)}.ep-nearest-loading{font-size:13px;color:var(--text-muted)}.ep-book-btn{width:100%;padding:16px;background:linear-gradient(135deg,var(--accent) 0%,#6366f1 100%);color:#fff;border:none;border-radius:14px;font-size:16px;font-weight:700;cursor:pointer;transition:all .2s;box-shadow:0 4px 16px #4f46e559;letter-spacing:-.2px}.ep-book-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 24px #4f46e566}.ep-book-btn:active:not(:disabled){transform:scale(.99)}.ep-book-btn:disabled{background:#c7d2fe;box-shadow:none;cursor:default}.ep-step-head{display:flex;align-items:center;gap:14px;margin-bottom:20px}.ep-back{background:#f3f4f6;border:none;color:var(--text-secondary);font-size:13px;font-weight:600;cursor:pointer;padding:7px 12px;border-radius:10px;flex-shrink:0;transition:background .15s}.ep-back:hover{background:#e5e7eb}.ep-step-title{font-size:17px;font-weight:700;color:var(--text-primary)}.ep-summary{background:#f9fafb;border-radius:14px;padding:14px 16px;margin-bottom:20px;border:1px solid #f3f4f6}.ep-summary-row{display:flex;justify-content:space-between;font-size:14px;padding:6px 0;border-bottom:1px solid #f3f4f6}.ep-summary-row:last-child{border-bottom:none}.ep-summary-k{color:var(--text-muted)}.ep-summary-v{font-weight:600;color:var(--text-primary)}.ep-loading-dots{display:flex;justify-content:center;gap:8px;padding:32px 0}.ep-loading-dots div{width:8px;height:8px;border-radius:50%;background:var(--accent);animation:dotBounce .8s ease-in-out infinite}.ep-loading-dots div:nth-child(2){animation-delay:.16s}.ep-loading-dots div:nth-child(3){animation-delay:.32s}@keyframes dotBounce{0%,80%,to{transform:scale(.7);opacity:.5}40%{transform:scale(1);opacity:1}}.ep-empty{text-align:center;color:var(--text-muted);font-size:14px;padding:28px 0;line-height:1.5}.spinner{width:40px;height:40px;border:3px solid #e5e7eb;border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.ep-success{text-align:center;padding:20px 0}.ep-success-circle{width:80px;height:80px;border-radius:50%;background:linear-gradient(135deg,#4ade80,#22c55e);color:#fff;font-size:36px;display:flex;align-items:center;justify-content:center;margin:0 auto 20px;box-shadow:0 8px 24px #4ade8066;animation:popIn .4s cubic-bezier(.175,.885,.32,1.275)}@keyframes popIn{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}.ep-success-title{font-size:26px;font-weight:800;color:var(--text-primary);letter-spacing:-.5px;margin-bottom:10px}.ep-success-sub{font-size:15px;color:var(--text-secondary);line-height:1.7;margin-bottom:28px}.ep-cabinet{background:linear-gradient(135deg,#faf5ff,#f0f4ff);border:1.5px solid #ddd6fe;border-radius:18px;padding:18px;text-align:left;margin-bottom:20px}.ep-cabinet-label{font-size:11px;font-weight:700;color:#7c3aed;text-transform:uppercase;letter-spacing:.8px;margin-bottom:8px}.ep-cabinet-link{display:block;font-size:13px;color:var(--accent);word-break:break-all;margin-bottom:14px;text-decoration:none;line-height:1.5}.ep-cabinet-link:hover{text-decoration:underline}.ep-cabinet-copy{width:100%;background:var(--accent);color:#fff;border:none;padding:12px;border-radius:12px;font-size:14px;font-weight:700;cursor:pointer;transition:background .15s}.ep-cabinet-copy:hover{background:var(--accent-dark)}.ep-reminder{font-size:13px;color:var(--text-muted)}.ep-sticky{position:fixed;bottom:0;left:0;right:0;padding:12px 16px;background:#ffffffeb;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-top:1px solid rgba(0,0,0,.08);box-shadow:0 -4px 30px #0000001a;z-index:300}.ep-sticky-inner{max-width:600px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;gap:16px}.ep-sticky-name{font-size:14px;font-weight:700;color:var(--text-primary);letter-spacing:-.2px}.ep-sticky-price{font-size:13px;color:var(--accent);font-weight:600;margin-top:2px}.ep-sticky-btn{background:linear-gradient(135deg,var(--accent) 0%,#6366f1 100%);color:#fff;border:none;padding:13px 28px;border-radius:50px;font-size:15px;font-weight:700;cursor:pointer;flex-shrink:0;transition:all .2s;box-shadow:0 4px 14px #4f46e566;letter-spacing:-.1px}.ep-sticky-btn:hover{transform:translateY(-1px);box-shadow:0 6px 20px #4f46e573}.month-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.month-nav button{width:38px;height:38px;display:flex;align-items:center;justify-content:center;background:#f3f4f6;border:none;font-size:18px;cursor:pointer;border-radius:12px;transition:background .15s;color:var(--text-primary)}.month-nav button:hover:not(:disabled){background:#e5e7eb}.month-nav button:disabled{opacity:.25;cursor:default}.month-nav span{font-weight:700;font-size:16px;letter-spacing:-.2px}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.cal-header{text-align:center;font-size:11px;font-weight:700;color:var(--text-muted);padding:4px 0 8px;text-transform:uppercase;letter-spacing:.3px}.cal-day{aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-size:14px;border-radius:12px;cursor:pointer;border:none;background:transparent;color:var(--text-primary);font-weight:400;transition:all .12s}.cal-day.available{background:var(--accent-light);color:var(--accent);font-weight:700}.cal-day.available:hover{background:#e0e7ff;transform:scale(1.08)}.cal-day.selected{background:linear-gradient(135deg,var(--accent),#6366f1);color:#fff;font-weight:800;box-shadow:0 4px 12px #4f46e566}.cal-day.today{font-weight:800}.cal-day.empty,.cal-day.past{color:#e5e7eb;cursor:default;background:transparent}.slots-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.slot-btn{padding:14px 0;border:2px solid #e5e7eb;border-radius:14px;background:#fff;font-size:15px;font-weight:700;cursor:pointer;color:var(--text-primary);transition:all .15s;letter-spacing:-.2px}.slot-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-light)}.slot-btn.selected{border-color:var(--accent);background:linear-gradient(135deg,var(--accent),#6366f1);color:#fff;box-shadow:0 4px 12px #4f46e559}.form-group{margin-bottom:14px}.form-group label{display:block;font-size:13px;font-weight:600;color:var(--text-secondary);margin-bottom:7px;letter-spacing:-.1px}.form-group input{width:100%;padding:14px 16px;border:1.5px solid #e5e7eb;border-radius:12px;font-size:15px;outline:none;transition:all .15s;color:var(--text-primary);background:#fafafa;font-family:inherit}.form-group input:focus{border-color:var(--accent);background:#fff;box-shadow:0 0 0 3px #4f46e514}.page{max-width:520px;margin:0 auto;padding:24px 16px 80px}.card{background:var(--card);border-radius:var(--radius);padding:20px;margin-bottom:12px;box-shadow:var(--shadow-sm);border:1px solid var(--border)}h2{font-size:17px;font-weight:700;margin-bottom:16px;color:var(--text-primary)}.loading{text-align:center;padding:60px;color:var(--text-muted);font-size:15px}.error{text-align:center;padding:60px;color:#ef4444;font-size:15px}.expert-name{font-size:22px;font-weight:700;letter-spacing:-.3px}.expert-desc{color:var(--text-secondary);font-size:14px;line-height:1.6;margin-top:8px}.info-row{display:flex;justify-content:space-between;font-size:14px;padding:8px 0;border-bottom:1px solid #f3f4f6}.info-row:last-child{border-bottom:none}.info-label{color:var(--text-muted)}.btn-primary{width:100%;padding:15px;background:linear-gradient(135deg,var(--accent) 0%,#6366f1 100%);color:#fff;border:none;border-radius:14px;font-size:16px;font-weight:700;cursor:pointer;transition:all .2s;font-family:inherit;letter-spacing:-.2px}.btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 20px #4f46e559}.btn-primary:disabled{background:#c7d2fe;cursor:default}.btn-back{background:none;border:none;color:var(--accent);font-size:15px;cursor:pointer;padding:0;margin-bottom:16px;font-family:inherit}
