@import"https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;500;700&display=swap";.profile-hero{position:relative;padding:3rem 0 2rem;overflow:hidden}.profile-hero-bg{position:absolute;inset:0;background:radial-gradient(circle at top right,rgba(239,132,52,.18),transparent 28%),linear-gradient(135deg,#fffaf6,hsl(var(--primary-h) 70% 94%) 48%,hsl(var(--primary-h) 42% 90%));z-index:0}.profile-hero-bg:after{content:"";position:absolute;bottom:0;left:0;right:0;height:40px;background:linear-gradient(to top,var(--bg),transparent)}.profile-header{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.75rem}.profile-avatar{width:100px;height:100px;border-radius:50%;object-fit:cover;border:3px solid rgb(248,210,179);box-shadow:0 8px 24px #0000001f;position:relative;z-index:1}.profile-avatar-ring{display:inline-flex;align-items:center;justify-content:center;padding:4px;border-radius:50%;background:linear-gradient(135deg,#cc75fe,#fa7e1e,#d62976,#962fbf,#6c4fd5)}.profile-avatar-fallback{display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:#fff;font-size:2rem;font-weight:700;letter-spacing:-.02em}.profile-name{font-size:1.5rem;font-weight:700;color:var(--text-primary);letter-spacing:-.02em;line-height:1.2}.profile-badge{display:inline-flex;align-items:center;padding:.3rem .75rem;background:var(--primary-light);color:var(--primary-dark);border:1px solid hsla(var(--primary-h),64%,54%,.18);font-size:.75rem;font-weight:600;border-radius:var(--radius-full);letter-spacing:.01em}.profile-bio{font-size:.875rem;color:var(--text-secondary);line-height:1.6;max-width:320px;margin:.25rem auto 0}.business-hours-section{background:linear-gradient(135deg,#fffffffa,hsl(var(--primary-h) 44% 97%));border:1px solid hsla(var(--primary-h),56%,58%,.14);border-radius:var(--radius-lg);padding:1.25rem;box-shadow:var(--shadow-md)}.business-hours-title{font-size:.9375rem;font-weight:600;color:var(--primary-dark);margin-bottom:1rem}.business-hours-list{display:flex;flex-direction:column}.business-hours-row{display:flex;align-items:center;justify-content:space-between;padding:.625rem 0;border-bottom:1px solid hsl(var(--primary-h) 30% 91%)}.business-hours-row:last-child{border-bottom:none}.business-hours-row.today{font-weight:600}.business-hours-day{display:flex;align-items:center;gap:.5rem;font-size:.8125rem;color:var(--text-primary)}.business-hours-today-badge{display:inline-flex;align-items:center;padding:.125rem .5rem;background:#16a34a20;color:#16a34a;font-size:.6875rem;font-weight:600;border-radius:var(--radius-full)}.business-hours-time{display:flex;flex-direction:column;align-items:flex-end;gap:.125rem;font-size:.8125rem;color:var(--text-secondary)}.business-hours-closed{color:var(--text-muted);font-style:italic;font-size:.75rem}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.section-title{font-size:1.0625rem;font-weight:600;color:var(--text-primary)}.section-count{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 .5rem;background:var(--primary-light);color:var(--primary-dark);font-size:.75rem;font-weight:600;border-radius:var(--radius-full)}.services-grid{display:flex;flex-direction:column;gap:.75rem}.service-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;cursor:pointer;transition:all .2s ease;box-shadow:var(--shadow-sm)}.service-card:hover{box-shadow:var(--shadow-md);border-color:hsla(var(--primary-h),68%,56%,.38);transform:translateY(-1px)}.service-card:active{transform:scale(.99)}.service-card-image{width:100%;height:140px;overflow:hidden}.service-card-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.service-card:hover .service-card-image img{transform:scale(1.03)}.service-card-content{padding:1rem}.service-card-title{font-size:.9375rem;font-weight:600;color:var(--text-primary);margin-bottom:.375rem}.service-card-description{font-size:.8125rem;color:var(--text-secondary);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.service-card-footer{display:flex;align-items:center;justify-content:space-between;margin-top:.75rem}.service-card-meta{display:flex;align-items:center;gap:.75rem}.service-card-duration{display:inline-flex;align-items:center;gap:.3rem;font-size:.75rem;color:var(--text-muted)}.service-card-price{font-size:.9375rem;font-weight:700;color:#1e1e1e}.service-card-action{display:flex;align-items:center;justify-content:center;gap:.375rem;padding:.625rem;font-size:.8125rem;font-weight:500;color:var(--primary-dark);background:linear-gradient(180deg,hsl(var(--primary-h) 84% 95%),hsl(var(--primary-h) 74% 92%));border-top:1px solid hsla(var(--primary-h),60%,54%,.12);transition:background .2s ease}.service-card:hover .service-card-action{background:linear-gradient(180deg,hsl(var(--primary-h) 84% 93%),hsl(var(--primary-h) 74% 90%))}.step-progress{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:1rem 0 0}.step-dot{width:8px;height:8px;border-radius:50%;background:var(--border-light);transition:all .3s ease}.step-dot.active{background:var(--primary);width:24px;border-radius:4px;box-shadow:0 4px 10px -6px #ef8434b3}.step-header{display:flex;align-items:center;gap:.75rem;padding:1rem 1rem .5rem;max-width:480px;margin:0 auto}.step-title{flex:1;font-size:1.0625rem;font-weight:600;color:var(--text-primary)}.btn-primary{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;max-width:320px;padding:.625rem 2rem;background:var(--action);color:var(--action-foreground);font-size:.9375rem;font-weight:600;letter-spacing:.02em;border:1px solid var(--action-border);border-radius:8px;cursor:pointer;transition:all .3s ease;box-shadow:0 16px 26px -22px #0000008c;margin-top:.5rem;margin-inline:auto;position:relative;overflow:hidden}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 24px #0000004d}.btn-primary:active{transform:scale(.97)}.btn-back{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;background:#ffffffd6;border:1px solid var(--border);border-radius:50%;cursor:pointer;color:var(--text-secondary);transition:all .2s ease;flex-shrink:0;box-shadow:0 12px 22px -24px #0006}.btn-back:hover{background:var(--primary-light);color:var(--primary-dark);border-color:hsla(var(--primary-h),68%,56%,.24)}.public-footer{display:flex;align-items:center;justify-content:center;gap:.375rem;padding:1.5rem 1rem;font-size:.75rem;color:var(--text-muted);border-top:1px solid var(--border-light);background:#fffaf7d1;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.public-footer strong{color:var(--primary-dark);font-weight:600}.skeleton-avatar{width:100px;height:100px;border-radius:50%;background:var(--border-light);margin:0 auto;animation:pulse-soft 1.5s ease-in-out infinite}.skeleton-text{height:14px;border-radius:4px;background:var(--border-light);animation:pulse-soft 1.5s ease-in-out infinite}.step-subtitle{font-size:.8125rem;color:var(--text-muted);font-weight:400}.date-selector-shell{margin-bottom:1rem;padding:.875rem;border:1px solid hsla(var(--primary-h),50%,58%,.14);border-radius:var(--radius-lg);background:linear-gradient(180deg,#fffffff5,hsl(var(--primary-h) 54% 97%));box-shadow:var(--shadow-sm)}.date-selector-toolbar{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.625rem}.date-selector-meta{display:flex;flex-direction:column;gap:.125rem}.date-selector-label{font-size:.6875rem;font-weight:700;color:var(--text-primary);text-transform:uppercase;letter-spacing:.08em}.date-selector-range{font-size:.75rem;color:var(--text-secondary);font-weight:500}.date-selector-nav{display:flex;align-items:center;gap:.5rem}.date-selector-nav-btn{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:999px;border:1px solid var(--border);background:var(--bg-card);color:var(--text-secondary);transition:all .2s ease}.date-selector-nav-btn:hover:not(:disabled){border-color:hsla(var(--primary-h),66%,55%,.24);background:var(--primary-light);color:var(--primary-dark)}.date-selector-nav-btn:disabled{opacity:.45;cursor:not-allowed}.date-selector{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.5rem;padding:.125rem 0 0}.date-item{display:flex;flex-direction:column;align-items:center;gap:.25rem;min-width:0;padding:.625rem .5rem;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--bg-elevated);cursor:pointer;transition:all .2s ease;box-shadow:var(--shadow-sm)}.date-item:hover{border-color:hsla(var(--primary-h),68%,56%,.36);transform:translateY(-1px)}.date-item.today{border-color:hsla(var(--primary-h),68%,56%,.34);background:var(--primary-light)}.date-item.selected{background:#1e1e1e;border-color:#1e1e1e;color:#fff;box-shadow:0 14px 24px -22px #0000008c}.date-item.selected .date-weekday,.date-item.selected .date-month{color:#ffffffd9}.date-weekday{font-size:.6875rem;font-weight:500;color:var(--text-muted);text-transform:uppercase;letter-spacing:.02em}.date-day{font-size:1.125rem;font-weight:700;line-height:1}.date-month{font-size:.625rem;color:var(--text-muted);font-weight:400}.datetime-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.75rem}.datetime-label{font-size:.875rem;font-weight:600;color:var(--text-primary)}.datetime-count{font-size:.75rem;color:var(--primary-dark);font-weight:500;background:var(--primary-light);padding:.25rem .625rem;border-radius:var(--radius-full)}.time-slots-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem}.time-slot{padding:.625rem .25rem;font-size:.8125rem;font-weight:500;text-align:center;border-radius:var(--radius-md);border:1px solid var(--border-light);background:var(--bg-card);color:var(--text-primary);cursor:pointer;transition:all .15s ease}.time-slot:hover:not(.disabled):not(.selected){border-color:var(--primary);background:var(--primary-light)}.time-slot.selected{background:#1e1e1e;border-color:#1e1e1e;color:#fff;font-weight:600;box-shadow:0 4px 12px #0003}.time-slot.disabled{background:var(--bg);color:var(--text-muted);opacity:.4;cursor:not-allowed;text-decoration:line-through}.slots-loading{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem}.slot-skeleton{height:38px;border-radius:var(--radius-md);background:var(--border-light);animation:pulse-soft 1.5s ease-in-out infinite}.slots-empty{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:2.5rem 1rem;text-align:center}.slots-empty p{font-size:.875rem;color:var(--text-secondary);font-weight:500}.slots-empty span{font-size:.75rem;color:var(--text-muted)}.datetime-confirm{margin-top:1.5rem;padding:1rem;background:var(--bg-elevated);border:1px solid hsla(var(--primary-h),70%,56%,.22);border-radius:var(--radius-lg);box-shadow:0 10px 24px -22px #ef843499}.datetime-confirm-summary{display:flex;flex-direction:column;gap:.25rem;margin-bottom:.75rem}.datetime-confirm-label{font-size:.75rem;color:var(--text-muted)}.datetime-confirm strong{font-size:.9375rem;color:var(--text-primary)}.auth-toggle{display:flex;gap:0;background:var(--border-light);border-radius:var(--radius-md);padding:3px;margin-bottom:1rem}.auth-toggle-btn{flex:1;padding:.5rem;font-size:.8125rem;font-weight:500;text-align:center;border:none;border-radius:calc(var(--radius-md) - 2px);background:transparent;color:var(--text-secondary);cursor:pointer;transition:all .2s ease}.auth-toggle-btn.active{background:var(--action);color:var(--action-foreground);font-weight:600;box-shadow:var(--shadow-sm)}.auth-form{display:flex;flex-direction:column;gap:.75rem}.form-field{display:flex;flex-direction:column;gap:.375rem}.form-field label{font-size:.75rem;font-weight:500;color:var(--text-secondary)}.form-field input{width:100%;padding:.625rem .75rem;font-size:.875rem;border:1px solid var(--border-light);border-radius:var(--radius-md);background:var(--bg-card);color:var(--text-primary);outline:none;transition:border-color .2s ease;box-sizing:border-box}.form-field input:focus{border-color:var(--primary)}.form-field input::placeholder{color:var(--text-muted)}.phone-input-wrapper{position:relative;display:flex;align-items:stretch;border:1px solid var(--border-light);border-radius:var(--radius-md);background:var(--bg-card);overflow:visible;transition:border-color .2s ease}.phone-input-wrapper:focus-within{border-color:var(--primary)}.phone-input-flag{display:flex;align-items:center;gap:.25rem;padding:0 .5rem;border:none;background:transparent;cursor:pointer;font-size:1.125rem;border-right:1px solid var(--border-light);flex-shrink:0;color:var(--text-secondary)}.phone-input-flag svg{color:var(--text-muted)}.phone-input-number{flex:1;padding:.625rem .75rem;font-size:.875rem;border:none!important;background:transparent;color:var(--text-primary);outline:none;min-width:0}.phone-input-number::placeholder{color:var(--text-muted)}.phone-input-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;background:var(--bg-card);border:1px solid var(--border-light);border-radius:var(--radius-md);box-shadow:0 8px 24px #0000001f;z-index:50;max-height:220px;overflow-y:auto}.phone-input-option{display:flex;align-items:center;gap:.5rem;width:100%;padding:.5rem .75rem;border:none;background:transparent;cursor:pointer;font-size:.8125rem;color:var(--text-primary);text-align:left}.phone-input-option:hover,.phone-input-option.active{background:var(--bg-hover, rgba(0, 0, 0, .04))}.phone-input-dial{margin-left:auto;color:var(--text-muted);font-size:.75rem}.auth-error{display:flex;align-items:center;gap:.5rem;padding:.625rem .75rem;margin-bottom:.75rem;background:#fef2f2;color:#dc2626;font-size:.8125rem;border-radius:var(--radius-md);border:1px solid #fecaca}.auth-success{display:flex;align-items:center;gap:.5rem;padding:.625rem .75rem;background:#f0fdf4;color:#16a34a;font-size:.8125rem;border-radius:var(--radius-md);border:1px solid #bbf7d0}.auth-forgot-link{background:none;border:none;padding:.5rem 0;font-size:.8125rem;color:var(--primary);cursor:pointer;text-align:center;text-decoration:underline;transition:color .2s ease}.auth-forgot-link:hover{color:var(--primary-dark)}.modal-overlay{position:fixed;inset:0;z-index:100;background:#00000080;display:flex;align-items:center;justify-content:center;padding:1rem}.modal-content{background:var(--bg-card);border-radius:var(--radius-lg);padding:1.5rem;width:100%;max-width:400px;box-shadow:0 20px 60px #0003}.modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.modal-header h3{font-size:1.0625rem;font-weight:600;color:var(--text-primary)}.modal-close{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:50%;background:var(--border-light);color:var(--text-muted);cursor:pointer;transition:all .2s ease}.modal-close:hover{background:var(--bg);color:var(--text-primary)}.modal-description{font-size:.8125rem;color:var(--text-secondary);line-height:1.5;margin-bottom:1rem}.modal-actions{display:flex;gap:.75rem;margin-top:1.25rem}.modal-secondary-btn,.modal-primary-btn,.modal-danger-btn{flex:1;min-height:44px;border-radius:var(--radius-md);font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease}.modal-secondary-btn{background:var(--bg);border:1px solid var(--border);color:var(--text-primary)}.modal-secondary-btn:hover{background:var(--border-light)}.modal-primary-btn{background:var(--action);border:1px solid var(--action-border);color:var(--action-foreground)}.modal-primary-btn:hover{background:var(--action-hover);border-color:var(--action-border)}.modal-danger-btn{background:#dc2626;border:1px solid #dc2626;color:#fff}.modal-danger-btn:hover{background:#b91c1c;border-color:#b91c1c}.modal-secondary-btn:disabled,.modal-primary-btn:disabled,.modal-danger-btn:disabled,.modal-close:disabled{opacity:.6;cursor:not-allowed}.modal-note-card{margin-top:.75rem;padding:.875rem 1rem;border-radius:var(--radius-md);border:1px solid var(--border-light);background:var(--bg)}.modal-note-title{display:block;font-size:.875rem;font-weight:600;color:var(--text-primary)}.modal-note-meta{display:block;margin-top:.25rem;font-size:.75rem;color:var(--text-secondary)}.confirmation-success-icon{width:72px;height:72px;border-radius:50%;background:linear-gradient(135deg,#22c55e,#16a34a);display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem;box-shadow:0 8px 24px #22c55e4d}.confirmation-professional{display:flex;align-items:center;gap:.75rem;padding:1rem;background:var(--bg-card);border:1px solid var(--border-light);border-radius:var(--radius-lg);margin-bottom:1rem}.confirmation-professional strong{display:block;font-size:.9375rem;color:var(--text-primary)}.confirmation-professional span{font-size:.75rem;color:var(--text-muted)}.confirmation-avatar{width:48px;height:48px;border-radius:50%;object-fit:cover;border:2px solid rgb(248,210,179);flex-shrink:0}.confirmation-avatar-ring{display:inline-flex;align-items:center;justify-content:center;padding:3px;border-radius:50%;background:linear-gradient(135deg,#cc75fe,#fa7e1e,#d62976,#962fbf,#6c4fd5);flex-shrink:0}.confirmation-avatar-fallback{display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:#fff;font-size:1.25rem;font-weight:700}.confirmation-card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm)}.confirmation-card-row{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid var(--border-light)}.confirmation-card-row:last-child{border-bottom:none}.confirmation-card-label{font-size:.8125rem;color:var(--text-secondary)}.confirmation-card-value{font-size:.875rem;font-weight:600;color:var(--text-primary)}.dashboard-header{padding:1.5rem 1rem .75rem;max-width:480px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:.75rem}.dashboard-header h1{font-size:1.25rem;font-weight:700;color:var(--text-primary);white-space:nowrap}.btn-new-booking{display:flex;align-items:center;gap:.375rem;padding:.5rem .875rem;background:var(--action);color:var(--action-foreground);font-size:.8125rem;font-weight:600;border:none;border-radius:.5rem;cursor:pointer;white-space:nowrap;transition:transform .15s,box-shadow .15s}.btn-new-booking:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0003}.btn-new-booking:active{transform:translateY(0)}.dashboard-tabs{display:flex;gap:0;padding:0 1rem;max-width:480px;margin:0 auto;border-bottom:1px solid var(--border-light)}.dashboard-tab{flex:1;padding:.625rem 0;font-size:.8125rem;font-weight:500;text-align:center;border:none;background:transparent;color:var(--text-muted);cursor:pointer;transition:all .2s ease;border-bottom:2px solid transparent}.dashboard-tab.active{color:var(--primary);font-weight:600;border-bottom-color:var(--primary)}.dashboard-loading{display:flex;flex-direction:column;gap:.75rem;padding-top:1rem}.appointment-card-skeleton{height:80px;border-radius:var(--radius-lg);background:var(--border-light);animation:pulse-soft 1.5s ease-in-out infinite}.dashboard-empty{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:3rem 1rem;text-align:center}.dashboard-empty p{font-size:.875rem;color:var(--text-secondary)}.appointments-list{display:flex;flex-direction:column;gap:.75rem;padding-top:1rem}.appointment-card{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.appointment-date-badge{display:flex;flex-direction:column;align-items:center;min-width:44px;padding:.375rem .5rem;background:var(--primary-light);border-radius:var(--radius-md)}.appointment-date-day{font-size:1.125rem;font-weight:700;color:var(--primary-dark);line-height:1}.appointment-date-month{font-size:.625rem;font-weight:500;color:var(--primary);text-transform:uppercase}.appointment-info{flex:1;display:flex;flex-direction:column;gap:.125rem}.appointment-plan{font-size:.875rem;color:var(--text-primary)}.appointment-time{font-size:.75rem;color:var(--text-secondary)}.appointment-professional{font-size:.6875rem;color:var(--text-muted)}.appointment-whatsapp-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid #22c55e;border-radius:8px;background:#22c55e;color:#fff;cursor:pointer;transition:all .2s ease;flex-shrink:0}.appointment-whatsapp-btn:hover{background:#16a34a;border-color:#16a34a}.appointment-cancel-btn{display:flex;align-items:center;justify-content:center;min-width:88px;height:36px;padding:0 .875rem;border:1px solid #333333;border-radius:8px;background:#333;color:#fff;font-size:.75rem;font-weight:600;cursor:pointer;transition:all .2s ease;flex-shrink:0}.appointment-cancel-btn:hover{background:#333;border-color:#333}.guest-profile-avatar{width:80px;height:80px;border-radius:50%;background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:#fff;display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:700;margin:0 auto;box-shadow:0 4px 16px hsla(var(--primary-h),80%,50%,.25)}.guest-promo-card{display:flex;align-items:center;gap:.75rem;padding:1rem;margin-top:1.5rem;background:var(--primary-light);border:1px solid hsla(var(--primary-h),80%,50%,.2);border-radius:var(--radius-lg)}.guest-promo-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.guest-promo-icon-image{width:100%;height:100%;object-fit:contain;display:block}.guest-promo-card strong{display:block;font-size:.8125rem;color:var(--text-primary);margin-bottom:.125rem}.guest-promo-card p{font-size:.75rem;color:var(--text-secondary);line-height:1.4}.guest-promo-link{margin-left:auto;font-size:.75rem;font-weight:600;color:var(--primary);text-decoration:none;white-space:nowrap;flex-shrink:0;display:flex;align-items:center;gap:.25rem;transition:gap .2s ease}.guest-promo-link:hover{gap:.5rem}.guest-promo-link svg{transition:transform .2s ease}.guest-promo-link:hover svg{transform:translate(2px)}.guest-logout-btn{display:block;width:100%;margin-top:1.5rem;padding:.75rem;background:transparent;border:1px solid #fecaca;border-radius:var(--radius-md);color:#dc2626;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;text-align:center}.guest-logout-btn:hover{background:#fef2f2}.guest-delete-account-btn{display:block;width:100%;margin-top:.75rem;padding:0;background:transparent;border:none;color:var(--text-muted);font-size:.8125rem;font-weight:500;text-decoration:underline;cursor:pointer;text-align:center}.guest-delete-account-btn:hover{color:var(--text-secondary)}.bottom-nav{position:fixed;bottom:0;left:0;right:0;display:flex;background:#fffaf7f0;border-top:1px solid var(--border);box-shadow:0 -10px 24px -22px #00000047;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:50}.bottom-nav-item{flex:1;display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:.625rem 0;background:transparent;border:none;color:var(--text-muted);font-size:.625rem;font-weight:500;cursor:pointer;transition:color .2s ease}.bottom-nav-item.active{color:var(--primary)}.bottom-nav-item svg{transition:color .2s ease}@media(max-width:420px){.date-selector-shell{padding:.75rem}.date-selector-toolbar{align-items:flex-start;flex-wrap:wrap}.date-selector{gap:.375rem}.date-item{padding:.55rem .25rem}.date-weekday{font-size:.625rem}.date-day{font-size:1rem}.date-month{font-size:.5625rem}}:root{--primary-h: 24;--primary-s: 74%;--primary-l: 54%;--primary: hsl(var(--primary-h) var(--primary-s) var(--primary-l));--primary-light: hsl(var(--primary-h) 80% 94%);--primary-dark: hsl(var(--primary-h) 64% 45%);--primary-foreground: #fff7f2;--action: #201916;--action-hover: #352924;--action-foreground: #fbf3ec;--action-border: #3f312b;--bg: #f6f1ea;--bg-card: #ffffff;--bg-elevated: #fffaf7;--text-primary: #241d19;--text-secondary: #6d5f57;--text-muted: #a09187;--text-inverse: #ffffff;--border: #e7ddd4;--border-light: #f2ebe5;--success: #22c55e;--warning: #f59e0b;--error: #ef4444;--shadow-sm: 0 1px 3px rgba(29, 22, 18, .06);--shadow-md: 0 12px 24px -18px rgba(29, 22, 18, .22), 0 6px 12px -10px rgba(29, 22, 18, .14);--shadow-lg: 0 20px 40px -24px rgba(29, 22, 18, .24), 0 10px 22px -18px rgba(29, 22, 18, .16);--radius: .75rem;--radius-md: .875rem;--radius-lg: 1rem;--radius-full: 9999px;--font-sans: "Roboto", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--font-sans);color:var(--text-primary);background:radial-gradient(circle at top,rgba(245,158,11,.1),transparent 28%),linear-gradient(180deg,#fffaf6 0%,var(--bg) 180px,var(--bg) 100%);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100dvh}#root{min-height:100dvh;display:flex;flex-direction:column}a{text-decoration:none;color:inherit}img{max-width:100%;display:block}button{cursor:pointer;font-family:inherit;border:none;background:none}input,textarea,select{font-family:inherit;font-size:inherit}.container{width:100%;max-width:480px;margin:0 auto;padding:0 1rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.9375rem;font-weight:500;border-radius:var(--radius);transition:all .2s ease;line-height:1.25}.btn-primary{background:var(--action);color:var(--action-foreground);border:1px solid var(--action-border);box-shadow:0 10px 24px -18px #0000008c}.btn-primary:hover{background:var(--action-hover);transform:translateY(-2px);box-shadow:0 18px 28px -20px #00000073}.btn-primary:active{transform:scale(.98)}.btn-primary:disabled,.btn-outline:disabled{opacity:.64;cursor:not-allowed;transform:none;box-shadow:none}.btn-outline{background:var(--bg-card);color:var(--text-primary);border:1.5px solid var(--border)}.btn-outline:hover{background:var(--primary-light);border-color:hsla(var(--primary-h),72%,52%,.25)}.btn-full{width:100%}.btn-lg{padding:1rem 2rem;font-size:1rem;border-radius:var(--radius-lg)}.card{background:var(--bg-elevated);border-radius:var(--radius-lg);border:1px solid var(--border);box-shadow:var(--shadow-sm)}.input{width:100%;padding:.75rem 1rem;font-size:.9375rem;border:1.5px solid var(--border);border-radius:var(--radius);background:var(--bg-card);color:var(--text-primary);transition:border-color .2s ease,box-shadow .2s ease;outline:none}.input:focus{border-color:var(--primary);box-shadow:0 0 0 4px #ef843424}.input::placeholder{color:var(--text-muted)}.label{display:block;font-size:.8125rem;font-weight:500;color:var(--text-secondary);margin-bottom:.375rem}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse-soft{0%,to{opacity:1}50%{opacity:.6}}.fade-in{animation:fadeIn .3s ease-out}.slide-up{animation:slideUp .4s ease-out}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:var(--radius-full)}
