@import url('/ui.css?v=framing-20261017');
.app{min-height:65vh;padding:35px 0 70px}.app h1{font-size:40px}.app h2{font-size:25px}.app-message{padding:12px 0;color:#176c69}.app-message.error{color:#ad2635}.app form{max-width:700px;margin:20px 0}.app input:not([type=checkbox]):not([type=radio]),.app textarea{width:100%;font:inherit;border:1px solid #cfd8e0;border-radius:8px;padding:13px;background:white;color:var(--ink)}.app textarea{min-height:120px;resize:vertical}.app label{display:block;margin:18px 0 8px;font-size:13px;font-weight:600}.app .button{margin-top:22px}.app .button:disabled{opacity:.6;cursor:wait}.plans{display:grid;grid-template-columns:1fr 1fr;gap:16px}.plan-option{padding:18px;border:1px solid #cfd8e0;border-radius:12px;cursor:pointer;line-height:1.6}.plan-option:has(input:checked){border-color:#008d9b;background:#ebfaf6}.plan-option input{margin-right:8px}.plan-option small{display:block;font-weight:normal;color:var(--muted);margin-top:10px}.dashboard{display:grid;grid-template-columns:1fr 1fr;gap:24px}.dashboard form{margin:0;max-width:none}.dashboard section{padding:22px;border:1px solid #dde6e4;background:white;border-radius:16px}.dashboard section form{padding:0;border:0}.dashboard .wide{grid-column:1/-1}.list-row{padding:13px 0;border-top:1px solid #e5ebe9;font-size:14px;line-height:1.7}.muted{color:var(--muted)}.account-summary{background:#edf7f4;padding:20px;border-radius:12px;margin:20px 0 30px;line-height:1.8}.day-options{display:flex;gap:12px;flex-wrap:wrap}.day-options label{display:flex;gap:5px;align-items:center;font-weight:normal}.two-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.public-services{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.public-services article{background:white;border:1px solid #dce5e4;padding:24px;border-radius:15px}.public-services h3{margin-top:0}.plain-button{background:transparent;border:0;color:#184984;text-decoration:underline;cursor:pointer;padding:10px}.empty{padding:18px 0;color:var(--muted);font-size:14px}@media(max-width:700px){.plans,.dashboard,.public-services{grid-template-columns:1fr}.dashboard .wide{grid-column:auto}.two-fields{grid-template-columns:1fr}.app h1{font-size:32px}}
.assistant-widget{margin-top:32px;padding:25px;border:1px solid #cce4dd;background:#f1faf7;border-radius:16px}.assistant-widget form{max-width:none;margin:20px 0 0;background:white}.assistant-suggestions{display:flex;gap:8px;flex-wrap:wrap}.chat-suggestion{border:1px solid #afcfc4;background:white;color:var(--navy);border-radius:18px;padding:9px 12px;font:inherit;font-size:12px;cursor:pointer}.chat-log{max-height:360px;overflow:auto;margin-top:20px}.chat-log p{padding:14px;border-radius:12px;white-space:pre-wrap;font-size:14px}.chat-customer{background:var(--navy);color:white;margin-left:35px}.chat-answer{background:white;color:var(--ink);margin-right:35px;border:1px solid #dbe8e3}.chat-log>a{display:block;margin-bottom:15px}
.professional-logo{display:block;width:180px;height:180px;object-fit:contain;margin:20px auto}.login-identity{text-align:center}.login-identity h2{margin:12px 0}.professional-initials{width:100px;height:100px;display:grid;place-items:center;background:var(--navy);color:white;border-radius:20px;font-size:30px;font-weight:bold;margin:20px auto}.app input[type=file]{font-size:14px;max-width:100%}.app [hidden]{display:none!important}
.password-field{display:flex;align-items:stretch;gap:8px}.password-field input{flex:1;min-width:0;width:0}.password-toggle{flex:none;min-height:44px;padding:10px 12px;border:1px solid #cfd8e0;border-radius:8px;background:#eef8f5;color:#081956;font:inherit;font-size:14px;font-weight:700;cursor:pointer}.password-toggle:hover{background:#dff2eb}.password-toggle:focus-visible{outline:3px solid #008bd0;outline-offset:3px}
.app .team-permissions { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 16px;margin:20px 0;padding:12px;border:1px solid #dce5e4;border-radius:8px; }
.app .team-permissions label { display:flex;align-items:center;gap:8px;min-height:44px;margin:0; }
.app .team-permissions input[type=checkbox] { flex:none;width:18px;height:18px;margin:0; }
.app:has(#register) .journey-help,.dashboard:has(#team-create)>.journey-help { position:static; }
/* Private earnings and settlement surfaces. */
.receipt-dialog{width:min(560px,calc(100% - 24px));max-height:90dvh;overflow:auto;border:1px solid #ccd5db;border-radius:8px;padding:24px;color:#182b45;background:#fff}
.receipt-dialog::backdrop{background:#17263880}
.receipt-dialog input,.receipt-dialog select{width:100%;min-width:0;padding:12px;border:1px solid #ccd5db;border-radius:4px;margin:6px 0 16px}
.receipt-dialog input[type=checkbox]{width:auto;margin:0 8px 0 0}
.receipt-dialog fieldset{border:0;padding:0;min-width:0}
.receipt-check{display:flex;align-items:center;margin:16px 0}
.receipt-table{overflow:auto;max-width:100%}.receipt-table table{width:100%;border-collapse:collapse;font-size:14px}.receipt-table th,.receipt-table td{text-align:left;padding:12px;border-bottom:1px solid #dde3e7;white-space:nowrap}.receipt-table th{background:#edf3f4}
.receipt-total{font-size:22px;font-weight:700;color:#12694d}
.earnings-summary{display:flex;flex-wrap:wrap;gap:32px;padding:24px 0;border-block:1px solid #dde3e7}.earnings-summary dt{color:#526271}.earnings-summary dd{font-size:28px;font-weight:700;margin:8px 0;color:#12694d}
.receipt-filter{max-width:440px}.dashboard>section{min-width:0}
.app .dashboard>section{border:1px solid var(--card-border);border-radius:var(--card-radius);background:var(--theme-surface,#fff);padding:var(--card-padding)}
.app .dashboard>.journey-help{position:static}
.app .dashboard .receipt-filter{max-width:440px;padding:0;border:0;background:transparent}
.receipt-dialog form{padding:0;border:0;border-radius:0;background:transparent;max-width:none}
.app .dashboard .receipt-total{font-size:22px;color:#12694d}
.public-contact{display:flex;flex-wrap:wrap;gap:18px;grid-column:1/-1;font-style:normal}
.install-professional{min-height:44px;white-space:normal;max-width:100%;margin-left:12px}
@media(max-width:600px){header:has(.install-professional){flex-wrap:wrap}.install-professional{margin:8px 0 0 auto}}

.customer-section{max-width:650px;margin:24px auto;padding:clamp(20px,4vw,36px);background:#fff;border:1px solid #d4e4e8;border-radius:24px}
.customer-section form{display:grid;gap:10px}.customer-section h2{margin-top:0}.customer-section .plain-button{margin-top:16px}.customer-feedback{line-height:1.5;overflow-wrap:anywhere}.customer-feedback.error{color:#b62335}
.journey-tabs button:disabled{opacity:.4;cursor:not-allowed}.journey-tabs button[hidden],.customer-section[hidden],.identified-customer[hidden]{display:none!important}
a[aria-disabled="true"]{opacity:.4;cursor:not-allowed;pointer-events:none}.identified-customer{padding:18px 22px;border-radius:18px;background:#eaf7f4;margin:18px 0}.customer-heading{display:flex;justify-content:space-between;align-items:center;gap:16px}.customer-heading strong,.booking-customer-name{font-size:20px;color:#091952}.identified-customer details{margin-top:12px}.identified-customer summary{cursor:pointer}.identified-customer dl{display:grid;grid-template-columns:minmax(90px,1fr) 2fr;gap:8px 16px}.identified-customer dt{font-weight:bold}.identified-customer dd{margin:0;overflow-wrap:anywhere}.customer-open-bookings article{border-top:1px solid #c9ddd9;padding:10px 0}.customer-open-bookings p{margin:6px 0}@media(max-width:600px){.customer-heading{align-items:flex-start}.identified-customer dl{grid-template-columns:1fr}.identified-customer dd{margin-bottom:8px}}

.biomedical-page .journey-tabs{flex-wrap:wrap;overflow:visible}.biomedical-page .journey-tabs button{flex:0 0 auto}@media(max-width:600px){.biomedical-page .journey-tabs button{padding:10px;font-size:12px}}

.app .customer-heading .customer-exit-button{margin:0;min-width:88px;min-height:44px;padding:12px 20px;flex-shrink:0;text-decoration:none}

.customer-access-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;max-width:700px}.app .customer-access-actions .button{margin:0;min-height:48px;padding:12px 10px;font-size:13px;text-align:center;white-space:normal}.app .customer-remember{display:flex;gap:10px;align-items:center;font-weight:400;line-height:1.5}.customer-remember input{width:18px;height:18px;flex-shrink:0}

.professional-page .journey-tabs button{border-radius:10px}.app .compact-summary #logout{margin:0;min-height:44px}

.service-calendar-layout{display:grid;grid-template-columns:minmax(250px,.8fr) minmax(0,1.4fr);gap:24px;align-items:start}.service-calendar-layout .public-services{grid-template-columns:1fr}.agenda-calendar{background:white;border:1px solid #dce5e4;border-radius:16px;padding:18px;min-width:0}.calendar-toolbar{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}.calendar-toolbar h3{margin:0}.calendar-toolbar .plain-button{text-decoration:none;border-radius:10px;min-height:44px}.calendar-toolbar button[aria-pressed=true]{background:#091952;color:white}.agenda-calendar select{width:100%;font:inherit;margin:6px 0 12px;border-radius:10px;padding:10px}.calendar-legend{display:flex;flex-wrap:wrap;gap:8px;font-size:11px;margin:14px 0}.calendar-legend span{padding:5px;border-radius:5px}.month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;background:#dce5e4;border:1px solid #dce5e4}.calendar-weekday{text-align:center;background:white;padding:10px 0;font-size:12px}.calendar-day-cell{border:0;min-height:90px;padding:6px;display:flex;flex-direction:column;gap:5px;text-align:left;cursor:pointer;font:inherit;overflow:hidden}.calendar-day-cell span{font-weight:700}.calendar-day-cell small{font-size:10px;overflow-wrap:anywhere}.calendar-day-cell:disabled{cursor:default;opacity:1}.free{background:#e3f5e9;color:#145c31}.partial{background:#fff2bf;color:#725400}.full{background:#ffe0e0;color:#9c2020}.unavailable,.calendar-blank{background:#f5f6f7;color:#66747e}.calendar-day-cell:focus-visible{outline:3px solid #184984;outline-offset:-3px}.week-grid{display:grid;grid-template-columns:repeat(7,minmax(110px,1fr));min-width:770px}.calendar-content{overflow-x:auto}.week-column{border:1px solid #e2e8ec;padding:4px;font-size:12px}.week-day-heading{display:block;text-align:center;padding:10px 2px}.week-hour{border-top:1px solid #e2e8ec;min-height:45px;padding:5px 0}.calendar-slot{background:#dcecfb;color:#12375c;border:0;border-left:3px solid #1875cf;border-radius:5px;padding:8px 5px;text-align:left;font:inherit;margin:2px 0;width:100%;cursor:pointer}.agenda-date-row{padding:14px;border:1px solid #dce5e4;border-radius:12px;margin:12px 0}.agenda-date-row input[type=checkbox]{width:auto}.panel-calendar-preview{margin-bottom:28px}.calendar-notice{font-size:13px}.agenda-specific-days p{font-size:14px}
@media(max-width:900px){.service-calendar-layout{grid-template-columns:1fr}.agenda-calendar{padding:12px}.calendar-day-cell{min-height:76px;padding:4px}.calendar-day-cell small{font-size:9px}.calendar-toolbar{font-size:13px}}

.calendar-day-cell small{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}@media(max-width:600px){.calendar-day-cell{min-height:64px;align-items:center;padding:8px 2px}.calendar-day-cell small{display:none}.calendar-day-cell:after{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;margin-top:6px}.calendar-weekday{font-size:10px}.calendar-legend{font-size:10px}}

.week-hour{height:180px;overflow-y:auto}.week-day-status{min-height:36px;font-size:11px;margin:6px 0}.week-hour>small{display:block;color:#66747e;margin-bottom:4px}

.calendar-legend{align-items:stretch;display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.calendar-legend>span{box-sizing:border-box;min-height:48px;display:flex;align-items:center;justify-content:center;padding:8px;text-align:center;border-radius:6px;line-height:1.35;border:0;outline:0}.calendar-day-cell.calendar-status-free,.week-day-heading.calendar-status-free{background:#e3f5e9;color:#145c31}.calendar-day-cell.calendar-status-partial,.week-day-heading.calendar-status-partial{background:#fff2bf;color:#725400}.calendar-day-cell.calendar-status-full,.week-day-heading.calendar-status-full{background:#ffe0e0;color:#9c2020}.calendar-day-cell.calendar-status-unavailable,.week-day-heading.calendar-status-unavailable{background:#f5f6f7;color:#66747e}.calendar-day-cell .day-procedure{font-weight:600}.calendar-day-cell .day-availability{display:block;-webkit-line-clamp:unset;overflow:visible}.calendar-day-cell{align-self:stretch;justify-self:stretch;width:100%;height:100%;margin:0;border-radius:0}.calendar-legend>span:nth-child(4){background:#f5f6f7;color:#66747e}
@media(max-width:600px){.calendar-legend{grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-legend>span{min-height:44px}.calendar-day-cell .day-availability{font-size:9px;line-height:1.2}.calendar-day-cell:after{display:none}}

.calendar-legend>span{margin:0;width:auto;height:auto;align-self:stretch;gap:0}.calendar-day-cell .day-procedure{line-height:1.3}

.slot-grid .slot-button.slot-status-available{background:#e3f5e9;border-color:#9bccac;color:#145c31}.slot-grid .slot-button.slot-status-reserved{background:#ffe0e0;border-color:#e9abab;color:#9c2020}.slot-grid .slot-button.slot-status-unavailable{background:#f0f2f4;border-color:#d4dbe0;color:#66747e}.slot-grid .slot-button:disabled{opacity:1;cursor:not-allowed}.slot-grid .slot-button[aria-pressed=true]{background:#fff2bf;border-color:#d6b555;color:#725400}.slot-state{font-weight:700}.slot-legend{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0;font-size:12px}.slot-legend span{padding:8px 12px;border-radius:6px}.slot-legend span:nth-child(1){background:#e3f5e9;color:#145c31}.slot-legend span:nth-child(2){background:#ffe0e0;color:#9c2020}.slot-legend span:nth-child(3){background:#f0f2f4;color:#66747e}

.week-day-heading{width:100%;border:0;font:inherit;font-weight:700;cursor:pointer}.week-day-heading:disabled{cursor:default;opacity:1}

.day-slots-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:20px 0 12px}.day-slots-heading h3{margin:0}.day-timezone{font-size:13px;color:#65708b;white-space:nowrap}

.slot-main-row{display:flex;justify-content:space-between;align-items:center;gap:12px;width:100%}.slot-main-row .slot-procedure{text-align:left;min-width:0;overflow-wrap:anywhere}.slot-main-row strong{text-align:right;white-space:nowrap;margin-left:auto}.slot-grid .slot-button{width:100%}

.app .plain-button,.app .text-link{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:12px 18px;border:1px solid #c9dfda;border-radius:10px;background:#e8f5f1;color:#12385b;font:inherit;font-size:14px;font-weight:600;line-height:1.4;text-align:center;text-decoration:none;cursor:pointer;vertical-align:middle}.app .plain-button:hover,.app .text-link:hover{background:#d9eee7;border-color:#9fc7ba}.app .plain-button:disabled{opacity:.55;cursor:not-allowed}.app .booking-back{width:fit-content;max-width:100%;min-width:0}.app .text-link{overflow-wrap:anywhere}.app .calendar-toolbar button[aria-pressed=true]{background:#091952;border-color:#091952;color:white}

.dashboard .agenda-editor{padding:20px;border:1px solid #c9dfda;border-radius:14px;background:#f1faf7;margin:18px 0}.agenda-editor fieldset label{display:flex;align-items:center;gap:10px}.agenda-editor .agenda-edit-status{color:#ad2635}.dashboard [data-edit-calendar]{margin-left:12px}

.agenda-management-actions{margin:18px 0 24px}.agenda-management-back{margin:12px 0 24px}.agenda-edit-context{padding:16px;background:white;border-radius:10px;line-height:1.8}.agenda-management-list .list-row{display:flow-root;padding:18px 0}.agenda-management-list [data-edit-calendar]{float:right}.dashboard .agenda-editor{margin-top:0}.agenda-management-list[hidden],.agenda-management-actions[hidden],.panel-calendar-preview[hidden]{display:none}

.agenda-management-list .list-row h3{margin:0 0 8px}.agenda-management-list .list-row p{margin:6px 0;overflow-wrap:anywhere}.agenda-management-back,.agenda-editor [data-cancel-edit]{display:inline-flex;align-items:center;justify-content:center;min-height:44px;border:1px solid #c9dfda;border-radius:10px;background:#eaf7f3;color:#12375c;padding:10px 16px;font:inherit;text-decoration:none}.agenda-management-back[hidden]{display:none}

.agenda-weekly-card{border:1px solid #cbded9;border-radius:14px;padding:18px;background:#f1faf7}.agenda-weekly-card[hidden],.agenda-pick-calendar[hidden]{display:none}.agenda-pick-calendar{margin:16px 0}.agenda-pick-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.agenda-pick-weekday{text-align:center;font-size:12px}.agenda-pick-day{border:1px solid #d5e2df;border-radius:10px;padding:10px 6px;min-height:120px;background:#fff;min-width:0}.agenda-pick-day.is-selected{background:#e6f6ef;border-color:#64b39d}.agenda-pick-day label{display:flex;align-items:center;gap:6px;margin:0}.agenda-pick-day input[type=checkbox],.agenda-check input[type=checkbox]{width:20px;height:20px;margin:0;flex-shrink:0}.agenda-pick-day small{display:block;font-size:11px;overflow-wrap:anywhere;margin-top:6px}.agenda-pick-day .plain-button{padding:7px 3px;margin:6px 0 0;font-size:11px;min-height:44px;width:100%;white-space:normal}.agenda-check{display:flex;align-items:center;gap:10px;margin:12px 0}.agenda-day-dialog{width:min(520px,calc(100vw - 28px));max-height:85vh;overflow:auto;box-sizing:border-box;border:1px solid #cbded9;border-radius:18px;padding:24px;color:#101f50}.agenda-day-dialog::backdrop{background:rgba(8,25,66,.5)}.agenda-day-dialog input[type=time]{width:100%;box-sizing:border-box;font:inherit;border:1px solid #cbded9;border-radius:10px;padding:12px}.agenda-day-error{color:#a32232}.agenda-day-dialog .plain-button{min-height:44px;border-radius:10px;background:#eaf7f3;border:1px solid #c9dfda;text-decoration:none;padding:10px 16px}.agenda-picked-summary{font-weight:600}
@media(max-width:600px){.agenda-pick-grid{gap:3px}.agenda-pick-day{padding:8px 3px;min-height:110px}.agenda-pick-day label{gap:2px;flex-wrap:wrap}.agenda-pick-day small{font-size:10px}.agenda-pick-day .plain-button{font-size:10px}.agenda-day-dialog{padding:18px}.agenda-day-dialog .two-fields{grid-template-columns:1fr}}

.app .agenda-pick-day label{margin:0;font-size:12px;font-weight:600}.agenda-pick-day .plain-button{border:1px solid #b9dacf;background:#f5fcf8;text-decoration:none;border-radius:8px;overflow-wrap:anywhere}.agenda-pick-calendar{padding:0;border:0}.agenda-day-dialog label:not(.agenda-check){display:block;font-size:14px;font-weight:600;margin:12px 0 8px}.agenda-day-dialog input:not([type=checkbox]){min-width:0}.agenda-day-dialog form{margin:0}.agenda-day-dialog .two-fields{display:block}
@media(max-width:600px){.agenda-pick-day .plain-button{font-size:0}.agenda-pick-day .plain-button::after{content:'Ajustar';font-size:10px}.agenda-pick-day{min-height:94px}.agenda-pick-day small{font-size:10px}.agenda-pick-day label{font-size:11px!important}.agenda-pick-day input[type=checkbox]{width:17px;height:17px}.agenda-pick-day label{flex-wrap:nowrap;gap:2px}}

@media(max-width:600px){.app .agenda-pick-day .plain-button{padding:4px 2px;min-width:0;font-size:0}.app .agenda-pick-day .plain-button::after{content:"⚙";font-size:18px}.app .agenda-pick-day label{min-height:32px}}

.agenda-pick-day.is-blocked{background:#f4e9e9;border-color:#e0b9b9;color:#7d3232}.agenda-pick-day.is-blocked input{cursor:not-allowed}.agenda-delete-button{color:#a41f32!important;border-color:#dca8ae!important}.agenda-cancel-dialog textarea{width:100%;box-sizing:border-box;min-height:170px;font:inherit;padding:12px;border:1px solid #cbded9;border-radius:10px}.agenda-cancel-dialog .step-actions{flex-wrap:wrap}.agenda-cancel-dialog .button.agenda-delete-button{background:#a41f32;color:white!important}.agenda-notifications{margin:16px 0;font-size:14px}.agenda-editor>.agenda-delete-button{display:block;margin-top:28px}.agenda-editor>.plain-button{min-height:44px}

.booking-state-buttons{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}.booking-state-buttons button[aria-pressed=true]{background:#101d57;color:white;border-color:#101d57}.booking-list-filters{padding:18px!important;border:1px solid #d4e4e0!important;border-radius:12px}.booking-list-filters fieldset{border:0;padding:0;margin:14px 0}.booking-card-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.booking-state{padding:6px 10px;border-radius:8px;font-size:12px;font-weight:600}.booking-state-open{background:#e3f5e9;color:#145c31}.booking-state-cancelled{background:#ffe0e0;color:#9c2020}.booking-state-completed{background:#e2ebfa;color:#20426c}.booking-result h3{font-size:18px;margin:10px 0}.booking-result p{margin:8px 0}.booking-pagination{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:24px}.agenda-row-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.agenda-management-list .agenda-row-actions [data-edit-calendar]{float:none;margin-left:0}.booking-query-summary{overflow-wrap:anywhere}

.agenda-view-config{padding:20px!important;background:#f3faf7;border:1px solid #d6e5de!important;border-radius:14px}.agenda-view-config input:disabled,.agenda-view-config select:disabled{opacity:1;color:#263c59;background:#f4f6f7}.agenda-view-bookings{margin-top:30px;border-top:1px solid #d6e5de;padding-top:20px}

.customer-booking-cancel{min-height:44px;border:1px solid #d3afb4;border-radius:10px;color:#9c2030;background:#fff4f4;text-decoration:none;padding:10px 16px}.customer-booking-cancel:disabled{opacity:.5;cursor:not-allowed}.customer-cancellation-dialog textarea{width:100%;box-sizing:border-box;font:inherit;padding:12px;border:1px solid #cbded9;border-radius:10px}.customer-cancellation-dialog .step-actions{flex-wrap:wrap}.customer-cancellation-dialog [type=submit]{background:#9c2030}.booking-state-customer_cancelled{background:#ffe0e0;color:#9c2020}.customer-cancellation-feedback{color:#176c69;margin-top:16px}

/* Padrão de ações e navegação */
.app button,.app .button,.app .plain-button,.app .text-link,.journey-tabs button{border-radius:10px!important;min-height:44px}
.dashboard .list-row:has([data-edit-service]){display:flow-root}.dashboard [data-edit-service]{float:right;margin-left:20px}
.dashboard,.app,.service-calendar-layout>*{min-width:0}
.app .journey-tabs,.biomedical-page .journey-tabs,.profile-steps>.journey-tabs{display:flex;flex-wrap:nowrap!important;overflow-x:auto!important;scrollbar-width:thin!important;max-width:100%;padding-bottom:12px;overscroll-behavior-x:contain;scroll-behavior:smooth}
.journey-tabs::-webkit-scrollbar{display:block!important;height:6px}.journey-tabs button{flex:0 0 auto;white-space:nowrap}
.calendar-content,.agenda-pick-calendar{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin}
@media(max-width:740px){.calendar-content .month-grid,.calendar-content .week-grid,.agenda-pick-grid{min-width:770px!important}.calendar-day-cell{min-height:120px!important;padding:10px!important;border-radius:10px!important;border:1px solid #cddfdc!important}.calendar-content,.agenda-pick-calendar{padding-bottom:12px}}
.goob-message-dialog{width:min(92vw,540px);max-height:85dvh;overflow:auto;border:1px solid #cedbdc;border-radius:18px;padding:26px;background:var(--theme-surface,#fff);color:var(--ink,#10234a);box-shadow:0 16px 60px #0004}.goob-message-dialog::backdrop{background:#07133088}.goob-message-dialog p{white-space:pre-line;line-height:1.6}.goob-message-dialog button{border-radius:10px;min-height:44px}.theme-options{display:flex;gap:12px;flex-wrap:wrap}.theme-swatch{border:3px solid!important}.theme-swatch[aria-pressed=true]{outline:3px solid var(--ink);outline-offset:3px}.app [aria-invalid=true]{outline:2px solid #b91c1c}
:root[data-goob-theme=ocean]{--navy:#075985;--ink:#12354b;--muted:#476576;--theme-surface:#f1f9ff;--theme-bg:#e5f3fb}
:root[data-goob-theme=forest]{--navy:#14532d;--ink:#183d2b;--muted:#466354;--theme-surface:#f3fbf4;--theme-bg:#e6f3e8}
:root[data-goob-theme=violet]{--navy:#5b21b6;--ink:#34204f;--muted:#6e5681;--theme-surface:#faf5ff;--theme-bg:#f0e9fa}
:root[data-goob-theme=dark]{color-scheme:dark;--navy:#a9c8ff;--ink:#edf4ff;--muted:#c4d2e5;--theme-surface:#202d42;--theme-bg:#111b2c}
html[data-goob-theme]:not([data-goob-theme=original]) body{background:var(--theme-bg);color:var(--ink)}
html[data-goob-theme]:not([data-goob-theme=original]) .app :is(section,article,form,.account-summary,.professional-hero,.professional-identity,.booking-details){background:var(--theme-surface);color:var(--ink)}
html[data-goob-theme]:not([data-goob-theme=original]) .app :is(input,select,textarea,.plain-button,.text-link){background:var(--theme-surface);color:var(--ink);border-color:var(--muted)}
html[data-goob-theme]:not([data-goob-theme=original]) .app :is(.button,.journey-tabs button[aria-current=step],.journey-tabs button[aria-selected=true]){background:var(--navy);color:var(--theme-bg)}
html[data-goob-theme=dark] .app :is(.calendar-weekday,.calendar-blank,.agenda-pick-grid>*,.week-grid>*){background:#26354c;color:#edf4ff}
html[data-goob-theme=dark] .app :is(.calendar-status-free,.free){background:#164733;color:#e5fff1}
html[data-goob-theme=dark] .app :is(.calendar-status-partial,.partial){background:#57440c;color:#fff7cc}
html[data-goob-theme=dark] .app :is(.calendar-status-full,.full){background:#642633;color:#fff0f1}
html[data-goob-theme=dark] .app :is(.calendar-status-unavailable,.calendar-blank){background:#2b3647;color:#d1dbea}

@media print{body:has(.printing-agenda) *{visibility:hidden}body:has(.printing-agenda) .printing-agenda,body:has(.printing-agenda) .printing-agenda *{visibility:visible}.printing-agenda{position:absolute;left:0;top:0;width:100%;background:white!important;color:black!important}.printing-agenda button{display:none}}

html[data-goob-theme]:not([data-goob-theme=original]) :is(.agenda-calendar,.customer-section,.identified-customer,.booking-slots,.booking-step,.calendar-legend>span:not(.free):not(.partial):not(.full),.campaign-card,.agenda-weekly-card,.professional-identity,.profile-steps,.journey-help,.journey-help details,.registration-form,.standard-plan,.login-identity){background:var(--theme-surface)!important;color:var(--ink)!important}
html[data-goob-theme]:not([data-goob-theme=original]) :is(.journey-tabs button,.step-progress button,.account-link,.calendar-toolbar button){background:var(--theme-surface);color:var(--ink);border-color:var(--muted)}
html[data-goob-theme]:not([data-goob-theme=original]) .journey-tabs button[aria-current=step],html[data-goob-theme]:not([data-goob-theme=original]) .calendar-toolbar button[aria-pressed=true]{background:var(--navy);color:var(--theme-bg)}
html[data-goob-theme]:not([data-goob-theme=original]) :is(.account-link svg,.account-link svg path){stroke:currentColor}
html[data-goob-theme]:not([data-goob-theme=original]) :is(.journey-help summary,.journey-help p){color:var(--ink)}

/* Cards: mesmo contorno, cantos e respiro em todas as ferramentas. */
:root{--card-radius:16px;--card-padding:24px;--card-border:color-mix(in srgb,var(--ink,#10234a) 22%,transparent)}
.app :is(.dashboard>section,.account-summary,.public-services article,.agenda-calendar,.professional-hero,.professional-identity,.customer-section,.identified-customer,.campaign-card,.booking-details,.assistant-widget,.booking-result,.agenda-date-row,.agenda-weekly-card,.archived-agenda-report){box-sizing:border-box;min-width:0;border:1px solid var(--card-border);border-radius:var(--card-radius);padding:var(--card-padding)}
.app :is(.dashboard>section,.account-summary,.public-services article,.agenda-calendar,.customer-section,.identified-customer,.campaign-card,.booking-details,.assistant-widget,.booking-result,.archived-agenda-report)>:first-child{margin-top:0}
.app .journey-help{border:1px solid var(--card-border);border-radius:var(--card-radius)}
@media(max-width:740px){:root{--card-padding:18px}}

.app .journey-help>details{border-radius:inherit}

/* Contêineres públicos também recebem o respiro dos cards do painel. */
.app :is(#servicos,#novidades,.public-locations,.booking-section){box-sizing:border-box;min-width:0;border:1px solid var(--card-border);border-radius:var(--card-radius);padding:var(--card-padding)}
.app :is(#servicos,#novidades,.public-locations,.booking-section)>:first-child{margin-top:0}
.app :is(#content,.booking-route,.service-calendar-layout,.registration-layout,.dashboard,.two-fields)>*{min-width:0}
.app :is(form,fieldset,dialog){min-width:0;box-sizing:border-box}
.app :is(h1,h2,h3,h4,legend,label,.service-bottom b){overflow-wrap:anywhere}
.app .step-actions,.app .service-bottom{flex-wrap:wrap}
.app .step-actions>*{max-width:100%;box-sizing:border-box}
.app img{max-width:100%}
.calendar-month-choice[hidden]{display:none!important}

/* Ajuda no fluxo da página: não cobre calendário, campos ou ações. */
.app .journey-help{position:static}

.app .public-services article.service-card{display:grid;grid-template-columns:32px minmax(0,1fr) auto;gap:6px 12px;align-items:center;padding:16px;cursor:pointer;transition:border-color .15s,box-shadow .15s}
.service-card .service-mark{grid-column:1;grid-row:1/4;width:32px;height:32px;margin:0}
.service-card h3{grid-column:2;grid-row:1;margin:0!important;font-size:18px}
.service-card .service-remaining{grid-column:2;grid-row:2;margin:0!important;font-size:13px}
.service-card .service-duration{grid-column:2;grid-row:3;margin:0!important;font-size:13px}
.service-card .service-bottom{grid-column:3;grid-row:1/4;margin:0}.service-card .service-bottom b{font-size:18px}
.service-card:hover,.service-card:focus-visible{border-color:var(--navy);box-shadow:0 0 0 2px var(--navy);outline:none}
@media(max-width:740px){.service-card h3,.service-card .service-remaining,.service-card .service-duration{grid-column:2/4}.service-card .service-bottom{grid-column:2/4;grid-row:4}}

.calendar-interaction-help{margin:0;padding:16px;line-height:1.6;border:1px solid var(--card-border);border-radius:16px}

.app .calendar-content .calendar-day-cell{align-items:center;justify-content:center;text-align:center}

/* Dias compactos, quadrados e separados, com rolagem própria no celular. */
.app .calendar-content .month-grid{grid-template-columns:repeat(7,minmax(72px,1fr));gap:6px;min-width:556px!important;padding:8px;border-radius:var(--card-radius,16px);border-color:var(--card-border);box-sizing:border-box}
.app .calendar-content .calendar-day-cell{box-sizing:border-box;aspect-ratio:1;width:100%;height:auto;min-height:0!important;padding:6px!important;border:1px solid var(--card-border)!important;border-radius:10px;transition:border-color .15s,box-shadow .15s}
.app .calendar-content .calendar-day-cell:hover,.app .calendar-content .calendar-day-cell:focus-visible{border-color:var(--navy)!important;box-shadow:0 0 0 2px var(--navy);outline:none}

.section-title-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 40px;width:40px;height:40px;border:1px solid var(--card-border);border-radius:10px;color:var(--ink)}
.section-title-icon svg{width:26px;height:26px;display:block}
.app .services-title,.app .calendar-title{display:flex;align-items:center;justify-content:flex-start;gap:14px}
.services-title>div{min-width:0}
.app .calendar-legend>span:nth-child(4){border:1px solid var(--card-border);border-radius:6px}

.customer-inline-icon{display:inline-block;width:22px;height:22px;flex-shrink:0;vertical-align:middle}
.customer-heading>strong,.customer-bookings-title,.customer-booking-status{display:flex;align-items:center;gap:10px}
.customer-heading>strong{min-width:0;overflow-wrap:anywhere}
.customer-booking-status{font-size:13px;margin-top:8px}
.customer-booking-status .customer-inline-icon{width:18px;height:18px}
.customer-booking-line{display:flex;align-items:center;justify-content:space-between;gap:12px}
.customer-booking-line>p{min-width:0;overflow-wrap:anywhere}
.app .customer-booking-line .customer-booking-cancel{display:inline-flex;align-items:center;justify-content:center;flex:0 0 44px;width:44px;height:44px;min-width:44px;padding:10px;margin:0}

.day-details-title{display:flex;align-items:center;gap:14px}.day-details-title>span:last-child{min-width:0;overflow-wrap:anywhere}

.app .calendar-hide-label{display:flex;align-items:center;gap:8px;margin:0;min-height:44px;font-size:13px;cursor:pointer}.app .calendar-hide-label input{width:18px;height:18px;margin:0;accent-color:var(--navy)}

.agenda-report-table{overflow-x:auto;margin:18px 0}.agenda-days-report table{width:100%;border-collapse:collapse;font-size:14px}.agenda-days-report th,.agenda-days-report td{padding:10px;text-align:left;vertical-align:top;border:1px solid var(--card-border)}.agenda-days-report th{font-weight:700}@media print{.agenda-report-table{overflow:visible}.agenda-days-report tr{break-inside:avoid}.agenda-days-report thead{display:table-header-group}.agenda-days-report th,.agenda-days-report td{border-color:#777!important}}

.agenda-management-title,.agenda-list-title{display:flex;align-items:center;gap:10px}.agenda-list-icon{width:24px;height:24px;flex:0 0 24px}.agenda-list-title>span{min-width:0;overflow-wrap:anywhere}.agenda-report-footer{margin-top:18px}.agenda-report-footer hr{border:0;border-top:1px solid var(--card-border);margin:0 0 18px}

.app .agenda-management-actions{display:flex;justify-content:flex-end;align-items:center;flex-wrap:wrap;gap:10px}.app .agenda-management-actions>button{flex:0 0 auto;margin:0}

.app .dashboard.panel-layout{display:grid;grid-template-columns:240px minmax(0,1fr)!important;gap:22px;align-items:start}
.panel-workspace{min-width:0;display:grid;gap:24px}.app .panel-workspace>section{box-sizing:border-box;min-width:0;padding:var(--card-padding);border:1px solid var(--card-border);border-radius:var(--card-radius);background:var(--theme-surface,#fff)}
.app .panel-menu-dialog{position:sticky;top:16px;margin:0;width:100%;max-width:none;max-height:calc(100dvh - 32px);box-sizing:border-box;padding:14px;border:1px solid var(--card-border);border-radius:16px;background:var(--theme-surface,#fff);color:var(--ink);overflow:auto}
.panel-module-menu{display:flex;flex-direction:column;gap:8px}.panel-module-menu details{min-width:0}.panel-module-menu summary{display:flex;align-items:center;gap:10px;padding:12px 8px;cursor:pointer;font-weight:700;list-style:none;border-radius:10px}.panel-module-menu summary::-webkit-details-marker{display:none}.panel-module-menu summary:after{content:'+';margin-left:auto}.panel-module-menu details[open]>summary:after{content:'−'}.panel-module-menu svg{width:21px;height:21px;flex-shrink:0}
.app .panel-module-menu button{display:block;width:100%;text-align:left;white-space:normal;margin:6px 0;min-height:44px;padding:10px 12px;border-radius:10px;box-sizing:border-box}.app .panel-module-menu button[aria-current=step]{background:var(--navy)!important;color:var(--primary-ink,#fff)!important;border-color:var(--navy)!important}
.app .panel-mobile-bar,.app .panel-menu-close{display:none}.panel-menu-dialog::backdrop{background:rgba(0,0,0,.55)}
@media(max-width:999px){.app .dashboard.panel-layout{grid-template-columns:minmax(0,1fr)!important}.app .panel-mobile-bar{display:flex;align-items:center;justify-content:space-between;gap:12px}.panel-mobile-bar strong{min-width:0;overflow-wrap:anywhere}.app .panel-menu-dialog{position:fixed;inset:0 auto 0 0;top:0;width:min(320px,90vw);height:100dvh;max-height:100dvh;border-radius:0 16px 16px 0;margin:0;padding:16px}.app .panel-menu-dialog:not([open]){display:none}.app .panel-menu-close{display:block;margin:0 0 16px auto}}
@media print{.panel-menu-dialog,.panel-mobile-bar{display:none!important}.app .dashboard.panel-layout{display:block}}

.panel-module-menu{align-items:stretch;text-align:left}.panel-module-menu details{width:100%}.panel-module-menu summary{justify-content:flex-start}

.app .panel-workspace>.journey-help{position:static}

@media print{.report-screen-only{display:none!important}}

img[data-goob-brand]{object-fit:contain;height:auto}html[data-goob-theme=dark] img[data-goob-brand]{background:#effaf8;border-radius:12px;padding:6px}
