*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--color-primary: #6C63FF;--color-primary-rgb: 108, 99, 255;--color-primary-hover: #5A52E0;--bg-dark: #0f0f1a;--bg-card: #1a1a2e;--bg-card-hover: #1f1f35;--bg-surface: #16162a;--bg-input: #12122280;--text-primary: #f0f0f5;--text-secondary: #9999b3;--text-muted: #66668a;--border-color: #2a2a45;--border-radius: 14px;--border-radius-sm: 10px;--border-radius-xs: 8px;--green: #22c55e;--green-bg: rgba(34, 197, 94, .12);--yellow: #eab308;--yellow-bg: rgba(234, 179, 8, .12);--red: #ef4444;--red-bg: rgba(239, 68, 68, .12);--shadow-soft: 0 4px 24px rgba(0, 0, 0, .3);--shadow-glow: 0 0 30px rgba(var(--color-primary-rgb), .15);--transition: .2s cubic-bezier(.4, 0, .2, 1);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px;line-height:1.5;color:var(--text-primary);background:var(--bg-dark);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{min-height:100vh;min-height:var(--real-vh, 100vh);overflow-x:hidden;background:var(--bg-dark)}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}.public-loading,.admin-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;min-height:var(--real-vh, 100vh);gap:16px;color:var(--text-secondary)}.loading-spinner{width:40px;height:40px;border:3px solid var(--border-color);border-top:3px solid var(--color-primary);border-radius:50%;animation:spin .8s linear infinite}.loading-spinner.small{width:18px;height:18px;border-width:2px}@keyframes spin{to{transform:rotate(360deg)}}.public-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;gap:8px;text-align:center;padding:24px}.error-icon{font-size:48px;margin-bottom:8px}.public-error h2{font-size:24px;font-weight:700}.error-hint{color:var(--text-muted);font-size:14px}.public-page{min-height:100vh;min-height:var(--real-vh, 100vh);display:flex;flex-direction:column;background:var(--bg-dark)}.public-header{background:linear-gradient(135deg,var(--bg-card),var(--bg-surface));border-bottom:1px solid var(--border-color);padding:20px 16px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:50;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.header-content{display:flex;align-items:center;gap:14px;flex:1;min-width:0}.business-logo{width:52px;height:52px;border-radius:14px;-o-object-fit:cover;object-fit:cover;border:2px solid rgba(var(--color-primary-rgb),.3);box-shadow:0 0 16px rgba(var(--color-primary-rgb),.2);flex-shrink:0}.business-logo-placeholder{width:52px;height:52px;border-radius:14px;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-hover));display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:800;color:#fff;flex-shrink:0}.header-info{min-width:0}.business-name{font-size:18px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.business-address{font-size:14px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.header-socials{display:flex;gap:8px;flex-shrink:0}.social-link{width:38px;height:38px;border-radius:10px;background:rgba(var(--color-primary-rgb),.1);display:flex;align-items:center;justify-content:center;color:var(--color-primary);transition:var(--transition)}.social-link:hover{background:rgba(var(--color-primary-rgb),.25);transform:scale(1.05);text-decoration:none}.public-main{flex:1;padding:0 16px 24px;max-width:600px;width:100%;margin:0 auto}.public-footer{text-align:center;padding:20px;color:var(--text-muted);font-size:14px;border-top:1px solid var(--border-color)}.step-section{margin-top:24px;animation:fadeSlideUp .4s ease}@keyframes fadeSlideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.step-header{display:flex;align-items:center;gap:14px;margin-bottom:16px}.step-number{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-hover));display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:700;color:#fff;flex-shrink:0;box-shadow:0 0 16px rgba(var(--color-primary-rgb),.3)}.step-title{font-size:18px;font-weight:700}.step-subtitle{font-size:14px;color:var(--text-secondary)}.services-grid{display:flex;flex-direction:column;gap:10px}.service-card{display:flex;align-items:center;gap:14px;padding:16px;background:var(--bg-card);border:1.5px solid var(--border-color);border-radius:var(--border-radius);cursor:pointer;transition:var(--transition);position:relative;overflow:hidden;text-align:left;color:var(--text-primary);font:inherit;width:100%}.service-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,rgba(var(--color-primary-rgb),.05),transparent);opacity:0;transition:var(--transition)}.service-card:hover:before{opacity:1}.service-card:hover{border-color:rgba(var(--color-primary-rgb),.3);transform:translateY(-1px);box-shadow:var(--shadow-glow)}.service-card-selected{border-color:var(--color-primary)!important;background:rgba(var(--color-primary-rgb),.08);box-shadow:var(--shadow-glow)}.service-card-icon{font-size:28px;flex-shrink:0;width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:var(--bg-surface);border-radius:12px}.service-card-info{flex:1;min-width:0}.service-card-name{font-size:15px;font-weight:600}.service-card-duration{font-size:14px;color:var(--text-secondary)}.service-card-price{font-size:16px;font-weight:700;color:var(--color-primary);flex-shrink:0}.service-card-check{position:absolute;top:10px;right:10px;width:28px;height:28px;background:var(--color-primary);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;animation:popIn .3s ease}@keyframes popIn{0%{transform:scale(0)}70%{transform:scale(1.2)}to{transform:scale(1)}}.empty-services{text-align:center;padding:40px;color:var(--text-secondary)}.calendar-scroll{display:flex;gap:8px;overflow-x:auto;padding:4px 0 12px;-webkit-overflow-scrolling:touch;scrollbar-width:none}.calendar-scroll::-webkit-scrollbar{display:none}.calendar-day{display:flex;flex-direction:column;align-items:center;gap:4px;min-width:62px;padding:12px 8px;background:var(--bg-card);border:1.5px solid var(--border-color);border-radius:var(--border-radius-sm);cursor:pointer;transition:var(--transition);color:var(--text-primary);font:inherit}.calendar-day:hover:not(:disabled){border-color:rgba(var(--color-primary-rgb),.3);background:var(--bg-card-hover)}.calendar-day-selected{background:linear-gradient(135deg,var(--color-primary),var(--color-primary-hover))!important;border-color:var(--color-primary)!important;color:#fff!important;box-shadow:0 4px 16px rgba(var(--color-primary-rgb),.35)}.calendar-day-selected .calendar-day-name,.calendar-day-selected .calendar-day-month{color:#fffc}.calendar-day-off{opacity:.35;cursor:not-allowed}.calendar-day-today:not(.calendar-day-selected){border-color:rgba(var(--color-primary-rgb),.5)}.calendar-day-name{font-size:14px;font-weight:600;text-transform:uppercase;color:var(--text-secondary);letter-spacing:.5px}.calendar-day-number{font-size:20px;font-weight:700}.calendar-day-month{font-size:14px;color:var(--text-muted)}.calendar-day-closed{font-size:14px;font-weight:700;color:var(--red);text-transform:uppercase;letter-spacing:.3px;opacity:.8}.time-slots-section{margin-top:20px;animation:fadeSlideUp .3s ease}.time-slots-title{font-size:15px;font-weight:600;margin-bottom:12px;color:var(--text-secondary)}.time-slots-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:8px}.time-slot{padding:12px 8px;border-radius:var(--border-radius-xs);font-size:15px;text-align:center;cursor:pointer;transition:var(--transition);border:1.5px solid transparent;font:inherit;font-weight:700;color:#fff}.time-slot-available{background:linear-gradient(135deg,#22c55e,#16a34a);border-color:#22c55e66;color:#fff}.time-slot-available:hover{border-color:#4ade80;transform:scale(1.05);box-shadow:0 0 16px #22c55e59}.time-slot-pending{background:linear-gradient(135deg,#eab308,#ca8a04);border-color:#eab30866;color:#fff;cursor:not-allowed;opacity:.85}.time-slot-occupied{background:linear-gradient(135deg,#ef4444,#b91c1c);border-color:#ef44444d;color:#ffffffb3;cursor:not-allowed;opacity:.5}.time-slot-selected{border-color:#fff!important;background:var(--color-primary)!important;color:#fff!important;box-shadow:var(--shadow-glow),0 0 20px rgba(var(--color-primary-rgb),.4);transform:scale(1.05)}.time-slots-loading,.time-slots-empty{text-align:center;padding:32px;color:var(--text-secondary);display:flex;align-items:center;justify-content:center;gap:10px}.slots-legend{display:flex;justify-content:center;gap:16px;margin-top:16px;font-size:14px;color:var(--text-muted)}.legend-item{display:flex;align-items:center;gap:6px}.legend-dot{width:10px;height:10px;border-radius:50%}.legend-dot.available{background:var(--green)}.legend-dot.pending{background:var(--yellow)}.legend-dot.occupied{background:var(--red)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:flex-end;justify-content:center;z-index:100;animation:fadeIn .2s ease;padding:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:var(--bg-card);border-radius:20px 20px 0 0;width:100%;max-width:500px;max-height:90vh;max-height:calc(var(--real-vh, 90vh) * .9);overflow-y:auto;padding:24px 20px 32px;position:relative;animation:slideUp .35s cubic-bezier(.16,1,.3,1)}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.modal-close{position:absolute;top:16px;right:16px;width:36px;height:36px;border-radius:50%;background:var(--bg-surface);border:none;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:var(--transition)}.modal-close:hover{color:var(--text-primary);background:var(--border-color)}.checkout-title{font-size:20px;font-weight:700;margin-bottom:20px}.checkout-summary{background:var(--bg-surface);border-radius:var(--border-radius-sm);padding:16px;margin-bottom:20px}.summary-item{display:flex;justify-content:space-between;padding:8px 0}.summary-item+.summary-item{border-top:1px solid var(--border-color)}.summary-label{color:var(--text-secondary);font-size:14px}.summary-value{font-weight:600;font-size:14px}.summary-total{margin-top:4px}.summary-total .summary-value{color:var(--color-primary);font-size:18px}.pix-section{background:var(--bg-surface);border-radius:var(--border-radius-sm);padding:16px;margin-bottom:20px}.pix-title{font-size:14px;font-weight:600;color:var(--text-secondary);margin-bottom:10px}.pix-key-container{display:flex;align-items:center;gap:10px}.pix-key{flex:1;font-family:monospace;font-size:14px;color:var(--text-primary);word-break:break-all}.btn-copy{padding:8px 16px;background:var(--color-primary);color:#fff;border:none;border-radius:var(--border-radius-xs);font-size:14px;font-weight:600;cursor:pointer;transition:var(--transition);white-space:nowrap;font-family:inherit}.btn-copy:hover{background:var(--color-primary-hover)}.success-modal{text-align:center;border-radius:20px 20px 0 0}.success-icon{margin-bottom:16px}.success-title{font-size:22px;font-weight:700;margin-bottom:16px}.success-details{background:var(--bg-surface);border-radius:var(--border-radius-sm);padding:16px;margin-bottom:16px}.success-details p{padding:4px 0}.success-details p strong{color:var(--color-primary)}.success-hint{font-size:14px;color:var(--text-secondary);margin-bottom:20px}.btn-whatsapp-confirm{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:14px;background:#25d366;color:#fff;border:none;border-radius:var(--border-radius-sm);font-size:15px;font-weight:600;cursor:pointer;transition:var(--transition);margin-bottom:10px;text-decoration:none}.btn-whatsapp-confirm:hover{background:#1ebb5a;text-decoration:none}.checkout-form,.login-form,.service-form,.settings-form{display:flex;flex-direction:column;gap:16px}.form-field{display:flex;flex-direction:column;gap:6px}.form-field label{font-size:14px;font-weight:600;color:var(--text-secondary)}.form-field input[type=text],.form-field input[type=email],.form-field input[type=password],.form-field input[type=tel],.form-field input[type=url],.form-field input[type=number],.form-field input[type=time],.form-field input[type=date],.form-field select,.date-input{padding:12px 14px;background:var(--bg-input);border:1.5px solid var(--border-color);border-radius:var(--border-radius-xs);color:var(--text-primary);font-size:15px;font-family:inherit;transition:var(--transition);outline:none;width:100%}.form-field input:focus,.form-field select:focus,.date-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb),.15)}.form-field input::-moz-placeholder{color:var(--text-muted)}.form-field input::placeholder{color:var(--text-muted)}.form-field select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%239999b3' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:36px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-actions{display:flex;gap:10px;justify-content:flex-end}.checkbox-field{flex-direction:row!important;align-items:center;gap:10px!important}.checkbox-field input[type=checkbox]{width:20px;height:20px;accent-color:var(--color-primary);cursor:pointer}.checkbox-field label{cursor:pointer;color:var(--text-primary)!important;font-size:14px!important}.upload-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:14px;background:var(--bg-surface);border:1.5px dashed var(--border-color);border-radius:var(--border-radius-xs);color:var(--text-secondary);cursor:pointer;font-size:14px;transition:var(--transition);font-family:inherit}.upload-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.upload-filename{color:var(--color-primary)}.btn-primary{padding:14px 24px;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-hover));color:#fff;border:none;border-radius:var(--border-radius-sm);font-size:15px;font-weight:600;cursor:pointer;transition:var(--transition);font-family:inherit;display:flex;align-items:center;justify-content:center;gap:8px}.btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 16px rgba(var(--color-primary-rgb),.35)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-outline{padding:12px 24px;background:transparent;color:var(--text-secondary);border:1.5px solid var(--border-color);border-radius:var(--border-radius-sm);font-size:14px;font-weight:500;cursor:pointer;transition:var(--transition);font-family:inherit;width:100%}.btn-outline:hover{border-color:var(--text-secondary);color:var(--text-primary)}.btn-sm{padding:10px 18px;font-size:14px}.btn-link{background:none;border:none;color:var(--color-primary);cursor:pointer;font-size:14px;font-family:inherit;padding:8px}.btn-link:hover{text-decoration:underline}.btn-icon{width:40px;height:40px;border-radius:10px;border:1px solid var(--border-color);background:var(--bg-surface);color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:var(--transition)}.btn-icon:hover{color:var(--red);border-color:var(--red)}.btn-icon-sm{width:36px;height:36px;border-radius:8px;border:1px solid var(--border-color);background:var(--bg-surface);color:var(--text-primary);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;transition:var(--transition);font-family:inherit}.btn-icon-sm:hover{background:var(--bg-card-hover)}.text-muted{color:var(--text-muted);font-size:14px}.admin-login-page{min-height:100vh;min-height:var(--real-vh, 100vh);display:flex;align-items:center;justify-content:center;padding:24px;background:radial-gradient(ellipse at top,rgba(var(--color-primary-rgb),.08),transparent 60%),var(--bg-dark)}.admin-login-card{background:var(--bg-card);border-radius:20px;padding:32px 24px;width:100%;max-width:400px;border:1px solid var(--border-color);box-shadow:var(--shadow-soft)}.login-brand{text-align:center;margin-bottom:28px}.login-logo{font-size:48px;margin-bottom:8px}.login-brand h1{font-size:24px;font-weight:800;background:linear-gradient(135deg,var(--color-primary),#a78bfa);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.login-brand p{color:var(--text-secondary);font-size:14px}.login-form h2{font-size:18px;font-weight:600;margin-bottom:4px}.login-error{background:var(--red-bg);color:var(--red);padding:12px;border-radius:var(--border-radius-xs);font-size:14px;border:1px solid rgba(239,68,68,.2)}.color-picker-row{display:flex;align-items:center;gap:12px}.color-input{width:48px!important;height:48px!important;padding:2px!important;border-radius:10px!important;cursor:pointer;background:var(--bg-surface)!important;border:1.5px solid var(--border-color)!important}.color-hex{font-family:monospace;font-size:14px;color:var(--text-secondary)}.admin-page{min-height:100vh;min-height:var(--real-vh, 100vh);display:flex;flex-direction:column;background:var(--bg-dark)}.admin-header{display:flex;align-items:center;justify-content:space-between;padding:16px 16px 12px;border-bottom:1px solid var(--border-color);background:var(--bg-card)}.admin-header-left{min-width:0}.admin-title{font-size:18px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-slug{font-size:14px;color:var(--text-muted);font-family:monospace}.metrics-container{margin-bottom:16px}.metrics-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:12px}.metric-card{display:flex;align-items:center;gap:10px;padding:14px;background:var(--bg-card);border-radius:var(--border-radius-sm);border:1px solid var(--border-color)}.metric-icon{font-size:26px}.metric-info{display:flex;flex-direction:column}.metric-value{font-size:22px;font-weight:800;color:var(--color-primary);line-height:1}.metric-label{font-size:14px;color:var(--text-muted);text-transform:capitalize;margin-top:2px}.top-clients{background:var(--bg-card);border-radius:var(--border-radius-sm);border:1px solid var(--border-color);padding:12px}.top-clients-title{font-size:14px;font-weight:700;color:var(--text-secondary);margin-bottom:8px;margin-top:0}.top-clients-list{display:flex;flex-direction:column;gap:6px}.top-client-item{display:flex;align-items:center;gap:8px;font-size:13.5px}.top-client-rank{width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:14px;font-weight:800;background:rgba(var(--color-primary-rgb),.15);color:var(--color-primary)}.top-client-name{flex:1;color:var(--text-primary);font-weight:600}.top-client-visits{color:var(--text-muted);font-size:14px}.landing-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;background:var(--bg-dark);gap:16px}.landing-loading-logo{width:80px;height:80px;border-radius:50%;animation:pulse-loading 1.5s ease-in-out infinite}@keyframes pulse-loading{0%,to{opacity:.4;transform:scale(.95)}50%{opacity:1;transform:scale(1)}}.landing-loading-text{color:var(--text-muted);font-size:14px;animation:pulse-loading 1.5s ease-in-out infinite}.admin-tabs{display:flex;border-bottom:1px solid var(--border-color);background:var(--bg-card);padding:0 8px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.admin-tabs::-webkit-scrollbar{display:none}.admin-tab{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:12px 8px;background:none;border:none;border-bottom:2px solid transparent;color:var(--text-muted);font-size:14px;font-weight:600;cursor:pointer;transition:var(--transition);font-family:inherit;position:relative}.admin-tab:hover{color:var(--text-secondary)}.admin-tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.tab-badge{position:absolute;top:6px;right:calc(50% - 30px);background:var(--red);color:#fff;font-size:14px;font-weight:700;width:18px;height:18px;border-radius:50%;display:flex;align-items:center;justify-content:center}.admin-content{flex:1;padding:16px;max-width:600px;width:100%;margin:0 auto}.agenda-date-picker{display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:16px}.agenda-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:16px}.stat-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--border-radius-sm);padding:14px;text-align:center}.stat-number{font-size:24px;font-weight:800;display:block}.stat-label{font-size:14px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.stat-pending .stat-number{color:var(--yellow)}.stat-confirmed .stat-number{color:var(--green)}.status-filters{display:flex;gap:8px;margin-bottom:16px;overflow-x:auto;scrollbar-width:none}.status-filters::-webkit-scrollbar{display:none}.filter-chip{padding:8px 16px;border-radius:20px;background:var(--bg-card);border:1px solid var(--border-color);color:var(--text-secondary);font-size:14px;font-weight:500;cursor:pointer;transition:var(--transition);white-space:nowrap;font-family:inherit}.filter-chip:hover{border-color:var(--color-primary)}.filter-chip-active{background:rgba(var(--color-primary-rgb),.15);border-color:var(--color-primary);color:var(--color-primary)}.appointments-list{display:flex;flex-direction:column;gap:10px}.appointment-card{display:flex;align-items:center;gap:14px;padding:14px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--border-radius);border-left:4px solid var(--border-color);transition:var(--transition)}.appointment-pending{border-left-color:var(--yellow)}.appointment-confirmed{border-left-color:var(--green)}.appointment-cancelled{border-left-color:var(--text-muted);opacity:.6}.appt-time{display:flex;flex-direction:column;align-items:center;min-width:48px;flex-shrink:0}.appt-time-start{font-size:16px;font-weight:700}.appt-time-end{font-size:14px;color:var(--text-muted)}.appt-info{flex:1;min-width:0}.appt-customer{font-size:15px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.appt-service{font-size:14px;color:var(--text-secondary)}.appt-status-badge{display:inline-block;padding:3px 10px;border-radius:20px;font-size:14px;font-weight:600;margin-top:4px}.status-pending{background:var(--yellow-bg);color:var(--yellow)}.status-confirmed{background:var(--green-bg);color:var(--green)}.status-cancelled{background:#66668a26;color:var(--text-muted)}.appt-actions{display:flex;gap:6px;flex-shrink:0}.btn-action{width:34px;height:34px;border-radius:8px;border:1px solid var(--border-color);background:var(--bg-surface);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:var(--transition)}.btn-wa{color:#25d366}.btn-wa:hover{background:#25d3661a;border-color:#25d366}.btn-receipt{color:var(--color-primary)}.btn-receipt:hover{background:rgba(var(--color-primary-rgb),.1);border-color:var(--color-primary)}.btn-approve{color:var(--green)}.btn-approve:hover{background:var(--green-bg);border-color:var(--green)}.btn-cancel{color:var(--text-muted)}.btn-cancel:hover{color:var(--red);border-color:var(--red);background:var(--red-bg)}.btn-delete{color:var(--red)}.btn-delete:hover{background:var(--red-bg);border-color:var(--red)}.btn-edit{color:var(--text-secondary)}.btn-edit:hover{color:var(--color-primary);border-color:var(--color-primary)}.agenda-loading,.agenda-empty{text-align:center;padding:40px;color:var(--text-secondary);display:flex;flex-direction:column;align-items:center;gap:8px}.empty-icon{font-size:40px;margin-bottom:8px}.services-manager,.settings-manager{animation:fadeSlideUp .3s ease}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.section-header h2{font-size:18px;font-weight:700}.service-form{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--border-radius);padding:20px;margin-bottom:20px}.service-form h3{font-size:16px;font-weight:600;margin-bottom:4px}.services-list{display:flex;flex-direction:column;gap:8px}.service-item{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--border-radius-sm);transition:var(--transition)}.service-inactive{opacity:.5}.service-item-info h3{font-size:15px;font-weight:600}.service-item-meta{font-size:14px;color:var(--text-secondary);display:flex;gap:6px;align-items:center}.meta-divider{color:var(--text-muted)}.service-item-actions{display:flex;gap:8px;align-items:center}.toggle-btn{width:44px;height:24px;border-radius:12px;border:none;cursor:pointer;position:relative;transition:var(--transition);padding:0}.toggle-on{background:var(--green)}.toggle-off{background:var(--border-color)}.toggle-knob{width:20px;height:20px;border-radius:50%;background:#fff;position:absolute;top:2px;transition:var(--transition)}.toggle-on .toggle-knob{left:22px}.toggle-off .toggle-knob{left:2px}.settings-manager h2{font-size:18px;font-weight:700;margin-bottom:20px}.settings-group{border:1px solid var(--border-color);border-radius:var(--border-radius);padding:20px;margin-bottom:16px;background:var(--bg-card)}.settings-group legend{font-size:14px;font-weight:600;color:var(--color-primary);padding:0 8px}.days-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.day-toggle{padding:10px 4px;border-radius:var(--border-radius-xs);border:1.5px solid var(--border-color);background:var(--bg-surface);color:var(--text-muted);font-size:14px;font-weight:600;cursor:pointer;transition:var(--transition);font-family:inherit}.day-toggle:hover{border-color:var(--color-primary)}.day-toggle-active{background:rgba(var(--color-primary-rgb),.15);border-color:var(--color-primary);color:var(--color-primary)}.public-link-preview{background:var(--bg-surface);border-radius:var(--border-radius-sm);padding:16px;margin-bottom:16px}.public-link-preview label{font-size:14px;color:var(--text-secondary);display:block;margin-bottom:6px}.link-display{font-family:monospace;font-size:14px}.link-base{color:var(--text-muted)}.toast-container{position:fixed;top:16px;right:16px;z-index:999;display:flex;flex-direction:column;gap:8px;pointer-events:none}.toast{padding:14px 20px;border-radius:var(--border-radius-sm);font-size:14px;font-weight:500;pointer-events:all;animation:toastIn .35s cubic-bezier(.16,1,.3,1);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid;max-width:340px}@keyframes toastIn{0%{opacity:0;transform:translate(100px)}to{opacity:1;transform:translate(0)}}.toast-success{background:#22c55e26;border-color:#22c55e4d;color:var(--green)}.toast-error{background:#ef444426;border-color:#ef44444d;color:var(--red)}.toast-info{background:rgba(var(--color-primary-rgb),.15);border-color:rgba(var(--color-primary-rgb),.3);color:var(--color-primary)}@media(min-width:640px){.modal-content{border-radius:20px;margin:auto}.modal-overlay{align-items:center;padding:24px}}.public-logo{width:44px;height:44px;border-radius:12px;-o-object-fit:cover;object-fit:cover;border:2px solid rgba(var(--color-primary-rgb),.3);flex-shrink:0}.public-logo-fallback{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:800;color:#fff;flex-shrink:0}.btn-client-login{display:flex;align-items:center;gap:6px;padding:8px 16px;background:rgba(var(--color-primary-rgb),.12);color:var(--color-primary);border:1.5px solid rgba(var(--color-primary-rgb),.25);border-radius:24px;font-size:14px;font-weight:600;cursor:pointer;transition:var(--transition);font-family:inherit;white-space:nowrap}.btn-client-login:hover{background:rgba(var(--color-primary-rgb),.2);border-color:var(--color-primary)}.btn-client-bookings{width:38px;height:38px;border-radius:10px;background:rgba(var(--color-primary-rgb),.1);border:none;color:var(--color-primary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:var(--transition)}.btn-client-bookings:hover{background:rgba(var(--color-primary-rgb),.25);transform:scale(1.05)}.client-info-chip{display:flex;align-items:center;gap:8px;padding:5px 12px 5px 5px;background:rgba(var(--color-primary-rgb),.1);border-radius:24px;cursor:pointer;transition:var(--transition);border:1px solid rgba(var(--color-primary-rgb),.15)}.client-avatar{width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-hover));display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;color:#fff}.client-name-text{font-size:14px;font-weight:600;color:var(--text-primary);max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.btn-wa-header{width:38px;height:38px;border-radius:10px;background:#25d3661f;display:flex;align-items:center;justify-content:center;color:#25d366;transition:var(--transition);border:none;text-decoration:none}.btn-wa-header:hover{background:#25d36640;transform:scale(1.05);text-decoration:none}.client-login-modal{text-align:center}.client-login-header{margin-bottom:20px}.client-login-icon{width:72px;height:72px;border-radius:50%;background:rgba(var(--color-primary-rgb),.1);display:flex;align-items:center;justify-content:center;margin:0 auto 16px}.client-login-header h2{font-size:22px;font-weight:700;margin-bottom:4px}.login-hint{font-size:14px;color:var(--text-muted);text-align:center;margin-top:-4px}.bookings-modal{max-height:80vh}.bookings-title{font-size:20px;font-weight:700;margin-bottom:4px}.bookings-list{display:flex;flex-direction:column;gap:10px;max-height:50vh;overflow-y:auto}.booking-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--border-radius-sm);padding:14px 16px;position:relative}.booking-card.booking-past{opacity:.5}.booking-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.booking-date{font-size:14px;font-weight:600;color:var(--text-secondary)}.booking-card-body h3{font-size:15px;font-weight:600;margin-bottom:2px}.booking-time{font-size:14px;color:var(--text-secondary)}.booking-cancel{margin-top:10px;color:var(--red)!important;border-color:#ef44444d!important}.booking-cancel:hover{background:var(--red-bg)!important}.btn-manual-booking{width:100%;margin-bottom:12px;padding:12px!important;font-size:15px!important;border-radius:var(--border-radius-sm)!important;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-hover))!important}.btn-lg{padding:16px 24px!important;font-size:16px!important;border-radius:var(--border-radius-sm)!important}.btn-primary.btn-full.btn-lg{min-height:52px;font-size:16px;font-weight:700;letter-spacing:.3px}.service-item-meta span{font-size:14px}.time-slot{min-height:48px;display:flex;align-items:center;justify-content:center;font-size:16px}.calendar-day{min-width:68px;padding:14px 10px}.calendar-day-number{font-size:22px}.appt-status-badge{padding:4px 10px;font-size:14px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.admin-content{padding:0 12px 20px}.text-muted{color:var(--text-secondary);font-size:14px}.btn-sm{padding:8px 16px;font-size:14px}.service-card-icon svg{width:24px;height:24px;stroke:var(--color-primary)}.gallery-section{margin:20px 0 8px;animation:fadeSlideUp .4s ease}.gallery-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.gallery-title{font-size:16px;font-weight:700}.gallery-count{font-size:14px;color:var(--text-muted);background:var(--bg-card);padding:3px 10px;border-radius:20px}.gallery-cover{position:relative;width:100%;aspect-ratio:16 / 10;border-radius:var(--border-radius);overflow:hidden;cursor:pointer;margin-bottom:10px;border:1px solid var(--border-color)}.gallery-cover-img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block;animation:galleryFade .5s ease}@keyframes galleryFade{0%{opacity:0;transform:scale(1.02)}to{opacity:1;transform:scale(1)}}.gallery-cover-overlay{position:absolute;bottom:0;left:0;right:0;padding:8px 12px;background:linear-gradient(transparent,#0009);display:flex;justify-content:flex-end}.gallery-cover-counter{font-size:12px;color:#ffffffd9;background:#0006;padding:2px 8px;border-radius:10px;font-weight:600}.gallery-dots{display:flex;justify-content:center;gap:6px;margin-bottom:10px}.gallery-dot{width:8px;height:8px;border-radius:50%;border:none;background:var(--border-color);cursor:pointer;transition:var(--transition);padding:0}.gallery-dot-active{background:var(--color-primary);width:20px;border-radius:4px}.gallery-scroll{display:flex;gap:6px;overflow-x:auto;padding-bottom:4px;-webkit-overflow-scrolling:touch;scrollbar-width:none}.gallery-scroll::-webkit-scrollbar{display:none}.gallery-thumb{flex-shrink:0;width:64px;height:64px;border-radius:8px;overflow:hidden;border:2px solid var(--border-color);padding:0;cursor:pointer;transition:var(--transition);background:var(--bg-card);opacity:.6}.gallery-thumb-active{border-color:var(--color-primary);opacity:1;box-shadow:0 0 10px rgba(var(--color-primary-rgb),.3)}.gallery-thumb:hover{opacity:1;border-color:var(--color-primary)}.gallery-thumb img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.gallery-lightbox{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000e6;z-index:200;display:flex;align-items:center;justify-content:center;padding:24px;animation:fadeIn .2s ease;cursor:pointer}.gallery-lightbox img{max-width:100%;max-height:85vh;border-radius:var(--border-radius);-o-object-fit:contain;object-fit:contain}.gallery-lightbox-close{position:absolute;top:16px;right:16px;width:44px;height:44px;border-radius:50%;background:#ffffff1a;border:none;color:#fff;font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:var(--transition);z-index:201}.gallery-lightbox-close:hover{background:#ffffff40}.gallery-admin-list{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.gallery-admin-item{position:relative;width:72px;height:72px;border-radius:8px;overflow:hidden;border:1px solid var(--border-color)}.gallery-admin-thumb{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.gallery-admin-item .btn-action{position:absolute;top:2px;right:2px;width:24px;height:24px;border-radius:50%;background:#000000b3;padding:0;min-width:unset}.gallery-add-row{display:flex;gap:8px;align-items:center}.gallery-url-input{flex:1;padding:10px 12px;background:var(--bg-input);border:1.5px solid var(--border-color);border-radius:var(--border-radius-xs);color:var(--text-primary);font-size:14px;font-family:inherit;outline:none}.gallery-url-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb),.15)}.landing-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;min-height:var(--real-vh, 100vh);gap:16px;color:var(--text-secondary)}.landing-page{min-height:100vh;min-height:var(--real-vh, 100vh);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.landing-bg{position:absolute;top:0;right:0;bottom:0;left:0;background:url(/barber-bg.png) center / cover no-repeat,radial-gradient(ellipse at 20% 50%,rgba(var(--color-primary-rgb),.12),transparent 60%),radial-gradient(ellipse at 80% 20%,rgba(var(--color-primary-rgb),.08),transparent 50%),var(--bg-dark);z-index:0}.landing-bg:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#0000004d,#0000001a 30%,#0000001a 70%,#0006)}.landing-container{position:relative;z-index:1;width:100%;max-width:420px;padding:32px 20px;display:flex;flex-direction:column;align-items:center;gap:32px;animation:fadeSlideUp .5s ease}.landing-brand{display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center}.landing-logo{width:110px;height:110px;border-radius:24px;-o-object-fit:contain;object-fit:contain;background:#0006;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:2px solid rgba(var(--color-primary-rgb),.35);box-shadow:0 0 40px rgba(var(--color-primary-rgb),.25),0 8px 32px #0006;padding:6px}.landing-logo-fallback{width:110px;height:110px;border-radius:24px;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-hover));display:flex;align-items:center;justify-content:center;font-size:42px;font-weight:800;color:#fff;box-shadow:0 0 40px rgba(var(--color-primary-rgb),.35),0 8px 32px #0000004d}.landing-title{font-size:28px;font-weight:800;letter-spacing:-.5px}.landing-category{font-size:14px;color:var(--text-secondary);background:rgba(var(--color-primary-rgb),.1);padding:4px 14px;border-radius:20px;font-weight:500}.landing-actions{display:flex;flex-direction:column;gap:14px;width:100%}.landing-card{display:flex;align-items:center;gap:16px;padding:22px 20px;background:#ffffff0a;border:1.5px solid rgba(255,255,255,.08);border-radius:18px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);color:var(--text-primary);font:inherit;text-align:left;width:100%;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.landing-card:hover{background:rgba(var(--color-primary-rgb),.08);border-color:rgba(var(--color-primary-rgb),.25);transform:translateY(-2px);box-shadow:0 8px 32px rgba(var(--color-primary-rgb),.12)}.landing-card:active{transform:translateY(0)}.landing-card-icon{width:52px;height:52px;border-radius:14px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.landing-card-client .landing-card-icon{background:linear-gradient(135deg,rgba(var(--color-primary-rgb),.2),rgba(var(--color-primary-rgb),.08));color:var(--color-primary)}.landing-card-pro .landing-card-icon{background:#ffffff0f;color:var(--text-secondary)}.landing-card-text{flex:1;min-width:0}.landing-card-text h2{font-size:17px;font-weight:700}.landing-card-text p{font-size:14px;color:var(--text-secondary);margin-top:2px}.landing-card-arrow{font-size:20px;color:var(--text-muted);flex-shrink:0;transition:var(--transition)}.landing-card:hover .landing-card-arrow{color:var(--color-primary);transform:translate(3px)}.landing-social{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:center}.landing-social-link{width:40px;height:40px;border-radius:12px;background:#ffffff0d;border:1px solid rgba(255,255,255,.08);display:flex;align-items:center;justify-content:center;color:var(--text-secondary);transition:var(--transition)}.landing-social-link:hover{color:var(--color-primary);background:rgba(var(--color-primary-rgb),.1);border-color:rgba(var(--color-primary-rgb),.2);text-decoration:none}.landing-address{font-size:14px;color:var(--text-muted);text-align:center}.landing-footer{font-size:14px;color:var(--text-muted)}.landing-footer strong{color:var(--text-secondary)}.professionals-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}.professional-card{display:flex;flex-direction:column;align-items:center;gap:10px;padding:20px 14px;background:var(--bg-card);border:1.5px solid var(--border-color);border-radius:var(--border-radius);cursor:pointer;transition:var(--transition);position:relative;text-align:center;color:var(--text-primary);font:inherit;width:100%}.professional-card:hover{border-color:rgba(var(--color-primary-rgb),.3);transform:translateY(-2px);box-shadow:var(--shadow-glow)}.professional-card-selected{border-color:var(--color-primary)!important;background:rgba(var(--color-primary-rgb),.08);box-shadow:var(--shadow-glow)}.professional-avatar{width:64px;height:64px;border-radius:50%;overflow:hidden;border:2px solid var(--border-color);flex-shrink:0}.professional-card-selected .professional-avatar{border-color:var(--color-primary)}.professional-avatar img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.professional-avatar-fallback{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-hover));font-size:24px;font-weight:700;color:#fff}.professional-info{display:flex;flex-direction:column;gap:2px}.professional-name{font-size:15px;font-weight:600}.professional-specialty{font-size:14px;color:var(--text-secondary)}.professional-check{position:absolute;top:8px;right:8px;width:28px;height:28px;background:var(--color-primary);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;animation:popIn .3s ease}.professional-list-avatar{width:40px;height:40px;border-radius:50%;overflow:hidden;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-hover));color:#fff;font-size:16px;font-weight:700}.professional-list-avatar img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.public-header-left{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.public-header-right{display:flex;align-items:center;gap:8px;flex-shrink:0}.public-logo{width:40px;height:40px;border-radius:10px;-o-object-fit:cover;object-fit:cover;border:1.5px solid rgba(var(--color-primary-rgb),.3);flex-shrink:0}.public-logo-fallback{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:800;color:#fff;flex-shrink:0}.public-name{font-size:17px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.public-content{flex:1;padding:0 16px 24px;max-width:600px;width:100%;margin:0 auto}.btn-back{width:36px;height:36px;border-radius:10px;background:rgba(var(--color-primary-rgb),.1);border:none;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:var(--transition);flex-shrink:0}.btn-back:hover{color:var(--color-primary);background:rgba(var(--color-primary-rgb),.2)}.btn-client-login{display:flex;align-items:center;gap:6px;padding:8px 14px;background:rgba(var(--color-primary-rgb),.1);border:1px solid rgba(var(--color-primary-rgb),.2);border-radius:10px;color:var(--color-primary);font-size:14px;font-weight:600;cursor:pointer;transition:var(--transition);font-family:inherit}.btn-client-login:hover{background:rgba(var(--color-primary-rgb),.2)}.btn-icon{background:none;border:none;cursor:pointer;color:var(--text-secondary);transition:var(--transition);padding:4px}.btn-icon:hover{color:var(--text-primary)}.btn-wa-header{width:36px;height:36px;border-radius:10px;background:#22c55e1a;color:var(--green);display:flex;align-items:center;justify-content:center}.btn-wa-header:hover{background:#22c55e33;text-decoration:none}.client-header-actions{display:flex;align-items:center;gap:8px}.btn-client-bookings{width:36px;height:36px;border-radius:10px;background:rgba(var(--color-primary-rgb),.1);border:none;color:var(--color-primary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:var(--transition)}.btn-client-bookings:hover{background:rgba(var(--color-primary-rgb),.2)}.client-info-chip{display:flex;align-items:center;gap:6px;padding:4px 12px 4px 4px;background:rgba(var(--color-primary-rgb),.1);border-radius:20px;cursor:pointer;transition:var(--transition)}.client-info-chip:hover{background:rgba(var(--color-primary-rgb),.2)}.client-avatar{width:28px;height:28px;border-radius:50%;background:var(--color-primary);display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;color:#fff}.client-name-text{font-size:14px;font-weight:600;color:var(--text-primary)}.admin-header-left{display:flex;align-items:center;gap:10px;flex:1;min-width:0}.admin-slug{font-size:14px;color:var(--text-muted);font-weight:500}.admin-role-badge{font-size:14px;font-weight:600;padding:2px 8px;border-radius:6px;background:rgba(var(--color-primary-rgb),.15);color:var(--color-primary);text-transform:uppercase;letter-spacing:.5px}.prof-filter{margin-bottom:12px}.prof-filter-select{width:100%;padding:10px 12px;background:var(--bg-input);border:1.5px solid var(--border-color);border-radius:var(--border-radius-xs);color:var(--text-primary);font-size:14px;font-family:inherit;outline:none;cursor:pointer}.prof-filter-select:focus{border-color:var(--color-primary)}.appt-professional{font-size:14px;color:var(--text-muted);display:flex;align-items:center;gap:4px;margin-top:2px}.btn-manual-booking{margin-bottom:12px}.meta-badge-off{font-size:14px;padding:1px 6px;border-radius:4px;background:var(--red-bg);color:var(--red);font-weight:600}.btn-link{background:none;border:none;color:var(--text-muted);font-size:14px;cursor:pointer;padding:8px 0;font-family:inherit;transition:var(--transition)}.btn-link:hover{color:var(--color-primary)}.btn-full{width:100%}.btn-lg{padding:14px 24px!important;font-size:16px!important}.setup-card{max-width:440px}.color-picker-row{display:flex;align-items:center;gap:10px}.color-input{width:44px;height:36px;border:none;border-radius:8px;cursor:pointer;background:none;padding:0}.color-hex{font-size:14px;font-family:monospace;color:var(--text-secondary)}.landing-scroll{position:relative;z-index:1;width:100%;max-width:480px;margin:0 auto;padding:32px 20px 40px;display:flex;flex-direction:column;gap:28px;min-height:100vh;min-height:var(--real-vh, 100vh)}.landing-hero{display:flex;flex-direction:column;align-items:center;gap:28px;padding-top:20px;animation:fadeSlideUp .5s ease}.landing-slogan{font-size:15px;color:var(--text-secondary);text-align:center;font-style:italic;max-width:320px}.landing-section{background:#1a1a2eb3;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.06);border-radius:18px;padding:24px;animation:fadeSlideUp .4s ease;box-shadow:0 8px 32px #0000004d,inset 0 1px #ffffff0a}.section-icon{font-size:28px;text-align:center;margin-bottom:8px}.section-title{font-size:18px;font-weight:700;text-align:center;margin-bottom:16px}.section-empty{text-align:center;color:var(--text-muted);font-size:14px;padding:16px 0}.notice-board{width:100%;display:flex;flex-direction:column;align-items:center;gap:8px}.notice-card{display:flex;align-items:flex-start;gap:12px;width:100%;padding:16px 18px;background:rgba(var(--color-primary-rgb),.08);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(var(--color-primary-rgb),.15);border-left:4px solid var(--color-primary);border-radius:14px;animation:noticeSlide .35s ease}@keyframes noticeSlide{0%{opacity:0;transform:translate(12px)}to{opacity:1;transform:translate(0)}}.notice-icon{font-size:22px;flex-shrink:0;margin-top:1px}.notice-content{flex:1;min-width:0}.notice-title{font-size:14px;font-weight:700;color:var(--text-primary);margin:0 0 4px}.notice-message{font-size:14px;color:var(--text-secondary);margin:0;line-height:1.4}.notice-dots{display:flex;gap:6px;justify-content:center}.notice-dot{width:7px;height:7px;border-radius:50%;border:none;background:rgba(var(--color-primary-rgb),.25);cursor:pointer;padding:0;transition:var(--transition)}.notice-dot-active{background:var(--color-primary);transform:scale(1.3)}.social-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}.social-card{display:flex;align-items:center;gap:10px;padding:14px 20px;border-radius:12px;font-size:14px;font-weight:600;transition:var(--transition);color:#fff;flex:1 1 auto;max-width:calc(50% - 5px);justify-content:center}.social-card:hover{transform:translateY(-1px);text-decoration:none;opacity:.9}.social-whatsapp{background:linear-gradient(135deg,#25d366,#128c7e)}.social-instagram{background:linear-gradient(135deg,#e1306c,#c13584,#833ab4)}.social-facebook{background:linear-gradient(135deg,#1877f2,#0c5dc7)}.social-tiktok{background:linear-gradient(135deg,#010101,#25f4ee);color:#fff}.hours-grid{display:flex;flex-direction:column;gap:2px}.hours-row{display:grid;grid-template-columns:90px 1fr;align-items:center;padding:10px 14px;border-radius:8px;font-size:14px;transition:var(--transition)}.hours-row:nth-child(odd){background:#ffffff05}.hours-today{background:rgba(var(--color-primary-rgb),.08)!important;border:1px solid rgba(var(--color-primary-rgb),.2)}.hours-today .hours-day{color:var(--color-primary);font-weight:700}.hours-closed .hours-time{color:var(--red);opacity:.7}.hours-day{font-weight:600;color:var(--text-primary)}.hours-time{color:var(--text-secondary);font-family:monospace;font-size:.92em;text-align:right}.hours-periods{display:flex;flex-direction:column;gap:2px}.hours-periods .hours-time{text-align:right;font-size:.88em}.hours-periods .hours-time:first-child:after{content:" (manhã)";color:var(--text-muted);font-family:inherit;font-size:.9em}.hours-periods .hours-time:last-child:after{content:" (tarde)";color:var(--text-muted);font-family:inherit;font-size:.9em}.map-container{border-radius:var(--border-radius);overflow:hidden;margin-bottom:12px;border:1px solid var(--border-color)}.map-address{font-size:14px;color:var(--text-secondary);text-align:center;margin-bottom:12px}.btn-directions{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px;background:rgba(var(--color-primary-rgb),.1);border:1px solid rgba(var(--color-primary-rgb),.2);border-radius:10px;color:var(--color-primary);font-size:14px;font-weight:600;transition:var(--transition)}.btn-directions:hover{background:rgba(var(--color-primary-rgb),.2);text-decoration:none}.map-static-link{display:block;text-decoration:none}.map-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:32px 20px;background:var(--bg-surface);border-radius:var(--border-radius);transition:var(--transition)}.map-placeholder:hover{background:rgba(var(--color-primary-rgb),.08)}.map-placeholder span{font-size:14px;font-weight:600;color:var(--color-primary)}.reviews-summary{display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:16px;padding:12px;background:rgba(var(--color-primary-rgb),.06);border-radius:12px}.reviews-avg{font-size:32px;font-weight:800;color:var(--color-primary)}.reviews-stars{font-size:18px;color:#ffc107;letter-spacing:2px}.reviews-count{font-size:14px;color:var(--text-muted)}.reviews-list{display:flex;flex-direction:column;gap:10px;margin-bottom:16px}.review-card{background:var(--bg-surface);border-radius:12px;padding:14px}.review-header{display:flex;align-items:center;gap:10px;margin-bottom:8px}.review-avatar{width:36px;height:36px;border-radius:50%;background:var(--color-primary);display:flex;align-items:center;justify-content:center;font-size:15px;font-weight:700;color:#fff;flex-shrink:0}.review-meta{display:flex;flex-direction:column}.review-name{font-size:14px;font-weight:600}.review-stars-sm{font-size:14px;color:#ffc107;letter-spacing:1px}.review-comment{font-size:14px;color:var(--text-secondary);line-height:1.5}.btn-review-add{width:100%;padding:12px;background:rgba(var(--color-primary-rgb),.08);border:1.5px dashed rgba(var(--color-primary-rgb),.3);border-radius:12px;color:var(--color-primary);font-size:14px;font-weight:600;cursor:pointer;transition:var(--transition);font-family:inherit}.btn-review-add:hover{background:rgba(var(--color-primary-rgb),.15);border-color:var(--color-primary)}.review-submitted{text-align:center;padding:20px;color:var(--green);font-size:14px;display:flex;flex-direction:column;align-items:center;gap:8px}.review-form{display:flex;flex-direction:column;gap:12px}.review-form textarea{resize:vertical;min-height:70px}.rating-picker{display:flex;gap:4px}.rating-star{width:40px;height:40px;border-radius:8px;background:var(--bg-surface);border:1px solid var(--border-color);font-size:20px;color:var(--text-muted);cursor:pointer;transition:var(--transition);font-family:inherit;display:flex;align-items:center;justify-content:center}.rating-star-active{background:#ffc10726;border-color:#ffc107;color:#ffc107}.theme-selector-title{font-size:16px;font-weight:700;margin-bottom:4px}.theme-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.theme-card{position:relative;display:flex;flex-direction:column;gap:8px;padding:12px;background:var(--bg-surface);border:2px solid var(--border-color);border-radius:14px;cursor:pointer;transition:var(--transition);color:var(--text-primary);font:inherit;text-align:left}.theme-card:hover{border-color:var(--theme-preview-primary, var(--color-primary));transform:translateY(-1px)}.theme-card-selected{border-color:var(--theme-preview-primary, var(--color-primary))!important;background:rgba(var(--color-primary-rgb),.05);box-shadow:0 0 20px rgba(var(--color-primary-rgb),.1)}.theme-preview{height:60px;border-radius:8px;background:var(--theme-preview-bg, #0f0f1a);padding:8px;display:flex;flex-direction:column;gap:6px;overflow:hidden}.theme-preview-bar{height:8px;width:70%;border-radius:4px;background:var(--theme-preview-primary, #6C63FF)}.theme-preview-dots{display:flex;gap:4px}.theme-dot{width:10px;height:10px;border-radius:50%}.theme-dot-1{background:var(--theme-preview-primary, #6C63FF)}.theme-dot-2{background:var(--theme-preview-secondary, #9999b3)}.theme-info{display:flex;align-items:center;gap:6px}.theme-icon{font-size:18px}.theme-name{font-size:14px;font-weight:600}.theme-check{position:absolute;top:8px;right:8px;width:22px;height:22px;background:var(--color-primary);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:14px;font-weight:700;animation:popIn .3s ease}.settings-tabs{display:flex;gap:4px;overflow-x:auto;margin-bottom:16px;-webkit-overflow-scrolling:touch;scrollbar-width:none}.settings-tabs::-webkit-scrollbar{display:none}.settings-tab{display:flex;align-items:center;gap:4px;padding:8px 12px;white-space:nowrap;border-radius:10px;background:var(--bg-surface);border:1px solid var(--border-color);color:var(--text-secondary);font-size:14px;font-weight:500;cursor:pointer;transition:var(--transition);font-family:inherit}.settings-tab:hover{background:var(--bg-card-hover);color:var(--text-primary)}.settings-tab-active{background:rgba(var(--color-primary-rgb),.1)!important;border-color:rgba(var(--color-primary-rgb),.3)!important;color:var(--color-primary)!important;font-weight:600}.subsection-title{font-size:14px;font-weight:600;color:var(--text-secondary);margin-top:16px;margin-bottom:8px;padding-top:12px;border-top:1px solid var(--border-color)}.form-hint{font-size:14px;color:var(--text-muted);margin-top:4px}.landing-toggles{display:flex;flex-direction:column;gap:4px}.toggle-row{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-radius:10px;cursor:pointer;transition:var(--transition)}.toggle-row:hover{background:#ffffff05}.toggle-label{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:500}.toggle-icon{font-size:18px}.toggle-switch{width:44px;height:24px;border-radius:12px;background:var(--border-color);position:relative;transition:var(--transition);cursor:pointer;flex-shrink:0}.toggle-switch.toggle-on{background:var(--color-primary)}.toggle-thumb{position:absolute;top:2px;left:2px;width:20px;height:20px;border-radius:50%;background:#fff;transition:var(--transition)}.toggle-switch.toggle-on .toggle-thumb{left:22px}.form-actions{display:flex;justify-content:flex-end;gap:8px}.btn-outline{padding:8px 16px;background:transparent;border:1.5px solid var(--border-color);border-radius:var(--border-radius-xs);color:var(--text-secondary);font-size:14px;font-weight:600;cursor:pointer;transition:var(--transition);font-family:inherit}.btn-outline:hover{border-color:var(--color-primary);color:var(--color-primary)}.goal-reached-alert{display:flex;align-items:center;gap:12px;padding:14px 16px;background:#ffc10714;border:1px solid rgba(255,193,7,.25);border-radius:12px;margin-bottom:12px;animation:fadeSlideUp .3s ease}.goal-icon{font-size:28px;flex-shrink:0}.goal-reached-alert strong{display:block;font-size:14px;color:#ffc107;margin-bottom:2px}.goal-reached-alert p{font-size:13px;color:var(--text-secondary);margin:0}.occupancy-bar-container{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--border-radius);padding:12px 16px;margin-top:8px}.occupancy-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.occupancy-label{font-size:13px;font-weight:600;color:var(--text-secondary)}.occupancy-count{font-size:14px;font-weight:700;color:var(--color-primary);font-family:monospace}.occupancy-track{height:8px;background:var(--bg-surface);border-radius:4px;overflow:hidden}.occupancy-fill{height:100%;background:var(--green);border-radius:4px;transition:width .5s ease,background .3s ease;min-width:4px}.occupancy-fill.occupancy-high{background:#ffc107}.occupancy-fill.occupancy-full{background:var(--red)}.occupancy-meta-msg{display:block;text-align:center;font-size:12px;color:var(--green);font-weight:600;margin-top:6px}
