:root{--color-primary:#7A09D6;--color-primary-dark:#6507B3;--color-primary-light:#f3e8fc;--color-danger:#b42318;--color-danger-dark:#8f1c13;--ui-primary-bg:var(--color-primary);--ui-primary-text:#fff;--ui-primary-border:var(--color-primary);--ui-primary-shadow:0 10px 22px rgba(122,9,214,.24);--ui-secondary-bg:#fff;--ui-secondary-text:var(--color-primary);--ui-secondary-border:var(--color-primary);--ui-card-bg:#fff;--ui-card-border:#dcdaf0;--ui-card-radius:15px;--ui-card-shadow:0 6px 18px rgba(46,31,79,.045);--ui-icon-color:var(--color-primary);--bg:#f7f7f7;--panel:#fff;--panel-2:#f2f2f2;--field:#fff;--text:#0d1036;--muted:#737a9f;--line:#dcdaf0;--line-strong:#b8b8b8;--accent:var(--color-primary);--accent-contrast:#fff;--subtle:#fafafa;--status:#3f3f3f;--radius:14px;--shadow:0 18px 50px rgba(0,0,0,.08);--focus-ring:0 0 0 3px rgba(122,9,214,.13)}
*{box-sizing:border-box}[hidden]{display:none!important}html{color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}body{min-width:320px;margin:0;background:var(--bg);color:var(--text)}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation}a{color:inherit}.line-icon{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.app-layout{display:grid;min-height:100vh;grid-template-columns:242px minmax(0,1fr)}.sidebar{position:sticky;top:0;height:100vh;padding:24px 16px;border-right:1px solid var(--line);background:rgba(255,255,255,.94);backdrop-filter:blur(14px)}.brand{display:flex;align-items:center;gap:11px;padding:0 8px 24px}.brand-mark{display:grid;width:40px;height:40px;place-items:center;border:1px solid var(--line-strong);border-radius:12px;background:var(--accent);color:var(--accent-contrast);font-weight:900}.brand strong,.brand small{display:block}.brand small{margin-top:2px;color:var(--muted);font-size:11px}.nav{display:grid;gap:5px}.nav-link{display:flex;min-height:46px;align-items:center;gap:11px;padding:10px 12px;border:1px solid transparent;border-radius:10px;color:var(--muted);font-weight:700;text-decoration:none}.nav-link:hover,.nav-link.is-active{border-color:var(--line);background:var(--panel-2);color:var(--text)}.nav-link.is-active{color:var(--text)}.sidebar-foot{position:absolute;right:16px;bottom:22px;left:16px}.sidebar-foot button{width:100%}
.main{min-width:0}.topbar{display:flex;min-height:78px;align-items:center;justify-content:space-between;gap:16px;padding:15px clamp(18px,4vw,48px);border-bottom:1px solid var(--line)}.topbar h1{margin:2px 0;font-size:clamp(22px,3vw,30px)}.eyebrow{margin:0;color:var(--muted);font-size:10px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.profile-chip{color:var(--muted);font-size:12px}.menu-toggle,.nav-backdrop{display:none}.content{width:min(1180px,100%);margin:auto;padding:30px clamp(16px,4vw,48px) 60px}.page-intro{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:24px}.page-intro h2{margin:4px 0 8px;font-size:clamp(25px,4vw,38px)}.page-intro p{max-width:720px;margin:0;color:var(--muted);line-height:1.6}
.card{min-width:0;padding:22px;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);box-shadow:var(--shadow)}.card h2,.card h3{margin-top:0}.card-subtitle{margin:-7px 0 20px;color:var(--muted);font-size:13px;line-height:1.5}.stack{display:grid;gap:16px}.grid-2,.grid-3{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.field{display:grid;min-width:0;gap:7px}.field.span-all{grid-column:1/-1}.field label,.field-label{color:var(--text);font-size:12px;font-weight:750}.field small{color:var(--muted);line-height:1.45}.field input,.field select,.field textarea{width:100%;min-width:0;min-height:46px;padding:10px 12px;border:1px solid var(--line-strong);border-radius:10px;outline:0;background:var(--field);color:var(--text)}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--accent);box-shadow:var(--focus-ring)}.choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.choice{position:relative;display:flex;min-height:72px;align-items:flex-start;gap:9px;padding:12px;border:1px solid var(--line);border-radius:11px;background:var(--subtle);cursor:pointer}.choice:has(input:checked){border-color:var(--accent);background:var(--panel-2)}.choice input{margin-top:3px;accent-color:var(--accent)}.choice strong,.choice small{display:block}.choice small{margin-top:3px;color:var(--muted);font-size:11px}
.primary,.secondary,.danger,.ghost{display:inline-flex;min-height:44px;align-items:center;justify-content:center;gap:8px;padding:9px 15px;border-radius:10px;font-weight:800;cursor:pointer}.primary{border:1px solid var(--accent);background:var(--accent);color:var(--accent-contrast)}.secondary,.ghost{border:1px solid var(--line-strong);background:var(--panel);color:var(--text)}.ghost{background:transparent}.danger{border:1px solid var(--line-strong);background:transparent;color:var(--status)}button:disabled{cursor:not-allowed;opacity:.55}.actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;margin-top:20px}.page-message{position:fixed;right:22px;bottom:22px;z-index:50;max-width:min(420px,calc(100vw - 32px));margin:0;padding:13px 16px;border:1px solid var(--line-strong);border-radius:11px;background:var(--panel);color:var(--text);box-shadow:var(--shadow)}.page-message:empty{display:none}.page-message.is-error{border-style:dashed;border-color:var(--status);color:var(--status);font-weight:700}.page-message.is-success{border-color:var(--status);color:var(--status);font-weight:700}
.auth-wrap{display:grid;min-height:100vh;place-items:center;padding:20px}.auth-card{width:min(460px,100%)}.auth-card .brand{padding:0 0 24px}.auth-card h1{margin:0 0 7px}.auth-card>p{margin:0 0 22px;color:var(--muted)}.auth-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}.onboarding{width:min(760px,100%);margin:30px auto}.onboarding[hidden],.app-layout[hidden],.conditional[hidden]{display:none!important}
.config-layout{display:grid;grid-template-columns:210px minmax(0,1fr);gap:18px}.config-nav{position:sticky;top:20px;align-self:start;display:grid;gap:5px}.config-tab{display:flex;min-height:43px;align-items:center;padding:9px 11px;border:1px solid transparent;border-radius:9px;background:transparent;color:var(--muted);font-weight:750;text-align:left;cursor:pointer}.config-tab.is-active{border-color:var(--line);background:var(--panel-2);color:var(--text)}.config-panel[hidden]{display:none}.section-divider{height:1px;margin:22px 0;background:var(--line)}
.day-card{padding:15px;border:1px solid var(--line);border-radius:12px;background:var(--subtle)}.day-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.switch{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-size:12px;font-weight:750}.switch input{width:18px;height:18px;accent-color:var(--accent)}.periods{display:grid;gap:9px;margin-top:12px}.period-row{display:grid;grid-template-columns:1fr auto 1fr auto;align-items:end;gap:9px}.period-separator{padding-bottom:13px;color:var(--muted)}.empty-note{padding:18px;border:1px dashed var(--line);border-radius:11px;color:var(--muted);text-align:center}.resource-list{display:grid;gap:9px;margin-top:16px}.resource-row{display:grid;grid-template-columns:minmax(0,1.5fr) 1fr 90px auto;align-items:end;gap:9px;padding:12px;border:1px solid var(--line);border-radius:11px}.coming-soon{display:grid;min-height:340px;place-items:center;text-align:center}.coming-soon .line-icon{width:42px;height:42px;margin-bottom:12px;color:var(--text)}
@media(max-width:900px){.app-layout{grid-template-columns:1fr}.sidebar{position:fixed;z-index:40;width:min(280px,86vw);transform:translateX(-105%);transition:transform .2s ease}.menu-open .sidebar{transform:none}.menu-toggle{display:grid;width:44px;height:44px;place-items:center;border:1px solid var(--line);border-radius:10px;background:var(--panel);color:var(--text)}.nav-backdrop{position:fixed;inset:0;z-index:30;border:0;background:rgba(0,0,0,.55)}.menu-open .nav-backdrop{display:block}.config-layout{grid-template-columns:1fr}.config-nav{position:static;display:flex;overflow-x:auto;padding-bottom:5px}.config-tab{flex:0 0 auto}.choice-grid,.grid-3{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.topbar{min-height:68px;padding:11px 15px}.profile-chip{display:none}.content{padding:22px 14px 50px}.page-intro{display:block}.card{padding:17px}.grid-2,.grid-3,.choice-grid{grid-template-columns:1fr}.actions,.auth-actions{display:grid;grid-template-columns:1fr}.actions>*{width:100%}.period-row{grid-template-columns:1fr 1fr}.period-row .period-separator{display:none}.period-row .danger{grid-column:1/-1}.resource-row{grid-template-columns:1fr 1fr}.resource-row .resource-name{grid-column:1/-1}.resource-row .resource-actions{grid-column:1/-1;display:flex}.resource-row .resource-actions>*{flex:1}.page-message{right:16px;bottom:16px}}
.entity-toolbar,.entity-card-head,.entity-card-actions,.editor-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.entity-toolbar{margin-bottom:18px}.entity-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.entity-card{padding:17px;border:1px solid var(--line);border-radius:12px;background:var(--panel)}.entity-card h3{margin:0}.entity-meta{display:flex;flex-wrap:wrap;gap:7px;margin:12px 0}.pill{display:inline-flex;padding:5px 8px;border:1px solid var(--line);border-radius:999px;background:var(--panel-2);color:var(--muted);font-size:11px;font-weight:800}.pill.is-active{border-color:var(--line-strong);background:var(--panel-2);color:var(--text)}.pill.is-inactive{border-style:dashed;background:var(--panel);color:var(--status)}.entity-card-actions{justify-content:flex-end}.editor[hidden]{display:none}.editor{margin-bottom:18px}.editor-head{margin-bottom:18px}.editor-head h2{margin:0}.editor-head button{flex:0 0 auto}.subeditor{margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}.selection-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.selection-item{display:flex;min-height:44px;align-items:center;gap:8px;padding:9px 10px;border:1px solid var(--line);border-radius:9px;background:var(--field)}.selection-item input{accent-color:var(--accent)}.form-section{margin-top:10px;border:1px solid var(--line);border-radius:11px;background:var(--subtle)}.form-section summary{padding:14px;cursor:pointer;font-weight:800}.form-section[open] summary{border-bottom:1px solid var(--line)}.form-section-body{padding:16px}.money{font-variant-numeric:tabular-nums}.empty-state{grid-column:1/-1;padding:32px;border:1px dashed var(--line);border-radius:12px;color:var(--muted);text-align:center}
@media(max-width:760px){.entity-list{grid-template-columns:1fr}.selection-list{grid-template-columns:1fr}}
@media(max-width:620px){.entity-toolbar,.entity-card-head,.editor-head{align-items:stretch;flex-direction:column}.entity-toolbar .primary,.editor-head button{width:100%}.entity-card-actions{display:grid;grid-template-columns:1fr 1fr}.entity-card-actions>*{width:100%}}
.span-all{grid-column:1/-1}
.public-page{background:var(--bg)}.public-shell{width:min(620px,100%);margin:auto;padding:22px 16px 48px}.public-brand{display:flex;align-items:center;gap:12px;margin-bottom:20px}.public-brand h1{margin:2px 0;font-size:24px}.public-brand .brand-mark{overflow:hidden;filter:grayscale(1)}.public-brand .brand-mark img{width:100%;height:100%;object-fit:cover}.public-card{margin-bottom:13px;padding:19px;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);box-shadow:var(--shadow)}.public-card h2{margin:0 0 8px}.public-options{display:grid;gap:9px}.public-option{display:flex;min-height:64px;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid var(--line);border-radius:11px;background:var(--field);color:var(--text);text-align:left}.public-option:hover,.public-option:focus{border-color:var(--accent)}.public-option span{color:var(--muted);font-size:12px}.slot-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.slot-button{min-height:46px;border:1px solid var(--line);border-radius:10px;background:var(--field);color:var(--text);font-weight:800}.slot-button:hover{border-color:var(--accent);color:var(--accent)}.booking-summary{display:grid;gap:0;margin:14px 0 18px}.booking-summary>div{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid var(--line)}.booking-summary dt{color:var(--muted)}.booking-summary dd{margin:0;font-weight:750;text-align:right}.public-main-action{width:100%;min-height:50px}.result-card{text-align:center}.result-mark{display:grid;width:54px;height:54px;place-items:center;margin:0 auto 12px;border:1px solid var(--line-strong);border-radius:50%;background:var(--panel-2);color:var(--text);font-size:28px}.public-footer{padding-top:12px;color:var(--muted);font-size:11px;text-align:center}.appointment-list{display:grid;gap:9px}.appointment-card{display:grid;grid-template-columns:75px minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px;border:1px solid var(--line);border-radius:11px;background:var(--panel)}.appointment-time{color:var(--text);font-size:19px;font-weight:850}.appointment-copy strong,.appointment-copy span{display:block}.appointment-copy span{margin-top:3px;color:var(--muted);font-size:12px}.agenda-filters{display:grid;grid-template-columns:1fr 1fr auto;align-items:end;gap:10px;margin-bottom:17px}
@media(max-width:620px){.slot-grid{grid-template-columns:repeat(3,1fr)}.public-option{align-items:flex-start;flex-direction:column}.appointment-card{grid-template-columns:62px minmax(0,1fr)}.appointment-card>.pill{grid-column:2}.agenda-filters{grid-template-columns:1fr}.booking-summary>div{align-items:flex-start;flex-direction:column;gap:4px}.booking-summary dd{text-align:left}}
.payment-box{display:grid;gap:10px;margin:18px 0;padding:16px;border:1px solid var(--line);border-radius:12px;background:var(--field)}.payment-box p{margin:0;color:var(--muted);line-height:1.5}.payment-box textarea{min-height:92px;padding:10px;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--text)}.pix-qr{width:min(230px,100%);border-radius:10px;background:#fff}.block-manager{margin-top:28px}.block-list{display:grid;gap:10px;margin-top:20px}.appointment-detail{grid-template-columns:64px minmax(0,1fr) auto}.appointment-copy small{display:block;color:var(--muted);font-size:12px}.appointment-actions{display:flex;grid-column:2/-1;gap:8px;justify-content:flex-end}.result-card .primary{display:inline-flex;margin-top:18px;text-decoration:none}@media(max-width:620px){.appointment-detail{grid-template-columns:54px minmax(0,1fr)}.appointment-detail .pill{grid-column:2}.appointment-actions{grid-column:1/-1;justify-content:stretch}.appointment-actions button{flex:1}}
.auth-card h1{margin:0 0 7px}.auth-card [id$="-copy"]>p{margin:0 0 22px;color:var(--muted);line-height:1.55}.auth-submit{width:100%;margin-top:18px}.auth-switch{display:grid;gap:9px;margin-top:18px;padding-top:18px;border-top:1px solid var(--line);color:var(--muted);text-align:center}.terms-check{display:flex;align-items:flex-start;gap:9px;margin-top:16px;color:var(--muted);font-size:13px;line-height:1.45}.terms-check input{width:18px;height:18px;flex:0 0 auto}.terms-check a{color:var(--text);font-weight:700}
.home-heading,.section-heading,.setup-card{display:flex;align-items:center;justify-content:space-between;gap:18px}.home-heading{margin-bottom:22px}.home-heading h2{margin:0;font-size:clamp(24px,4vw,36px)}.home-heading p{margin:5px 0 0;color:var(--muted);text-transform:capitalize}.home-actions,.share-actions{display:flex;flex-wrap:wrap;gap:9px}.home-actions a,.share-actions a{text-decoration:none}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0}.metric-card{display:grid;align-content:start;min-height:125px;padding:18px;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel)}.metric-card span{color:var(--muted);font-size:12px;font-weight:750}.metric-card strong{margin-top:10px;font-size:clamp(22px,3vw,31px)}.metric-card small{margin-top:5px;color:var(--muted)}.setup-card h3{margin:5px 0 12px}.setup-list{display:flex;flex-wrap:wrap;gap:7px}.setup-list span{padding:6px 9px;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:11px;font-weight:750}.setup-list .is-done{color:var(--text)}.today-card .card-subtitle,.section-heading .card-subtitle{margin-bottom:0}.home-appointment .appointment-copy strong{font-size:15px}
.avatar{display:grid;width:54px;height:54px;flex:0 0 auto;place-items:center;overflow:hidden;border:1px solid var(--line-strong);border-radius:50%;background:var(--panel-2);font-weight:850}.avatar img{width:100%;height:100%;object-fit:cover}.avatar-large{width:104px;height:104px;font-size:24px}.avatar-business{border-radius:14px}.image-upload,.profile-hero,.professional-summary{display:flex;align-items:center;gap:14px}.image-upload>div:last-child{display:grid;gap:8px}.professional-summary{align-items:flex-start}.professional-summary>div:last-child{min-width:0;flex:1}.professional-summary p{margin:8px 0 3px;color:var(--muted)}.professional-summary small{color:var(--muted)}.professional-card{display:grid;gap:15px}.professional-card .primary{text-decoration:none}.profile-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);gap:16px}.profile-main{grid-row:span 2}.profile-section{margin-top:16px}.back-link{display:inline-block;margin-bottom:16px;color:var(--muted)}.friendly-setting{display:grid;gap:4px;padding:14px;border:1px solid var(--line);border-radius:11px;background:var(--subtle)}.friendly-setting small{color:var(--muted)}.selection-item.is-enabled{border-color:var(--line-strong);background:var(--panel-2)}.selection-item small{margin-left:auto;color:var(--muted)}.reservation-guidance{color:var(--muted);line-height:1.5}.professional-option{justify-content:flex-start}.public-option-copy{display:grid!important;gap:3px}.public-option-copy strong{color:var(--text)}.public-option-copy small{color:var(--muted)}
.legal-page{width:min(780px,100%);margin:auto;padding:28px 16px 60px}.legal-page>a{display:inline-block;margin-bottom:16px}.legal-page article{padding:clamp(22px,5vw,48px)}.legal-page h1{font-size:clamp(30px,5vw,44px)}.legal-page h2{margin-top:28px;font-size:18px}.legal-page p{color:var(--muted);line-height:1.7}.legal-review{padding:12px;border:1px dashed var(--line-strong);border-radius:10px;color:var(--text)!important;font-weight:700}
@media(max-width:900px){.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-grid{grid-template-columns:1fr}}
@media(max-width:620px){.home-heading,.section-heading,.setup-card{align-items:stretch;flex-direction:column}.home-actions,.share-actions{display:grid;grid-template-columns:1fr}.home-actions>*,.share-actions>*{width:100%}.metric-grid{gap:9px}.metric-card{min-height:112px;padding:14px}.metric-card strong{font-size:21px}.setup-card>a{width:100%}.profile-hero{align-items:flex-start}.avatar-large{width:82px;height:82px}.professional-card .entity-card-actions{grid-template-columns:1fr}.profile-section .resource-row{grid-template-columns:1fr}.profile-section .resource-row button{width:100%}}
.sidebar-foot{display:grid;gap:8px}.sidebar-foot small{color:var(--muted);font-size:10px;text-align:center}

