/* Visual original do studio, com componentes locais e responsivos. */
:root{--ink:#1f2937;--muted:#9ca3af;--cream:#f9fafb;--line:#e5e7eb;--olive:#ec4899;--sage:#fdf2f8;--red:#ef4444;--radius:24px}
[hidden]{display:none!important}body{font-family:Arial,Helvetica,sans-serif;color:#1f2937}h1,h2,h3{font-family:Arial,Helvetica,sans-serif;font-weight:700;letter-spacing:-.5px}h1{font-size:32px;letter-spacing:-1px}h2{font-size:22px}h3{font-size:17px}p{color:#6b7280}.eyebrow{font-size:10px;letter-spacing:1.5px;color:#9ca3af}.btn{background:#ec4899;border-color:#ec4899;border-radius:12px;font-size:14px;font-weight:700;box-shadow:0 4px 10px #ec489930;gap:9px}.btn:hover{background:#db2777}.btn.secondary{background:white;box-shadow:0 2px 4px #1f293708;color:#4b5563}.btn.secondary:hover{background:#f9fafb;border-color:#f9a8d4}.btn.subtle-danger{box-shadow:none;background:#fef2f2;color:#ef4444;border-color:#fecaca}.btn.danger{box-shadow:none;background:#ef4444;border-color:#ef4444}.btn:disabled{box-shadow:none}.panel{border-color:#f0f1f3;box-shadow:0 2px 4px #1f293706}.main{max-width:1280px}.admin .main{margin:0 auto;max-width:1280px;padding:32px}.admin .footer{margin-left:0}.footer{padding:25px 20px;color:#9ca3af;font-size:12px}.admin-header{position:sticky;top:0;background:white;box-shadow:0 2px 3px #1f29370a;z-index:20}.admin-header-inner{max-width:1280px;position:relative;padding:16px 32px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:20px}.admin-brand{display:flex;align-items:center;gap:18px}.admin-brand img{width:58px;height:58px;object-fit:contain;background:#aaa9a5;border-radius:8px;border:1px solid #f3f4f6}.admin-brand span{font-size:23px;font-weight:700;border-left:1px solid var(--line);padding-left:18px}.header-actions{display:flex;gap:8px}.header-actions .btn{font-size:14px}.header-actions .customer-btn{color:#9333ea;border-color:#f3e8ff}.header-actions .expense-btn{color:#ef4444;border-color:#fee2e2}.mobile-word{display:none}.studio-menu{display:none;position:absolute;right:32px;top:calc(100% - 8px);width:300px;max-height:calc(100vh - 120px);max-height:calc(100dvh - 120px);overflow:auto;border:1px solid var(--line);border-radius:16px;background:white;box-shadow:0 12px 30px #1f293726;padding:8px}.menu-open .studio-menu{display:block}.studio-menu a,.studio-menu button{display:block;font-size:14px;width:100%;text-align:left;min-height:44px;padding:11px 15px;border-radius:8px;color:#4b5563}.studio-menu a:hover,.studio-menu button:hover{background:#fdf2f8;color:#db2777;text-decoration:none}.menu-open:after{display:none}.public-header{display:block;padding:0;max-width:none;background:white;box-shadow:0 2px 3px #1f29370a;position:sticky;top:0;z-index:10}.public-header-inner{max-width:448px;margin:auto;padding:16px 24px;display:flex;align-items:center;justify-content:space-between}.original-brand{display:flex;align-items:center;gap:12px}.original-brand img{width:42px;height:42px;border-radius:50%;object-fit:contain;background:#aaa9a5;border:1px solid var(--line)}.original-brand>span{font-size:14px;font-weight:700}.original-brand small{display:block;font-size:8px;background:#fdf2f8;color:#ec4899;font-weight:700;letter-spacing:1px;line-height:1.6;width:fit-content;padding:1px 5px;border-radius:4px}.public-header .quiet-link{font-size:24px;color:#9ca3af;min-width:44px;justify-content:center}.public .main.original-index{max-width:448px;padding:26px 24px 60px}.original-intro{text-align:center;margin:0 0 24px}.original-intro h1{font-size:24px;letter-spacing:-.4px;margin:0 0 6px}.original-intro p{font-size:14px;color:#9ca3af;margin:0}.category-tabs{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-bottom:28px}.category-tab{border:1px solid var(--line);background:white;color:#6b7280;border-radius:30px;padding:9px 18px;min-height:44px;font-size:13px;font-weight:700}.category-tab.active{background:#ec4899;border-color:#ec4899;color:white;box-shadow:0 3px 10px #ec489930}.original-category-title{font-size:11px;text-transform:uppercase;letter-spacing:1.5px;color:#ec4899;margin-bottom:12px}.original-service{display:flex;align-items:center;justify-content:space-between;gap:15px;background:white;border:1px solid #f3f4f6;border-radius:16px;box-shadow:0 2px 3px #1f293706;padding:20px;margin-bottom:16px}.original-service:hover{border-color:#fbcfe8}.original-service>div{min-width:0}.original-service h3{font-size:16px;letter-spacing:0;margin:0 0 6px;line-height:1.4}.original-service-meta{display:flex;align-items:center;gap:13px;font-size:11px;color:#9ca3af}.original-service-meta strong{font-size:14px;color:#ec4899}.schedule-icon{display:flex;align-items:center;justify-content:center;width:44px;min-width:44px;height:44px;border-radius:50%;background:#fdf2f8;color:#ec4899;font-size:22px}.schedule-icon:hover{background:#ec4899;color:white;text-decoration:none}.public .main{padding-top:24px}.public:has(.booking-layout) .main{max-width:520px}.booking-layout{display:block;background:white;border:1px solid #f3f4f6;border-radius:24px;overflow:hidden;box-shadow:0 14px 35px #1f29371c;padding:0}.original-booking-title{padding:30px;text-align:center;background:#fdf2f8}.original-booking-title>span{font-size:10px;font-weight:700;color:#9ca3af;letter-spacing:2px}.original-booking-title h1{font-size:22px;color:#db2777;line-height:1.4;margin:8px 0 16px;letter-spacing:0}.original-booking-title>div{display:inline-flex;align-items:center;gap:20px;background:white;border:1px solid #fce7f3;border-radius:25px;padding:8px 17px;font-size:11px;color:#9ca3af}.original-booking-title strong{font-size:14px;color:#16a34a}.booking-panel{border:0;box-shadow:none;margin:0;padding:26px}.booking-panel legend{font-size:16px;color:#374151;font-weight:700}.step-number{color:#ec4899;background:#fdf2f8;border-color:#fce7f3}.city-option input:checked+span{background:white;border-color:#fbcfe8;color:#db2777;box-shadow:0 2px 6px #1f293710}.city-options{background:#f3f4f6;padding:6px;border-radius:12px;gap:6px}.city-option>span{background:transparent;border-color:transparent;padding:12px;font-weight:700}.city-option small{font-weight:400}.calendar-days>button{border-color:#fbcfe8;background:#fdf2f8;color:#db2777;font-weight:700}.calendar-days>button.selected{background:#ec4899;color:white;border-color:#ec4899}.calendar-days>button:after{background:#ec4899}.calendar-days>button.selected:after{background:white}.calendar-days>button:disabled{background:#f9fafb;color:#c2c6cc}.calendar-status{color:#db2777}.time-options button.selected{background:#ec4899;border-color:#ec4899}.reservation-review{background:#fdf2f8;color:#9d174d}.date-chips>span,.date-chips>button{border-color:#fbcfe8;color:#db2777;background:#fdf2f8}.notice{background:#fdf2f8;border-color:#fce7f3;color:#9d174d}.notice.success{background:#f0fdf4;border-color:#bbf7d0;color:#15803d}.field>label{color:#6b7280;font-weight:700;font-size:12px}input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea{background:#f9fafb;border-radius:12px}.login-card{padding:34px;border-radius:30px;box-shadow:0 15px 30px #00000018}.original-login{background:#541b31;min-height:100vh}.original-login .public-header{display:none}.original-login .footer{color:#c8a9b3;border:0}.original-login .login-main{min-height:80vh;min-height:80dvh;align-items:center;padding-top:40px!important}.login-logo{width:140px;height:140px;border-radius:50%;background:#aaa9a5;border:3px solid white;box-shadow:0 12px 25px #1f29371a;margin-bottom:20px;object-fit:contain}.login-card h1{font-size:25px}.login-card .eyebrow{font-size:12px;letter-spacing:2px}.login-card .btn{background:#541b31;border-color:#541b31;box-shadow:0 6px 12px #541b3140;font-size:17px;min-height:58px}.metric{box-shadow:0 2px 4px #1f293708;border-color:#f3f4f6;border-radius:18px;position:relative;overflow:hidden}.metric>strong{font-family:Arial,sans-serif;font-weight:700;font-size:34px;position:relative}.metric>span{font-weight:700;text-transform:uppercase;font-size:11px;letter-spacing:1px;position:relative}.metric>small{position:relative}.metric.dark{background:white;color:#1f2937;border-color:#f3e8ff}.metric.dark>span,.metric.dark>small{color:#a855f7}.metric:before{content:'';width:90px;height:90px;position:absolute;top:0;right:0;border-radius:0 0 0 100%;background:#faf5ff}.dashboard-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-metrics .metric:first-child{border-color:#dcfce7}.dashboard-metrics .metric:first-child>span{color:#16a34a}.dashboard-metrics .metric:first-child:before{background:#f0fdf4}.dashboard-metrics .metric:nth-child(2){border-color:#fee2e2}.dashboard-metrics .metric:nth-child(2)>span{color:#ef4444}.dashboard-metrics .metric:nth-child(2):before{background:#fef2f2}.original-dashboard-columns{grid-template-columns:minmax(0,1.65fr) minmax(0,1fr)}.cash-chart{width:100%;display:block;min-height:220px}.appointment{border-radius:16px;border:1px solid #f3f4f6;border-left:4px solid #ec4899;margin-bottom:12px;padding:15px;gap:12px}.appointment:last-child{border:1px solid #f3f4f6;border-left:4px solid #ec4899}.appointment-time{background:#f9fafb;border:1px solid var(--line);border-radius:9px;padding:8px 5px;color:#374151;font-size:16px;align-self:center}.appointment-actions{max-width:170px}.appointment-copy .badge.good{color:#16a34a;border-color:#bbf7d0;background:#f0fdf4}.city-card h2{font-family:Arial,sans-serif;font-weight:700;font-size:25px}.date-tile{background:#fdf2f8;color:#ec4899}.date-tile strong{font-family:Arial,sans-serif;font-weight:700;font-size:23px}.badge{color:#6b7280}.admin-day.today>strong{background:#ec4899}.admin-day.blocked{background:#fff1f2}.admin-day:hover{background:#fdf2f8}.day-event{border-color:#ec4899}.day-event.paid{color:#16a34a}.calendar-header h2{font-weight:600}.icon-btn:hover{background:#fdf2f8}.success-card h1{font-family:Arial,sans-serif;font-size:30px}.success-icon{background:#f0fdf4;color:#16a34a}.avatar{background:#faf5ff;color:#9333ea;font-family:Arial,sans-serif;font-weight:700}.tip{background:#f9fafb}.tabs a[aria-current=page]{background:#ec4899}.tip strong{color:#374151}
@media(max-width:960px){.header-actions .btn{padding:10px 13px;font-size:12px}.admin-brand span{font-size:20px}.original-dashboard-columns{grid-template-columns:1fr}.admin-header-inner{padding:16px 24px}.studio-menu{right:24px}.dashboard-metrics .metric>strong{font-size:29px}}
@media(max-width:760px){.admin-header-inner{flex-direction:column;align-items:start;gap:16px;padding:16px 20px}.admin-brand img{width:50px;height:50px}.admin-brand span{font-size:23px}.header-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));width:100%;gap:8px}.header-actions .btn{padding:10px 5px;font-size:11px;gap:5px;white-space:nowrap;min-height:44px}.desktop-word{display:none}.mobile-word{display:inline}.studio-menu{right:20px;top:calc(100% - 6px);width:calc(100% - 40px);max-height:calc(100dvh - 180px)}.admin .main{padding:26px 20px}.public .main{padding-top:20px}.public-header-inner{padding:14px 24px}.dashboard-metrics{grid-template-columns:1fr 1fr 1fr}.dashboard-metrics .metric{padding:17px}.dashboard-metrics .metric>strong{font-size:24px}.dashboard-metrics .metric>span{font-size:9px}.public .main.original-index{padding-top:26px}.booking-panel{padding:24px}.original-booking-title{padding:27px}.panel{padding:25px}.page-heading h1{font-size:29px}.page-heading p{font-size:14px}}
@media(max-width:520px){.dashboard-metrics{grid-template-columns:1fr}.dashboard-metrics .metric{padding:22px}.dashboard-metrics .metric>strong{font-size:35px}.dashboard-metrics .metric>span{font-size:11px}.metric>strong{font-size:27px}.original-intro h1{font-size:23px}.category-tabs{gap:8px}.category-tab{padding:9px 15px;font-size:12px}.public .main.original-index{padding-left:24px;padding-right:24px}.public-header-inner{padding:14px 24px}.original-service{padding:20px;gap:12px}.original-service h3{font-size:15px}.original-service-meta{gap:12px}.booking-panel{padding:24px 19px}.booking-panel legend{font-size:16px}.original-booking-title h1{font-size:21px}.public:has(.booking-layout) .main{padding-left:16px;padding-right:16px}.booking-calendar .calendar-header h3{font-size:16px}.city-option>span{padding:12px 8px;font-size:12px}.login-card{padding:32px 24px}.original-login .main{padding-left:16px;padding-right:16px}.form-actions{grid-template-columns:1fr}.calendar-days>button{font-size:13px}.appointment-actions{max-width:none}.admin-brand span{padding-left:17px}.metric.dark>strong{font-size:27px}.dashboard-metrics .metric.dark>strong{font-size:35px}.city-card h2{font-size:24px}.filter-bar .field{flex-basis:42%}.original-category-title{font-size:10px}.footer{font-size:11px}.public-header{padding:0}}

