.booking-page{min-height:100vh;background:radial-gradient(circle at 90% 0%,#372617 0%,#090807 38%);color:var(--white)}.booking-header{max-width:1160px;margin:auto;padding:22px 28px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #ad874333}.back-link{color:var(--gold-light);font-size:14px}.booking-main{max-width:1160px;margin:auto;padding:50px 28px 90px}.booking-intro{margin-bottom:34px}.booking-intro h1,.admin-heading h1,.login-panel h1{font:600 clamp(38px,6vw,66px)/1.08 'Playfair Display',serif;margin:8px 0 12px}.booking-intro h1 em,.admin-heading h1 em,.login-panel h1 em{color:var(--gold-light);font-style:normal}.booking-intro>p:last-child{color:#c9c0b3}.booking-layout{display:grid;grid-template-columns:1fr 1fr;gap:20px}.booking-panel{background:#17120e;border:1px solid #73563678;border-radius:18px;padding:25px;min-width:0;box-shadow:0 16px 40px #0003}.step-title{display:flex;align-items:center;gap:14px;margin-bottom:22px}.step-title span{width:32px;height:32px;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;font-size:12px;color:var(--gold-light)}.step-title h2,.service-form h2{font:600 27px 'Playfair Display',serif;margin:0}.booking-services{display:grid;gap:10px}.booking-choice{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;padding:16px;border:1px solid #695239;border-radius:10px;color:var(--white);background:#231b15;text-align:left;cursor:pointer}.booking-choice:hover,.booking-choice.selected,.time-slot:hover,.time-slot.selected{border-color:var(--gold-light);background:#3b2b1a}.booking-choice strong{display:block;font-size:15px}.booking-choice small{display:block;color:#bbae9c;margin-top:3px}.booking-choice b{color:var(--gold-light);white-space:nowrap}.calendar-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:17px}.calendar-head button{background:#2c2118;border:1px solid #705234;color:var(--gold-light);font-size:26px;width:38px;height:38px;border-radius:8px;cursor:pointer}.calendar-head button:disabled{opacity:.3;cursor:default}.calendar-weekdays,.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;text-align:center}.calendar-weekdays{color:#ab9e8e;font-size:11px;text-transform:uppercase;margin-bottom:6px}.calendar-days button,.calendar-days span{aspect-ratio:1;display:grid;place-items:center;width:100%;border-radius:8px;border:1px solid transparent;font:600 13px 'DM Sans',sans-serif}.calendar-days button{background:#292018;color:var(--white);cursor:pointer}.calendar-days button:hover,.calendar-days button.selected{background:var(--gold);color:#17110b}.calendar-days button:disabled{background:#1b1612;color:#63584c;cursor:default}.booking-hint{color:#aea18f;font-size:12px;margin:16px 0 0}.time-options{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;max-height:290px;overflow:auto}.time-options p{grid-column:1/-1;color:#afa293}.time-slot{padding:10px 4px;background:#292018;color:var(--white);border:1px solid #695239;border-radius:8px;cursor:pointer}.booking-panel form label,.service-form label,.login-panel label{display:block;color:#d2c7b8;font-size:13px;font-weight:600;margin-bottom:14px}.booking-panel input:not([type=checkbox]),.admin-toolbar input{display:block;width:100%;background:#251d16;border:1px solid #73593d;border-radius:9px;color:var(--white);font:inherit;padding:12px 13px;margin-top:7px;outline:none}.booking-panel input:focus,.admin-toolbar input:focus{border-color:var(--gold-light)}.booking-summary{border-top:1px solid #72553870;padding:17px 0;color:var(--gold-light);font-size:14px}.booking-panel .button{border:0;cursor:pointer;width:100%;justify-content:center}.booking-panel .button:disabled{opacity:.45;cursor:default}.form-message{color:#ffb8a4;min-height:20px;font-size:13px}.confirmation{max-width:500px;margin:0 auto;text-align:center;background:#1d1711;border:1px solid var(--gold);padding:50px 30px;border-radius:18px}.confirmation[hidden],.admin-tab[hidden],#admin-panel[hidden],#login-panel[hidden]{display:none}.confirmation-icon{display:grid;place-items:center;margin:0 auto 20px;background:#238251;border-radius:50%;width:60px;height:60px;font-size:34px}.confirmation h2{font:600 34px 'Playfair Display',serif}.confirmation p{line-height:1.7;color:#d5c8b5}.confirmation .button{display:inline-flex;margin-top:15px}.login-panel{max-width:430px;margin:35px auto}.login-panel h1{font-size:38px;margin-bottom:30px}.admin-heading,.admin-toolbar,.form-actions{display:flex;justify-content:space-between;align-items:center;gap:18px}.admin-tabs{display:flex;gap:10px;margin:28px 0 20px;border-bottom:1px solid #60472f}.admin-tabs button,.plain-button{color:var(--gold-light);background:transparent;border:1px solid #695239;border-radius:8px;padding:10px 16px;cursor:pointer;font:inherit}.admin-tabs button{border:0;border-radius:0}.admin-tabs button.active{border-bottom:2px solid var(--gold-light);color:#fff}.admin-toolbar{margin-bottom:18px}.admin-toolbar label{color:#d2c7b8}.admin-toolbar input{width:180px}.admin-list{display:grid;gap:10px;margin-bottom:24px}.admin-item{display:flex;justify-content:space-between;align-items:center;gap:15px;background:#1b1510;border:1px solid #644a31;border-radius:12px;padding:15px 18px}.admin-item strong{display:block}.admin-item small{display:block;color:#af9e89;margin-top:5px}.admin-item.cancelled{opacity:.48}.admin-item button{color:#ffb8a4;background:transparent;border:1px solid #9c6659;padding:8px;border-radius:7px;cursor:pointer}.admin-item button.edit{color:var(--gold-light);border-color:#8a6c41}.admin-empty{color:#b4a391}.service-form{max-width:600px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.booking-panel .check-label{display:flex;align-items:center;gap:10px}.form-actions .button{width:auto}.form-actions{justify-content:flex-start}.service-form h2{margin-bottom:22px}@media(max-width:760px){.booking-layout{grid-template-columns:1fr}.booking-header{padding:16px}.booking-main{padding:32px 16px 70px}.booking-panel{padding:20px}.admin-heading{align-items:start}.admin-heading h1{font-size:40px}.admin-toolbar{align-items:stretch;flex-direction:column}.admin-toolbar input{width:100%}.admin-item{align-items:flex-start;flex-direction:column}.admin-item button{align-self:flex-end}}@media(max-width:380px){.time-options{grid-template-columns:repeat(3,1fr)}.form-row{grid-template-columns:1fr}}
.booking-layout[hidden],.booking-intro[hidden]{display:none}

.admin-tabs{overflow-x:auto;scrollbar-width:thin}.admin-tabs button{white-space:nowrap}.admin-toolbar h2,.admin-agenda-grid h2,#tab-financeiro .booking-panel h2{font:600 29px 'Playfair Display',serif;margin:0 0 6px}.admin-toolbar p{color:#b9aa98;margin:0}.admin-agenda-grid{display:grid;grid-template-columns:minmax(320px,.85fr) minmax(0,1.15fr);gap:20px}.admin-agenda-grid>.booking-panel{align-self:start}.admin-agenda-grid .admin-list{margin:18px 0 0}.calendar-days button.has-bookings{position:relative}.calendar-days button.has-bookings:after{content:'';position:absolute;bottom:4px;left:50%;transform:translateX(-50%);width:6px;height:6px;border-radius:50%;background:var(--gold-light)}.calendar-days button.has-bookings.selected:after{background:#211408}.calendar-legend{display:flex;align-items:center;gap:8px;color:#bfae98;font-size:12px;margin:17px 0 0}.calendar-dot{width:7px;height:7px;background:var(--gold-light);border-radius:50%}.booking-panel select,.search-label input,.month-control input{display:block;width:100%;background:#251d16;border:1px solid #73593d;border-radius:9px;color:var(--white);font:inherit;padding:12px 13px;margin-top:7px;outline:none}.admin-item .item-actions{display:flex;gap:8px;flex-wrap:wrap}.admin-item .item-actions button{align-self:auto}.admin-item .item-actions .paid-action{color:#b9edc6;border-color:#4c9264}.admin-item .item-actions .complete-action{color:var(--gold-light);border-color:#8a6c41}.admin-item .status-line{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}.status-pill{font-size:11px;color:#cbbda9;border:1px solid #765b3d;border-radius:20px;padding:3px 8px}.status-pill.paid{color:#b9edc6;border-color:#4c9264}.clients-layout{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start}.search-label{display:block;color:#d2c7b8;font-size:13px;margin-bottom:16px}.client-detail{margin-top:18px}.client-detail[hidden]{display:none}.client-detail h2{font:600 27px 'Playfair Display',serif;margin:0 0 8px}.client-detail>p{color:#bba994;margin:0 0 18px}.history-row{display:flex;justify-content:space-between;gap:14px;border-top:1px solid #6b523a;padding:14px 0}.history-row span{color:var(--gold-light);white-space:nowrap}.finance-cards{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:20px}.finance-card{padding:23px;border:1px solid #856540;border-radius:15px;background:linear-gradient(135deg,#3c291a,#18120d)}.finance-card.received{background:linear-gradient(135deg,#1d4938,#17251d);border-color:#417f62}.finance-card small{display:block;color:#d5c5ae;margin-bottom:10px}.finance-card strong{font-size:clamp(27px,4vw,41px)}.month-control{color:#d2c7b8;font-size:13px;min-width:170px}@media(max-width:850px){.admin-agenda-grid,.clients-layout{grid-template-columns:1fr}}@media(max-width:600px){.finance-cards{grid-template-columns:1fr 1fr;gap:8px}.finance-card{padding:15px}.finance-card strong{font-size:22px}.admin-toolbar .button{width:100%}.admin-item .item-actions{width:100%}.admin-item .item-actions button{flex:1}.history-row{font-size:13px}.admin-tabs{margin-left:-16px;margin-right:-16px;padding-left:16px}}
.client-row{width:100%;display:block;text-align:left;color:var(--white);cursor:pointer;font:inherit}.client-row:hover{border-color:var(--gold-light)}.client-row small{font-size:12px}
.agenda-filter{display:flex;gap:5px;margin:18px 0 4px;padding:4px;background:#251d16;border:1px solid #604b34;border-radius:10px}.agenda-filter button{flex:1;display:flex;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:8px 10px;background:transparent;border:0;border-radius:7px;color:#bdae9a;font:600 13px 'DM Sans',sans-serif;cursor:pointer}.agenda-filter button.active{background:#51402a;color:#fff}.agenda-filter button span{min-width:20px;padding:2px 5px;border-radius:12px;background:#ffffff16;font-size:11px}.agenda-filter button:focus-visible{outline:2px solid var(--gold-light);outline-offset:2px}@media(max-width:400px){.agenda-filter button{font-size:12px;padding:8px 5px}}
.admin-item.is-paid{background:linear-gradient(110deg,#1d251b,#1b1913);border-color:#536748}.history-row.is-paid{background:#1c241b;border-radius:9px;padding-left:10px;padding-right:10px}.payment-method-label{align-self:center;color:#a9c5a7;font-size:11px}.admin-item .item-actions .method-action{color:#c4d5bd;border-color:#667b61}.payment-dialog{width:min(420px,calc(100% - 32px));max-width:420px;border:1px solid #856540;border-radius:17px;padding:25px;background:#17120e;color:var(--white);box-shadow:0 24px 70px #000a}.payment-dialog::backdrop{background:#000a}.payment-dialog h2{font:600 28px 'Playfair Display',serif;margin:0 0 22px}.payment-dialog label{display:block;font-size:13px;color:#d2c7b8;margin-bottom:7px}.payment-dialog select{display:block;width:100%;background:#251d16;border:1px solid #73593d;border-radius:9px;color:var(--white);font:inherit;padding:12px 13px}.payment-dialog-actions{display:flex;gap:10px;margin-top:22px}.payment-dialog-actions .button,.payment-dialog-actions .plain-button{flex:1;justify-content:center;cursor:pointer}.payment-dialog-actions .button:disabled{opacity:.5}.payment-dialog .form-message{margin-bottom:0}