/* Home v0.0.1: cockpit diário, escopado para não alterar outras telas. */
body[data-active="home"] .home-content{width:min(1180px,100%);padding-top:34px}
body[data-active="home"] .home-topbar{background:rgba(247,247,247,.9);backdrop-filter:blur(12px)}
body[data-active="home"] .home-topbar-copy h1{margin:2px 0;font-size:22px}
body[data-active="home"] .home-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:24px}
body[data-active="home"] .home-hero h2{max-width:760px;margin:5px 0 0;font-size:clamp(30px,4vw,44px);line-height:1.08;letter-spacing:-.035em}
body[data-active="home"] .home-date{margin:9px 0 0;color:var(--muted);font-size:15px;text-transform:capitalize}
body[data-active="home"] .home-actions{display:flex;flex:0 0 auto;gap:10px}
body[data-active="home"] .home-actions a{text-decoration:none}
body[data-active="home"] .metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:1fr;gap:12px;margin:0 0 18px}
body[data-active="home"] .metric-card{display:flex;min-height:142px;flex-direction:column;align-items:flex-start;padding:20px;border:1px solid var(--line);border-radius:16px;background:var(--panel);box-shadow:0 8px 24px rgba(0,0,0,.04)}
body[data-active="home"] .metric-card>span{min-height:32px;color:var(--muted);font-size:12px;font-weight:800;line-height:1.35}
body[data-active="home"] .metric-card>strong{display:flex;min-height:38px;align-items:center;margin-top:auto;color:var(--text);font-size:clamp(25px,2.5vw,34px);font-variant-numeric:tabular-nums;letter-spacing:-.03em;line-height:1.1}
body[data-active="home"] #metric-next{font-size:clamp(22px,2.3vw,32px)}
body[data-active="home"] .metric-card>small{min-height:18px;margin-top:7px;color:var(--muted);font-size:12px;line-height:1.4}
body[data-active="home"] .metric-skeleton{display:block;width:52px;height:28px;border-radius:7px;background:linear-gradient(90deg,#ececec 25%,#f7f7f7 50%,#ececec 75%);background-size:200% 100%;animation:home-shimmer 1.3s infinite}
body[data-active="home"] .metric-skeleton.is-wide{width:96px}
body[data-active="home"] .today-card{min-height:350px;padding:26px;border-color:var(--line-strong);box-shadow:0 16px 42px rgba(0,0,0,.06)}
body[data-active="home"] .today-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:20px}
body[data-active="home"] .today-heading h2{margin:4px 0 5px;font-size:clamp(24px,3vw,32px)}
body[data-active="home"] .today-date{margin:0;color:var(--muted);font-size:13px;font-weight:700}
body[data-active="home"] .today-count{padding:7px 10px;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:11px;font-weight:800;white-space:nowrap}
body[data-active="home"] .home-appointment-list{display:grid;gap:9px}
body[data-active="home"] .home-appointment{display:grid;grid-template-columns:78px minmax(0,1fr) auto;align-items:center;gap:14px;min-height:92px;padding:16px;border:1px solid var(--line);border-radius:13px;background:var(--panel)}
body[data-active="home"] .home-appointment time{font-size:22px;font-weight:900;font-variant-numeric:tabular-nums}
body[data-active="home"] .home-appointment-main{display:grid;gap:3px;min-width:0}
body[data-active="home"] .home-appointment-main strong{font-size:15px}
body[data-active="home"] .home-appointment-main span{font-size:14px}
body[data-active="home"] .home-appointment-main small{overflow:hidden;color:var(--muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}
body[data-active="home"] .home-loading{display:grid;gap:10px}
body[data-active="home"] .appointment-skeleton{height:88px;border-radius:13px;background:linear-gradient(90deg,#eee 25%,#f8f8f8 50%,#eee 75%);background-size:200% 100%;animation:home-shimmer 1.3s infinite}
body[data-active="home"] .home-state{display:grid;min-height:230px;place-items:center;align-content:center;padding:28px;text-align:center}
body[data-active="home"] .home-state-mark{display:grid;width:46px;height:46px;place-items:center;margin-bottom:12px;border:1px solid var(--line-strong);border-radius:50%;background:var(--panel-2);font-size:22px;font-weight:900}
body[data-active="home"] .home-state h3{margin:0;font-size:20px}
body[data-active="home"] .home-state p{margin:7px 0 18px;color:var(--muted)}
body[data-active="home"] .home-state a{text-decoration:none}
body[data-active="home"] .online-agenda{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:18px;box-shadow:none}
body[data-active="home"] .online-agenda h2{margin:4px 0 6px;font-size:20px}
body[data-active="home"] .online-agenda p:not(.eyebrow){max-width:650px;overflow:hidden;margin:0;color:var(--muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}
body[data-active="home"] .setup-card{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:18px;padding:18px;box-shadow:none}
body[data-active="home"] .setup-card h3{margin:4px 0 4px;font-size:18px}
body[data-active="home"] #setup-progress{margin:0 0 10px;color:var(--muted);font-size:12px}
body[data-active="home"] .setup-list{display:flex;flex-wrap:wrap;gap:6px}
body[data-active="home"] .setup-list span{padding:5px 8px;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:10px;font-weight:750}
body[data-active="home"] .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
@keyframes home-shimmer{to{background-position:-200% 0}}
@media(prefers-reduced-motion:reduce){body[data-active="home"] .metric-skeleton,body[data-active="home"] .appointment-skeleton{animation:none}}
@media(max-width:900px){body[data-active="home"] .home-content{width:100%;max-width:none;margin:0;padding:26px 20px 50px}body[data-active="home"] .metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){body[data-active="home"] .home-topbar{min-height:62px;padding:9px 16px}body[data-active="home"] .home-topbar-copy{display:none}body[data-active="home"] .home-content{padding:20px 16px 44px}body[data-active="home"] .home-hero{align-items:stretch;flex-direction:column;gap:18px;margin-bottom:20px}body[data-active="home"] .home-hero h2{font-size:31px;line-height:1.12}body[data-active="home"] .home-date{font-size:14px}body[data-active="home"] .home-actions{display:grid;grid-template-columns:1fr;gap:8px}body[data-active="home"] .home-actions>*{width:100%;min-height:48px}body[data-active="home"] .metric-grid{gap:10px;margin-bottom:14px}body[data-active="home"] .metric-card{min-height:135px;padding:16px}body[data-active="home"] .metric-card>span{min-height:33px;font-size:11px}body[data-active="home"] .metric-card>strong{font-size:25px}body[data-active="home"] #metric-next{font-size:21px}body[data-active="home"] .metric-card>small{font-size:11px}body[data-active="home"] .today-card{min-height:390px;padding:20px 16px}body[data-active="home"] .today-heading{margin-bottom:16px}body[data-active="home"] .today-count{display:none}body[data-active="home"] .home-appointment{grid-template-columns:minmax(0,1fr) auto;gap:10px;min-height:0;padding:15px}body[data-active="home"] .home-appointment time{font-size:22px}body[data-active="home"] .home-appointment>.pill{align-self:center;grid-column:2;grid-row:1}body[data-active="home"] .home-appointment-main{grid-column:1/-1;grid-row:2}body[data-active="home"] .home-appointment-main small{white-space:normal}body[data-active="home"] .appointment-skeleton{height:118px}body[data-active="home"] .online-agenda,body[data-active="home"] .setup-card{align-items:stretch;flex-direction:column}body[data-active="home"] .online-agenda .share-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}body[data-active="home"] .online-agenda .share-actions>*{width:100%}body[data-active="home"] .online-agenda p:not(.eyebrow){white-space:normal;overflow-wrap:anywhere}body[data-active="home"] .setup-card>a{width:100%}}
@media(max-width:340px){body[data-active="home"] .metric-grid{grid-template-columns:1fr}}

/* Home SaaS v0.0.1: continuidade visual com o login aprovado. */
body[data-active="home"]{background:#faf9fd}
body[data-active="home"] .app-layout{background:#faf9fd}
body[data-active="home"] .sidebar{border-right-color:#e9e5f2;background:rgba(255,255,255,.97);box-shadow:8px 0 28px rgba(46,31,79,.035)}
body[data-active="home"] .brand{min-width:0}
body[data-active="home"] .brand-mark{border-color:rgba(122,9,214,.2);background:var(--color-primary-light);color:var(--color-primary);box-shadow:none}
body[data-active="home"] .brand strong{white-space:nowrap}
body[data-active="home"] .brand-plus{color:var(--color-primary)}
body[data-active="home"] .brand small{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
body[data-active="home"] .nav-link{border-radius:12px;color:#666273}
body[data-active="home"] .nav-link:hover{border-color:#e9e5f2;background:#f8f6fc;color:var(--color-primary-dark)}
body[data-active="home"] .nav-link.is-active{border-color:rgba(122,9,214,.12);background:var(--color-primary-light);color:var(--color-primary)}
body[data-active="home"] .sidebar-foot{padding-top:14px;border-top:1px solid #eeeaf4}
body[data-active="home"] .sidebar-foot .ghost{min-height:42px;border-color:transparent;color:#77717f}
body[data-active="home"] .sidebar-foot .ghost:hover{border-color:#e9e5f2;background:#faf9fd;color:#312b3b}
body[data-active="home"] .home-topbar{min-height:72px;border-bottom-color:#e9e5f2;background:rgba(250,249,253,.9);backdrop-filter:blur(14px)}
body[data-active="home"] .home-topbar-brand{display:none;align-items:center;gap:9px}
body[data-active="home"] .home-topbar-brand strong{font-size:17px;letter-spacing:-.02em}
body[data-active="home"] .home-topbar-brand strong span{color:var(--color-primary)}
body[data-active="home"] .home-mini-mark{display:grid;width:34px;height:34px;place-items:center;border-radius:10px;background:var(--color-primary-light);color:var(--color-primary);font-size:11px;font-weight:900}
body[data-active="home"] .profile-chip{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
body[data-active="home"] .home-content{width:min(1180px,100%);padding-top:38px}
body[data-active="home"] .home-hero{align-items:center;margin-bottom:26px}
body[data-active="home"] .home-welcome h1{max-width:760px;margin:0;color:#151219;font-size:clamp(31px,4vw,44px);line-height:1.08;letter-spacing:-.04em}
body[data-active="home"] .home-lead{margin:9px 0 0;color:#55505d;font-size:16px}
body[data-active="home"] .home-date{margin:6px 0 0;color:#87818e;font-size:13px;text-transform:capitalize}
body[data-active="home"] .home-actions{gap:12px}
body[data-active="home"] .home-actions>*{min-height:50px;padding-inline:19px;border-radius:12px}
body[data-active="home"] .home-actions .primary{border-color:var(--color-primary);background:var(--color-primary);color:#fff;box-shadow:0 9px 22px rgba(122,9,214,.2)}
body[data-active="home"] .home-actions .primary:hover{border-color:var(--color-primary-dark);background:var(--color-primary-dark)}
body[data-active="home"] .home-actions .secondary{border-color:rgba(122,9,214,.46);background:#fff;color:var(--color-primary)}
body[data-active="home"] .metric-grid{gap:14px;margin-bottom:20px}
body[data-active="home"] .metric-card{position:relative;min-height:144px;overflow:hidden;padding:20px;border-color:#e9e5f2;border-radius:18px;background:#fff;box-shadow:0 10px 30px rgba(46,31,79,.055)}
body[data-active="home"] .metric-card::before{content:"";width:30px;height:5px;margin-bottom:14px;border-radius:999px;background:var(--color-primary-light);box-shadow:inset 10px 0 var(--color-primary)}
body[data-active="home"] .metric-card>span{min-height:0;color:#696472;font-size:12px}
body[data-active="home"] .metric-card>strong{margin-top:12px;color:#18151c}
body[data-active="home"] .metric-card>small{color:#87818e}
body[data-active="home"] .metric-skeleton{background:linear-gradient(90deg,#eeeaf7 25%,#faf9fd 50%,#eeeaf7 75%);background-size:200% 100%}
body[data-active="home"] .today-card{min-height:360px;padding:28px;border-color:#e4deef;border-radius:20px;box-shadow:0 18px 46px rgba(46,31,79,.075)}
body[data-active="home"] .today-heading{align-items:center;margin-bottom:22px}
body[data-active="home"] .today-heading h2{margin:0 0 6px;color:#18151c;font-size:clamp(25px,3vw,32px);letter-spacing:-.025em}
body[data-active="home"] .today-date{color:#87818e}
body[data-active="home"] .today-count{border-color:rgba(122,9,214,.15);background:var(--color-primary-light);color:var(--color-primary-dark)}
body[data-active="home"] .home-appointment-list{gap:10px}
body[data-active="home"] .home-appointment{grid-template-columns:76px minmax(0,1fr) auto;min-height:92px;padding:16px 18px;border-color:#ebe7f1;border-radius:15px;background:#fff;transition:border-color .18s ease,box-shadow .18s ease}
body[data-active="home"] .home-appointment:hover{border-color:rgba(122,9,214,.25);box-shadow:0 8px 22px rgba(46,31,79,.05)}
body[data-active="home"] .home-appointment time{color:var(--color-primary-dark);font-size:23px}
body[data-active="home"] .home-appointment-main{gap:4px}
body[data-active="home"] .home-appointment-main strong{color:#18151c;font-size:16px}
body[data-active="home"] .home-appointment-main span{color:#5e5965;font-size:13px}
body[data-active="home"] .home-appointment-main small{color:#8a8490}
body[data-active="home"] .home-appointment>.pill{border-color:#e4deef;background:#f7f4fc;color:#5e5965}
body[data-active="home"] .home-appointment>.pill.is-active{border-color:rgba(122,9,214,.16);background:var(--color-primary-light);color:var(--color-primary-dark)}
body[data-active="home"] .appointment-skeleton{background:linear-gradient(90deg,#f0edf6 25%,#fbfafd 50%,#f0edf6 75%);background-size:200% 100%}
body[data-active="home"] .home-state-mark{border-color:rgba(122,9,214,.18);background:var(--color-primary-light);color:var(--color-primary)}
body[data-active="home"] .home-state .secondary{border-color:rgba(122,9,214,.45);color:var(--color-primary);text-decoration:none}
body[data-active="home"] .online-agenda{padding:20px 22px;border-color:#e9e5f2;border-radius:18px;background:#fff;box-shadow:0 8px 26px rgba(46,31,79,.04)}
body[data-active="home"] .online-agenda h2{margin:0 0 5px;color:#18151c}
body[data-active="home"] .online-agenda .online-copy>p{max-width:none;margin:0;color:#686270;font-size:13px;white-space:normal}
body[data-active="home"] .online-agenda .online-copy>small{display:block;max-width:620px;overflow:hidden;margin-top:6px;color:#918b98;font-size:11px;text-overflow:ellipsis;white-space:nowrap}
body[data-active="home"] .online-agenda .share-actions{flex:0 0 auto}
body[data-active="home"] .online-agenda .share-actions>*{min-height:46px;border-radius:11px;text-decoration:none}
body[data-active="home"] .online-agenda .secondary{border-color:rgba(122,9,214,.42);color:var(--color-primary)}
body[data-active="home"] .online-agenda .ghost{border-color:#e1dce8;color:#4e4855}
body[data-active="home"] .setup-card{border-color:#e9e5f2;border-radius:18px;background:#fff}
@media(max-width:900px){body[data-active="home"] .home-topbar-brand{display:flex}body[data-active="home"] .menu-toggle{border-color:#e1dce8;background:#fff;color:var(--color-primary)}body[data-active="home"] .home-content{padding:30px 20px 50px}}
@media(max-width:620px){body[data-active="home"] .home-topbar{padding:9px 14px}body[data-active="home"] .profile-chip{display:none}body[data-active="home"] .home-content{padding:24px 14px 42px}body[data-active="home"] .home-hero{align-items:stretch;gap:20px;margin-bottom:20px}body[data-active="home"] .home-welcome h1{font-size:30px}body[data-active="home"] .home-lead{font-size:15px}body[data-active="home"] .home-actions{display:grid;width:100%;grid-template-columns:1fr;gap:10px}body[data-active="home"] .home-actions>*{width:100%;min-height:52px}body[data-active="home"] .metric-grid{gap:10px}body[data-active="home"] .metric-card{min-height:132px;padding:15px}body[data-active="home"] .metric-card::before{margin-bottom:11px}body[data-active="home"] .metric-card>strong{margin-top:10px}body[data-active="home"] .today-card{min-height:360px;padding:20px 15px}body[data-active="home"] .home-appointment{grid-template-columns:minmax(0,1fr) auto;padding:15px}body[data-active="home"] .home-appointment time{grid-column:1;font-size:22px}body[data-active="home"] .home-appointment>.pill{grid-column:2;grid-row:1}body[data-active="home"] .home-appointment-main{grid-column:1/-1;grid-row:2}body[data-active="home"] .online-agenda{gap:17px;padding:19px 16px}body[data-active="home"] .online-agenda .share-actions{gap:10px}body[data-active="home"] .online-agenda .online-copy>small{overflow-wrap:anywhere;white-space:normal}}
@media(max-width:370px){body[data-active="home"] .home-content{padding-inline:12px}body[data-active="home"] .metric-card{min-height:128px;padding:13px}body[data-active="home"] .metric-card>span{font-size:10.5px}body[data-active="home"] .metric-card>strong{font-size:23px}body[data-active="home"] #metric-next{font-size:19px}body[data-active="home"] .online-agenda .share-actions{grid-template-columns:1fr}}

/* Espaçamento consistente entre ações — login, Home, Configurações e mobile. */
.primary,.secondary,.danger,.ghost{padding:10px 16px;line-height:1.2;text-align:center;white-space:normal}
.actions,.auth-actions,.home-actions,.share-actions,.entity-card-actions,.resource-actions{gap:12px}
.auth-card .auth-submit{margin-top:20px}

/* Teste interno #1 — refinamento visual estritamente público. */
.public-booking-page{--go-brand-financial:#7A09D6;--go-brand-financial-dark:#6507B3;--public-card-shadow:0 5px 16px rgba(42,37,31,.045)}
.public-booking-page .public-showcase-header{display:flex;align-items:center;justify-content:flex-start;gap:11px;margin-bottom:14px;padding-inline:2px}
.public-booking-page .public-showcase-header .brand-mark{width:44px;height:44px;flex:0 0 44px;order:0;justify-self:auto;border-radius:13px}
.public-booking-page .public-showcase-header h1{order:1;min-width:0;margin:0;text-align:left;font-family:"Segoe Script","Lucida Handwriting","Brush Script MT",cursive;font-size:clamp(20px,6vw,27px);font-weight:500;letter-spacing:0;line-height:1.2}
.is-public-decision .public-showcase-header,.is-public-app-shell .public-showcase-header{display:flex}
.public-booking-page .public-card,.public-booking-page .salon-service-card,.public-booking-page .salon-professional-card{border-color:var(--public-border);background:#fff;box-shadow:var(--public-card-shadow)}
.public-booking-page h1,.public-booking-page h2,.public-booking-page h3,.public-booking-page h4{font-weight:650}
.public-booking-page .entry-hero{border-radius:0 0 28px 28px}
.public-booking-page .entry-hero .entry-photo{border-radius:0 0 28px 28px;object-fit:cover}
.public-booking-page .entry-hero .entry-photo img,.public-booking-page .salon-service-image img,.public-booking-page .entry-service-visual img,.public-booking-page .reservation-professional-media img{width:100%;height:100%;object-fit:cover}
.public-booking-page .salon-service-card{grid-template-columns:78px minmax(0,1fr);min-height:94px}
.public-booking-page .salon-service-image,.public-booking-page .salon-service-card img{width:78px;height:78px;aspect-ratio:1;border-radius:12px;overflow:hidden}
.public-booking-page .brand-price{color:var(--go-brand-financial);font-weight:750}
.public-booking-page .entry-service-meta>strong,.public-booking-page .decision-service>.brand-price,.public-booking-page .confirmation-service .brand-price{color:var(--go-brand-financial)}
.public-booking-page .slot-button{border-color:var(--agenda-accent);background:#fff;color:var(--public-text);font-weight:600}
.public-booking-page .slot-button:hover,.public-booking-page .slot-button:focus-visible{border-color:var(--agenda-accent);color:var(--agenda-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--agenda-accent) 16%,transparent)}
.public-booking-page .slot-button.is-selected{border-color:var(--agenda-accent);background:var(--agenda-accent);color:var(--agenda-accent-contrast)}
.public-booking-page .slot-button:disabled,.public-booking-page .slot-button[aria-disabled="true"]{border-color:#dedbd6;background:#efeeec;color:#99948d;box-shadow:none;cursor:not-allowed;opacity:1;pointer-events:none}
.public-booking-page .flow-public-step input,.public-booking-page .flow-public-step textarea{border-color:var(--public-border);font-weight:400}
.public-booking-page .flow-public-step input:focus,.public-booking-page .flow-public-step textarea:focus{border-color:var(--agenda-accent);outline:0;box-shadow:0 0 0 3px color-mix(in srgb,var(--agenda-accent) 14%,transparent)}
.public-booking-page .flow-screen-header h2,.public-booking-page .decision-screen-header h2{font-weight:600}
.public-booking-page .confirmation-values{display:none}
.public-booking-page .confirmation-guidance{display:grid;gap:8px;margin:0 0 14px;padding:14px;border:1px solid var(--public-border);border-radius:17px;background:#fff;box-shadow:var(--public-card-shadow)}
.public-booking-page .confirmation-guidance p{display:flex;align-items:flex-start;gap:9px;margin:0;color:var(--public-muted);font-size:12px;line-height:1.45}
.public-booking-page .confirmation-guidance .public-icon{width:18px;height:18px;flex:0 0 18px;color:var(--agenda-accent)}
.public-booking-page .public-footer{display:none;color:var(--go-brand-financial);font-size:10px;font-weight:600}
.public-booking-page.is-public-result .public-footer{display:block}

/* Referência visual pública final — cinco telas Studio Embeleze. */
.public-booking-page{--public-bg:#fff;--public-text:#0b1734;--public-muted:#687187;--public-border:#e8e8e8;background:#f4f3f0;color:var(--public-text)}
.public-booking-page .public-shell{width:min(100%,390px);min-height:100vh;padding:0 10px 96px;background:#fff;box-shadow:0 0 30px rgba(22,27,38,.08)}
.public-booking-page .public-showcase-header,.public-booking-page.is-public-decision .public-showcase-header,.public-booking-page.is-public-app-shell .public-showcase-header{display:flex;min-height:104px;align-items:center;gap:13px;margin:0;padding:13px 20px;border-bottom:1px solid #f0f0f0}
.public-booking-page .public-showcase-header .brand-mark{width:60px;height:60px;flex:0 0 60px;border-radius:50%;box-shadow:none}
.public-brand-copy{display:grid;min-width:0;gap:2px}.public-booking-page .public-showcase-header .public-brand-copy h1{overflow:visible;margin:0;text-align:left;font-family:"Segoe Script","Lucida Handwriting","Brush Script MT",cursive;font-size:24px;font-weight:500;letter-spacing:-.04em;line-height:1.1;white-space:nowrap}.public-brand-copy p{margin:0;color:var(--public-muted);font-size:12px}
.public-app-nav{bottom:0;width:min(100%,390px);min-height:74px;padding:6px 8px;border-width:1px 0 0;border-radius:20px 20px 0 0;background:#fff;box-shadow:0 -5px 18px rgba(30,34,44,.06);backdrop-filter:none}.public-app-nav a,.public-app-nav button{min-height:60px;color:#566072}.public-app-nav span{font-size:22px}.public-app-nav strong{font-size:10px;font-weight:500}.public-app-nav .is-current{color:var(--agenda-accent)}

/* Tela 01 */
.public-salon-home{display:grid;gap:18px}.salon-home-hero{position:relative;overflow:hidden;height:370px;margin:0;padding:0;border:0;border-radius:0 0 22px 22px;background:#ddd;box-shadow:none}.salon-home-hero::after{display:none}.salon-home-hero-media{position:absolute;inset:0;display:grid;place-items:center;background:#e8e2dc;color:var(--agenda-accent);font-size:48px;font-weight:800}.salon-home-hero-media img{width:100%;height:100%;object-fit:cover}.salon-home-hero-copy{position:absolute;z-index:2;right:0;bottom:0;left:0;padding:88px 20px 16px;color:#fff;background:linear-gradient(180deg,transparent,rgba(17,17,21,.78))}.salon-home-hero-copy h2{max-width:280px;margin:0 0 5px;color:#fff;font-family:Georgia,serif;font-size:28px;font-weight:400;line-height:1.08;letter-spacing:0}.salon-home-hero-copy p{margin:0;color:#fff;font-size:13px;line-height:1.35}.salon-home-address{display:none!important}.salon-home-section{display:grid;gap:10px;padding:0 10px}.salon-home-heading{padding:0}.salon-home-heading h3{margin:0;color:var(--public-text);font-family:Georgia,serif;font-size:23px;font-weight:600;letter-spacing:-.02em}.salon-service-list{gap:9px}.public-booking-page .salon-service-card{display:grid;width:100%;min-height:84px;grid-template-columns:76px minmax(0,1fr) 22px;align-items:center;gap:11px;padding:7px;border:1px solid #ecebea;border-radius:13px;background:#fff;color:var(--public-text);box-shadow:0 4px 13px rgba(25,29,40,.07);text-align:left;cursor:pointer}.public-booking-page .salon-service-image,.public-booking-page .salon-service-card img{width:76px;height:70px;border-radius:10px}.salon-service-card>span{display:grid;gap:5px}.salon-service-card strong{font-size:14px;line-height:1.18}.salon-service-card small{display:flex;align-items:center;gap:4px;color:var(--agenda-accent);font-size:11px}.salon-service-card small .public-icon{width:14px;height:14px}.salon-service-card small i{font-style:normal}.salon-service-card .salon-home-arrow{display:grid;place-items:center;color:var(--agenda-accent)}

/* Tela 02 */
.public-booking-page.is-public-decision .public-shell{padding:0 10px 150px}.public-booking-page.is-public-decision #professional-step{padding:0 10px}.decision-screen-header,.flow-screen-header{display:grid;min-height:35px;grid-template-columns:36px 1fr 36px;margin:0;padding:4px 0}.decision-back{width:36px;height:36px;color:var(--agenda-accent)}.decision-page-heading{display:grid;grid-template-columns:1fr auto;align-items:center;margin:0 0 9px;padding:0 2px}.decision-page-heading h2{margin:0;color:var(--public-text);font-size:20px;font-weight:650}.decision-page-heading p{grid-column:1/-1;margin:10px 0 0;color:var(--agenda-accent);font-size:12px;line-height:1.2}.decision-title-icon{display:grid;width:28px;height:28px;place-items:center;color:var(--agenda-accent)}.decision-title-icon .public-icon{width:24px;height:24px}.public-booking-page.is-public-decision #decision-booking-context,.public-booking-page.is-public-decision #decision-service-picker{display:none}.public-booking-page.is-public-decision .decision-date-picker{gap:5px;margin:0 0 25px;padding:0;border:0}.public-booking-page.is-public-decision .decision-date-strip{display:flex;gap:5px;min-width:0;flex:1}.public-booking-page.is-public-decision .decision-date{min-width:0;min-height:61px;flex:1;gap:1px;padding:5px 2px;border:0;border-radius:10px;background:#fafafa;box-shadow:0 3px 10px rgba(30,34,44,.06)}.public-booking-page.is-public-decision .decision-date small{font-size:9px;font-weight:500}.public-booking-page.is-public-decision .decision-date strong{font-size:16px;font-weight:600}.public-booking-page.is-public-decision .decision-date span{display:none}.public-booking-page.is-public-decision .decision-date.is-selected{box-shadow:0 5px 13px color-mix(in srgb,var(--agenda-accent) 25%,transparent)}.public-booking-page.is-public-decision .decision-other-date{display:none!important}.public-booking-page.is-public-decision .decision-availability h3{margin:0 0 14px;font-size:20px;font-weight:650}.public-booking-page.is-public-decision .decision-slot-area{display:block}.public-booking-page.is-public-decision .decision-slot-period{display:contents}.public-booking-page.is-public-decision .decision-slot-period h4{display:none}.public-booking-page.is-public-decision .decision-slot-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:8px}.public-booking-page.is-public-decision .decision-slot-grid .slot-button{min-height:44px;border:1px solid var(--agenda-accent);border-radius:9px;background:#fff;color:var(--public-text);font-size:13px;font-weight:500;box-shadow:none}.public-booking-page.is-public-decision .decision-slot-grid .slot-button:disabled,.public-booking-page.is-public-decision .decision-slot-grid .slot-button.is-unavailable{border-color:#e1e1e1;background:#ededed;color:#999;text-decoration:none}.decision-slot-legend{display:flex;align-items:center;gap:13px;margin:17px 2px 13px;color:#4f5563;font-size:10px}.decision-slot-legend span{display:flex;align-items:center;gap:5px}.decision-slot-legend i{width:14px;height:14px;border:1px solid var(--agenda-accent);border-radius:50%}.decision-slot-legend .is-unavailable{border-color:#ddd;background:#ddd}.decision-slot-legend .is-closed{border-color:#edc75b;background:#edc75b}.decision-info-note{display:flex;align-items:flex-start;gap:9px;padding:12px;border-radius:10px;background:#fff7e5;color:var(--public-text)}.decision-info-note>.public-icon{width:22px;height:22px;flex:0 0 22px;color:var(--agenda-accent)}.decision-info-note p{margin:0;font-size:10px;line-height:1.45}.public-booking-page.is-public-decision .decision-continue-wrap{bottom:74px;width:min(calc(100% - 38px),352px);padding:0;border:0;border-radius:10px;background:transparent;box-shadow:none;backdrop-filter:none}.public-booking-page.is-public-decision .decision-continue{position:relative;min-height:48px;justify-content:center;font-size:16px;font-weight:500;letter-spacing:0;text-transform:none}.decision-continue .public-icon{position:absolute;right:15px;width:19px;height:19px}

/* Tela 03 */
.public-booking-page.is-public-booking-flow .public-shell{padding:0 20px 96px}.public-booking-page.is-public-app-shell .public-showcase-header{margin:0 -20px}.flow-public-step{padding:0}.flow-public-step #client-booking-context{display:none}.client-data-heading{margin:3px 0 24px}.client-data-heading h2{margin:0 0 5px;font-size:22px;font-weight:650}.client-data-heading p{font-size:13px;line-height:1.45}.flow-public-step #client-form{display:grid;gap:17px;padding:0;border:0;border-radius:0;box-shadow:none}.flow-public-step #client-form .field{gap:7px}.flow-public-step #client-form label{font-size:13px;font-weight:500}.flow-public-step #client-form input{min-height:50px;padding:10px 13px;border-radius:10px}.flow-public-step #client-form textarea{min-height:86px;padding:12px 13px;border-radius:10px}.flow-public-step #client-form .marketing-choice{display:none}.client-privacy-note{display:flex;align-items:flex-start;gap:10px;margin-top:6px;padding:15px 13px;border-radius:11px;background:#f1eaff;color:#5225c7;text-align:center}.client-privacy-note>.public-icon{width:22px;height:22px;flex:0 0 22px}.client-privacy-note p{flex:1;margin:0;font-size:10px;line-height:1.5}.flow-public-step #client-form .public-main-action,.review-step>.public-main-action{display:flex;position:relative;min-height:48px;align-items:center;justify-content:center;border-radius:10px;font-size:16px;font-weight:500;text-transform:none}.flow-public-step #client-form .public-main-action .public-icon,.review-step>.public-main-action .public-icon{position:absolute;right:14px;width:19px;height:19px}

/* Tela 04 */
.review-step{display:grid;gap:12px}.review-page-heading{margin:3px 0 7px}.review-page-heading h2{margin:0 0 5px;font-size:21px;font-weight:650}.review-page-heading p{margin:0;color:var(--public-muted);font-size:12px}.review-summary{display:block;overflow:hidden;border:1px solid #ededed;border-radius:14px;background:#fff;box-shadow:0 5px 17px rgba(25,29,40,.07)}.review-service{display:grid;min-height:104px;grid-template-columns:88px minmax(0,1fr);align-items:center;gap:11px;padding:10px;border:0;border-radius:0;box-shadow:none}.review-service-photo{width:88px;height:88px;border-radius:10px}.review-service>div:last-child{gap:7px}.review-service strong{font-size:14px}.review-service span{display:flex;align-items:center;gap:5px;font-size:11px}.review-service span .public-icon{width:16px;height:16px}.review-service span i{font-style:normal}.review-detail-row{display:grid;min-height:67px;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:7px;margin:0 10px;padding:9px 0;border-top:1px solid #e8e8e8;background:#fff;box-shadow:none}.review-detail-row>.public-icon{width:26px;height:26px;color:#5c6474}.review-detail-row>span{display:grid;gap:2px}.review-summary .review-detail-row small{font-size:11px}.review-summary .review-detail-row strong{font-size:13px;font-weight:500}.review-summary .review-detail-row em{font-size:10px}.review-observation{grid-column:auto}.review-total,.review-client,.review-schedule{display:none}.review-step>.public-main-action{margin-top:7px}

/* Tela 05 */
.public-booking-page.is-public-result .public-shell{padding-bottom:94px}.public-booking-page.is-public-result .public-showcase-header{min-height:94px}.confirmation-status{margin:4px 0 12px}.confirmation-status .result-mark{width:58px;height:58px;margin-bottom:8px;border:0;background:#f0e8ff}.confirmation-status h2{font-size:22px;font-weight:650}.confirmation-status p{margin-top:4px;font-size:12px;line-height:1.35}.confirmation-payment-status{position:absolute;left:-9999px}.public-booking-page.is-public-app-shell .confirmation-summary{margin-bottom:10px;border-radius:13px}.confirmation-service{display:grid;grid-template-columns:82px minmax(0,1fr);align-items:center;gap:10px;padding:9px}.confirmation-service-photo{width:82px;height:76px;overflow:hidden;border-radius:10px;background:#eee}.confirmation-service-photo img{width:100%;height:100%;object-fit:cover}.confirmation-service>span{display:grid;gap:5px}.confirmation-service>span>strong{font-size:14px}.confirmation-service>span>em{display:flex;align-items:center;gap:5px;color:var(--public-muted);font-size:11px;font-style:normal}.confirmation-service>span>em .public-icon{width:15px;height:15px}.confirmation-service .confirmation-payment-copy{font-size:8px}.confirmation-professional{display:grid;grid-template-columns:34px minmax(0,1fr);gap:8px;padding:9px 12px;border-top:1px solid #e9e9e9;background:#fff}.confirmation-professional>.public-icon{width:27px;height:27px;color:#5c6474}.confirmation-professional>span{display:grid;gap:2px}.confirmation-summary small{color:var(--public-muted);font-size:10px;font-weight:400;letter-spacing:0;text-transform:none}.confirmation-professional strong{font-size:13px;font-weight:500}.confirmation-schedule{display:grid;grid-template-columns:minmax(0,1fr) 112px;gap:9px;margin:0 0 10px;padding:0;border:0}.confirmation-schedule>span{display:grid;min-height:60px;grid-template-columns:27px minmax(0,1fr);align-items:center;gap:7px;padding:10px;border:1px solid #ededed;border-radius:12px;background:#fff;box-shadow:0 4px 13px rgba(25,29,40,.05)}.confirmation-schedule>span>.public-icon{width:24px;height:24px;color:var(--agenda-accent)}.confirmation-schedule strong{font-size:11px;font-weight:500}.confirmation-schedule>span:last-child{text-align:left}.confirmation-schedule>span:last-child strong{font-size:20px}.public-booking-page .confirmation-guidance{gap:10px;margin-bottom:10px;padding:13px;border:0;border-radius:13px;background:#fff6df;box-shadow:none}.public-booking-page .confirmation-guidance p{gap:10px;color:var(--public-text);font-size:10px;line-height:1.35}.public-booking-page .confirmation-guidance .public-icon{width:24px;height:24px;flex-basis:24px}.confirmation-thanks{display:flex;align-items:flex-start;gap:10px;margin:0 3px 9px}.confirmation-thanks>.public-icon{width:29px;height:29px;flex:0 0 29px;color:var(--agenda-accent)}.confirmation-thanks p{display:grid;gap:2px;margin:0}.confirmation-thanks strong{font-size:10px}.confirmation-thanks span{color:var(--public-muted);font-size:9px}.public-booking-page.is-public-app-shell .confirmation-actions .primary{min-height:42px;border-radius:10px;font-size:11px}.public-booking-page.is-public-result .public-footer{display:block;margin:7px 0 0;padding:0;color:#263044;font-size:9px;font-weight:400}

@media(max-width:390px){.public-booking-page .public-shell{padding-right:10px;padding-left:10px}.public-booking-page.is-public-booking-flow .public-shell{padding-right:20px;padding-left:20px}.public-booking-page .public-showcase-header,.public-booking-page.is-public-decision .public-showcase-header,.public-booking-page.is-public-app-shell .public-showcase-header{margin-right:-10px;margin-left:-10px}.public-booking-page.is-public-app-shell .public-showcase-header{margin-right:-20px;margin-left:-20px}.salon-home-hero{margin-right:-10px;margin-left:-10px}.public-booking-page.is-public-decision .decision-date{min-width:0;min-height:61px}.public-booking-page.is-public-decision .decision-slot-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.confirmation-schedule{grid-template-columns:minmax(0,1fr) 112px}.confirmation-schedule>span:last-child{display:grid;grid-template-columns:27px minmax(0,1fr);gap:7px;text-align:left}.review-service{grid-template-columns:88px minmax(0,1fr)}.review-service-photo{width:88px;height:88px}}

/* Revisão explícita antes da criação da reserva. */
.review-step{display:grid;gap:14px}.review-summary{display:grid;gap:11px}.review-service,.review-professional,.review-schedule,.review-client,.review-total{border:1px solid var(--public-border);border-radius:17px;background:#fff;box-shadow:var(--public-card-shadow)}.review-service{display:grid;grid-template-columns:92px minmax(0,1fr);align-items:center;gap:12px;padding:8px}.review-service-photo{width:92px;height:92px;overflow:hidden;border-radius:13px;background:var(--public-surface-secondary)}.review-service-photo img{width:100%;height:100%;object-fit:cover}.review-service>div:last-child,.review-professional>span,.review-client>span,.review-total{display:grid;gap:3px}.review-summary small{color:var(--public-muted);font-size:10px}.review-summary strong{min-width:0;overflow-wrap:anywhere;color:var(--public-text);font-size:14px}.review-service span{color:var(--public-muted);font-size:12px}.review-professional{display:flex;align-items:center;gap:11px;padding:11px}.review-professional em{color:var(--public-muted);font-size:10px;font-style:normal}.review-schedule{display:grid;grid-template-columns:minmax(0,1fr) 94px;gap:10px;padding:13px}.review-schedule>span{display:grid;gap:4px}.review-schedule strong{font-size:18px}.review-schedule>span:last-child strong{color:var(--agenda-accent);font-size:25px}.review-client{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:13px}.review-observation{grid-column:1/-1;padding-top:10px;border-top:1px solid var(--public-border)}.review-observation strong{font-size:12px;font-weight:600;line-height:1.45}.review-total{padding:16px}.review-total strong{color:var(--agenda-accent);font-size:28px;letter-spacing:-.03em}.review-step>.public-main-action{width:100%;min-height:52px;border-radius:12px}.review-step>.public-main-action:disabled{cursor:wait;opacity:.7}
@media(max-width:390px){.review-service{grid-template-columns:82px minmax(0,1fr)}.review-service-photo{width:82px;height:82px}.review-client{grid-template-columns:1fr}.review-observation{grid-column:auto}.review-schedule strong{font-size:16px}}
@media(max-width:390px){.public-booking-page .salon-service-card{grid-template-columns:72px minmax(0,1fr)}.public-booking-page .salon-service-image,.public-booking-page .salon-service-card img{width:72px;height:72px}.public-booking-page .entry-hero,.public-booking-page .entry-hero .entry-photo{border-radius:0 0 24px 24px}}
.auth-switch{gap:12px;margin-top:20px;padding-top:20px}
.config-nav{gap:7px}
.period-row{column-gap:12px;row-gap:10px}
@media(max-width:620px){.actions,.auth-actions,.home-actions,.share-actions,.entity-card-actions,.resource-actions{gap:10px}.home-actions>*,.share-actions>*,.actions>*{min-height:46px}.config-nav{gap:8px}.auth-switch{gap:10px}}

/* Login SaaS mobile-first: escopo isolado para não alterar as demais telas. */
.auth-page{background:#faf9fd}
.auth-page .auth-wrap{display:flex;min-height:100svh;align-items:flex-start;justify-content:center;padding:14px}
.auth-page .auth-card{width:100%;max-width:440px;padding:26px 20px;border-color:#e9e5f2;border-radius:20px;box-shadow:0 18px 45px rgba(46,31,79,.09)}
.auth-page .auth-brand{display:grid;justify-items:center;gap:8px;padding:0 0 25px;text-align:center}
.auth-page .auth-brand-main{display:flex;align-items:center;gap:10px}
.auth-page .auth-brand .brand-mark{width:38px;height:38px;border:0;border-radius:11px;background:var(--color-primary-light);color:var(--color-primary);font-size:13px}
.auth-page .auth-brand-name{color:#17151c;font-size:17px;font-weight:850;letter-spacing:-.02em}
.auth-page .auth-brand-plus{color:var(--color-primary)}
.auth-page .auth-brand small{margin:0;color:#77727f;font-size:11px}
.auth-page .auth-copy{text-align:center}
.auth-page .auth-copy h1{margin:0;font-size:clamp(27px,8vw,32px);line-height:1.15;letter-spacing:-.035em}
.auth-page .auth-title-accent{color:var(--color-primary)}
.auth-page .auth-title-line{display:block;width:36px;height:3px;margin:11px auto 15px;border-radius:999px;background:var(--color-primary)}
.auth-page .auth-copy>p{margin:0 0 25px;color:#706b77;font-size:14px;line-height:1.55}
.auth-page .auth-card .stack{gap:17px}
.auth-page .auth-card .field{gap:8px}
.auth-page .auth-card .field label{font-size:12px;font-weight:800}
.auth-page .auth-input-shell{display:flex;min-height:56px;align-items:center;overflow:hidden;border:1px solid #ded8ea;border-radius:13px;background:#fff;transition:border-color .15s ease,box-shadow .15s ease}
.auth-page .auth-input-shell:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-primary) 13%,transparent)}
.auth-page .auth-field-icon{width:19px;height:19px;flex:0 0 auto;margin-left:15px;fill:none;stroke:#8a8295;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.auth-page .auth-input-shell:focus-within .auth-field-icon{stroke:var(--color-primary)}
.auth-page .auth-card .field input{width:auto;min-height:54px;flex:1;padding:13px 12px;border:0;border-radius:0;outline:0;background:transparent;box-shadow:none;font-size:16px}
.auth-page .password-toggle{display:grid;width:46px;min-height:54px;flex:0 0 46px;place-items:center;padding:0;border:0;border-radius:0;background:transparent;color:#817989}
.auth-page .password-toggle svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.auth-page .password-toggle .eye-off,.auth-page .password-toggle.is-visible .eye-on{display:none}
.auth-page .password-toggle.is-visible .eye-off{display:block}
.auth-page .forgot-password{display:block;width:max-content;margin:9px 0 0 auto;color:var(--color-primary);font-size:12px;font-weight:750;text-decoration:none}
.auth-page .forgot-password[aria-disabled="true"]{pointer-events:none;cursor:default}
.auth-page .auth-card[data-mode="signup"] .forgot-password{display:none}
.auth-page .auth-card .auth-submit{position:relative;width:100%;min-height:58px;margin-top:22px;padding:12px 48px;border:0;border-radius:14px;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-dark));color:#fff;box-shadow:0 10px 22px color-mix(in srgb,var(--color-primary) 24%,transparent);font-size:15px}
.auth-page .auth-divider{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;margin:24px 0 18px;color:#9a949f;font-size:11px}
.auth-page .auth-divider::before,.auth-page .auth-divider::after{height:1px;background:#e8e4eb;content:''}
.auth-page .auth-card .auth-switch{gap:10px;margin:0;padding:0;border:0;color:#716b77;font-size:13px}
.auth-page .auth-card .auth-switch button{width:100%;min-height:56px;border-radius:14px}
.auth-page .auth-card #login-switch .secondary{border-color:var(--color-primary);background:#fff;color:var(--color-primary)}
.auth-page .auth-card #login-switch .secondary svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.auth-page .auth-card #signup-switch .ghost{border-color:#d9d3e1}
.auth-page .auth-card .terms-check{margin-top:18px}
.auth-page .auth-footer{margin-top:22px;text-align:center}
.auth-page .auth-card-footer{margin:0;color:#77717d;font-size:11px}
.auth-page .auth-card-footer span{color:var(--color-primary);font-weight:850}
.auth-page .auth-footer-divider{display:block;width:100%;height:1px;margin:10px 0 7px;background:#ded8e8}
.auth-page .auth-developer{margin:0;color:#99939e;font-size:10px}
.auth-page .auth-developer strong{color:#716b76;font-weight:750}
@media(min-width:621px){.auth-page .auth-wrap{align-items:center;padding:28px}.auth-page .auth-card{padding:32px 34px}.auth-page .auth-copy>p{font-size:15px}}

/* Home app mobile v0.0.1: cabeçalho estrutural, conteúdo compacto e navegação inferior. */
body[data-active="home"]{background:#f7f6fa}
body[data-active="home"] .home-topbar{position:sticky;top:0;z-index:20;display:grid;min-height:76px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;padding:12px clamp(18px,4vw,42px);border:0;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-dark));color:#fff;box-shadow:0 8px 24px rgba(101,7,179,.22)}
body[data-active="home"] .home-topbar-brand{display:flex;align-items:center;justify-self:start;gap:10px;color:#fff}
body[data-active="home"] .home-topbar-brand strong{font-size:18px;letter-spacing:-.02em}
body[data-active="home"] .home-topbar-brand strong span{color:#fff}
body[data-active="home"] .home-mini-mark{width:37px;height:37px;border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.96);color:var(--color-primary);box-shadow:0 5px 14px rgba(34,10,105,.15)}
body[data-active="home"] .home-topbar .menu-toggle{width:42px;height:42px;margin-right:12px;border-color:rgba(255,255,255,.32);background:rgba(255,255,255,.12);color:#fff}
body[data-active="home"] .home-topbar-tools{display:flex;align-items:center;justify-self:end;gap:10px}
body[data-active="home"] .home-topbar .profile-chip{max-width:250px;color:rgba(255,255,255,.78)}
body[data-active="home"] .home-notification{display:grid;width:42px;height:42px;place-items:center;border:1px solid rgba(255,255,255,.3);border-radius:12px;background:rgba(255,255,255,.1);color:#fff}
body[data-active="home"] .home-content{padding-top:24px;padding-bottom:70px}
body[data-active="home"] .home-hero{align-items:end;gap:18px;margin-bottom:16px}
body[data-active="home"] .home-welcome h1{font-size:clamp(25px,3vw,31px);letter-spacing:-.025em}
body[data-active="home"] .home-lead{margin-top:6px;font-size:14px}
body[data-active="home"] .home-date{margin-top:4px;font-size:12px}
body[data-active="home"] .home-actions{gap:8px}
body[data-active="home"] .home-actions>*{min-height:42px;padding:8px 13px;border-radius:11px;font-size:12px;box-shadow:none}
body[data-active="home"] .metric-grid{gap:10px;margin-bottom:12px}
body[data-active="home"] .metric-card{min-height:112px;padding:14px;border-radius:15px;box-shadow:0 6px 18px rgba(46,31,79,.045)}
body[data-active="home"] .metric-card::before{width:23px;height:23px;margin-bottom:8px;border-radius:0;background:var(--color-primary);box-shadow:none;content:"";mask:center/contain no-repeat;-webkit-mask:center/contain no-repeat}
body[data-active="home"] .metric-card:nth-child(1)::before{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='16' rx='2'/%3E%3Cpath d='M8 3v4m8-4v4M3 10h18'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='16' rx='2'/%3E%3Cpath d='M8 3v4m8-4v4M3 10h18'/%3E%3C/svg%3E")}
body[data-active="home"] .metric-card:nth-child(2)::before{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v5l3 2'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v5l3 2'/%3E%3C/svg%3E")}
body[data-active="home"] .metric-card:nth-child(3)::before{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round'%3E%3Cpath d='M18 8a6 6 0 0 0-12 0c0 7-3 7-3 9h18c0-2-3-2-3-9M10 21h4'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round'%3E%3Cpath d='M18 8a6 6 0 0 0-12 0c0 7-3 7-3 9h18c0-2-3-2-3-9M10 21h4'/%3E%3C/svg%3E")}
body[data-active="home"] .metric-card:nth-child(4)::before{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M15 8.5c-.7-.5-1.6-.8-2.7-.8-1.5 0-2.6.7-2.6 1.8 0 2.9 5.3 1.1 5.3 4.2 0 1.3-1.2 2.2-3 2.2-1.2 0-2.3-.4-3-1M12 6v12'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M15 8.5c-.7-.5-1.6-.8-2.7-.8-1.5 0-2.6.7-2.6 1.8 0 2.9 5.3 1.1 5.3 4.2 0 1.3-1.2 2.2-3 2.2-1.2 0-2.3-.4-3-1M12 6v12'/%3E%3C/svg%3E")}
body[data-active="home"] .metric-card>span{font-size:11px}
body[data-active="home"] .metric-card>strong{min-height:27px;margin-top:5px;font-size:25px}
body[data-active="home"] #metric-next{font-size:22px}
body[data-active="home"] .metric-card>small{min-height:15px;margin-top:3px;font-size:10.5px}
body[data-active="home"] .home-next-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;margin-bottom:12px;padding:16px 18px;border-color:rgba(122,9,214,.2);border-radius:17px;background:linear-gradient(135deg,#fff,var(--color-primary-light));box-shadow:0 9px 24px rgba(101,7,179,.08)}
body[data-active="home"] .home-next-icon{display:grid;width:44px;height:44px;place-items:center;border-radius:14px;background:var(--color-primary);color:#fff}
body[data-active="home"] .home-next-copy{display:grid;min-width:0;gap:3px}
body[data-active="home"] .home-next-copy p{margin:0;color:var(--color-primary-dark);font-size:11px;font-weight:850}
body[data-active="home"] .home-next-copy strong{overflow:hidden;color:#18151c;font-size:17px;text-overflow:ellipsis;white-space:nowrap}
body[data-active="home"] .home-next-copy>span{overflow:hidden;color:#6f6876;font-size:12px;text-overflow:ellipsis;white-space:nowrap}
body[data-active="home"] .home-next-card>.secondary{min-height:40px;border-color:rgba(122,9,214,.35);background:#fff;color:var(--color-primary);font-size:11px;text-decoration:none}
body[data-active="home"] .today-card{min-height:0;padding:20px;border-radius:18px}
body[data-active="home"] .today-heading{margin-bottom:14px}
body[data-active="home"] .today-heading h2{font-size:24px}
body[data-active="home"] .home-appointment-list{gap:7px}
body[data-active="home"] .home-appointment{min-height:76px;padding:12px 14px;border-radius:13px}
body[data-active="home"] .home-appointment time{font-size:20px}
body[data-active="home"] .home-appointment-main strong{font-size:14px}
body[data-active="home"] .home-appointment-main span,body[data-active="home"] .home-appointment-main small{font-size:11px}
body[data-active="home"] .home-state{min-height:170px;padding:20px}
body[data-active="home"] .home-state-mark{width:38px;height:38px;margin-bottom:9px;font-size:18px}
body[data-active="home"] .home-state h3{font-size:18px}
body[data-active="home"] .home-state p{margin:5px 0 14px;font-size:12px}
body[data-active="home"] .online-agenda{margin-top:12px}
.home-bottom-nav{display:none}
@media(max-width:900px){body[data-active="home"] .home-content{padding-bottom:112px}body[data-active="home"] .home-topbar{grid-template-columns:44px minmax(0,1fr) 44px;padding:12px 14px}body[data-active="home"] .home-topbar .menu-toggle{display:grid;margin:0}body[data-active="home"] .home-topbar-brand{justify-self:center}body[data-active="home"] .home-topbar .profile-chip{display:none}body[data-active="home"] .home-topbar-tools{width:44px}body[data-active="home"] .home-notification{width:42px;height:42px}.home-bottom-nav{position:fixed;right:0;bottom:0;left:0;z-index:25;display:grid;height:72px;grid-template-columns:repeat(5,minmax(0,1fr));align-items:end;padding:7px max(8px,env(safe-area-inset-right)) max(7px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));border-top:1px solid #e5e0eb;background:rgba(255,255,255,.97);box-shadow:0 -8px 24px rgba(46,31,79,.08);backdrop-filter:blur(14px)}.home-bottom-nav>a,.home-bottom-nav>button{display:flex;min-width:0;height:54px;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:3px;border:0;background:transparent;color:#7a7480;font-size:9px;font-weight:750;text-decoration:none}.home-bottom-nav .line-icon{width:21px;height:21px}.home-bottom-nav .is-active{color:var(--color-primary)}.home-bottom-nav .home-bottom-add{align-self:start;height:58px;transform:translateY(-20px)}.home-bottom-nav .home-bottom-add>span{display:grid;width:58px;height:58px;place-items:center;border:5px solid #f7f6fa;border-radius:50%;background:var(--color-primary);color:#fff;box-shadow:0 8px 20px rgba(101,7,179,.3);font-size:31px;font-weight:400;line-height:1}}
@media(max-width:620px){body[data-active="home"] .home-content{padding:18px 12px 108px}body[data-active="home"] .home-hero{align-items:stretch;gap:13px;margin-bottom:13px}body[data-active="home"] .home-welcome h1{font-size:25px}body[data-active="home"] .home-lead{font-size:13px}body[data-active="home"] .home-actions{grid-template-columns:1fr 1fr;gap:8px}body[data-active="home"] .home-actions>*{min-height:40px;padding:7px 8px;font-size:11px}body[data-active="home"] .metric-grid{gap:8px}body[data-active="home"] .metric-card{min-height:105px;padding:12px}body[data-active="home"] .metric-card::before{width:20px;height:20px;margin-bottom:6px}body[data-active="home"] .metric-card>span{min-height:0;font-size:10.5px}body[data-active="home"] .metric-card>strong{margin-top:4px;font-size:23px}body[data-active="home"] #metric-next{font-size:20px}body[data-active="home"] .home-next-card{grid-template-columns:40px minmax(0,1fr) auto;gap:10px;padding:13px}body[data-active="home"] .home-next-icon{width:40px;height:40px;border-radius:12px}body[data-active="home"] .home-next-copy strong{font-size:14px}body[data-active="home"] .home-next-copy>span{font-size:10.5px}body[data-active="home"] .home-next-card>.secondary{min-height:36px;padding:7px 9px;font-size:10px}body[data-active="home"] .today-card{padding:17px 13px}body[data-active="home"] .today-heading h2{font-size:22px}body[data-active="home"] .home-appointment{grid-template-columns:63px minmax(0,1fr) auto;gap:8px;min-height:72px;padding:11px}body[data-active="home"] .home-appointment time{grid-column:1;grid-row:1;font-size:18px}body[data-active="home"] .home-appointment-main{grid-column:2;grid-row:1}body[data-active="home"] .home-appointment>.pill{grid-column:3;grid-row:1;padding:4px 6px;font-size:9px}body[data-active="home"] .home-appointment-main small{white-space:normal}body[data-active="home"] .online-agenda{padding:16px 14px}}
@media(max-width:380px){body[data-active="home"] .home-topbar-brand strong{font-size:16px}body[data-active="home"] .metric-card{min-height:102px;padding:11px}body[data-active="home"] .home-next-card{grid-template-columns:38px minmax(0,1fr) auto;padding-inline:11px}body[data-active="home"] .home-next-card>.secondary{padding-inline:7px}body[data-active="home"] .home-appointment{grid-template-columns:57px minmax(0,1fr)}body[data-active="home"] .home-appointment>.pill{grid-column:2;grid-row:2;justify-self:start}.home-bottom-nav>a,.home-bottom-nav>button{font-size:8.5px}}

/* Home referência mobile: resumo diário, timeline e atalhos compactos. */
body[data-active="home"] .home-topbar{min-height:68px;padding-block:9px}
body[data-active="home"] .home-mini-mark{width:34px;height:34px;border-color:rgba(255,255,255,.15);background:#171329;color:#fff;font-size:10px}
body[data-active="home"] .home-topbar-brand strong{font-size:16px}
body[data-active="home"] .home-content{padding-top:18px}
body[data-active="home"] .home-hero{display:block;margin-bottom:12px}
body[data-active="home"] .home-greeting{margin:0 0 3px;color:#756f7c;font-size:12px}
body[data-active="home"] .home-welcome h1{margin:0;color:#18151c;font-size:21px;line-height:1.2;letter-spacing:-.025em}
body[data-active="home"] .home-date{margin-top:5px;font-size:10.5px}
body[data-active="home"] .metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-bottom:10px}
body[data-active="home"] .metric-card{min-height:118px;padding:11px 10px;border-radius:14px}
body[data-active="home"] .metric-card::before{width:22px;height:22px;margin-bottom:7px}
body[data-active="home"] .metric-card:nth-child(2)::before{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round'%3E%3Ccircle cx='9' cy='8' r='3'/%3E%3Cpath d='M3.5 19c.7-3.5 2.5-5 5.5-5s4.8 1.5 5.5 5M16 7a3 3 0 0 1 0 6m1 2c2 .5 3 1.7 3.5 4'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round'%3E%3Ccircle cx='9' cy='8' r='3'/%3E%3Cpath d='M3.5 19c.7-3.5 2.5-5 5.5-5s4.8 1.5 5.5 5M16 7a3 3 0 0 1 0 6m1 2c2 .5 3 1.7 3.5 4'/%3E%3C/svg%3E")}
body[data-active="home"] .metric-card:nth-child(3)::before{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M15 8.5c-.7-.5-1.6-.8-2.7-.8-1.5 0-2.6.7-2.6 1.8 0 2.9 5.3 1.1 5.3 4.2 0 1.3-1.2 2.2-3 2.2-1.2 0-2.3-.4-3-1M12 6v12'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M15 8.5c-.7-.5-1.6-.8-2.7-.8-1.5 0-2.6.7-2.6 1.8 0 2.9 5.3 1.1 5.3 4.2 0 1.3-1.2 2.2-3 2.2-1.2 0-2.3-.4-3-1M12 6v12'/%3E%3C/svg%3E")}
body[data-active="home"] .metric-card:nth-child(4)::before{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v5l3 2'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v5l3 2'/%3E%3C/svg%3E")}
body[data-active="home"] .metric-card>span{min-height:29px;font-size:10px;line-height:1.25}
body[data-active="home"] .metric-card>strong{min-height:23px;margin-top:5px;font-size:22px}
body[data-active="home"] #metric-value{color:var(--color-primary);font-size:18px;white-space:nowrap}
body[data-active="home"] #metric-next{font-size:20px}
body[data-active="home"] .metric-card>small{overflow:hidden;min-height:13px;margin-top:2px;font-size:9.5px;text-overflow:ellipsis;white-space:nowrap}
body[data-active="home"] .home-next-card{margin-bottom:14px;padding:14px 16px;background:#fff}
body[data-active="home"] .home-next-icon{border-radius:50%;background:var(--color-primary-light);color:var(--color-primary)}
body[data-active="home"] .home-next-copy p{font-size:10px}
body[data-active="home"] .home-next-copy strong{font-size:15px}
body[data-active="home"] .home-next-card>.secondary::after{margin-left:2px;content:'›';font-size:16px}
body[data-active="home"] .today-card{padding:0 0 4px;overflow:hidden;border-radius:15px;box-shadow:0 6px 18px rgba(46,31,79,.045)}
body[data-active="home"] .today-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;margin:0;padding:13px 14px 9px;border-bottom:1px solid #eeeaf3}
body[data-active="home"] .today-heading h2{margin:0;font-size:15px;letter-spacing:-.01em}
body[data-active="home"] .today-date{display:none}
body[data-active="home"] .today-full-link{color:var(--color-primary);font-size:10px;font-weight:800;text-decoration:none;white-space:nowrap}
body[data-active="home"] .today-count{display:none!important}
body[data-active="home"] .home-appointment-list{gap:0;padding:0 10px}
body[data-active="home"] .home-appointment{position:relative;grid-template-columns:54px minmax(0,1fr) auto;gap:8px;min-height:60px;padding:9px 6px 9px 10px;border:0;border-bottom:1px solid #eeeaf3;border-radius:0;background:#fff;box-shadow:none}
body[data-active="home"] .home-appointment:last-child{border-bottom:0}
body[data-active="home"] .home-appointment::before{position:absolute;top:9px;bottom:9px;left:0;width:2px;border-radius:2px;background:var(--color-primary);content:''}
body[data-active="home"] .home-appointment time{font-size:14px}
body[data-active="home"] .home-appointment-main{gap:2px}
body[data-active="home"] .home-appointment-main strong{font-size:11px}
body[data-active="home"] .home-appointment-main span{font-size:10px}
body[data-active="home"] .home-appointment-main small{display:none}
body[data-active="home"] .home-appointment>.pill{padding:4px 7px;font-size:8.5px;white-space:nowrap}
body[data-active="home"] .home-appointment:has(>.pill:not(.is-active):not(.is-inactive)) time{color:var(--color-primary)}
body[data-active="home"] .home-loading{padding:10px}
body[data-active="home"] .appointment-skeleton{height:58px}
body[data-active="home"] .home-state{min-height:145px}
body[data-active="home"] .home-quick-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin-top:12px;padding:12px 8px;border-radius:15px;box-shadow:0 6px 18px rgba(46,31,79,.045)}
body[data-active="home"] .home-quick-actions>a{display:flex;min-width:0;min-height:70px;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:4px;border-right:1px solid #eeeaf3;color:#26212b;text-align:center;text-decoration:none}
body[data-active="home"] .home-quick-actions>a:last-child{border-right:0}
body[data-active="home"] .quick-action-icon{display:grid;width:36px;height:36px;place-items:center;border-radius:12px;background:#faf8ff;color:var(--color-primary)}
body[data-active="home"] .quick-action-icon .line-icon{width:24px;height:24px}
body[data-active="home"] .home-quick-actions strong{font-size:9.5px;line-height:1.15}
body[data-active="home"] .online-agenda{margin-top:12px}
@media(max-width:620px){body[data-active="home"] .home-content{padding:14px 10px 108px}body[data-active="home"] .metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}body[data-active="home"] .metric-card{min-height:112px;padding:9px 8px}body[data-active="home"] .metric-card::before{width:20px;height:20px}body[data-active="home"] .metric-card>span{font-size:9px}body[data-active="home"] .metric-card>strong{font-size:20px}body[data-active="home"] #metric-value{font-size:15px}body[data-active="home"] #metric-next{font-size:18px}body[data-active="home"] .home-next-card{grid-template-columns:38px minmax(0,1fr) auto;padding:12px}body[data-active="home"] .home-next-icon{width:38px;height:38px}body[data-active="home"] .home-next-card>.secondary{padding-inline:8px}body[data-active="home"] .home-appointment{grid-template-columns:48px minmax(0,1fr) auto}body[data-active="home"] .online-agenda{padding:14px 12px}}
@media(max-width:370px){body[data-active="home"] .metric-card{padding-inline:6px}body[data-active="home"] .metric-card>span{font-size:8.5px}body[data-active="home"] #metric-value{font-size:14px}body[data-active="home"] .home-next-card{grid-template-columns:34px minmax(0,1fr) auto;gap:7px;padding-inline:9px}body[data-active="home"] .home-next-icon{width:34px;height:34px}body[data-active="home"] .home-next-copy strong{font-size:13px}body[data-active="home"] .home-next-card>.secondary{padding-inline:6px;font-size:9px}}

/* Linguagem visual oficial GO Agenda+: marca e primitivas reutilizáveis. */
.auth-page .auth-brand-main,body[data-active="home"] .home-topbar-brand,.onboarding .auth-brand-main{display:flex;align-items:center;gap:10px}
.auth-page .auth-brand .brand-mark,body[data-active="home"] .home-mini-mark,.onboarding .brand-mark{display:grid;width:38px;height:38px;place-items:center;border:0;border-radius:11px;background:var(--color-primary-light);color:var(--color-primary);box-shadow:none;font-size:13px;font-weight:900}
.auth-page .auth-brand-name,body[data-active="home"] .home-topbar-brand strong,.onboarding .auth-brand-name{color:#17151c;font-size:17px;font-weight:850;letter-spacing:-.02em}
.auth-page .auth-brand-plus,body[data-active="home"] .home-topbar-brand strong span,.onboarding .auth-brand-plus{color:var(--color-primary)}
.ui-button-primary{border:1px solid var(--ui-primary-border);background:var(--ui-primary-bg);color:var(--ui-primary-text);box-shadow:var(--ui-primary-shadow)}
.ui-button-secondary{border:1px solid var(--ui-secondary-border);background:var(--ui-secondary-bg);color:var(--ui-secondary-text);box-shadow:none}
.ui-surface-card{border:1px solid var(--ui-card-border);border-radius:var(--ui-card-radius);background:var(--ui-card-bg);box-shadow:var(--ui-card-shadow)}
.ui-icon-outline{fill:none;stroke:var(--ui-icon-color);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.ui-action-elevated{box-shadow:var(--ui-primary-shadow);transform:translateY(-1px)}
body[data-active="home"] .metric-card:nth-child(4)::before{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round'%3E%3Cpath d='M18 8a6 6 0 0 0-12 0c0 7-3 7-3 9h18c0-2-3-2-3-9M10 21h4'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round'%3E%3Cpath d='M18 8a6 6 0 0 0-12 0c0 7-3 7-3 9h18c0-2-3-2-3-9M10 21h4'/%3E%3C/svg%3E")}

/* Primeiro acesso: extensão visual direta do Login, sem alterar o formulário funcional. */
.config-page:has(.onboarding:not([hidden])){min-height:100svh;padding:clamp(14px,4vh,36px);background:#faf9fd}
.onboarding{width:min(440px,100%);margin:0 auto;padding:28px 24px;border-color:var(--ui-card-border);border-radius:20px;background:var(--ui-card-bg);box-shadow:0 18px 45px rgba(46,31,79,.09)}
.onboarding-brand{text-align:center}
.onboarding-brand .auth-brand-main{justify-content:center}
.onboarding-brand>small{display:block;margin-top:8px;color:#77717d;font-size:11px}
.onboarding-copy{margin:28px 0 24px;text-align:center}
.onboarding-eyebrow{margin:0 0 9px;color:var(--color-primary);font-size:10px;font-weight:850;letter-spacing:.13em}
.onboarding-copy h1{margin:0;color:#17151c;font-size:clamp(27px,7vw,32px);line-height:1.1;letter-spacing:-.035em}
.onboarding .auth-title-accent{color:var(--color-primary)}
.onboarding-copy>p:last-child{max-width:340px;margin:14px auto 0;color:#706b77;font-size:13px;line-height:1.5}
.onboarding-form{display:grid;gap:17px}
.onboarding-form .field{gap:8px}
.onboarding-form .field label{font-size:12px;font-weight:800}
.onboarding .auth-input-shell{display:flex;min-height:56px;align-items:center;overflow:hidden;border:1px solid #ded8ea;border-radius:13px;background:#fbfaff;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}
.onboarding .auth-input-shell:focus-within{border-color:var(--color-primary);background:#fff;box-shadow:0 0 0 3px color-mix(in srgb,var(--color-primary) 13%,transparent)}
.onboarding .auth-field-icon{width:19px;height:19px;flex:0 0 auto;margin-left:15px;fill:none;stroke:#8a8295;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.onboarding .auth-input-shell:focus-within .auth-field-icon{stroke:var(--color-primary)}
.onboarding .auth-input-shell input{width:auto;min-width:0;min-height:54px;flex:1;padding:13px 14px 13px 12px;border:0;border-radius:0;outline:0;background:transparent;box-shadow:none;color:#17151c;font-size:16px}
.onboarding .auth-input-shell input::placeholder{color:#aaa3b1;opacity:1}
.onboarding .auth-submit{position:relative;width:100%;min-height:58px;margin-top:5px;padding:12px 48px;border:1px solid var(--color-primary);border-radius:14px;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-dark));color:#fff;box-shadow:var(--ui-primary-shadow);font-size:14px}
.onboarding .auth-submit::after{position:absolute;right:20px;content:'→';font-size:19px;font-weight:500}
.onboarding .auth-submit:active{transform:translateY(1px);box-shadow:0 5px 12px rgba(122,9,214,.2)}
.onboarding-progress{margin:14px 0 0;color:#99939e;font-size:10px;text-align:center}
.onboarding-progress span{margin:0 3px;color:#bbb4c2}
@media(max-width:620px){.config-page:has(.onboarding:not([hidden])){padding:14px}.onboarding{padding:25px 20px}.onboarding-copy{margin:24px 0 21px}.onboarding-copy h1{font-size:28px}.onboarding-form{gap:15px}}

/* Telas internas: continuidade visual do Login, Primeiro acesso e Home. */
.internal-page{background:#faf9fd;color:#18151c}
.internal-page .app-layout{background:#faf9fd}
.internal-page .sidebar{border-right-color:#e9e5f2;background:rgba(255,255,255,.97);box-shadow:8px 0 28px rgba(46,31,79,.035)}
.internal-page .sidebar .brand{min-width:0}
.internal-page .sidebar .brand-mark,.internal-page .internal-topbar-brand .brand-mark{border:0;background:var(--color-primary-light);color:var(--color-primary);box-shadow:none}
.internal-page .sidebar .brand strong{color:#17151c;white-space:nowrap}
.internal-page .sidebar .brand small{max-width:150px;overflow:hidden;color:#77717d;text-overflow:ellipsis;white-space:nowrap}
.internal-page .nav-link{border-radius:12px;color:#666273}
.internal-page .nav-link:hover{border-color:#e9e5f2;background:#f8f6fc;color:var(--color-primary-dark)}
.internal-page .nav-link.is-active{border-color:rgba(122,9,214,.12);background:var(--color-primary-light);color:var(--color-primary)}
.internal-page .sidebar-foot{padding-top:14px;border-top:1px solid #eeeaf4}
.internal-page .sidebar-foot .ghost{min-height:42px;border-color:transparent;color:#77717f;box-shadow:none}
.internal-page .internal-topbar{position:sticky;top:0;z-index:20;min-height:68px;border-bottom-color:#e9e5f2;background:rgba(250,249,253,.9);backdrop-filter:blur(14px)}
.internal-topbar-brand{display:flex;align-items:center;gap:10px}
.internal-topbar-brand .brand-mark{width:38px;height:38px;border-radius:11px;font-size:13px}
.internal-topbar-brand strong{color:#17151c;font-size:17px;font-weight:850;letter-spacing:-.02em}
.internal-topbar-brand strong span{color:var(--color-primary)}
.internal-page .profile-chip{max-width:300px;overflow:hidden;color:#817b88;text-overflow:ellipsis;white-space:nowrap}
.internal-page .internal-content{padding-top:32px}
.internal-page .entity-toolbar{align-items:flex-end;margin-bottom:20px}
.internal-page .entity-toolbar h1,.internal-page .page-intro h1{margin:5px 0 18px;color:#18151c;font-size:clamp(25px,3vw,32px);letter-spacing:-.025em}
.internal-page .entity-toolbar h2,.internal-page .page-intro h2{margin:0 0 6px;color:#18151c;font-size:clamp(19px,2.5vw,24px);letter-spacing:-.02em}
.internal-page .entity-toolbar .card-subtitle,.internal-page .page-intro p{max-width:690px;margin:0;color:#706a77;font-size:13px;line-height:1.55}
.internal-page .eyebrow{color:var(--color-primary);font-size:10px}
.internal-page .page-intro .eyebrow{color:var(--color-primary);font-size:10px}
.internal-page .card,.internal-page .entity-card{border-color:var(--ui-card-border);border-radius:17px;background:#fff;box-shadow:var(--ui-card-shadow)}
.internal-page .card{padding:22px}
.internal-page .editor{margin-bottom:20px;border-color:#e4def0;box-shadow:0 14px 34px rgba(46,31,79,.07)}
.internal-page .editor-head{padding-bottom:15px;border-bottom:1px solid #eeeaf3}
.internal-page .editor-head h2{font-size:20px}
.internal-page .editor-close{width:38px;min-height:38px;padding:0;border-color:transparent;border-radius:50%;color:#6f6876;font-size:25px;font-weight:400;line-height:1}
.internal-page .editor-close:hover{border-color:#e5dff0;background:var(--color-primary-light);color:var(--color-primary)}
.internal-page .field{gap:8px}
.internal-page .field label,.internal-page .field-label{color:#28222e;font-size:12px;font-weight:800}
.internal-page .field input,.internal-page .field select,.internal-page .field textarea{min-height:54px;padding:12px 14px;border:1px solid #ded8ea;border-radius:13px;background:#fbfaff;color:#18151c;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}
.internal-page .field textarea{min-height:100px;resize:vertical}
.internal-page .field input::placeholder,.internal-page .field textarea::placeholder{color:#aaa3b1}
.internal-page .field input:focus,.internal-page .field select:focus,.internal-page .field textarea:focus{border-color:var(--color-primary);background:#fff;box-shadow:0 0 0 3px color-mix(in srgb,var(--color-primary) 13%,transparent)}
.internal-page .primary{border-color:var(--color-primary);border-radius:12px;background:var(--color-primary);color:#fff;box-shadow:var(--ui-primary-shadow)}
.internal-page .primary:hover{border-color:var(--color-primary-dark);background:var(--color-primary-dark)}
.internal-page .primary:active{transform:translateY(1px);box-shadow:0 5px 12px rgba(122,9,214,.2)}
.internal-page .secondary{border-color:rgba(122,9,214,.5);border-radius:12px;background:#fff;color:var(--color-primary);box-shadow:none}
.internal-page .ghost{border-color:#e1dce8;border-radius:12px;background:transparent;color:#5e5766;box-shadow:none}
.internal-page .tertiary-action{display:inline-flex;min-height:38px;align-items:center;justify-content:center;gap:6px;padding:6px 8px;border:0;background:transparent;color:var(--color-primary);font-weight:800;text-decoration:none;cursor:pointer}
.internal-page .danger{min-height:38px;padding:6px 9px;border-color:transparent;background:transparent;color:#786f7c;box-shadow:none}
.internal-page .button-arrow::after{content:'→';font-size:18px;font-weight:500}
.internal-page .icon-add::before{content:'+';font-size:18px;font-weight:600;line-height:1}
.internal-page .line-icon{color:var(--color-primary)}
.internal-page .switch{min-height:46px;color:#4e4855;font-size:12px;cursor:pointer}
.internal-page .switch input,.internal-page .selection-item input,.internal-page .choice input{width:20px;height:20px;flex:0 0 20px;margin:0;appearance:none;border:1px solid #cfc7dc;border-radius:6px;background:#fff;cursor:pointer}
.internal-page .switch input:checked,.internal-page .selection-item input:checked,.internal-page .choice input:checked{border-color:var(--color-primary);background:var(--color-primary) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='m5 10 3 3 7-7' fill='none' stroke='white' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/16px no-repeat}
.internal-page .choice:has(input:checked),.internal-page .selection-item:has(input:checked){border-color:rgba(122,9,214,.35);background:var(--color-primary-light)}
.internal-page .entity-list{gap:10px}
.internal-page .entity-card{position:relative;min-height:0;padding:15px 17px}
.internal-page .professional-card{display:grid;grid-template-columns:minmax(0,1fr) 34px;align-items:center;gap:10px}
.internal-page .professional-summary{align-items:center}
.internal-page .avatar{border-color:rgba(122,9,214,.2);background:var(--color-primary-light);color:var(--color-primary-dark)}
.internal-page .professional-summary p{margin:5px 0 2px;color:#655f6c;font-size:12px}
.internal-page .professional-summary small{color:#8a8490;font-size:10.5px}
.internal-page .entity-card-head{align-items:center}
.internal-page .entity-card h3{color:#211c25;font-size:14px}
.internal-page .pill{border-color:#e7e2ed;background:#f8f6fb;color:#716a78}
.internal-page .pill.is-active{border-color:rgba(122,9,214,.18);background:var(--color-primary-light);color:var(--color-primary-dark)}
.internal-page .pill.is-inactive{border-style:solid;background:#faf9fb;color:#837c87}
.entity-card-chevron{display:grid;width:34px;height:40px;place-items:center;border-radius:10px;color:var(--color-primary);font-size:25px;text-decoration:none}
.entity-card-chevron:hover{background:var(--color-primary-light)}
.internal-page .service-card{display:flex;align-items:center;justify-content:space-between;gap:16px}
.service-card-copy{min-width:0}
.service-card-copy p{display:flex;align-items:center;gap:7px;margin:7px 0 3px;color:#5f5966;font-size:12px}
.service-card-copy p strong{color:var(--color-primary-dark)}
.service-card-copy small{color:#8a8490;font-size:10.5px}
.internal-page .service-card .entity-card-actions{flex:0 0 auto;gap:2px}
.friendly-empty{display:grid;min-height:230px;place-items:center;align-content:center;padding:28px;border:1px solid #e8e3ef;border-radius:17px;background:#fff;box-shadow:var(--ui-card-shadow);text-align:center}
.friendly-empty .line-icon{width:42px;height:42px;padding:8px;border-radius:13px;background:var(--color-primary-light)}
.friendly-empty h3{margin:12px 0 5px;color:#211c25;font-size:18px}
.friendly-empty p{margin:0 0 17px;color:#77717d;font-size:12px;line-height:1.5}
.friendly-empty .primary{min-height:46px}
.internal-page .form-section{overflow:hidden;border-color:#e5dfee;border-radius:13px;background:#fff}
.internal-page .form-section summary{position:relative;padding:15px 48px 15px 16px;list-style:none;color:#312b38}
.internal-page .form-section summary::-webkit-details-marker{display:none}
.internal-page .form-section summary::after{position:absolute;top:50%;right:17px;color:#8a8295;content:'⌄';font-size:20px;transform:translateY(-55%);transition:transform .15s ease}
.internal-page .form-section[open]{border-color:rgba(122,9,214,.28);box-shadow:0 5px 16px rgba(46,31,79,.035)}
.internal-page .form-section[open] summary{border-bottom-color:#ebe6f1;background:var(--color-primary-light);color:var(--color-primary-dark)}
.internal-page .form-section[open] summary::after{color:var(--color-primary);transform:translateY(-42%) rotate(180deg)}
.internal-page .selection-item{min-height:48px;border-color:#e5dfee;border-radius:11px;background:#fbfaff}
.internal-page .back-link{display:inline-flex;align-items:center;gap:7px;margin-bottom:18px;color:var(--color-primary);font-size:12px;font-weight:800;text-decoration:none}
.internal-page .profile-eyebrow{margin-bottom:10px}
.internal-page .profile-hero{padding-bottom:16px;border-bottom:1px solid #eeeaf3}
.internal-page .profile-hero h1{margin:0 0 7px;color:#18151c;font-size:clamp(22px,3vw,28px);letter-spacing:-.025em}
.internal-page .avatar-large{width:96px;height:96px;border:3px solid var(--color-primary-light);box-shadow:0 0 0 1px rgba(122,9,214,.18)}
.file-upload-control{display:flex;align-items:center;gap:10px}
.file-upload-control input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.file-upload-control label{min-height:44px;cursor:pointer}
.file-upload-control small{color:#8b8590;font-size:10.5px}
.professional-profile-page #remove-photo{justify-self:start;min-height:36px;padding-inline:0}
.professional-link-card .eyebrow{margin-bottom:7px}
.professional-link-card h2{margin:0 0 10px;font-size:18px}
.professional-link-card .card-subtitle{margin:0 0 18px}
.professional-link-card .share-actions>*{min-height:44px;text-decoration:none}
.internal-page .profile-section{margin-top:14px}
.internal-page .profile-section h2{font-size:19px}
.internal-page .config-layout{grid-template-columns:200px minmax(0,1fr);gap:20px}
.internal-page .config-nav{gap:7px}
.internal-page .config-tab{min-height:42px;border:1px solid transparent;border-radius:999px;color:#5f5966}
.internal-page .config-tab:hover{background:#f7f4fc;color:var(--color-primary-dark)}
.internal-page .config-tab.is-active{border-color:rgba(122,9,214,.2);background:var(--color-primary-light);color:var(--color-primary)}
.internal-page .config-panel h3{color:#211c25;font-size:19px}
.internal-page .day-card{padding:15px;border-color:#e5dfee;border-radius:13px;background:#fbfaff}
.internal-page .day-head>strong{color:#302a36;font-size:13px}
.internal-page .periods{gap:10px;margin-top:14px;padding-top:14px;border-top:1px solid #ebe6f1}
.internal-page .period-row{align-items:end}
.internal-page .day-card>.actions{padding-top:2px}
.internal-page .day-card [data-add-period]{border-color:transparent;background:transparent;color:var(--color-primary)}
.internal-page .day-card [data-save-day]{min-width:145px}
.internal-page .empty-note{border:1px solid #e6e1ec;background:#fbfaff}
.internal-page .friendly-setting{border-color:#e5dfee;background:#fbfaff}
@media(max-width:900px){.internal-page .internal-topbar{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;padding:10px 14px}.internal-page .internal-topbar-brand{justify-self:center}.internal-page .internal-topbar .profile-chip{display:none}.internal-page .menu-toggle{border-color:#e1dce8;background:#fff;color:var(--color-primary)}.internal-page .config-layout{grid-template-columns:1fr}.internal-page .config-nav{position:static;display:flex;max-width:100%;overflow-x:auto;padding:2px 0 8px;scrollbar-width:none;-webkit-overflow-scrolling:touch}.internal-page .config-nav::-webkit-scrollbar{display:none}.internal-page .config-tab{flex:0 0 auto;padding-inline:14px}.internal-page .internal-content{padding:25px 18px 60px}}
@media(max-width:620px){.internal-page .internal-content{padding:20px 14px 48px}.internal-page .card{padding:17px}.internal-page .entity-toolbar{align-items:stretch;gap:16px}.internal-page .entity-toolbar h1,.internal-page .page-intro h1{margin-bottom:14px;font-size:25px}.internal-page .entity-toolbar h2,.internal-page .page-intro h2{font-size:20px}.internal-page .entity-toolbar .primary{width:100%;min-height:50px}.internal-page .editor-head{align-items:center;flex-direction:row}.internal-page .editor-head button{width:38px}.internal-page .grid-2,.internal-page .grid-3{grid-template-columns:1fr}.internal-page .actions{display:grid;grid-template-columns:1fr}.internal-page .actions>*{width:100%}.internal-page .entity-list{grid-template-columns:1fr}.internal-page .professional-card{grid-template-columns:minmax(0,1fr) 32px}.internal-page .professional-summary{gap:11px}.internal-page .avatar{width:48px;height:48px}.internal-page .service-card{align-items:stretch;flex-direction:column;gap:10px}.internal-page .service-card .entity-card-actions{justify-content:flex-start}.friendly-empty{min-height:215px;padding:24px 16px}.internal-page .profile-grid{grid-template-columns:1fr}.internal-page .profile-hero{align-items:center}.internal-page .avatar-large{width:82px;height:82px}.file-upload-control{align-items:flex-start;flex-direction:column}.file-upload-control label{width:100%}.professional-link-card .share-actions{grid-template-columns:1fr}.internal-page .section-heading{align-items:stretch;flex-direction:column}.internal-page .period-row{grid-template-columns:1fr 1fr}.internal-page .period-row .danger{grid-column:1/-1;justify-self:start;width:auto}.internal-page .day-card>.actions{grid-template-columns:1fr}.internal-page .day-card [data-save-day]{min-width:0}.internal-page .config-panel{overflow:hidden}.internal-page .resource-row{grid-template-columns:1fr 1fr}.internal-page .resource-row .resource-name,.internal-page .resource-row .resource-actions{grid-column:1/-1}.internal-page .choice-grid{grid-template-columns:1fr}.internal-page .page-message{bottom:16px}}

/* O onboarding divide o arquivo com Configurações, mas permanece visualmente isolado. */
.config-page:has(.onboarding:not([hidden])) .onboarding{width:min(440px,100%);margin:0 auto;padding:28px 24px;border-color:var(--ui-card-border);border-radius:20px;background:var(--ui-card-bg);box-shadow:0 18px 45px rgba(46,31,79,.09)}
.config-page:has(.onboarding:not([hidden])) .onboarding .auth-input-shell input{width:auto;min-width:0;min-height:54px;flex:1;padding:13px 14px 13px 12px;border:0;border-radius:0;background:transparent;box-shadow:none}
.config-page:has(.onboarding:not([hidden])) .onboarding .auth-submit{width:100%;min-height:58px;border:1px solid var(--color-primary);border-radius:14px;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-dark));color:#fff;box-shadow:var(--ui-primary-shadow)}
.internal-page .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
@media(max-width:620px){.config-page:has(.onboarding:not([hidden])) .onboarding{padding:25px 20px}}

/* Fluxo público v2 — mobile first */
.public-booking-page,.public-page{background:linear-gradient(180deg,#faf9fd 0,#f6f4fa 100%)}
.public-page .public-shell{width:min(720px,100%);padding:18px clamp(14px,4vw,24px) 48px}
.public-page .public-brand{margin-bottom:18px}.public-page .public-brand .brand-mark{border-color:#ded8ed;background:var(--color-primary-light);color:var(--color-primary);filter:none}.public-page .public-brand h1{font-size:20px;letter-spacing:-.02em}
.public-page .public-card{padding:clamp(18px,5vw,30px);border-color:var(--ui-card-border);border-radius:20px;box-shadow:0 12px 38px rgba(46,31,79,.07)}
.public-page .primary{min-height:52px;padding:12px 18px;border-color:var(--color-primary);border-radius:13px;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-dark));color:#fff;box-shadow:var(--ui-primary-shadow)}
.public-page .secondary{border-color:#dcd4eb;color:var(--color-primary)}.public-page .danger{border-color:#ddd6e8;color:#5f5869}
.public-page .eyebrow{color:var(--color-primary);font-weight:900}.step-heading{margin-bottom:22px}.step-heading h2{margin:5px 0 7px;font-size:clamp(24px,6vw,32px);letter-spacing:-.035em}.step-heading p:last-child,.public-home-hero>p:last-of-type{margin:0;color:#706a79;line-height:1.55}
.text-action,.back-action{padding:5px 0;border:0;background:transparent;color:var(--color-primary);font-size:13px;font-weight:800;cursor:pointer;text-decoration:none}.back-action{margin-bottom:18px;color:#706879}.mini-go{display:inline-grid;width:22px;height:22px;margin:0 3px;place-items:center;border-radius:7px;background:var(--color-primary-light);color:var(--color-primary);font-size:8px;font-weight:950}.public-footer{display:flex;align-items:center;justify-content:center}
.public-home-hero{padding:6px 0 26px}.public-home-hero h2{max-width:520px;margin:6px 0 10px;font-size:clamp(29px,8vw,42px);letter-spacing:-.05em}.public-home-hero .primary{margin-top:22px}.public-home-section{padding-top:24px;border-top:1px solid #eeeaf3}.public-home-section+.public-home-section{margin-top:24px}.public-home-section h3{margin:0 0 14px;font-size:17px}.public-home-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.home-professional{display:grid;min-width:0;justify-items:center;gap:6px;padding:16px 10px;border:1px solid #e8e2ef;border-radius:15px;background:#fff;color:#211d27;text-align:center;cursor:pointer}.home-professional span:last-child{max-width:100%;overflow:hidden;color:#78717f;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.public-home-services{display:grid;gap:8px}.public-home-services>span{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid #eeeaf3}.public-home-services small{color:#756e7d}
.general-professionals{display:grid;gap:13px}.general-professional-card{overflow:hidden;border:1px solid #e7e1ee;border-radius:17px;background:#fff}.general-professional-head,.general-service-list button{display:flex;width:100%;align-items:center;gap:12px;padding:15px;border:0;background:#fff;color:#211d27;text-align:left;cursor:pointer}.general-professional-head>span:nth-child(2),.general-service-list button>span{display:grid;min-width:0;flex:1;gap:3px}.general-professional-head small,.general-service-list small{color:#79727f;font-weight:500}.general-professional-head>b,.general-service-list b{color:var(--color-primary);font-size:23px}.general-service-list{border-top:1px solid #eeeaf3}.general-service-list button{padding:12px 15px 12px 81px}.general-service-list button+button{border-top:1px solid #f1edf5}
.professional-hero{display:grid;gap:18px;padding:2px 0 8px}.professional-identity{display:flex;align-items:center;gap:20px}.professional-identity>div{min-width:0}.professional-hero h2{margin:3px 0 2px;font-size:clamp(27px,7vw,36px);letter-spacing:-.045em}.avatar-profile{width:132px;height:132px;flex:0 0 132px;border-radius:26px;background:linear-gradient(145deg,var(--color-primary-light),#e5dcff);color:var(--color-primary);font-size:32px;box-shadow:0 12px 28px rgba(61,38,96,.13)}.professional-title{display:block;color:#3e3746;font-size:15px}.professional-intro{max-width:450px;margin:10px 0 0;color:#716a79;font-size:13px;line-height:1.5}.profile-facts{display:grid;gap:0;border-top:1px solid #eeeaf3}.profile-fact{display:grid;grid-template-columns:30px minmax(0,1fr);gap:10px;padding:11px 0;border-bottom:1px solid #f0ecf3}.profile-fact-icon{display:grid;width:28px;height:28px;place-items:center;border-radius:9px;background:var(--color-primary-light);color:var(--color-primary);font-size:15px}.profile-fact strong{display:block;color:#4b4452;font-size:12px}.profile-fact p{margin:2px 0 0;color:#716a79;font-size:13px;line-height:1.4}.profile-fact a,.public-hours summary{display:inline-block;margin-top:4px;color:var(--color-primary);font-size:12px;font-weight:800;text-decoration:none;cursor:pointer}.public-hours span{display:flex;justify-content:space-between;gap:10px;padding:6px 0;color:#716a79;font-size:11px}.public-hours span:first-of-type{margin-top:5px}.professional-hero+.text-action{margin:1px 0 0 40px}.service-picker{margin-top:18px;padding-top:20px;border-top:1px solid #eeeaf3}.service-picker>.eyebrow{margin-bottom:4px}.service-picker h2{font-size:21px}.public-page .public-options{gap:10px}.public-page .public-option{min-height:70px;align-items:center;flex-direction:row;padding:14px 15px;border-color:#e5dfed;border-radius:14px;cursor:pointer}.public-page .public-option:hover,.public-page .public-option:focus,.public-page .public-option.is-selected{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.public-page .public-option>span{display:grid;gap:4px}.public-page .public-option strong{color:#201c25;font-size:15px}.public-page .public-option small{color:#7b7482}.public-page .public-option>b{flex:0 0 auto;color:#615a69;font-size:12px}
.compact-selection{display:flex;align-items:center;gap:12px;margin:-4px -2px 26px;padding:12px;border-radius:15px;background:var(--color-primary-light)}.compact-selection>span:nth-child(2){display:grid;min-width:0;flex:1;gap:3px}.compact-selection small{color:#6f6878}.compact-selection .text-action{flex:0 0 auto}.week-ruler{display:flex;gap:8px;overflow-x:auto;margin:0 -4px;padding:4px 34px 10px 4px;scroll-padding-inline:4px;scroll-snap-type:x proximity;scrollbar-width:none;mask-image:linear-gradient(to right,#000 0,#000 calc(100% - 22px),transparent)}.week-ruler::-webkit-scrollbar{display:none}.day-button{display:grid;min-width:68px;min-height:90px;flex:1;place-items:center;padding:9px 7px;border:1px solid #e4ddea;border-radius:15px;background:#fff;color:#5e5766;cursor:pointer;scroll-snap-align:start}.day-button small{font-size:9px;font-weight:900}.day-button strong{color:#201c25;font-size:23px}.day-button span{font-size:10px;font-weight:800}.day-button.is-selected{border-color:var(--color-primary);background:var(--color-primary);color:#fff;box-shadow:0 8px 18px rgba(122,9,214,.22)}.day-button.is-selected strong{color:#fff}.other-date-row{display:flex;align-items:center;gap:12px;margin:2px 0 22px}.other-date-row input{min-height:42px;padding:8px;border:1px solid #dcd5e5;border-radius:10px}.slot-area{display:grid;gap:22px}.slot-period h3{margin:0 0 10px;color:#5f5868;font-size:13px}.public-page .slot-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.public-page .slot-button{min-height:48px;border-color:#ddd6e7;border-radius:11px;font-size:14px;cursor:pointer}.public-page .slot-button:hover,.public-page .slot-button.is-selected{border-color:var(--color-primary);background:var(--color-primary);color:#fff}.public-page .slot-button.is-unavailable{border-color:#eeeaf2;background:#f3f1f5;color:#aaa4af;text-decoration:line-through;cursor:not-allowed;opacity:1}.public-page .empty-note{display:grid;gap:5px;border-color:#ddd6e7;background:#fbfaff}.public-page .empty-note span{font-size:12px}
.public-page .field label{font-size:13px}.public-page .field input{min-height:54px;border-color:#dcd5e5;border-radius:12px;background:#fbfaff}.public-page .field input:focus{border-color:var(--agenda-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--agenda-accent) 14%,transparent)}.marketing-choice{display:flex;align-items:flex-start;gap:10px;padding:13px;border:1px solid #e7e1ed;border-radius:12px;color:#665f6d;font-size:13px;line-height:1.4;cursor:pointer}.marketing-choice input{width:18px;height:18px;flex:0 0 auto;margin:0;accent-color:var(--agenda-accent)}
.result-card .eyebrow{margin-top:18px}.result-card h2{font-size:clamp(28px,8vw,38px)}.public-page .result-mark{border:0;background:var(--color-primary-light);color:var(--color-primary)}.confirmation-detail{display:grid;gap:7px;margin:24px 0;padding:20px;border-radius:15px;background:#faf8fc}.confirmation-detail strong{font-size:19px}.confirmation-detail span{color:#6e6776}.confirmation-actions{display:grid;gap:12px}.confirmation-actions .text-action{display:block;margin:auto}.public-page .page-message{border-color:#ddd6e7}.public-page .page-message.is-error{color:#554d5d}
body.public-page.is-payment-view{background:#f6f2ea;color:#292724}.is-payment-view .public-brand .brand-mark{border-color:#ded8ce;background:#fff;color:#292724}.is-payment-view .public-brand .eyebrow{color:#4f5148}.public-page .pix-payment-step{border-color:#e2ddd3;background:#fff;box-shadow:0 14px 38px rgba(48,43,36,.08);color:#292724}.pix-heading{display:flex;align-items:center;gap:14px}.pix-heading .eyebrow{margin:0 0 3px;color:#696b61}.pix-heading h2{margin:0 0 5px;font-size:clamp(26px,7vw,34px);letter-spacing:-.04em}.pix-heading p:last-child{margin:0;color:#77736d;font-size:13px}.pix-mark{display:grid;width:50px;height:50px;flex:0 0 auto;place-items:center;border:1px solid #d9d4ca;border-radius:15px;background:#f4f1ea;color:#34352f;font-size:27px}.pix-amount{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:5px 16px;margin:24px 0 12px;padding:18px;border:1px solid #e4dfd5;border-radius:16px;background:#faf8f3}.pix-amount span{color:#77736d;font-size:12px;font-weight:700}.pix-amount>strong{color:#24231f;font-size:27px;letter-spacing:-.03em}.pix-amount>small{display:flex;grid-column:1/-1;justify-content:space-between;gap:12px;padding-top:8px;border-top:1px solid #e7e1d8;color:#77736d;font-size:11px}.pix-amount>small b{color:#35342f}.pix-status{display:flex;align-items:center;gap:8px;margin-bottom:20px;color:#575950;font-size:12px;font-weight:800}.pix-status i{width:8px;height:8px;border-radius:50%;background:#b88426;box-shadow:0 0 0 4px #f6ead2}.pix-status small{margin-left:auto;color:#88847c;font-weight:600}.pix-payment-step .primary{border-color:#2e302c;background:#2e302c;color:#fff;box-shadow:0 8px 20px rgba(39,40,36,.16)}.pix-payment-step .primary:hover{background:#1f211e}.pix-payment-options{display:grid;gap:8px;margin:0;padding:0;border:0}.pix-payment-options legend{margin-bottom:8px;color:#5e5b55;font-size:12px;font-weight:850}.pix-payment-option{display:flex;min-height:54px;align-items:center;gap:10px;padding:10px 12px;border:1px solid #ded9cf;border-radius:13px;background:#fff;cursor:pointer}.pix-payment-option input{width:18px;height:18px;margin:0;accent-color:var(--agenda-accent)}.pix-payment-option span{display:flex;min-width:0;flex:1;align-items:center;justify-content:space-between;gap:10px}.pix-payment-option strong{font-size:12px}.pix-payment-option small{color:#77736d;font-size:10px;text-align:right}.pix-payment-option.is-selected{border-color:var(--agenda-accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--agenda-accent) 10%,transparent)}.pix-payment-option.is-disabled{background:#f3f1ed;color:#8d8982;cursor:not-allowed}.pix-deposit-copy{margin:11px 2px 18px;color:#77736d;font-size:11px;line-height:1.45}.pix-security-note{margin:10px 0 0;color:#8a867f;font-size:11px;text-align:center}.pix-feedback{margin:14px 0 0;color:#62645c;font-size:12px;line-height:1.5;text-align:center}.pix-feedback.is-error{padding:12px;border:1px solid #ead9cf;border-radius:11px;background:#fff8f4;color:#765548}.pix-ready-heading{display:grid;gap:3px;margin:0 0 14px;text-align:center}.pix-ready-heading strong{font-size:17px}.pix-ready-heading span{color:#77736d;font-size:11px}.pix-qr-wrap{display:grid;place-items:center;margin:0 auto 16px;padding:14px;border:1px solid #e3ded4;border-radius:16px;background:#fff}.pix-qr{display:block;width:min(230px,100%);height:auto}.pix-code{display:grid;gap:8px}.pix-code label{color:#5e5b55;font-size:12px;font-weight:800}.pix-code textarea{width:100%;min-height:86px;resize:none;overflow-wrap:anywhere;border:1px solid #ddd8cf;border-radius:12px;background:#faf8f3;color:#35342f;font:12px/1.45 monospace}.pix-charge-meta{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}.pix-charge-meta span{display:grid;gap:3px;padding:12px;border:1px solid #e6e1d8;border-radius:12px;background:#faf8f3}.pix-charge-meta small{color:#88847c;font-size:10px}.pix-charge-meta strong{color:#35342f;font-size:13px}
@media(max-width:620px){.public-page .public-card{padding:20px 17px}.public-home-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.professional-hero+.text-action{margin-left:38px}.public-page .public-option{align-items:flex-start;flex-direction:column}.public-page .slot-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.general-service-list button{padding-left:15px}}
@media(max-width:390px){.public-page .public-shell{overflow-x:hidden;padding-right:12px;padding-left:12px}.public-page .public-card{padding:16px 14px}.public-page .public-brand{margin-bottom:12px}.professional-identity{align-items:flex-start;gap:14px}.avatar-profile{width:108px;height:108px;flex-basis:108px;border-radius:22px}.professional-hero h2{font-size:25px}.professional-intro{margin-top:7px;font-size:12px}.profile-fact{padding:9px 0}.professional-hero+.text-action{margin-left:38px}.service-picker{margin-top:14px;padding-top:16px}.day-button{min-width:62px}.public-page .slot-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.compact-selection{gap:9px}.compact-selection .avatar{width:46px;height:46px}.compact-selection .text-action{font-size:11px}.pix-heading{align-items:flex-start}.pix-heading h2{font-size:25px}.pix-mark{width:44px;height:44px}.pix-amount{margin-top:20px}.pix-charge-meta{grid-template-columns:1fr}.pix-code textarea{max-width:100%}}
@media(min-width:768px){.general-professionals{grid-template-columns:repeat(2,minmax(0,1fr))}.public-home-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* Identidade pública neutra: o estabelecimento fornece apenas o accent. */
.public-page{--public-background:#F7F6F3;--public-surface:#FFFFFF;--public-text:#1C1C1A;--public-muted:#68645E;--public-border:#E3E0DA;--public-surface-secondary:#F1EFEA;--public-action:#292824;background:var(--public-background);color:var(--public-text)}
.public-page .public-brand .brand-mark{border-color:var(--public-border);background:var(--public-surface);color:var(--business-accent,var(--public-action));box-shadow:0 5px 16px rgba(39,36,31,.06)}
.public-page .public-brand h1,.public-page .public-card h2,.public-page .public-option strong,.public-page .day-button strong{color:var(--public-text)}
.public-page .eyebrow{color:var(--business-accent,var(--public-action))}
.public-page .public-card{border-color:var(--public-border);background:var(--public-surface);box-shadow:0 12px 34px rgba(42,38,32,.055)}
.public-page .primary{border-color:var(--public-action);background:var(--public-action);color:#fff;box-shadow:0 8px 18px rgba(41,40,36,.14)}
.public-page .primary:hover,.public-page .primary:focus-visible{border-color:color-mix(in srgb,var(--agenda-accent) 82%,#000);background:color-mix(in srgb,var(--agenda-accent) 82%,#000);color:var(--agenda-accent-contrast)}
.public-page .secondary{border-color:var(--public-border);background:#fff;color:var(--public-action)}
.public-page .text-action,.public-page .back-action{color:var(--business-accent,var(--public-action))}
.public-page .avatar-profile{border:1px solid color-mix(in srgb,var(--business-accent,var(--public-action)) 20%,var(--public-border));border-radius:34% 30% 38% 29%/29% 37% 31% 39%;background:linear-gradient(145deg,#f3f0e9,#e9e5dc);color:var(--business-accent,var(--public-action));box-shadow:0 14px 28px rgba(54,48,40,.12)}
.public-page .professional-title{color:#393733}.public-page .professional-intro,.public-page .profile-fact p{color:var(--public-muted)}.public-page .profile-facts,.public-page .profile-fact,.public-page .service-picker{border-color:#ece9e3}.public-page .profile-fact-icon{background:var(--public-surface-secondary);color:var(--business-accent,var(--public-action))}.public-page .profile-fact a,.public-page .public-hours summary{color:var(--business-accent,var(--public-action))}
.public-page .public-option,.public-page .general-professional-card,.public-page .general-professional-head,.public-page .general-service-list button,.public-page .home-professional{border-color:var(--public-border);background:#fff;color:var(--public-text)}
.public-page .public-option:hover,.public-page .public-option:focus,.public-page .public-option.is-selected{border-color:var(--business-accent,var(--public-action));box-shadow:0 0 0 2px color-mix(in srgb,var(--business-accent,var(--public-action)) 12%,transparent)}
.public-page .general-professional-head>b,.public-page .general-service-list b{color:var(--business-accent,var(--public-action))}.public-page .general-service-list,.public-page .general-service-list button+button{border-color:#eeebe5}
.public-page .compact-selection,.public-page .confirmation-detail{background:var(--public-surface-secondary)}
.public-page .day-button{border-color:var(--public-border);background:#fff;color:var(--public-muted)}.public-page .day-button.is-selected{border-color:var(--public-action);background:var(--public-action);color:#fff;box-shadow:0 8px 17px rgba(41,40,36,.16)}.public-page .day-button.is-selected strong{color:#fff}
.public-page .slot-button{border-color:var(--public-border);background:#fff;color:var(--public-text)}.public-page .slot-button:hover,.public-page .slot-button.is-selected{border-color:var(--public-action);background:var(--public-action);color:#fff}.public-page .slot-button.is-unavailable{border-color:#ebe8e2;background:var(--public-surface-secondary);color:#a49f96}
.public-page .field input{border-color:var(--public-border);background:#fff}.public-page .field input:focus{border-color:var(--business-accent,var(--public-action));box-shadow:0 0 0 3px color-mix(in srgb,var(--business-accent,var(--public-action)) 10%,transparent)}.public-page .marketing-choice{border-color:var(--public-border)}.public-page .result-mark{background:var(--public-surface-secondary);color:var(--business-accent,var(--public-action))}.public-page .mini-go{background:var(--public-surface-secondary);color:var(--business-accent,var(--public-action))}

/* Tela 1 — entrada pelo link individual do profissional */
.public-booking-page .public-brand{gap:11px;margin-bottom:14px}.public-booking-page .public-brand h1{margin:0;color:var(--public-text);font-size:18px;line-height:1.15}.public-booking-page .public-brand .eyebrow{margin:3px 0 0;color:var(--public-muted);font-size:9px;letter-spacing:.14em}.professional-entry{display:grid;gap:0}.entry-photo{display:grid;width:100%;aspect-ratio:4/3;overflow:hidden;place-items:center;border:1px solid var(--public-border);border-radius:24px;background:linear-gradient(145deg,#eeeae3,#ddd7ce);color:var(--business-accent,var(--public-action));font-size:52px;font-weight:900;box-shadow:0 16px 34px rgba(45,40,34,.1)}.entry-photo img{display:block;width:100%;height:100%;object-fit:cover}.entry-photo-fallback{display:grid;width:100%;height:100%;place-items:center}.entry-identity{position:relative;z-index:1;width:calc(100% - 20px);margin:-20px auto 0;padding:15px 16px 14px;border:1px solid var(--public-border);border-radius:17px;background:var(--public-surface);box-shadow:0 10px 24px rgba(45,40,34,.09)}.entry-identity h2{display:flex;flex-wrap:wrap;align-items:baseline;gap:5px;margin:0 0 10px;color:var(--public-text);font-size:19px;line-height:1.25;letter-spacing:-.025em}.entry-identity h2 span{color:#aaa49a;font-weight:500}.entry-identity h2 small{color:var(--public-muted);font-size:14px;font-weight:700;letter-spacing:0}.entry-specialties{display:flex;flex-wrap:wrap;gap:6px}.entry-specialties span{display:inline-flex;min-height:26px;align-items:center;padding:4px 9px;border:1px solid #e8e3dc;border-radius:999px;background:#f5f2ed;color:#5e5952;font-size:11px;font-weight:700;line-height:1.2}.entry-date-picker{display:flex;align-items:stretch;gap:7px;margin:14px 0 12px}.entry-date-strip{display:flex;min-width:0;flex:1;gap:5px;overflow-x:auto;padding:1px;scrollbar-width:none}.entry-date-strip::-webkit-scrollbar{display:none}.entry-date,.entry-other-date{min-height:50px;border:1px solid var(--public-border);border-radius:12px;background:#fff;color:var(--public-muted);cursor:pointer}.entry-date{display:grid;min-width:43px;place-items:center;padding:5px 6px}.entry-date small{font-size:8px;font-weight:900}.entry-date strong{color:var(--public-text);font-size:16px}.entry-date.is-today{min-width:59px}.entry-date.is-today strong{font-size:10px;letter-spacing:.04em}.entry-date.is-selected{border-color:var(--public-action);background:var(--public-action);color:#fff;box-shadow:0 6px 14px rgba(41,40,36,.14)}.entry-date.is-selected strong{color:#fff}.entry-other-date{min-width:66px;padding:6px 8px;color:var(--business-accent,var(--public-action));font-size:10px;font-weight:850;line-height:1.15}#entry-booking-date{width:100%;min-height:46px;margin:-5px 0 12px;padding:8px 10px;border:1px solid var(--public-border);border-radius:11px;background:#fff;color:var(--public-text)}.entry-cta{width:100%;min-height:56px;font-size:14px;font-weight:900;letter-spacing:.045em}.professional-entry+.public-card{margin-top:0}
@media(max-width:390px){.public-booking-page .public-shell{padding-top:12px}.public-booking-page .public-brand .brand-mark{width:38px;height:38px}.entry-photo{aspect-ratio:1.38;border-radius:20px}.entry-identity{width:calc(100% - 16px);margin-top:-17px;padding:13px 13px 12px}.entry-identity h2{margin-bottom:8px;font-size:17px}.entry-identity h2 small{font-size:13px}.entry-specialties{gap:5px}.entry-specialties span{min-height:24px;padding:3px 8px;font-size:10px}.entry-date-picker{margin-top:11px}.entry-date{min-width:41px}.entry-date.is-today{min-width:56px}.entry-other-date{min-width:62px}.entry-cta{min-height:54px}}
@media(min-width:768px){.professional-entry{width:min(560px,100%);margin:auto}.entry-photo{aspect-ratio:16/10}}
.profile-unavailable{display:flex;align-items:flex-start;gap:14px;padding:8px 0 12px}.profile-unavailable>span{display:grid;width:48px;height:48px;flex:0 0 auto;place-items:center;border:1px solid var(--public-border);border-radius:50%;background:var(--public-surface-secondary);color:var(--public-muted);font-size:25px}.profile-unavailable h2{margin:3px 0 7px}.profile-unavailable p:last-child{margin:0;color:var(--public-muted);line-height:1.5}

/* Tela 2 — serviço e horário no fluxo do link individual */
.service-decision[hidden],.decision-availability[hidden],.decision-continue-wrap[hidden]{display:none}.service-decision{display:grid;gap:0}.service-context{display:flex;align-items:center;gap:14px;margin:-4px -2px 12px;padding:12px 13px;border:1px solid var(--public-border);border-radius:14px;background:var(--public-surface-secondary)}.service-context>div{display:grid;min-width:0;gap:2px}.service-context small{overflow:hidden;color:var(--public-muted);font-size:10px;font-weight:750;text-overflow:ellipsis;white-space:nowrap}.service-context strong{overflow:hidden;color:var(--public-text);font-size:13px;text-overflow:ellipsis;white-space:nowrap}.service-context span{color:var(--public-muted);font-size:11px}.decision-date-picker{display:flex;align-items:stretch;gap:7px;margin:0 0 20px}.decision-date-strip{display:flex;min-width:0;flex:1;gap:6px;overflow-x:auto;padding:1px;scroll-snap-type:x proximity;scrollbar-width:none}.decision-date-strip::-webkit-scrollbar{display:none}.decision-date,.decision-other-date{min-height:58px;border:1px solid var(--public-border);border-radius:12px;background:#fff;color:var(--public-muted);cursor:pointer}.decision-date{display:grid;min-width:54px;place-items:center;padding:6px;scroll-snap-align:start}.decision-date small{font-size:9px;font-weight:900;letter-spacing:.035em}.decision-date strong{color:var(--public-text);font-size:18px}.decision-date.is-selected{border-color:var(--public-action);background:var(--public-action);color:#fff;box-shadow:0 6px 14px rgba(41,40,36,.14)}.decision-date.is-selected strong{color:#fff}.decision-other-date{min-width:68px;flex:0 0 68px;padding:6px 8px;color:var(--business-accent,var(--public-action));font-size:10px;font-weight:850;line-height:1.15}#service-booking-date{width:100%;min-height:45px;margin:-10px 0 18px;padding:8px 10px;border:1px solid var(--public-border);border-radius:11px;background:#fff;color:var(--public-text)}.service-decision-heading{margin-bottom:13px}.service-decision-heading .eyebrow{margin:0 0 4px}.service-decision-heading h2{margin:0;font-size:clamp(22px,6vw,28px);letter-spacing:-.035em}.decision-service-list{display:grid;gap:7px}.decision-service{display:flex;width:100%;min-height:58px;align-items:center;justify-content:space-between;gap:12px;padding:10px 13px;border:1px solid var(--public-border);border-radius:12px;background:#fff;color:var(--public-text);text-align:left;cursor:pointer}.decision-service>span{display:grid;min-width:0;gap:2px}.decision-service strong{overflow:hidden;font-size:14px;text-overflow:ellipsis;white-space:nowrap}.decision-service small{color:var(--public-muted);font-size:10px}.decision-service>b{flex:0 0 auto;color:#4c4943;font-size:12px}.decision-service:hover,.decision-service:focus,.decision-service.is-selected{border-color:var(--business-accent,var(--public-action));background:color-mix(in srgb,var(--business-accent,var(--public-action)) 5%,#fff);box-shadow:0 0 0 2px color-mix(in srgb,var(--business-accent,var(--public-action)) 10%,transparent)}.decision-service.is-selected{border-width:2px;padding:9px 12px}.decision-availability{margin-top:0;padding-top:19px;border-top:1px solid var(--public-border)}.decision-availability h3{margin:0 0 4px;color:var(--public-text);font-size:15px}.decision-availability-prompt{margin:0 0 12px;color:var(--public-muted);font-size:12px}.decision-slot-area{display:grid;gap:12px}.decision-slot-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.decision-slot-grid .slot-button{min-height:45px;border-radius:10px;font-size:13px;cursor:pointer}.decision-empty{justify-items:start}.decision-empty .text-action{margin-top:5px;padding:0}.decision-continue-wrap{margin-top:18px;padding-top:4px}.decision-continue{width:100%;min-height:54px;font-size:13px;font-weight:900;letter-spacing:.045em}
@media(max-width:390px){.service-context{padding:10px 11px}.service-context strong{font-size:12px}.decision-date-picker{gap:6px;margin-bottom:17px}.decision-date-strip{gap:5px}.decision-date{min-width:49px;min-height:54px}.decision-other-date{min-width:64px;min-height:54px;flex-basis:64px}.service-decision-heading h2{font-size:21px}.decision-service-list{gap:6px}.decision-service{min-height:54px;padding:9px 11px}.decision-service.is-selected{padding:8px 10px}.decision-slot-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* Tela 1 final — catálogo visual do profissional */
.professional-entry .entry-identity{padding-bottom:13px}.professional-entry .entry-identity h2{margin-bottom:0}.entry-service-picker{margin-top:20px}.entry-service-picker h3{margin:0 0 12px;color:var(--public-text);font-size:clamp(20px,5.5vw,25px);letter-spacing:-.035em}.entry-service-grid{display:grid;grid-template-columns:1fr;gap:8px}.entry-service-card{display:grid;min-width:0;min-height:68px;grid-template-columns:56px minmax(0,1fr) 22px;align-items:center;gap:11px;overflow:hidden;padding:7px 10px 7px 7px;border:1px solid var(--public-border);border-radius:14px;background:#fff;color:var(--public-text);text-align:left;cursor:pointer;box-shadow:0 4px 12px rgba(45,40,34,.04)}.entry-service-card:hover,.entry-service-card:focus{border-color:var(--business-accent,var(--public-action));box-shadow:0 0 0 2px color-mix(in srgb,var(--business-accent,var(--public-action)) 10%,transparent)}.entry-service-visual{display:block;width:56px;height:52px;overflow:hidden;border-radius:10px;background:linear-gradient(145deg,#e8e4dc,#d8d2c8)}.entry-service-visual-1{background:linear-gradient(145deg,#eee9e1,#dcd5cb)}.entry-service-visual-2{background:linear-gradient(145deg,#e5e1da,#d5cec4)}.entry-service-visual-3{background:linear-gradient(145deg,#f0ece5,#ddd7ce)}.entry-service-card strong{overflow:hidden;padding:0;font-size:14px;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}.entry-service-arrow{display:grid;width:22px;height:32px;place-items:center;color:var(--business-accent,var(--public-action));font-size:22px;font-weight:500}#decision-service-picker[hidden]{display:none}
@media(max-width:390px){.entry-service-picker{margin-top:16px}.entry-service-picker h3{margin-bottom:10px;font-size:19px}.entry-service-grid{gap:7px}.entry-service-card{min-height:64px;grid-template-columns:52px minmax(0,1fr) 20px;gap:9px;border-radius:13px}.entry-service-visual{width:52px;height:48px}.entry-service-card strong{font-size:13px}}
@media(min-width:768px){.entry-service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.entry-service-card strong{font-size:14px}}

/* Imagem opcional por serviço */
.entry-service-visual img{display:block;width:100%;height:100%;object-fit:cover}.service-image-upload{display:flex;align-items:center;gap:16px}.service-image-preview{display:grid;width:180px;aspect-ratio:1.55;flex:0 0 auto;overflow:hidden;place-items:center;border:1px solid var(--line);border-radius:14px;background:var(--subtle);color:var(--muted);font-size:11px}.service-image-preview img{display:block;width:100%;height:100%;object-fit:cover}.service-image-upload .file-upload-control{display:grid;justify-items:start}.service-list-image{width:62px;height:62px;flex:0 0 auto;object-fit:cover;border-radius:12px}.internal-page .service-card:has(.service-list-image) .service-card-copy{flex:1}
@media(max-width:620px){.service-image-upload{align-items:stretch;flex-direction:column}.service-image-preview{width:min(100%,320px)}.service-list-image{width:100%;height:110px}}

/* Cadastro de serviços — imagem evidente e enquadramento leve */
.service-image-panel{margin:0 0 16px;padding:17px;border:1px solid #ddd4f4;border-radius:15px;background:#faf8ff}.service-image-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}.service-image-heading .eyebrow{margin:0 0 3px}.service-image-heading h3{margin:0;color:#211c25;font-size:17px}.service-image-heading p:last-child{margin:5px 0 0;color:#746d7b;font-size:12px}.service-image-heading>span{padding:5px 8px;border-radius:999px;background:var(--color-primary-light);color:var(--color-primary-dark);font-size:10px;font-weight:800}.service-image-actions{display:grid;align-content:center;justify-items:start;gap:9px}.service-image-actions .file-upload-control{gap:8px}.service-image-actions .tertiary-action{padding-inline:0}.service-upload-feedback{margin:0;color:#746d7b;font-size:11px;line-height:1.4}.service-crop-overlay[hidden]{display:none}.service-crop-overlay{position:fixed;z-index:1000;inset:0;display:grid;overflow:auto;place-items:center;padding:18px;background:rgba(24,19,31,.72)}.service-crop-dialog{display:grid;width:min(680px,100%);gap:16px;padding:20px;border:1px solid #e1dce9;border-radius:18px;background:#fff;box-shadow:0 24px 70px rgba(20,15,30,.3)}.service-crop-dialog h3{margin:2px 0 5px;font-size:21px}.service-crop-dialog p:last-child{margin:0;color:#746d7b;font-size:12px}.service-crop-stage{overflow:hidden;border:1px solid #d8d1df;border-radius:14px;background:#e8e4dc;cursor:grab}.service-crop-stage:active{cursor:grabbing}.service-crop-stage canvas{display:block;width:100%;height:auto;aspect-ratio:1.55;touch-action:none}.service-crop-zoom{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;color:#4f4856;font-size:12px;font-weight:800}.service-crop-zoom input{width:100%;accent-color:var(--color-primary)}
@media(max-width:620px){.service-image-panel{padding:14px}.service-image-heading{gap:10px}.service-image-upload{align-items:stretch}.service-image-preview{width:100%}.service-image-actions{justify-items:stretch}.service-image-actions .file-upload-control{align-items:stretch}.service-crop-overlay{align-items:end;padding:8px}.service-crop-dialog{gap:13px;padding:16px;border-radius:17px}.service-crop-dialog .actions{grid-template-columns:1fr 1fr}.service-crop-dialog .actions>*{min-width:0}.service-crop-zoom{grid-template-columns:1fr;gap:6px}}

/* Foto do profissional — enquadramento para a hero pública 4:3 */
.professional-photo-panel{padding:17px;border:1px solid #ddd4f4;border-radius:15px;background:#faf8ff}.professional-photo-upload{display:grid;grid-template-columns:minmax(220px,1.25fr) minmax(170px,.75fr);gap:16px;align-items:center}.professional-photo-preview{display:grid;width:100%;aspect-ratio:4/3;overflow:hidden;place-items:center;border:1px solid #ddd6e5;border-radius:16px;background:linear-gradient(145deg,#eeeae3,#ddd7ce);color:var(--color-primary);font-size:38px;font-weight:900}.professional-photo-preview img{display:block;width:100%;height:100%;object-fit:cover}.professional-crop-stage canvas{aspect-ratio:4/3}
@media(max-width:620px){.professional-photo-panel{padding:14px}.professional-photo-upload{grid-template-columns:1fr}.professional-photo-preview{border-radius:14px}}

/* Tela 2 — contexto curto para horários de início */
.decision-availability h3{margin-bottom:3px}.decision-availability-prompt{margin:0 0 12px;color:var(--public-muted);font-size:12px}

/* Marca Pix oficial em asset local, sem efeitos sobre o símbolo. */
.pix-heading .pix-mark{display:block;width:42px;height:42px;flex:0 0 42px;border:0;border-radius:0;background:transparent;box-shadow:none;object-fit:contain}
@media(max-width:390px){.pix-heading .pix-mark{width:38px;height:38px;flex-basis:38px}}

/* Tela 2 — sinaliza a saída para outras datas somente após cinco dias vazios. */
.decision-other-date.is-suggested{border-color:var(--business-accent,var(--public-action));box-shadow:0 0 0 2px color-mix(in srgb,var(--business-accent,var(--public-action)) 12%,transparent)}

/* Home pública individual — vitrine mobile-first do estabelecimento */
.public-booking-page{--agenda-accent:var(--business-accent,#292824);--agenda-accent-contrast:#fff;background:#f3f2ef}
.public-booking-page .public-shell{width:min(100%,430px);min-height:100vh;margin:0 auto;padding:14px 12px 18px;background:#faf9f7;box-shadow:0 0 42px rgba(36,31,26,.09)}
.public-booking-page .public-showcase-header{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:10px;margin:0 0 12px;padding:2px 2px 0}
.public-booking-page .public-showcase-header h1{overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap;font-size:19px;font-weight:850;letter-spacing:-.025em}
.public-booking-page .public-showcase-header .brand-mark{width:44px;height:44px;border-radius:50%;justify-self:end;overflow:hidden}
.public-booking-page .public-showcase-header .brand-mark img{width:100%;height:100%;object-fit:cover}
.public-header-balance{display:block;width:44px;height:1px}
.entry-hero{position:relative;overflow:hidden;border-radius:22px;background:#e9e6e1;box-shadow:0 13px 30px rgba(36,31,26,.14)}
.entry-hero .entry-photo{aspect-ratio:4/3;border:0;border-radius:0;box-shadow:none}
.entry-hero .entry-photo:after{position:absolute;inset:38% 0 0;content:"";background:linear-gradient(180deg,transparent,rgba(18,16,15,.78));pointer-events:none}
.entry-hero .entry-identity{position:absolute;z-index:2;right:0;bottom:0;left:0;width:auto;margin:0;padding:52px 18px 17px;border:0;border-radius:0;background:transparent;color:#fff;box-shadow:none;text-shadow:0 2px 12px rgba(0,0,0,.42)}
.entry-hero .entry-identity h2{display:block;margin:0;color:#fff;font-size:clamp(21px,6vw,27px);font-weight:850;line-height:1.12;letter-spacing:-.035em}
.entry-hero .entry-identity p{margin:5px 0 0;color:rgba(255,255,255,.88);font-size:13px;font-weight:650;line-height:1.25}
.entry-service-picker{margin-top:25px}
.entry-service-picker h3{margin:0 0 14px;font-size:24px;font-weight:850;letter-spacing:-.04em}
.entry-category-strip{display:flex;gap:8px;overflow-x:auto;margin:0 -2px 14px;padding:2px;scrollbar-width:none}
.entry-category-strip::-webkit-scrollbar{display:none}.entry-category-strip[hidden]{display:none}
.entry-category-strip button{min-height:40px;flex:0 0 auto;padding:7px 14px;border:1px solid var(--public-border);border-radius:999px;background:#fff;color:var(--public-text)}
.entry-category-strip button[aria-pressed="true"]{border-color:var(--agenda-accent);background:var(--agenda-accent);color:var(--agenda-accent-contrast)}
.entry-service-grid{display:grid;grid-template-columns:1fr;gap:11px}
.entry-service-card{display:grid;min-width:0;grid-template-columns:112px minmax(0,1fr);align-items:stretch;gap:12px;padding:10px;border:1px solid #e4e0da;border-radius:18px;background:#fff;color:var(--public-text);box-shadow:0 7px 20px rgba(42,37,31,.07)}
.entry-service-card:hover,.entry-service-card:focus-within{border-color:color-mix(in srgb,var(--agenda-accent) 48%,#ded9d2);box-shadow:0 8px 24px rgba(42,37,31,.1)}
.entry-service-visual{display:block;width:112px;height:100%;min-height:142px;overflow:hidden;border-radius:13px;background:#ece8e2}
.entry-service-visual img{width:100%;height:100%;object-fit:cover}
.entry-service-copy{display:flex;min-width:0;flex-direction:column;align-items:stretch;padding:2px 0 0}
.entry-service-copy h4{margin:0;color:var(--public-text);font-size:16px;font-weight:850;line-height:1.16;letter-spacing:-.02em}
.entry-service-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 9px;margin-top:7px;font-size:12px}
.entry-service-meta span{display:inline-flex;align-items:center;gap:4px;color:#4f4b45}.entry-service-meta i{color:var(--agenda-accent);font-size:15px;font-style:normal}
.entry-service-meta strong{color:var(--agenda-accent);font-size:12px;white-space:nowrap}
.entry-service-copy p{display:-webkit-box;overflow:hidden;margin:7px 0 9px;color:#68635c;font-size:11px;line-height:1.34;-webkit-box-orient:vertical;-webkit-line-clamp:3}
.entry-service-action{display:inline-flex;min-height:44px;align-items:center;justify-content:center;gap:7px;margin-top:auto;padding:8px 12px;border:0;border-radius:11px;background:var(--agenda-accent);color:var(--agenda-accent-contrast);font-size:13px;font-weight:850;cursor:pointer}
.entry-service-action:focus-visible{outline:3px solid color-mix(in srgb,var(--agenda-accent) 28%,transparent);outline-offset:2px}
.public-booking-page .primary,.public-booking-page .slot-button.is-selected,.public-booking-page .day-button.is-selected,.public-booking-page .decision-date.is-selected{border-color:var(--agenda-accent);background:var(--agenda-accent);color:var(--agenda-accent-contrast)}
.public-booking-page .slot-button:hover{border-color:var(--agenda-accent)}
.public-booking-page .decision-date.is-selected strong,.public-booking-page .day-button.is-selected strong{color:var(--agenda-accent-contrast)}
.public-app-nav[hidden]{display:none}.public-app-nav{position:fixed;z-index:30;bottom:8px;left:50%;display:grid;width:min(calc(100% - 18px),418px);grid-template-columns:repeat(3,minmax(0,1fr));gap:3px;margin:0;padding:7px;transform:translateX(-50%);border:1px solid rgba(219,214,206,.92);border-radius:18px;background:rgba(255,255,255,.94);box-shadow:0 12px 32px rgba(35,30,25,.16);backdrop-filter:blur(14px)}
.public-app-nav a,.public-app-nav button{display:grid;min-width:0;min-height:52px;place-items:center;align-content:center;gap:3px;padding:5px;border:0;border-radius:12px;background:transparent;color:#6d6861;text-decoration:none;cursor:pointer}
.public-app-nav span{font-size:20px;line-height:1}.public-app-nav strong{overflow:hidden;max-width:100%;font-size:10px;font-weight:750;text-overflow:ellipsis;white-space:nowrap}
.public-app-nav .is-current{color:var(--agenda-accent)}.public-app-nav [aria-disabled="true"]{opacity:.42;cursor:not-allowed;pointer-events:none}
.is-public-showcase .public-shell{padding-bottom:92px}.is-public-showcase .public-footer{margin-top:10px;padding-bottom:2px}
@media(max-width:390px){.public-booking-page .public-shell{padding:10px 9px 14px}.public-booking-page .public-showcase-header{margin-bottom:9px}.entry-hero{border-radius:18px}.entry-hero .entry-identity{padding:45px 14px 14px}.entry-hero .entry-identity h2{font-size:20px}.entry-service-picker{margin-top:21px}.entry-service-picker h3{font-size:22px}.entry-service-card{grid-template-columns:102px minmax(0,1fr);gap:10px;padding:8px;border-radius:16px}.entry-service-visual{width:102px;min-height:136px;border-radius:12px}.entry-service-copy h4{font-size:15px}.entry-service-copy p{font-size:10.5px}.entry-service-action{min-height:44px}.public-app-nav{bottom:5px}}
@media(min-width:768px){.professional-entry{width:100%}.entry-service-grid{grid-template-columns:1fr}.entry-hero .entry-photo{aspect-ratio:4/3}}

/* Tela 2 pública — seleção de data e horário em continuidade com a vitrine */
.is-public-decision .public-showcase-header{display:none}
.is-public-decision .public-shell{padding-bottom:190px}
.is-public-decision #professional-step{margin:0;padding:0;border:0;background:transparent;box-shadow:none}
.decision-screen-header{display:grid;min-height:58px;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:8px;margin-bottom:12px}
.decision-screen-header h2{margin:0;text-align:center;color:var(--public-text);font-size:19px;font-weight:850;line-height:1.15;letter-spacing:-.025em}
.decision-back{display:grid;width:44px;height:44px;place-items:center;padding:0;border:0;border-radius:12px;background:transparent;color:var(--public-text);font-size:28px;line-height:1;cursor:pointer}
.decision-back:hover,.decision-back:focus-visible{background:var(--public-surface-secondary)}
.decision-brand-mark{display:grid;width:42px;height:42px;overflow:hidden;place-items:center;justify-self:end;border:1px solid var(--public-border);border-radius:50%;background:#fff;color:var(--agenda-accent);font-size:11px;font-weight:900}
.decision-brand-mark img{width:100%;height:100%;object-fit:cover}
.is-public-decision .service-decision{display:grid;gap:0}
.is-public-decision .service-context{display:grid;grid-template-columns:104px minmax(0,1fr);align-items:stretch;gap:13px;margin:0 0 16px;padding:10px;border:1px solid var(--public-border);border-radius:17px;background:#fff;box-shadow:0 6px 18px rgba(42,37,31,.055)}
.decision-professional-photo{display:grid;width:104px;min-height:132px;overflow:hidden;place-items:center;border-radius:13px;background:#ece8e2;color:var(--agenda-accent);font-size:24px;font-weight:900}
.decision-professional-photo img{display:block;width:100%;height:100%;object-fit:cover}
.decision-context-copy{display:grid;align-content:center;gap:10px}
.decision-context-line{display:grid;min-width:0;gap:2px}
.decision-context-line small{color:var(--agenda-accent);font-size:9px;font-weight:850;letter-spacing:.025em}
.decision-context-line strong{overflow:hidden;color:var(--public-text);font-size:14px;line-height:1.22;text-overflow:ellipsis}
.decision-context-line span{color:var(--public-muted);font-size:10px;line-height:1.25}
.is-public-decision .decision-date-picker{display:flex;align-items:stretch;gap:7px;margin:0 -2px 20px;padding:0 2px 16px;border-bottom:1px solid var(--public-border)}
.is-public-decision .decision-date-strip{gap:6px}
.is-public-decision .decision-date{min-width:54px;min-height:72px;grid-template-rows:auto auto auto;align-content:center;gap:1px;padding:6px;border-radius:13px}
.is-public-decision .decision-date small{font-size:9px}.is-public-decision .decision-date strong{font-size:20px;line-height:1.05}.is-public-decision .decision-date span{font-size:8px;font-weight:750}
.is-public-decision .decision-date.is-selected{border-color:var(--agenda-accent);background:var(--agenda-accent);color:var(--agenda-accent-contrast);box-shadow:0 7px 16px color-mix(in srgb,var(--agenda-accent) 22%,transparent)}
.is-public-decision .decision-date.is-selected strong{color:var(--agenda-accent-contrast)}
.is-public-decision .decision-other-date,.is-public-decision .decision-other-date.is-suggested{display:grid;min-width:58px;min-height:72px;flex-basis:58px;place-items:center;align-content:center;gap:4px;padding:6px;border-color:var(--public-border);border-radius:13px;background:#fff;color:var(--public-muted);box-shadow:none}
.is-public-decision .decision-other-date span{font-size:20px;line-height:1}.is-public-decision .decision-other-date small{font-size:8px;font-weight:750;line-height:1.1}
.is-public-decision .decision-availability{margin:0;padding:0;border:0}
.is-public-decision .decision-availability h3{margin:0 0 17px;font-size:22px;font-weight:850;line-height:1.15;letter-spacing:-.035em}
.is-public-decision .decision-slot-area{display:grid;gap:23px}
.decision-slot-period{display:grid;gap:10px}.decision-slot-period h4{margin:0;color:#47433e;font-size:14px;font-weight:850}
.is-public-decision .decision-slot-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.is-public-decision .decision-slot-grid .slot-button{min-height:54px;border:1px solid #d9d5cf;border-radius:12px;background:#fff;color:var(--public-text);font-size:15px;font-weight:800;box-shadow:0 3px 10px rgba(42,37,31,.035)}
.is-public-decision .decision-slot-grid .slot-button:hover{border-color:var(--agenda-accent)}
.is-public-decision .decision-slot-grid .slot-button.is-selected{border-color:var(--agenda-accent);background:var(--agenda-accent);color:var(--agenda-accent-contrast);box-shadow:0 7px 17px color-mix(in srgb,var(--agenda-accent) 22%,transparent)}
.is-public-decision .decision-slot-grid .slot-button:disabled,.is-public-decision .decision-slot-grid .slot-button.is-unavailable{border-color:#e1ded9;background:#ecebea;color:#aaa7a2;box-shadow:none;cursor:not-allowed}
.is-public-decision .decision-continue-wrap{position:fixed;z-index:29;bottom:84px;left:50%;display:grid;width:min(calc(100% - 18px),418px);gap:9px;padding:8px;transform:translateX(-50%);border:1px solid rgba(224,219,212,.9);border-radius:17px;background:rgba(255,255,255,.96);box-shadow:0 10px 28px rgba(35,30,25,.14);backdrop-filter:blur(14px)}
.is-public-decision .decision-continue-wrap[hidden]{display:none}
.is-public-decision .decision-continue{display:flex;min-height:54px;align-items:center;justify-content:center;gap:8px;border-color:var(--agenda-accent);border-radius:12px;background:var(--agenda-accent);color:var(--agenda-accent-contrast);font-size:12px;font-weight:900;letter-spacing:.025em}
.is-public-decision .public-app-nav [aria-disabled="true"].is-current{opacity:1;color:var(--agenda-accent)}
@media(max-width:390px){.decision-screen-header{min-height:52px;margin-bottom:9px}.decision-screen-header h2{font-size:17px}.decision-brand-mark{width:40px;height:40px}.is-public-decision .service-context{grid-template-columns:92px minmax(0,1fr);gap:11px;padding:8px}.decision-professional-photo{width:92px;min-height:120px}.decision-context-copy{gap:8px}.decision-context-line strong{font-size:13px}.is-public-decision .decision-date-picker{gap:6px}.is-public-decision .decision-date-strip{gap:5px}.is-public-decision .decision-date{min-width:49px;min-height:68px}.is-public-decision .decision-other-date,.is-public-decision .decision-other-date.is-suggested{min-width:55px;min-height:68px;flex-basis:55px}.is-public-decision .decision-availability h3{font-size:20px}.is-public-decision .decision-slot-grid{gap:8px}.is-public-decision .decision-slot-grid .slot-button{min-height:52px}.is-public-decision .decision-continue-wrap{bottom:80px}}

/* Shell público compartilhado e contexto progressivo das etapas */
.is-public-booking-flow .public-shell{padding-bottom:108px}
.is-public-decision .public-shell{padding-bottom:190px}
.is-public-app-shell .public-showcase-header{display:none}
.is-public-booking-flow .public-footer{margin-top:12px;padding-bottom:2px}
.is-public-booking-flow .public-app-nav [aria-disabled="true"].is-current{opacity:1;color:var(--agenda-accent)}
.flow-header-spacer{display:block;width:44px;height:1px}
.flow-public-step{margin:0;padding:0;border:0;background:transparent;box-shadow:none}
.booking-context-card{display:grid;grid-template-columns:104px minmax(0,1fr);align-items:stretch;gap:13px;margin:0 0 16px;padding:10px;border:1px solid var(--public-border);border-radius:17px;background:#fff;box-shadow:0 6px 18px rgba(42,37,31,.055)}
.reservation-professional-media{display:grid;width:104px;min-height:132px;overflow:hidden;place-items:center;border:1px solid var(--public-border);border-radius:13px;background:color-mix(in srgb,var(--agenda-accent) 9%,#fff);color:var(--agenda-accent);font-size:24px;font-weight:900}.reservation-professional-media img{display:block;width:100%;height:100%;object-fit:cover}.reservation-professional-media.is-compact{width:64px;height:76px;min-height:76px;flex:0 0 64px;border-radius:12px;font-size:17px}
.booking-context-schedule{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;padding-top:8px;border-top:1px solid var(--public-border)}
.booking-context-schedule>span{display:grid;min-width:0;gap:2px}
.booking-context-schedule small{color:var(--agenda-accent);font-size:9px;font-weight:850;letter-spacing:.025em}
.booking-context-schedule strong{overflow:hidden;color:var(--public-text);font-size:11px;line-height:1.25;text-overflow:ellipsis}
.client-data-heading{margin:1px 2px 12px}.client-data-heading p{margin:0;color:var(--public-muted);font-size:12px;line-height:1.45}
.flow-public-step #client-form{gap:13px;padding:16px;border:1px solid var(--public-border);border-radius:17px;background:#fff;box-shadow:0 6px 18px rgba(42,37,31,.05)}
.flow-public-step #client-form .public-main-action{min-height:52px;border-radius:12px}
.flow-public-step>#reserve-button{width:100%;min-height:52px;border-radius:12px}
@media(max-width:390px){.flow-header-spacer{width:40px}.booking-context-card{grid-template-columns:92px minmax(0,1fr);gap:11px;padding:8px}.booking-context-schedule{grid-template-columns:1fr;gap:6px}.booking-context-schedule>span:last-child{grid-template-columns:auto 1fr;align-items:baseline;gap:6px}.flow-public-step #client-form{padding:14px}}

/* Tela 4 pública — revisão dentro do mesmo shell */
@media(max-width:390px){.reservation-professional-media.is-compact{width:60px;height:72px;min-height:72px;flex-basis:60px}}

/* Tela final pública — confirmação no shell compartilhado */
.is-public-app-shell .result-card{margin:0;padding:0;border:0;background:transparent;box-shadow:none;text-align:left}
.confirmation-status{display:grid;justify-items:center;margin:6px 0 17px;text-align:center}
.confirmation-status .result-mark{width:58px;height:58px;margin:0 0 10px;background:color-mix(in srgb,var(--agenda-accent) 12%,#fff);color:var(--agenda-accent);font-size:29px;font-weight:900}
.confirmation-status h2{margin:0;color:var(--public-text);font-size:25px;line-height:1.15;letter-spacing:-.035em}
.confirmation-status p{margin:5px 0 0;color:var(--public-muted);font-size:13px}
.confirmation-payment-status{display:inline-flex;min-height:27px;align-items:center;margin-top:10px;padding:4px 10px;border-radius:999px;background:color-mix(in srgb,var(--agenda-accent) 10%,#fff);color:var(--agenda-accent);font-size:10px;font-weight:850}
.is-public-app-shell .confirmation-summary{overflow:hidden;gap:0;margin:0 0 14px;padding:0;border:1px solid var(--public-border);border-radius:17px;background:#fff;box-shadow:0 6px 18px rgba(42,37,31,.055);text-align:left}
.confirmation-professional{display:flex;align-items:center;gap:12px;padding:13px;background:var(--public-surface-secondary)}
.confirmation-professional>.reservation-professional-media{align-self:stretch}
.confirmation-professional>span,.confirmation-service,.confirmation-schedule>span,.confirmation-values>span{display:grid;min-width:0;gap:3px}
.confirmation-summary small{color:var(--agenda-accent);font-size:8px;font-weight:850;letter-spacing:.025em;text-transform:uppercase}
.confirmation-professional strong{color:var(--public-text);font-size:14px}.confirmation-professional em{color:var(--public-muted);font-size:10px;font-style:normal}
.confirmation-service{padding:14px}.confirmation-service strong{color:var(--public-text);font-size:15px;line-height:1.25}.confirmation-service>span{color:var(--public-muted);font-size:12px}.confirmation-service>span>.brand-price{font-size:12.5px;font-weight:800}
.confirmation-schedule,.confirmation-values{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:14px;padding:13px 14px;border-top:1px solid var(--public-border)}
.confirmation-schedule strong{color:var(--public-text);font-size:13px;line-height:1.3}.confirmation-schedule>span:last-child,.confirmation-values>span:last-child{text-align:right}.confirmation-schedule>span:last-child strong{color:var(--agenda-accent);font-size:20px}
.confirmation-values{background:color-mix(in srgb,var(--agenda-accent) 7%,#fff)}.confirmation-values strong{color:var(--public-text);font-size:15px}.confirmation-values>span:first-child strong{color:var(--agenda-accent)}
.is-public-app-shell .confirmation-actions .primary{display:flex;width:100%;min-height:52px;align-items:center;justify-content:center;margin:0;border-color:var(--agenda-accent);border-radius:12px;background:var(--agenda-accent);color:var(--agenda-accent-contrast);font-size:12px;font-weight:900;letter-spacing:.02em;text-decoration:none}
@media(max-width:390px){.confirmation-status h2{font-size:23px}.confirmation-schedule{grid-template-columns:1fr;gap:9px}.confirmation-schedule>span:last-child{grid-template-columns:auto 1fr;align-items:baseline;gap:7px;text-align:left}}

/* Home oficial do estabelecimento */
.public-salon-home{display:grid;gap:22px}.salon-home-hero{position:relative;overflow:hidden;padding:25px 20px 22px;border:1px solid var(--public-border);border-radius:22px;background:linear-gradient(145deg,color-mix(in srgb,var(--agenda-accent) 11%,#fff),#fff 58%);box-shadow:0 8px 25px rgba(42,37,31,.06)}
.salon-home-hero::after{position:absolute;right:-48px;bottom:-62px;width:170px;height:170px;border-radius:50%;background:color-mix(in srgb,var(--agenda-accent) 8%,transparent);content:"";pointer-events:none}.salon-home-hero>*{position:relative;z-index:1}.salon-home-hero h2{max-width:300px;margin:4px 0 8px;color:var(--public-text);font-size:29px;line-height:1.04;letter-spacing:-.04em}.salon-home-hero>p:not(.eyebrow){max-width:325px;margin:0;color:var(--public-muted);font-size:13px;line-height:1.5}.salon-home-address{display:block;margin-top:11px;color:var(--public-text);font-size:11px;line-height:1.4}.salon-home-hero .public-main-action{width:auto;min-width:172px;margin-top:20px;padding:0 20px;border-color:var(--agenda-accent);border-radius:12px;background:var(--agenda-accent);color:var(--agenda-accent-contrast)}
.salon-home-section{display:grid;gap:11px}.salon-home-heading{display:flex;align-items:end;justify-content:space-between;gap:12px;padding:0 2px}.salon-home-heading h3{margin:2px 0 0;color:var(--public-text);font-size:21px;letter-spacing:-.025em}.salon-home-heading>span{max-width:135px;color:var(--public-muted);font-size:10px;line-height:1.3;text-align:right}
.salon-professional-grid,.salon-service-list{display:grid;gap:9px}.salon-professional-card{display:grid;grid-template-columns:64px minmax(0,1fr) 28px;align-items:center;gap:11px;min-height:82px;padding:8px;border:1px solid var(--public-border);border-radius:16px;background:#fff;box-shadow:0 5px 16px rgba(42,37,31,.045);color:var(--public-text);text-align:left}.salon-professional-card .avatar{width:64px;height:64px;border-radius:13px}.salon-professional-card strong,.salon-service-card strong{display:block;font-size:14px;line-height:1.25}.salon-professional-card small{display:block;margin-top:4px;color:var(--public-muted);font-size:10px;line-height:1.3}.salon-home-arrow{display:grid;width:28px;height:28px;place-items:center;color:var(--agenda-accent);font-size:22px}
.salon-service-card{display:grid;grid-template-columns:78px minmax(0,1fr);gap:11px;min-height:96px;padding:8px;border:1px solid var(--public-border);border-radius:16px;background:#fff;box-shadow:0 5px 16px rgba(42,37,31,.045)}.salon-service-card img{width:78px;height:80px;border-radius:12px;object-fit:cover}.salon-service-card>span{display:flex;min-width:0;flex-direction:column;justify-content:center}.salon-service-meta{display:flex;flex-wrap:wrap;gap:5px 9px;margin-top:5px;color:var(--agenda-accent);font-size:10px;font-weight:750}.salon-service-card p{display:-webkit-box;overflow:hidden;margin:5px 0 0;color:var(--public-muted);font-size:10px;line-height:1.35;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.public-booking-page .marketing-choice input{accent-color:var(--agenda-accent)}
/* O tema público reinterpreta os tokens antigos sem afetar o administrativo. */
.public-page{--color-primary:var(--agenda-accent);--color-primary-dark:color-mix(in srgb,var(--agenda-accent) 82%,#000);--color-primary-light:color-mix(in srgb,var(--agenda-accent) 10%,#fff);--ui-primary-shadow:0 10px 22px color-mix(in srgb,var(--agenda-accent) 24%,transparent)}
.public-page .primary,.public-page .pix-payment-step .primary{border-color:var(--agenda-accent);background:var(--agenda-accent);color:var(--agenda-accent-contrast);box-shadow:0 8px 20px color-mix(in srgb,var(--agenda-accent) 22%,transparent)}
.public-page .pix-payment-step .primary:hover,.public-page .pix-payment-step .primary:focus-visible{border-color:color-mix(in srgb,var(--agenda-accent) 82%,#000);background:color-mix(in srgb,var(--agenda-accent) 82%,#000);color:var(--agenda-accent-contrast)}
/* A regra fica depois das media queries compactas para que a navegação fixa nunca cubra o conteúdo. */
.is-public-showcase .public-shell{padding-bottom:104px}
@media(max-width:390px){.public-salon-home{gap:18px}.salon-home-hero{padding:22px 17px 20px}.salon-home-hero h2{font-size:26px}.salon-home-heading h3{font-size:20px}.salon-home-heading>span{max-width:120px}.salon-service-card{grid-template-columns:72px minmax(0,1fr)}.salon-service-card img{width:72px;height:76px}.is-public-showcase .public-shell{padding-bottom:104px}}

/* Shell público consolidado — identidade, iconografia e navegação segura. */
.public-icon{display:block;width:1em;height:1em;pointer-events:none}.public-app-nav .public-icon{width:21px;height:21px}.decision-back .public-icon{width:22px;height:22px}.decision-other-date .public-icon{width:20px;height:20px;margin:auto}.decision-continue .public-icon,.entry-service-action .public-icon{width:18px;height:18px;flex:0 0 auto}.entry-service-meta .public-icon{width:14px;height:14px}.salon-home-arrow .public-icon{width:20px;height:20px}.profile-fact-icon .public-icon{width:20px;height:20px}.result-mark .public-icon{width:29px;height:29px}
.entry-hero .entry-photo,.entry-photo{aspect-ratio:1/1}.entry-hero .entry-photo:after{inset:48% 0 0}.decision-screen-header h2{text-align:left}.flow-screen-header h2{text-align:center}
.salon-home-heading{align-items:start}.salon-home-heading h3{max-width:330px}.salon-home-info{padding:16px;border:1px solid var(--public-border);border-radius:18px;background:#fff}.salon-home-info #home-useful-content{display:grid;gap:9px}.salon-home-info p{display:flex;align-items:center;gap:10px;margin:0;color:var(--public-muted);font-size:12px;line-height:1.45}.salon-home-info p .public-icon{width:18px;height:18px;flex:0 0 auto;color:var(--agenda-accent)}.salon-home-info a{width:max-content;color:var(--agenda-accent);font-size:12px;font-weight:800}
.decision-availability.is-full{padding-top:10px;border-top:0}.decision-availability.is-full .decision-empty{padding:20px 16px;border:1px solid var(--public-border);border-radius:16px;background:var(--public-surface-secondary)}
.payment-booking-summary{margin:0 0 18px}.payment-booking-summary .booking-context-card{margin:0}
.public-footer{display:grid;gap:3px}.public-footer>span{font-weight:750}.public-footer>small{font-size:9px}.public-footer b{color:var(--agenda-accent)}
.booking-exit-dialog{width:min(calc(100% - 32px),390px);padding:0;border:1px solid var(--public-border);border-radius:20px;background:#fff;color:var(--public-text);box-shadow:0 24px 70px rgba(25,21,18,.25)}.booking-exit-dialog::backdrop{background:rgba(25,21,18,.5);backdrop-filter:blur(3px)}.booking-exit-dialog form{display:grid;gap:11px;padding:22px}.booking-exit-dialog h2{margin:0;font-size:21px}.booking-exit-dialog p{margin:0 0 5px;color:var(--public-muted);line-height:1.5}.booking-exit-dialog button{min-height:48px}.booking-exit-dialog .ghost{color:var(--public-muted)}
@media(max-width:430px){.public-booking-page .public-shell{padding-bottom:112px}.entry-hero .entry-photo{aspect-ratio:1/1}.salon-home-heading h3{font-size:20px}.decision-screen-header h2{font-size:17px}}

/* Cartão digital da reserva pública. */
.public-reservation-page{--agenda-accent:#6d38df;--agenda-accent-contrast:#fff;background:var(--public-bg,#f6f4f0)}.public-reservation-page .public-shell{width:min(430px,100%);padding-bottom:112px}.public-reservation-page .public-showcase-header{display:grid;grid-template-columns:44px minmax(0,1fr) 44px}.public-reservation-page .public-showcase-header h1{text-align:center}.reservation-digital-card{display:grid;gap:14px}.reservation-status{text-align:center}.reservation-status>span{display:grid;width:58px;height:58px;place-items:center;margin:0 auto 11px;border-radius:50%;background:color-mix(in srgb,var(--agenda-accent) 12%,#fff);color:var(--agenda-accent)}.reservation-status .public-icon{width:30px;height:30px}.reservation-status h2{margin:0;color:var(--public-text);font-size:24px}.reservation-status p{margin:7px 0 0;color:var(--public-muted);font-size:13px}.reservation-status.is-ended>span{background:#efedeb;color:#77726b}.reservation-appointment,.reservation-financial,.reservation-place{padding:15px;border:1px solid var(--public-border);border-radius:18px;background:#fff;box-shadow:0 6px 20px rgba(42,37,31,.045)}.reservation-person{display:flex;align-items:center;gap:12px}.reservation-person>img{width:72px;height:72px;flex:0 0 72px;object-fit:cover;border-radius:14px}.reservation-person>span{display:grid;min-width:0;gap:2px}.reservation-person small,.reservation-person em{color:var(--public-muted);font-size:10px;font-style:normal}.reservation-person strong{font-size:14px}.reservation-person b{font-size:13px}.reservation-when{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-top:14px;padding-top:13px;border-top:1px solid var(--public-border)}.reservation-when span{font-size:13px;font-weight:750}.reservation-when strong{color:var(--agenda-accent);font-size:26px}.reservation-financial h3,.reservation-place h3{margin:0 0 10px;font-size:15px}.reservation-financial>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:7px 0;color:var(--public-muted);font-size:12px}.reservation-financial>div strong{color:var(--public-text)}.reservation-financial .is-paid span{display:flex;align-items:center;gap:6px;color:var(--agenda-accent);font-weight:800}.reservation-financial .is-paid .public-icon{width:16px;height:16px}.reservation-place{display:grid;gap:2px}.reservation-place strong{font-size:13px}.reservation-actions{display:grid;gap:7px}.reservation-actions .primary{min-height:52px}.reservation-cancel{min-height:44px;border:0;background:transparent;color:#817b73;font-size:12px;font-weight:750}.reservation-reschedule-card header{display:flex;align-items:center;gap:10px;margin-bottom:15px}.reservation-reschedule-card header>span{color:var(--agenda-accent);font-size:24px}.reservation-reschedule-card h2{margin:1px 0 0;font-size:20px}.reservation-reschedule-card .slot-grid{margin-top:13px}.reservation-pix textarea{width:100%;min-height:90px;margin-top:10px}.reservation-pix .pix-qr{display:block;width:min(210px,100%);margin:10px auto}.public-reservation-page .public-app-nav{display:grid}.public-reservation-page .public-footer{margin-top:17px}
@media(max-width:390px){.public-reservation-page .public-shell{padding:10px 10px 112px}.reservation-appointment,.reservation-financial,.reservation-place{padding:13px}.reservation-when strong{font-size:24px}}

/* Primeiro acesso e ambiente mínimo do profissional. */
.professional-access-card{display:grid;gap:14px}.professional-access-card h2{margin:0}.access-status{display:grid;gap:7px}.access-status p{margin:0;color:var(--color-muted);font-size:13px;line-height:1.45}.access-status .pill{width:max-content}.access-active{background:#e6f6ed;color:#24734a}.access-pending{background:#fff3d8;color:#8a5a00}.professional-auth-page{min-height:100vh}.professional-auth-wrap{display:grid;min-height:100vh;padding:20px;place-items:center}.professional-activation-card{display:grid;width:min(100%,430px);gap:22px;padding:28px}.professional-activation-card h1{margin:4px 0 8px;font-size:28px}.professional-login-link{text-align:center}
.professional-invite-result{padding-top:4px;border-top:1px solid var(--line)}.invite-details{display:grid;gap:8px;margin:0}.invite-details>div{display:flex;justify-content:space-between;gap:16px}.invite-details dt{color:var(--muted);font-size:12px}.invite-details dd{margin:0;font-size:13px;font-weight:700;text-align:right}
.professional-app-page{min-height:100vh;background:#f7f5f2;color:#171c32}.professional-app-shell{width:min(100%,760px);min-height:100vh;margin:auto;background:#fff}.professional-app-header{display:flex;min-height:76px;align-items:center;justify-content:space-between;gap:12px;padding:12px 18px;border-bottom:1px solid #ebe7e2}.professional-identity{display:flex;min-width:0;align-items:center;gap:11px}.professional-identity .avatar{display:grid;width:46px;height:46px;overflow:hidden;flex:0 0 46px;place-items:center;border-radius:14px;background:var(--color-primary-light);color:var(--color-primary);font-weight:900}.professional-identity img{width:100%;height:100%;object-fit:cover}.professional-identity div:last-child{display:grid;min-width:0}.professional-identity small{overflow:hidden;color:#777;text-overflow:ellipsis;white-space:nowrap}.professional-identity strong{overflow:hidden;font-size:16px;text-overflow:ellipsis;white-space:nowrap}.professional-agenda-main{padding:24px 18px 92px}.professional-agenda-heading{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:22px}.professional-agenda-heading h1{margin:3px 0;font-size:30px}.professional-agenda-heading p:not(.eyebrow){margin:0;color:#777;font-size:13px}.professional-date-field{display:grid;gap:5px;color:#777;font-size:11px;font-weight:800}.professional-date-field input{min-height:44px}.professional-agenda-list{display:grid;gap:10px}.professional-appointment{display:grid;grid-template-columns:64px minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px;border:1px solid #ebe7e2;border-radius:16px;box-shadow:0 5px 17px rgba(42,37,31,.05)}.professional-appointment time{color:var(--color-primary);font-size:20px;font-weight:900}.professional-appointment div{display:grid;gap:3px}.professional-appointment strong{font-size:14px}.professional-appointment div span{color:#777;font-size:12px}.professional-appointment>.pill{text-transform:capitalize}.professional-agenda-empty{display:grid;gap:6px;padding:42px 20px;border:1px dashed #dcd6cf;border-radius:18px;color:#777;text-align:center}.professional-agenda-empty strong{color:#171c32}.professional-bottom-nav{position:fixed;bottom:0;left:50%;display:grid;width:min(100%,760px);grid-template-columns:repeat(2,minmax(0,1fr));padding:10px 16px calc(10px + env(safe-area-inset-bottom));transform:translateX(-50%);border-top:1px solid #ebe7e2;background:rgba(255,255,255,.96);backdrop-filter:blur(12px)}.professional-bottom-nav:has(#professional-switch-context:not([hidden])){grid-template-columns:repeat(3,minmax(0,1fr))}.professional-bottom-nav a,.professional-bottom-nav button{display:grid;min-height:42px;place-items:center;border:0;background:transparent;color:#777;font-size:12px;font-weight:800;text-decoration:none}.professional-bottom-nav .is-current{color:var(--color-primary)}
@media(max-width:520px){.professional-activation-card{padding:22px 18px}.professional-agenda-heading{align-items:stretch;flex-direction:column}.professional-date-field input{width:100%}.professional-appointment{grid-template-columns:56px minmax(0,1fr)}.professional-appointment>.pill{grid-column:2}}
.reservation-place{gap:3px}.reservation-place span{color:var(--public-muted);font-size:12px;line-height:1.45}

/* Precedência final do pacote público #1. */
.public-booking-page .public-showcase-header,.public-booking-page.is-public-decision .public-showcase-header,.public-booking-page.is-public-app-shell .public-showcase-header{display:flex;grid-template-columns:none;align-items:center;justify-content:flex-start;gap:11px}
.public-booking-page .public-showcase-header .brand-mark{order:0;justify-self:auto}
.public-booking-page .public-showcase-header h1{order:1;text-align:left}
.public-booking-page .decision-screen-header .decision-brand-mark{visibility:hidden}
.public-booking-page .public-footer{display:none}
.public-booking-page.is-public-result .public-footer{display:block}
.context-option{text-align:left;display:grid;gap:.25rem;width:100%}.context-option small{font-weight:400;color:var(--muted,#687083)}

/* Clientes — módulo administrativo de consulta. */
.client-search-form{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:end;gap:12px;margin-bottom:18px}.client-search-form .field{margin:0}.client-list{display:grid;gap:10px}.client-card{display:grid;min-width:0;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;padding:16px 18px;border:1px solid var(--line);border-radius:16px;background:#fff;color:var(--text);box-shadow:var(--shadow);text-decoration:none}.client-card>span{display:grid;min-width:0;gap:3px}.client-card strong,.client-card small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.client-card small{color:var(--muted);font-size:12px}.client-card>b{color:var(--color-primary);font-size:25px}.client-card:hover{border-color:var(--color-primary)}.client-state{display:grid;justify-items:start;gap:9px;padding:24px;border:1px dashed var(--line);border-radius:16px;color:var(--muted);background:#fff}.client-state strong{color:var(--text)}.client-pagination{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:18px}.client-pagination span{color:var(--muted);font-size:12px}.client-back-link{display:inline-flex;margin-bottom:16px;color:var(--color-primary);font-weight:750;text-decoration:none}.client-profile{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.client-profile>div{display:grid;min-width:0;gap:5px}.client-profile small{color:var(--muted);font-size:11px;text-transform:uppercase}.client-profile strong{overflow-wrap:anywhere}.client-history-section{margin-top:24px}.client-history{display:grid;gap:10px}.client-history-card{display:grid;min-width:0;grid-template-columns:150px minmax(0,1fr) auto auto;align-items:center;gap:14px}.client-history-card time{font-weight:800}.client-history-card>div{display:grid;min-width:0;gap:3px}.client-history-card>div span,.client-history-card>div small{color:var(--muted);font-size:12px}.client-history-values{text-align:right}.client-history-card>.pill{text-transform:capitalize}.client-state[hidden],.client-list[hidden],.client-pagination[hidden],#client-view[hidden],.client-history[hidden]{display:none}
@media(max-width:640px){.client-search-form{grid-template-columns:1fr}.client-search-form button{width:100%}.client-profile{grid-template-columns:1fr}.client-history-card{grid-template-columns:1fr auto}.client-history-card>time,.client-history-card>div:not(.client-history-values){grid-column:1}.client-history-values,.client-history-card>.pill{grid-column:2;grid-row:auto}.client-pagination{justify-content:space-between}.client-card{padding:14px}}

/* Home r19 — agenda diária como centro operacional. */
body[data-active="home"]{min-width:320px;background:#f8f7fc}
body[data-active="home"] .main{background:radial-gradient(circle at 80% 0,rgba(122,9,214,.055),transparent 30%),#f8f7fc}
body[data-active="home"] .home-brand{display:inline-flex;width:max-content;align-items:center;gap:9px;color:#17151c}
body[data-active="home"] .home-brand .brand-go{display:inline-block;overflow:visible;background:var(--color-primary);background-clip:text;color:transparent;font-size:32px;font-weight:950;line-height:.9;-webkit-background-clip:text}
body[data-active="home"] .home-brand .brand-copy{display:grid;line-height:1}
body[data-active="home"] .home-brand .brand-copy strong{font-size:20px;font-weight:850;letter-spacing:-.8px}
body[data-active="home"] .home-brand .brand-copy small{margin-top:5px;color:#8186a7;font-size:8px;font-weight:800;letter-spacing:1px}
body[data-active="home"] .sidebar .home-brand{padding:0 8px 10px}
body[data-active="home"] .home-company-name{display:block;margin:0 8px 20px;overflow:hidden;color:#746d7d;font-size:11px;font-weight:750;text-overflow:ellipsis;white-space:nowrap}
body[data-active="home"] .home-topbar{position:sticky;z-index:20;top:0;display:grid;min-height:72px;grid-template-columns:minmax(0,1fr) auto;align-items:center;padding:10px 26px;border-bottom:1px solid #e9e5f2;background:rgba(255,255,255,.94);backdrop-filter:blur(16px)}
body[data-active="home"] .home-topbar-brand{display:flex;align-items:center;gap:9px}
body[data-active="home"] .home-topbar-tools{display:flex;align-items:center;gap:14px}
body[data-active="home"] .home-new-appointment,body[data-active="home"] .home-timeline-empty .primary{border-color:var(--color-primary);background:var(--color-primary);color:#fff;box-shadow:0 9px 22px rgba(122,9,214,.2)}
body[data-active="home"] .home-new-appointment{min-height:44px;border-radius:13px;text-decoration:none;white-space:nowrap}
body[data-active="home"] .home-actions-menu{position:relative}body[data-active="home"] .home-actions-trigger{border-color:rgba(122,9,214,.32);background:var(--color-primary-light);color:var(--color-primary);box-shadow:none}body[data-active="home"] .home-actions-trigger:hover,body[data-active="home"] .home-actions-trigger:focus-visible{border-color:var(--color-primary);background:#fff;box-shadow:0 4px 12px rgba(122,9,214,.09)}
body[data-active="home"] .home-actions-dropdown{position:absolute;z-index:45;top:calc(100% + 9px);right:0;width:210px;padding:7px;border:1px solid var(--ui-card-border);border-radius:13px;background:#fff;box-shadow:0 18px 45px rgba(46,31,79,.16);animation:home-menu-in .18s ease both}body[data-active="home"] .home-actions-dropdown button{display:flex;width:100%;min-height:42px;align-items:center;padding:9px 11px;border:0;border-radius:9px;background:transparent;color:#28232f;font-weight:750;text-align:left;cursor:pointer}body[data-active="home"] .home-actions-dropdown button:hover{background:var(--color-primary-light);color:var(--color-primary)}
body[data-active="home"] .home-time-slot.is-free button{display:flex;width:100%;min-height:42px;align-items:center;gap:8px;padding:8px 12px;border:1px dashed transparent;border-radius:10px;background:transparent;color:#938ca0;font-size:12px;font-weight:750;opacity:0;cursor:pointer;transition:opacity .18s ease,border-color .18s ease,background .18s ease,color .18s ease}body[data-active="home"] .home-time-row:hover .home-time-slot.is-free button,body[data-active="home"] .home-time-slot.is-free button:focus-visible{border-color:#dcdaf0;background:var(--color-primary-light);color:var(--color-primary);opacity:1}
body[data-active="home"].home-modal-open{overflow:hidden}body[data-active="home"] .home-modal-backdrop,body[data-active="home"] .home-share-backdrop{position:fixed;z-index:80;inset:0;display:grid;place-items:center;padding:18px;background:rgba(27,20,44,.42);backdrop-filter:blur(3px);animation:home-fade-in .18s ease both}body[data-active="home"] .home-appointment-modal,body[data-active="home"] .home-share-modal{display:grid;width:min(620px,100%);max-height:min(780px,calc(100vh - 36px));overflow:hidden;border:1px solid var(--ui-card-border);border-radius:20px;background:#fff;box-shadow:0 28px 80px rgba(37,24,70,.25);animation:home-modal-in .22s ease both}body[data-active="home"] .home-share-modal{width:min(480px,100%);padding-bottom:22px}
body[data-active="home"] .home-appointment-modal>header,body[data-active="home"] .home-share-modal>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:22px 24px 16px}body[data-active="home"] .home-appointment-modal h2,body[data-active="home"] .home-share-modal h2{margin:4px 0 0;font-size:24px}body[data-active="home"] .home-modal-close{display:grid;width:38px;height:38px;flex:0 0 38px;place-items:center;border:1px solid var(--line);border-radius:10px;background:#fff;color:#655e6e;font-size:23px;cursor:pointer}
body[data-active="home"] .home-booking-progress{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin:0;padding:0 24px 18px;list-style:none}body[data-active="home"] .home-booking-progress li{padding:8px 5px;border-bottom:3px solid #e9e5f2;color:#918a9b;font-size:10px;font-weight:850;text-align:center;text-transform:uppercase;transition:.18s ease}body[data-active="home"] .home-booking-progress li.is-current,body[data-active="home"] .home-booking-progress li.is-complete{border-color:var(--color-primary);color:var(--color-primary)}
body[data-active="home"] .home-booking-stage{min-height:280px;overflow:auto;padding:6px 24px 22px;animation:home-stage-in .2s ease both}body[data-active="home"] .home-booking-stage>.field,body[data-active="home"] .home-booking-stage>.grid-2{margin-bottom:16px}body[data-active="home"] .home-booking-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;margin-bottom:14px}body[data-active="home"] .home-client-create,body[data-active="home"] .home-contract-note{margin:0 0 14px;padding:12px 14px;border:1px solid #ddd3fb;border-radius:11px;background:#f8f5ff;color:#635777;font-size:12px;line-height:1.5}body[data-active="home"] .home-client-create{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:10px}body[data-active="home"] .home-client-create .home-client-error{grid-column:1/-1;margin:0;color:#9b2942}body[data-active="home"] .home-client-create p{margin:0}
body[data-active="home"] .home-booking-list{display:grid;gap:8px;max-height:330px;overflow:auto}body[data-active="home"] .home-booking-list>button{display:flex;min-height:58px;align-items:center;justify-content:space-between;gap:14px;padding:12px 14px;border:1px solid var(--ui-card-border);border-radius:11px;background:#fff;color:#292330;text-align:left;cursor:pointer;transition:.18s ease}body[data-active="home"] .home-booking-list>button:hover,body[data-active="home"] .home-booking-list>button.is-selected{border-color:var(--color-primary);background:var(--color-primary-light);color:var(--color-primary);box-shadow:0 6px 15px rgba(122,9,214,.1)}body[data-active="home"] .home-booking-list>button span{color:#746d7d;font-size:12px}body[data-active="home"] .home-booking-empty,body[data-active="home"] .home-booking-loading{padding:25px;color:#746d7d;text-align:center}
body[data-active="home"] .home-booking-option-status{min-height:20px;margin:12px 0 0;color:var(--muted);font-size:12px}body[data-active="home"] .home-booking-availability{display:grid;gap:16px;margin-top:18px;padding-top:18px;border-top:1px solid var(--ui-card-border)}body[data-active="home"] .home-booking-slots{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:8px}body[data-active="home"] .home-booking-slots>button{min-height:44px;border:1px solid var(--ui-card-border);border-radius:11px;background:#fff;color:var(--text);font-weight:800;cursor:pointer}body[data-active="home"] .home-booking-slots>button:hover,body[data-active="home"] .home-booking-slots>button.is-selected{border-color:var(--color-primary);background:var(--color-primary);color:#fff}body[data-active="home"] .home-booking-slots .home-booking-empty,body[data-active="home"] .home-booking-slots .home-booking-loading{grid-column:1/-1;margin:0;border:1px dashed var(--ui-card-border);border-radius:11px;background:#fbfaff}
body[data-active="home"] .home-booking-service-context{display:flex;min-width:0;flex-direction:column;gap:4px;padding:14px;border:1px solid var(--ui-card-border);border-radius:11px;background:#fbfaff}body[data-active="home"] .home-booking-service-context strong,body[data-active="home"] .home-professional-list strong{overflow-wrap:anywhere}body[data-active="home"] .home-booking-service-context span{color:#746d7d;font-size:12px}body[data-active="home"] .home-booking-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0 0 18px}body[data-active="home"] .home-booking-summary div{padding:13px;border:1px solid var(--ui-card-border);border-radius:11px;background:#fbfaff}body[data-active="home"] .home-booking-summary dt{color:#81798b;font-size:10px;font-weight:850;text-transform:uppercase}body[data-active="home"] .home-booking-summary dd{margin:5px 0 0;color:#292330;font-weight:800}body[data-active="home"] .home-appointment-modal>footer{display:flex;justify-content:flex-end;gap:10px;padding:15px 24px calc(15px + env(safe-area-inset-bottom));border-top:1px solid var(--ui-card-border);background:#fff}body[data-active="home"] .home-appointment-modal>footer[hidden]{display:none}body[data-active="home"] .home-share-modal>p{margin:0 24px 18px;padding:12px;border-radius:10px;background:#f7f5fb;color:#5e5668;overflow-wrap:anywhere}body[data-active="home"] .home-share-actions{display:flex;justify-content:flex-end;gap:10px;padding:0 24px}
@keyframes home-menu-in{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:none}}@keyframes home-fade-in{from{opacity:0}to{opacity:1}}@keyframes home-modal-in{from{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:none}}@keyframes home-stage-in{from{opacity:0;transform:translateX(8px)}to{opacity:1;transform:none}}
@media(max-width:620px){body[data-active="home"] .home-time-slot.is-free button{opacity:1}body[data-active="home"] .home-modal-backdrop,body[data-active="home"] .home-share-backdrop{align-items:end;padding:0}body[data-active="home"] .home-appointment-modal,body[data-active="home"] .home-share-modal{width:100%;max-height:92vh;border-radius:20px 20px 0 0}body[data-active="home"] .home-appointment-modal>header,body[data-active="home"] .home-share-modal>header{padding:18px 16px 14px}body[data-active="home"] .home-booking-progress{padding:0 16px 15px}body[data-active="home"] .home-booking-stage{min-height:250px;padding:5px 16px 18px}body[data-active="home"] .home-booking-toolbar,body[data-active="home"] .home-client-create{grid-template-columns:1fr}body[data-active="home"] .home-booking-toolbar .secondary,body[data-active="home"] .home-client-create .primary{width:100%}body[data-active="home"] .home-booking-summary{grid-template-columns:1fr 1fr}body[data-active="home"] .home-appointment-modal>footer{position:sticky;bottom:0;padding:12px 16px calc(12px + env(safe-area-inset-bottom))}body[data-active="home"] .home-share-actions{padding:0 16px}body[data-active="home"] .home-share-modal>p{margin-right:16px;margin-left:16px}}
@media(max-width:430px){body[data-active="home"] .home-booking-slots{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){body[data-active="home"] .home-actions-dropdown,body[data-active="home"] .home-modal-backdrop,body[data-active="home"] .home-share-backdrop,body[data-active="home"] .home-appointment-modal,body[data-active="home"] .home-share-modal,body[data-active="home"] .home-booking-stage{animation:none!important;transition:none!important}}
body[data-active="home"] .main{display:flex;height:100dvh;min-height:0;flex-direction:column;overflow:hidden}
body[data-active="home"] .home-content{display:flex;width:100%;max-width:none;min-height:0;flex:1;flex-direction:column;padding:18px 24px 20px;overflow:hidden}
body[data-active="home"] .home-context{display:flex;align-items:end;justify-content:space-between;gap:16px;max-width:1320px;margin:0 auto 12px}
body[data-active="home"] .home-context h1{margin:1px 0 0;font-size:clamp(22px,2.4vw,30px);letter-spacing:-.035em}
body[data-active="home"] .home-greeting{margin:0;color:#746d7d;font-size:12px;font-weight:750}
body[data-active="home"] #home-context-company{margin:0;color:#8b8493;font-size:12px}
body[data-active="home"] .home-date-nav{display:grid;max-width:760px;grid-template-columns:48px 82px minmax(220px,1fr) 48px;align-items:center;gap:9px;margin:0 auto 12px}
body[data-active="home"] .home-date-nav button,body[data-active="home"] .home-date-picker{min-height:46px;border:1px solid #e4deef;border-radius:14px;background:#fff;color:#4e4657;box-shadow:0 5px 16px rgba(46,31,79,.035)}
body[data-active="home"] .home-date-nav button{display:grid;place-items:center;padding:0;cursor:pointer}
body[data-active="home"] .home-date-step{font-weight:700}
body[data-active="home"] .home-today{font-weight:600}
body[data-active="home"] .home-date-step{width:48px;height:46px;color:var(--color-primary)!important;font-size:27px;line-height:1}
body[data-active="home"] .home-today.is-current{border-color:rgba(122,9,214,.22);background:var(--color-primary-light);color:var(--color-primary)}
body[data-active="home"] .home-date-picker{position:relative;display:flex;min-width:0;align-items:center;justify-content:center;gap:12px;padding:0 45px 0 16px;font-size:16px;font-weight:600;line-height:1.35;text-transform:capitalize}
body[data-active="home"] .home-date-picker .line-icon{width:20px;height:20px;color:#665f6c}
body[data-active="home"] .home-date-picker input{position:absolute;inset:0;width:100%;height:100%;opacity:.01;cursor:pointer}
body[data-active="home"] .home-agenda{width:100%;max-width:1320px;min-height:0;flex:1;margin:0 auto;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-color:transparent transparent;scrollbar-width:thin;border:1px solid #e8e3ef;border-radius:18px;background:rgba(255,255,255,.86);box-shadow:0 16px 42px rgba(46,31,79,.055)}
body[data-active="home"] .home-agenda::-webkit-scrollbar{width:4px}
body[data-active="home"] .home-agenda::-webkit-scrollbar-track{background:transparent}
body[data-active="home"] .home-agenda::-webkit-scrollbar-thumb{border:1px solid transparent;border-radius:999px;background:transparent;background-clip:padding-box}
body[data-active="home"] .home-professional-selector{display:flex;width:100%;max-width:1320px;flex:0 0 auto;gap:8px;margin:0 auto 10px;padding:2px;overflow-x:auto;scrollbar-width:thin}
body[data-active="home"] .home-professional-selector[hidden]{display:none}
body[data-active="home"] .home-professional-selector button{display:grid;width:72px;min-width:72px;height:62px;grid-template-rows:34px auto;place-items:center;gap:3px;padding:4px;border:1px solid transparent;border-radius:12px;background:transparent;color:#0d1036;font-size:11px;font-weight:750;cursor:pointer}
body[data-active="home"] .home-professional-selector button>span:last-child{display:block;width:100%;overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap}
body[data-active="home"] .home-professional-avatar{display:grid;width:34px;height:34px;place-items:center;overflow:hidden;border:1px solid #dcdaf0;border-radius:50%;background:#f2edf8;color:var(--color-primary);font-size:13px;font-weight:800}
body[data-active="home"] .home-professional-avatar img{width:100%;height:100%;object-fit:cover;object-position:center}
body[data-active="home"] .home-professional-selector button.is-selected{border-color:rgba(122,9,214,.34);background:var(--color-primary-light);color:var(--color-primary)}
body[data-active="home"] .home-professional-selector button.is-selected .home-professional-avatar{border-color:var(--color-primary);box-shadow:0 0 0 2px rgba(122,9,214,.13)}
body[data-active="home"] .home-timeline{position:relative;min-height:var(--timeline-height)}
body[data-active="home"] .home-time-grid{height:var(--timeline-height)}
body[data-active="home"] .home-time-row{display:grid;height:64px;grid-template-columns:68px minmax(0,1fr)}
body[data-active="home"] .home-time-row>time{padding:12px 10px 0;color:#4d4655;font-size:12px;font-weight:400;font-variant-numeric:tabular-nums;text-align:right}
body[data-active="home"] .home-time-slot{display:grid;min-width:0;padding:5px 10px;border-top:1px solid #ebe8ee;border-left:1px solid #eeeaf3;background-image:linear-gradient(90deg,rgba(122,9,214,.025),transparent 34%)}
body[data-active="home"] .home-time-row:nth-child(even) .home-time-slot{border-top-style:dashed}
body[data-active="home"] .home-time-row.is-outside-hours .home-time-slot{background:#f7f6f8}
body[data-active="home"] .home-appointments-layer{position:absolute;z-index:2;top:0;right:10px;bottom:0;left:78px;pointer-events:none}
body[data-active="home"] .home-timeline-appointment{position:absolute;top:var(--appointment-top);right:0;left:0;display:flex;height:var(--appointment-height);min-height:0;flex-direction:column;align-items:stretch;gap:1px;padding:4px 8px;overflow:hidden;border:1px solid rgba(122,9,214,.2);border-left:4px solid var(--color-primary);border-radius:10px;background:#fff;box-shadow:0 5px 14px rgba(46,31,79,.06);color:inherit;font:inherit;text-align:left;cursor:pointer;pointer-events:auto}
body[data-active="home"] .home-timeline-appointment:hover,body[data-active="home"] .home-timeline-appointment:focus-visible{border-color:var(--color-primary);outline:2px solid var(--color-primary-light);outline-offset:2px}
body[data-active="home"] .home-timeline-appointment.is-past{border-color:#dedbe2;border-left-color:#a7a1ae;background:#f4f3f5;box-shadow:none}body[data-active="home"] .home-timeline-appointment.is-past .home-appointment-client strong{color:#655f6a}body[data-active="home"] .home-timeline-appointment.is-past .home-appointment-status{filter:grayscale(1)}body[data-active="home"] .home-time-row.is-past>time{color:#a39caa}body[data-active="home"] .home-time-row.is-past .home-time-slot.is-free button{color:#aaa4b0;opacity:.45}body[data-active="home"] .home-time-row.is-past .home-time-slot.is-free button:hover,body[data-active="home"] .home-time-row.is-past .home-time-slot.is-free button:focus-visible{opacity:1}body[data-active="home"] .home-now-line{position:absolute;z-index:3;right:0;left:0;height:2px;pointer-events:none}body[data-active="home"] .home-now-line::after{position:absolute;top:0;right:0;left:68px;height:2px;background:var(--color-primary);box-shadow:0 0 0 1px rgba(255,255,255,.7);content:""}body[data-active="home"] .home-now-line::before{position:absolute;z-index:1;top:-4px;left:63px;width:10px;height:10px;border-radius:50%;background:var(--color-primary);content:""}body[data-active="home"] .home-now-line span{position:absolute;z-index:2;top:50%;left:5px;box-sizing:border-box;width:55px;padding:3px 5px;border-radius:6px;background:var(--color-primary);color:#fff;font-size:12px;font-weight:800;font-variant-numeric:tabular-nums;line-height:1.15;text-align:center;white-space:nowrap;transform:translateY(-50%)}body[data-active="home"] .home-now-line[hidden]{display:none}
body[data-active="home"] .home-timeline-appointment.is-next{background:#f8f5ff;box-shadow:0 6px 18px rgba(122,9,214,.12)}
body[data-active="home"] .home-timeline-appointment.is-muted{opacity:.62;border-left-color:#aaa3b1}
body[data-active="home"] .home-appointment-row{display:flex;min-width:0;flex:0 0 auto;align-items:center;gap:5px;white-space:nowrap}body[data-active="home"] .home-appointment-primary{height:18px;justify-content:space-between;line-height:18px}body[data-active="home"] .home-appointment-client{display:flex;min-width:0;flex:1 1 auto;align-items:center}body[data-active="home"] .home-appointment-client strong{overflow:hidden;color:#0d1036;font-size:13px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}body[data-active="home"] .home-appointment-contact{display:flex;min-width:0;min-height:24px;flex:0 0 auto;align-items:center;gap:3px;padding:3px 4px;border:0;border-radius:4px;background:transparent;color:#168a4b;font-size:10px;font-weight:650;line-height:16px;text-decoration:none}body[data-active="home"] .home-appointment-contact:hover{text-decoration:underline}body[data-active="home"] .home-appointment-contact:focus-visible{outline:2px solid rgba(22,138,75,.32);outline-offset:1px}body[data-active="home"] .home-appointment-contact:active{background:rgba(22,138,75,.06)}body[data-active="home"] .home-appointment-contact svg{width:14px;height:14px;flex:0 0 14px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}body[data-active="home"] .home-appointment-service{height:16px;overflow:hidden;color:#737a9f;font-size:11px;line-height:16px}body[data-active="home"] .home-appointment-service span,body[data-active="home"] .home-appointment-service small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body[data-active="home"] .home-appointment-service span{flex:0 1 auto}body[data-active="home"] .home-appointment-service small{flex:1 1 auto;color:inherit;font:inherit}body[data-active="home"] .home-appointment-operational{height:18px;justify-content:space-between;color:#0d1036;font-size:11px;font-variant-numeric:tabular-nums;line-height:18px}body[data-active="home"] .home-appointment-operational>strong{overflow:hidden;font-weight:400;text-overflow:ellipsis}body[data-active="home"] .home-appointment-status{max-width:48%;overflow:hidden;padding:2px 6px;border-radius:999px;background:#f3e8fc;color:#6507B3;font-size:8px;font-weight:850;letter-spacing:.02em;line-height:12px;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}body[data-active="home"] .home-appointment-status.status-confirmado{background:#eee5fb;color:#6507B3}body[data-active="home"] .home-appointment-status.status-aguardando_confirmacao,body[data-active="home"] .home-appointment-status.status-aguardando_pagamento{background:#fff4db;color:#7a5200}
body[data-active="home"] .home-timeline-appointment.is-compact{gap:0;padding:2px 6px;border-radius:7px}body[data-active="home"] .home-timeline-appointment.is-compact .home-appointment-service,body[data-active="home"] .home-timeline-appointment.is-compact .home-appointment-operational>strong,body[data-active="home"] .home-timeline-appointment.is-compact .home-appointment-contact{display:none}body[data-active="home"] .home-timeline-appointment.is-compact .home-appointment-primary{height:13px;line-height:13px}body[data-active="home"] .home-timeline-appointment.is-compact .home-appointment-client strong{font-size:10px}body[data-active="home"] .home-timeline-appointment.is-compact .home-appointment-operational{height:12px;justify-content:flex-start;line-height:12px}body[data-active="home"] .home-timeline-appointment.is-compact .home-appointment-status{max-width:100%;padding:1px 4px;font-size:6px;line-height:9px}
body[data-active="home"] .home-timeline-empty{position:absolute;z-index:3;top:128px;right:18px;left:78px;display:grid;justify-items:start;gap:5px;padding:17px 18px;border:1px dashed rgba(122,9,214,.25);border-radius:14px;background:#faf8ff}
body[data-active="home"] .home-timeline-empty span{color:#7b7482;font-size:12px}
body[data-active="home"] .home-timeline-empty a{min-height:38px;margin-top:5px;text-decoration:none}
body[data-active="home"] .home-timeline-loading{display:grid;gap:1px}
body[data-active="home"] .home-timeline-loading div{height:58px;background:linear-gradient(90deg,#f4f1f7,#fbfafd,#f4f1f7);background-size:200% 100%;animation:home-shimmer 1.3s infinite}
body[data-active="home"] .home-support-row{display:grid;max-width:1320px;grid-template-columns:minmax(0,1fr);gap:12px;margin:14px auto 0}
body[data-active="home"] .home-support-row .card{margin:0;padding:17px 18px;border-radius:16px;box-shadow:none}
body[data-active="home"] .home-support-row .setup-card[hidden]{display:none}
@media(max-width:900px){body[data-active="home"] .home-topbar{grid-template-columns:44px minmax(0,1fr) auto;padding:9px 14px}body[data-active="home"] .home-topbar .menu-toggle{color:var(--color-primary)}body[data-active="home"] .home-topbar-brand{justify-self:start}body[data-active="home"] .home-content{padding:14px 14px 34px}body[data-active="home"] .home-context{display:none}body[data-active="home"] .home-support-row{grid-template-columns:1fr}}
@media(max-width:620px){body[data-active="home"] .home-topbar{min-height:62px;grid-template-columns:40px minmax(0,1fr) auto;gap:8px;padding:7px 10px}body[data-active="home"] .menu-toggle{width:40px;height:40px}body[data-active="home"] .home-topbar-tools{gap:0}body[data-active="home"] .home-topbar-tools .profile-chip{display:none}body[data-active="home"] .home-new-appointment{min-height:40px;padding:8px 11px;border-radius:11px;font-size:11px}body[data-active="home"] .home-new-label{font-size:0}body[data-active="home"] .home-new-label::after{content:"Agendar";font-size:11px}body[data-active="home"] .home-content{padding:10px 8px 8px}body[data-active="home"] .home-date-nav{grid-template-columns:42px 60px minmax(0,1fr) 42px;gap:6px;margin-bottom:9px}body[data-active="home"] .home-date-nav button,body[data-active="home"] .home-date-picker{min-height:42px;border-radius:12px}body[data-active="home"] .home-date-step{width:42px;height:42px}body[data-active="home"] .home-date-picker{gap:7px;padding:0 8px;font-size:14px}body[data-active="home"] .home-date-picker .line-icon{width:17px}body[data-active="home"] .home-professional-selector{margin-bottom:8px}body[data-active="home"] .home-agenda{border-radius:14px}body[data-active="home"] .home-time-row{grid-template-columns:48px minmax(0,1fr)}body[data-active="home"] .home-time-row>time{padding:11px 6px 0 2px;font-size:11px}body[data-active="home"] .home-time-slot{padding:5px 6px}body[data-active="home"] .home-appointments-layer{right:6px;left:54px}body[data-active="home"] .home-timeline-appointment{padding:4px 6px}body[data-active="home"] .home-appointment-client strong{font-size:12px}body[data-active="home"] .home-appointment-contact{font-size:9px}body[data-active="home"] .home-appointment-service{font-size:10px}body[data-active="home"] .home-appointment-operational{font-size:10px}body[data-active="home"] .home-appointment-status{max-width:45%;font-size:7px}body[data-active="home"] .home-timeline-empty{right:8px;left:56px;padding:15px}body[data-active="home"] .home-support-row{margin-top:10px}}
@media(max-width:620px){body[data-active="home"] .home-agenda{scrollbar-width:thin}body[data-active="home"] .home-agenda::-webkit-scrollbar{width:2px}body[data-active="home"] .home-now-line::after{left:48px}body[data-active="home"] .home-now-line::before{left:43px}body[data-active="home"] .home-now-line span{left:2px;width:41px;padding:3px 2px;font-size:11px}}
@media(max-width:620px){body[data-active="home"] .home-topbar-tools{width:auto}}
@media(max-width:390px){body[data-active="home"] .home-topbar-brand strong{font-size:14px}body[data-active="home"] .home-date-nav{grid-template-columns:38px 54px minmax(0,1fr) 38px}body[data-active="home"] .home-date-step{width:38px;height:42px}body[data-active="home"] .home-date-picker span{max-width:145px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}
@media(max-width:620px){body[data-active="home"] .home-time-row{min-height:52px}body[data-active="home"] .home-time-slot.is-free button{min-height:38px;justify-content:center}body[data-active="home"] .home-free-label{display:none}}

body[data-active="home"]{--color-primary:#7A09D6;--color-primary-dark:#6507b3;--color-primary-light:#f3e8fc;--ui-card-border:#dcdaf0;--text:#0d1036;--muted:#737a9f;--line:#dcdaf0;color:#0d1036}
body[data-active="home"] .home-state-mark{width:64px;height:64px;border-color:#e4d4f4;background:#f3e8fc;color:#7A09D6}body[data-active="home"] .home-state-mark .line-icon{width:30px;height:30px}body[data-active="home"] .home-state h3{color:#0d1036;font-size:20px;font-weight:800}body[data-active="home"] .home-state p{color:#737a9f;font-size:15px}
body[data-active="home"] .home-timeline-appointment{border-color:rgba(122,9,214,.2)}body[data-active="home"] .home-timeline-appointment.is-next{background:#f8f2fd;box-shadow:0 6px 18px rgba(122,9,214,.12)}
body[data-active="home"] .home-detail-modal{width:min(520px,calc(100% - 32px));max-height:calc(100dvh - 32px);margin:auto;padding:0;overflow:hidden;border:1px solid #dcdaf0;border-radius:22px;background:#fff;box-shadow:0 28px 80px rgba(37,24,70,.25);animation:home-modal-in .22s ease both}body[data-active="home"] .home-detail-modal::backdrop{background:rgba(27,20,44,.42);backdrop-filter:blur(3px)}body[data-active="home"] .home-detail-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:20px 22px 14px;border-bottom:1px solid #dcdaf0}body[data-active="home"] .home-detail-header h2{margin:4px 0 0;overflow-wrap:anywhere;color:#0d1036;font-size:22px}body[data-active="home"] .home-detail-body{max-height:calc(100dvh - 132px);overflow:auto;padding:18px 22px 22px}body[data-active="home"] .home-detail-summary{display:grid;gap:16px}body[data-active="home"] .home-detail-status{display:flex}body[data-active="home"] .home-detail-schedule{display:grid;gap:3px;padding-bottom:16px;border-bottom:1px solid #dcdaf0}body[data-active="home"] .home-detail-schedule strong{color:#7A09D6;font-size:28px;line-height:1.1}body[data-active="home"] .home-detail-schedule span{color:#737a9f;font-size:14px;text-transform:capitalize}body[data-active="home"] .home-detail-list{display:grid;gap:0;margin:0}body[data-active="home"] .home-detail-list>div{display:grid;min-width:0;grid-template-columns:112px minmax(0,1fr);gap:12px;padding:10px 0;border-bottom:1px solid #efedf7}body[data-active="home"] .home-detail-list dt{color:#737a9f;font-size:12px;font-weight:700}body[data-active="home"] .home-detail-list dd{min-width:0;margin:0;overflow-wrap:anywhere;color:#0d1036;font-size:13px;font-weight:800}body[data-active="home"] .home-detail-client-row{cursor:pointer}body[data-active="home"] .home-detail-client-row dd{display:flex;align-items:center;justify-content:space-between;gap:12px}body[data-active="home"] .home-detail-client-row dd span{min-width:0;overflow-wrap:anywhere}body[data-active="home"] .home-detail-client-row dd b{flex:0 0 auto;color:#7A09D6;font-size:20px;font-weight:500;line-height:1}body[data-active="home"] .home-detail-client-row:hover dd span{color:#7A09D6}body[data-active="home"] .home-detail-client-row:focus-visible{outline:2px solid rgba(122,9,214,.28);outline-offset:2px;border-radius:6px}body[data-active="home"] .home-detail-note{padding:13px 14px;border-radius:12px;background:#f8f2fd}body[data-active="home"] .home-detail-note p{margin:5px 0 0;white-space:pre-wrap;overflow-wrap:anywhere;color:#737a9f;font-size:13px}body[data-active="home"] .home-detail-muted{color:#737a9f;font-size:13px;line-height:1.5}
body[data-active="home"] .home-detail-header>div{min-width:0}body[data-active="home"] .home-detail-title-row{display:flex;min-width:0;align-items:center;flex-wrap:wrap;gap:8px 10px;margin-top:4px}body[data-active="home"] .home-detail-title-row h2{min-width:0;margin:0}body[data-active="home"] #home-detail-status{flex:0 0 auto}
body[data-active="home"] .home-detail-actions{display:grid;gap:10px;padding-top:4px}body[data-active="home"] .home-detail-actions h3{margin:0 0 2px;color:#0d1036;font-size:12px;font-weight:850;text-transform:uppercase}body[data-active="home"] .home-detail-actions button{width:100%;min-height:46px}body[data-active="home"] .home-detail-cancel-action{border:1px solid #dcdaf0;border-radius:12px;background:#fff;color:#737a9f;font-weight:800;cursor:pointer}body[data-active="home"] .home-reschedule{display:grid;gap:18px}body[data-active="home"] .home-reschedule-context{display:flex;min-width:0;flex-direction:column;gap:4px;padding:14px;border:1px solid #dcdaf0;border-radius:12px;background:#f3e8fc}body[data-active="home"] .home-reschedule-context strong{overflow-wrap:anywhere;color:#0d1036}body[data-active="home"] .home-reschedule-context span{color:#737a9f;font-size:13px}body[data-active="home"] .home-detail-confirm-action{display:grid;gap:14px}body[data-active="home"] .home-detail-confirm-action>p,body[data-active="home"] .home-detail-confirm-action>span{margin:0;color:#737a9f}body[data-active="home"] .home-detail-confirm-action>strong{overflow-wrap:anywhere;color:#0d1036;font-size:20px}body[data-active="home"] .home-detail-confirm-action>div{display:grid;grid-template-columns:1fr 1fr;gap:10px}body[data-active="home"] .home-detail-confirm-action button{min-height:46px}body[data-active="home"] .home-detail-confirm-action .danger{border-color:var(--color-danger);background:var(--color-danger);color:#fff;box-shadow:0 7px 16px rgba(180,35,24,.2)}body[data-active="home"] .home-detail-confirm-action .danger:hover,body[data-active="home"] .home-detail-confirm-action .danger:focus-visible{border-color:var(--color-danger-dark);background:var(--color-danger-dark)}
@media(max-width:620px){body[data-active="home"] .home-state-mark{width:64px;height:64px}body[data-active="home"] .home-state h3{font-size:20px}body[data-active="home"] .home-detail-modal{width:calc(100% - 24px);max-height:calc(100dvh - 24px);margin:auto;border-radius:20px}body[data-active="home"] .home-detail-header{padding:17px 16px 12px}body[data-active="home"] .home-detail-body{max-height:calc(100dvh - 112px);padding:16px}body[data-active="home"] .home-detail-list>div{grid-template-columns:92px minmax(0,1fr)}body[data-active="home"] .home-detail-schedule strong{font-size:25px}}
@media(max-width:430px){body[data-active="home"] .home-detail-confirm-action>div{grid-template-columns:1fr}}
body[data-active="home"] .home-appointment-status.status-nao_compareceu{background:#fff3d8;color:#8a5a00}body[data-active="home"] .home-detail-status.is-exception{background:#fff3d8;color:#8a5a00}body[data-active="home"] .home-detail-reschedule-action,body[data-active="home"] .home-detail-no-show-action,body[data-active="home"] .home-detail-no-show-confirm{border-radius:12px;font-weight:800;cursor:pointer}body[data-active="home"] .home-detail-reschedule-action{border:1px solid #d8caef;background:#fff;color:var(--color-primary)}body[data-active="home"] .home-detail-no-show-action,body[data-active="home"] .home-detail-no-show-confirm{border:1px solid #e8c66a;background:#fff8e5;color:#7a5200}body[data-active="home"] .home-detail-no-show-action:hover,body[data-active="home"] .home-detail-no-show-action:focus-visible,body[data-active="home"] .home-detail-no-show-confirm:hover,body[data-active="home"] .home-detail-no-show-confirm:focus-visible{border-color:#d5a927;background:#fff3d8}

/* Experimento local: borda representa tempo; indicador representa estado operacional. */
body[data-active="home"] .home-detail-financial{display:grid;gap:10px;padding:16px;border:1px solid #dedcf0;border-radius:14px;background:#fbfbfe}body[data-active="home"] .home-detail-financial h3{margin:0;color:#0d1036;font-size:14px;font-weight:700}body[data-active="home"] .home-detail-balance{display:flex;align-items:center;justify-content:space-between;gap:16px;color:#737a9f}body[data-active="home"] .home-detail-balance strong{color:#0d1036;font-size:20px;font-weight:750}body[data-active="home"] .home-detail-financial-status{display:inline-flex;width:max-content;align-items:center;padding:5px 9px;border-radius:999px;background:#e8f7ee;color:#14733f;font-size:12px;font-weight:800}body[data-active="home"] .home-detail-financial-status.is-unpaid{background:#fdebea;color:#b42318}body[data-active="home"] .home-detail-financial-status.is-no-show{background:#fff3d8;color:#8a5a00}body[data-active="home"] .home-detail-financial button{min-height:44px;border-radius:12px;font-weight:700;cursor:pointer}body[data-active="home"] .home-detail-receive-action{border:1px solid #12834a;background:#12834a;color:#fff}body[data-active="home"] .home-detail-receive-action:hover,body[data-active="home"] .home-detail-receive-action:focus-visible{border-color:#0d6f3e;background:#0d6f3e}body[data-active="home"] .home-detail-partial-action{border:1px solid #d8caef;background:#fff;color:var(--color-primary)}body[data-active="home"] .home-detail-unpaid-action{border:1px solid #e4a7a2;background:#fff;color:var(--color-danger)}body[data-active="home"] .home-detail-financial-confirm>p strong{color:#0d1036}body[data-active="home"] .home-detail-no-show-blocked{margin:0;padding:12px 13px;border:1px solid #e8c66a;border-radius:12px;background:#fff8e5;color:#7a5200;font-size:13px;line-height:1.45}
body[data-active="home"] .home-detail-financial-status.is-canceled{background:#f1eeee;color:#7d4a4a}body[data-active="home"] .home-detail-customer-value-action,body[data-active="home"] .home-detail-discount-action,body[data-active="home"] .home-detail-keep-value-action{border:1px solid #d8caef;background:#fff;color:var(--color-primary)}body[data-active="home"] .home-cancel-financial{display:grid;gap:12px}body[data-active="home"] .home-cancel-financial>p{margin:0;line-height:1.55}body[data-active="home"] .home-cancel-financial fieldset{display:grid;gap:9px;margin:0;padding:12px;border:1px solid #e1dbea;border-radius:12px}body[data-active="home"] .home-cancel-financial legend{padding:0 5px;color:#0d1036;font-size:13px;font-weight:800}body[data-active="home"] .home-cancel-financial label{display:flex;align-items:center;gap:8px;color:#414768;font-size:13px}body[data-active="home"] .home-cancel-financial input[type="radio"]{width:18px;height:18px;accent-color:var(--color-primary)}body[data-active="home"] .home-financial-composition{margin:0;padding:11px 12px;border-radius:11px;background:#f3e8fc;color:#5e178e;font-size:12px;line-height:1.45}body[data-active="home"] .home-detail-confirm-action small{color:#737a9f;font-weight:500}
body[data-active="home"] .home-timeline-appointment.timeline-time-future,body[data-active="home"] .home-timeline-appointment.timeline-time-future.is-next{border-color:#caa6e8;border-left-color:#7A09D6;background:#fff}
body[data-active="home"] .home-timeline-appointment.timeline-time-past,body[data-active="home"] .home-timeline-appointment.timeline-time-past.is-next,body[data-active="home"] .home-timeline-appointment.timeline-time-past.is-past{border-color:#cbc8d0;border-left-color:#96919d;background:#fff;box-shadow:none}
body[data-active="home"] .home-timeline-appointment.timeline-time-past .home-appointment-status{filter:none}
body[data-active="home"] .home-appointment-status.status-agendado{background:#f3e8fc;color:#6507B3}
body[data-active="home"] .home-appointment-status.status-confirmado{background:#e8f7ee;color:#14733f}
body[data-active="home"] .home-appointment-status.status-concluido{background:#efeff1;color:#66616b}
body[data-active="home"] .home-appointment-status.status-nao_compareceu{background:#fdecec;color:#b42318}
@media(prefers-reduced-motion:reduce){body[data-active="home"] .home-detail-modal{animation:none}}

/* Área profissional — MVP somente leitura. */
.professional-app-page{min-width:320px;min-height:100vh;overflow-x:hidden;background:#f7f7fa;color:var(--text)}.professional-layout{display:grid;min-height:100vh;grid-template-columns:250px minmax(0,1fr)}.professional-sidebar{position:sticky;top:0;display:flex;height:100vh;flex-direction:column;padding:24px 18px;border-right:1px solid var(--line);background:#fff}.professional-brand{display:flex;align-items:center;gap:10px;padding:0 8px 22px}.professional-brand strong,.professional-mobile-brand strong{font-size:18px}.professional-brand strong span,.professional-mobile-brand strong span{color:var(--color-primary)}.professional-sidebar-identity{display:flex;min-width:0;align-items:center;gap:11px;padding:16px 10px;border-block:1px solid var(--line)}.professional-sidebar-identity>div:last-child{display:grid;min-width:0}.professional-sidebar-identity small,.professional-sidebar-identity strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.professional-sidebar-identity small{color:var(--muted);font-size:11px}.professional-sidebar-identity .avatar,.professional-topbar-profile .avatar{display:grid;width:42px;height:42px;overflow:hidden;flex:0 0 42px;place-items:center;border-radius:13px;background:var(--color-primary-light);color:var(--color-primary);font-weight:900}.professional-sidebar-identity img,.professional-topbar-profile img{width:100%;height:100%;object-fit:cover}.professional-nav{display:grid;gap:6px;padding:22px 0}.professional-nav a{display:flex;min-height:46px;align-items:center;padding:0 14px;border-radius:12px;color:var(--muted);font-size:14px;font-weight:800;text-decoration:none}.professional-nav a:hover,.professional-nav a.is-active{background:var(--color-primary-light);color:var(--color-primary)}.professional-sidebar-foot{display:grid;gap:6px;margin-top:auto}.professional-sidebar-foot button{width:100%;text-align:left}.professional-main{min-width:0}.professional-topbar{display:flex;min-height:72px;align-items:center;justify-content:flex-end;padding:0 28px;border-bottom:1px solid var(--line);background:#fff}.professional-topbar>.menu-toggle,.professional-mobile-brand{display:none}.professional-topbar-profile{display:flex;align-items:center;gap:11px;color:var(--muted);font-size:12px;font-weight:700}.professional-content{width:min(100%,1040px);margin:auto;padding:34px 32px 70px}.professional-page-intro{margin-bottom:24px}.professional-page-intro h1{margin:4px 0 6px;font-size:clamp(28px,4vw,38px);letter-spacing:-.04em}.professional-page-intro>p:last-child{margin:0;color:var(--muted)}.professional-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:30px}.professional-summary-card{display:grid;gap:6px;padding:22px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:var(--shadow)}.professional-summary-card>span{color:var(--muted);font-size:12px;font-weight:800}.professional-summary-card strong{font-size:30px;letter-spacing:-.03em}.professional-summary-card small{overflow:hidden;color:var(--muted);text-overflow:ellipsis;white-space:nowrap}.professional-summary-card.is-next{border-color:#d8caef;background:linear-gradient(145deg,#fff,var(--color-primary-light))}.professional-section-heading{display:flex;align-items:end;justify-content:space-between;gap:14px;margin:0 0 14px}.professional-section-heading h2{margin:3px 0 0}.professional-section-heading>span{color:var(--muted);font-size:12px}.professional-agenda-list{display:grid;gap:10px}.professional-appointment{display:grid;width:100%;min-width:0;grid-template-columns:74px minmax(0,1fr) auto 20px;align-items:center;gap:14px;padding:16px 18px;border:1px solid var(--line);border-radius:16px;background:#fff;color:var(--text);box-shadow:0 5px 17px rgba(42,37,31,.04);font:inherit;text-align:left;cursor:pointer}.professional-appointment:hover{border-color:#d0c1e8}.professional-appointment.phase-next{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.professional-appointment.phase-past{opacity:.68}.professional-appointment.phase-cancelado,.professional-appointment.phase-expirado{background:#fafafa;opacity:.72}.professional-appointment time{color:var(--color-primary);font-size:20px;font-weight:900}.professional-appointment-copy{display:grid;min-width:0;gap:3px}.professional-appointment-copy strong,.professional-appointment-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.professional-appointment-copy small{color:var(--muted);font-size:12px}.professional-status{display:inline-flex;min-height:28px;align-items:center;padding:5px 9px;border-radius:999px;background:#f0eef3;color:#625b6c;font-size:11px;font-weight:850}.professional-status.status-confirmado{background:#e6f6ed;color:#177345}.professional-status.status-aguardando_pagamento{background:#fff3d6;color:#8a5a00}.professional-status.status-cancelado,.professional-status.status-expirado{background:#f1eeee;color:#855}.professional-card-arrow{color:var(--muted);font-size:24px}.professional-date-toolbar{display:grid;grid-template-columns:46px minmax(180px,280px) 46px;align-items:end;justify-content:start;gap:8px;margin-bottom:28px}.professional-date-toolbar button{min-height:46px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--color-primary);font-size:20px}.professional-date-toolbar label{display:grid;gap:5px;color:var(--muted);font-size:11px;font-weight:800}.professional-date-toolbar input{min-height:46px}.professional-agenda-empty,.professional-agenda-error{display:grid;justify-items:center;gap:8px;padding:48px 20px;border:1px dashed var(--line);border-radius:18px;background:#fff;color:var(--muted);text-align:center}.professional-agenda-empty>span{display:grid;width:42px;height:42px;place-items:center;border-radius:50%;background:var(--color-primary-light);color:var(--color-primary);font-weight:900}.professional-agenda-empty strong,.professional-agenda-error strong{color:var(--text)}.professional-loading{display:grid;gap:10px}.professional-loading i{height:76px;border-radius:16px;background:linear-gradient(90deg,#f2eff5,#faf9fb,#f2eff5);background-size:200% 100%;animation:metric-pulse 1.4s infinite}.professional-detail{width:min(calc(100% - 32px),560px);max-height:min(760px,calc(100vh - 40px));padding:0;border:0;border-radius:22px;background:#fff;box-shadow:0 25px 80px rgba(20,15,27,.25)}.professional-detail::backdrop{background:rgba(28,23,35,.48);backdrop-filter:blur(3px)}.professional-detail-header{position:sticky;top:0;display:flex;align-items:center;justify-content:space-between;padding:20px 22px;border-bottom:1px solid var(--line);background:#fff}.professional-detail-header h2{margin:2px 0 0}.professional-detail-header button{display:grid;width:42px;height:42px;place-items:center;border:0;border-radius:50%;background:#f3f0f5;color:var(--text);font-size:25px}.professional-detail-content{padding:22px}.professional-detail-time{display:flex;align-items:baseline;gap:8px;margin-bottom:20px}.professional-detail-time span{color:var(--color-primary);font-size:34px;font-weight:900}.professional-detail-time small{color:var(--muted)}.professional-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:0;overflow:hidden;border:1px solid var(--line);border-radius:15px;background:var(--line)}.professional-detail-grid>div{display:grid;gap:4px;padding:14px;background:#fff}.professional-detail-grid dt{color:var(--muted);font-size:10px;font-weight:800;text-transform:uppercase}.professional-detail-grid dd{min-width:0;margin:0;overflow-wrap:anywhere;font-size:13px;font-weight:750}.professional-detail-note{margin-top:16px;padding:16px;border-radius:14px;background:#f7f5fa}.professional-detail-note p{margin:6px 0 0;color:var(--muted);line-height:1.5}.professional-whatsapp-action{display:flex;min-height:48px;align-items:center;justify-content:center;margin-top:18px;text-decoration:none}.professional-mobile-nav,.professional-nav-backdrop{display:none}
@media(max-width:760px){.professional-layout{display:block}.professional-sidebar{position:fixed;z-index:50;top:0;left:0;width:min(82vw,290px);transform:translateX(-105%);transition:transform .2s ease;box-shadow:20px 0 60px rgba(25,20,32,.18)}.professional-menu-open .professional-sidebar{transform:translateX(0)}.professional-nav-backdrop{position:fixed;z-index:40;inset:0;border:0;background:rgba(28,23,35,.35)}.professional-menu-open .professional-nav-backdrop{display:block}.professional-topbar{min-height:64px;justify-content:space-between;padding:0 16px}.professional-topbar>.menu-toggle,.professional-mobile-brand{display:flex}.professional-mobile-brand{align-items:center;gap:8px}.professional-mobile-brand .brand-mark{width:34px;height:34px}.professional-topbar-profile>span{display:none}.professional-topbar-profile .avatar{width:38px;height:38px;flex-basis:38px}.professional-content{padding:24px 16px 92px}.professional-summary{grid-template-columns:1fr 1fr;gap:10px}.professional-summary-card{padding:17px 15px}.professional-summary-card strong{font-size:25px}.professional-section-heading{align-items:center}.professional-section-heading .secondary{padding:9px 11px;font-size:11px}.professional-appointment{grid-template-columns:58px minmax(0,1fr) 18px;padding:14px 12px;gap:10px}.professional-appointment time{font-size:18px}.professional-appointment>.professional-status{grid-column:2;justify-self:start}.professional-card-arrow{grid-column:3;grid-row:1/3}.professional-date-toolbar{grid-template-columns:44px minmax(0,1fr) 44px}.professional-mobile-nav{position:fixed;z-index:30;bottom:0;left:0;display:grid;width:100%;grid-template-columns:repeat(2,minmax(0,1fr));padding:8px 12px calc(8px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:rgba(255,255,255,.96);backdrop-filter:blur(12px)}.professional-mobile-nav a{display:grid;min-height:44px;place-items:center;border-radius:11px;color:var(--muted);font-size:12px;font-weight:850;text-decoration:none}.professional-mobile-nav a.is-active{background:var(--color-primary-light);color:var(--color-primary)}.professional-detail{width:100%;max-width:none;max-height:86vh;margin:auto 0 0;border-radius:22px 22px 0 0}.professional-detail-grid{grid-template-columns:1fr}.professional-detail-content{padding:18px}.professional-whatsapp-action{min-height:52px}}
@media(max-width:390px){.professional-content{padding-inline:12px}.professional-summary-card{min-width:0}.professional-summary-card small{font-size:11px}.professional-page-intro h1{font-size:29px}.professional-appointment{overflow:hidden}.professional-detail-header{padding:16px 18px}}