body,h1,h2,h3{font-family:Inter,Arial,sans-serif}.menu-card>i{color:#ec4899;font-size:26px;margin-bottom:22px}.menu-card h2{font-size:20px}.menu-card p{font-size:13px}.menu-card:hover{text-decoration:none;border-color:#fbcfe8}

.agenda-views{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:20px}.agenda-views a{padding:10px 14px;min-height:44px;border:1px solid #e5e7eb;background:#fff;color:#374151;border-radius:8px;font-weight:600}.agenda-views a.active{background:#293d50;color:#fff;border-color:#293d50}.agenda-group{padding:18px 0;border-top:1px solid #edf0f3}.agenda-group h3{margin-bottom:12px}

/* Ajustes solicitados: escolhas compactas e resumo próximo ao botão. */
.booking-panel .city-options{display:flex;flex-wrap:wrap;padding:4px;gap:4px}.booking-panel .city-option{flex:1 1 auto}.booking-panel .city-option>span{min-height:44px;padding:10px 12px;font-size:13px;line-height:22px;text-align:center}.booking-panel .city-option>span i{margin-right:4px}.booking-panel fieldset{margin-bottom:22px}.booking-panel fieldset:last-of-type{margin-bottom:12px}.booking-panel fieldset:last-of-type .field:last-child{margin-bottom:0}.booking-panel .reservation-review{padding:12px 16px;margin-bottom:14px}.booking-panel .privacy-note{margin-top:14px;margin-bottom:0}.booking-panel .form-grid{display:block}
