@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&family=Cormorant+Garamond:wght@500;600;700&display=swap');
:root{--green:var(--tone-78465e, #78465e);--ink:var(--tone-3e2c36, #3e2c36);--muted:var(--tone-7e6b75, #7e6b75);--line:var(--tone-eadde2, #eadde2);--bg:var(--tone-fcf7f8, #fcf7f8);--accent:var(--tone-f2dce4, #f2dce4);--purple:var(--tone-eee6f3, #eee6f3)}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:14px 'DM Sans',sans-serif}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button{cursor:pointer}button{border:0}a{color:inherit}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:Manrope,sans-serif}h1{font-size:30px;letter-spacing:-1px}h2{font-size:21px}small,.muted{color:var(--muted)}.app{display:flex;min-height:100vh}.side{width:235px;position:fixed;inset:0 auto 0 0;background:#fff;border-right:1px solid var(--line);padding:30px 22px;display:flex;flex-direction:column}.logo{font-size:37px;font-weight:800;letter-spacing:-2px;display:flex;align-items:center;gap:8px}.logo i{font-style:normal;font-size:24px;color:var(--text-secondary)}.side small{display:block;margin:5px 0 35px}.nav{display:grid;gap:7px}.nav button{background:none;text-align:left;padding:14px;border-radius:10px;display:flex;align-items:center;gap:13px;color:var(--text-secondary)}.nav button.active{background:var(--green);color:#fff}.ico{width:19px;height:19px;display:inline-block;vertical-align:middle;fill:none;stroke:currentColor;stroke-width:1.6}.side-bottom{margin-top:auto}.help{background:var(--tone-f8eef2, #f8eef2);padding:17px;border-radius:12px;margin:25px 0}.help p{font-size:12px;line-height:1.6;margin:7px 0}.profile{display:flex;align-items:center;gap:10px;border-top:1px solid var(--line);padding-top:20px}.avatar{width:37px;height:37px;border-radius:50%;background:var(--tone-f0dce4, #f0dce4);display:grid;place-items:center;font-weight:700}.main{margin-left:235px;flex:1;min-width:0;padding:0 38px 40px}.topbar{height:85px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.pill{font-size:11px;border-radius:20px;padding:7px 10px;background:var(--tone-f5e7ed, #f5e7ed);color:var(--text-main)}.btn{border:1px solid var(--line);border-radius:9px;padding:11px 15px;background:white;color:var(--ink);display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:600}.primary{background:var(--green);color:white;border-color:var(--green)}.soft{background:var(--tone-f5e9ef, #f5e9ef);border-color:transparent}.danger{color:#a74646}.heading{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:31px 0 25px}.heading p{margin-top:8px;color:var(--muted)}.actions{display:flex;gap:10px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:26px}.stat{border:1px solid var(--line);border-radius:13px;background:#fff;padding:19px 20px}.stat:first-child{background:var(--accent);border-color:var(--accent)}.stat .label{display:flex;justify-content:space-between;color:var(--text-secondary);font-size:12px}.stat strong{font-family:Manrope;display:block;font-size:27px;margin:12px 0 5px;letter-spacing:-1px}.stat small{font-size:11px}.workspace{display:grid;grid-template-columns:minmax(0,1fr) 255px;gap:22px}.panel{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden}.panel-head{padding:20px 22px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line)}.date-nav{display:flex;gap:7px;align-items:center}.date-nav button{padding:7px;background:var(--tone-faf1f5, #faf1f5);border-radius:6px;color:var(--ink)}.schedule{padding:10px 22px 20px}.time-row{display:flex;min-height:76px;gap:17px;border-bottom:1px solid var(--tone-f3e9ee, #f3e9ee);padding:10px 0}.time-label{font-size:11px;color:var(--text-secondary);min-width:34px;padding-top:10px}.event{width:100%;border-radius:9px;border-left:3px solid var(--tone-c28ba5, #c28ba5);background:var(--tone-f8eaf0, #f8eaf0);padding:12px 14px;display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left;color:var(--ink)}.event.purple{background:var(--purple);border-color:var(--tone-b89ac8, #b89ac8)}.event.peach{background:var(--tone-fbefe7, #fbefe7);border-color:var(--tone-d9ad92, #d9ad92)}.event.block{background:var(--tone-f5f0f2, #f5f0f2);border-color:var(--tone-b6a6b0, #b6a6b0)}.event p{font-size:11px;color:var(--text-secondary);margin-top:6px}.event strong{font-size:13px}.event .right{text-align:right;white-space:nowrap;font-size:11px}.tag{border:1px solid var(--tone-dbc0cf, #dbc0cf);background:#ffffff9c;border-radius:5px;padding:4px 6px;font-size:10px}.empty-slot{background:none;color:var(--text-secondary);text-align:left;flex:1;font-size:12px;opacity:0}.time-row:hover .empty-slot,.empty-slot:focus{opacity:1}.aside-stack{display:grid;gap:18px;align-content:start}.calendar{padding:20px}.cal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px}.cal-head button{background:none;color:var(--muted)}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;text-align:center}.cal-grid span{font-size:10px;color:var(--muted);padding:6px 0}.cal-grid button{aspect-ratio:1;border-radius:50%;background:none;color:var(--text-secondary);font-size:11px}.cal-grid button.selected{background:var(--green);color:white}.cal-grid button.today{box-shadow:inset 0 0 0 1px var(--tone-ba839e, #ba839e)}.share-card{padding:21px;background:var(--tone-f2e5ee, #f2e5ee);border:0}.share-card p{line-height:1.7;color:var(--text-secondary);font-size:12px;margin:10px 0 17px}.share-card .btn{width:100%;background:#fff9}.day-note{padding:20px}.day-note p{font-size:12px;line-height:1.7;color:var(--muted);margin-top:10px}.demo{font-size:11px;color:var(--text-secondary);margin-top:20px;line-height:1.6}.list{padding:8px 22px}.list-row{display:flex;align-items:center;justify-content:space-between;padding:18px 0;border-bottom:1px solid var(--line);gap:15px}.list-row:last-child{border:0}.list-row p{font-size:12px;color:var(--muted);margin-top:5px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:20px}.pad{padding:24px}.field{display:grid;gap:7px;margin-bottom:17px;font-weight:500;font-size:12px}.field input,.field select,.field textarea{width:100%;border:1px solid var(--tone-e7d7e0, #e7d7e0);border-radius:8px;padding:12px;background:white;color:var(--ink);min-width:0}.field textarea{resize:vertical;min-height:70px}.row{display:grid;grid-template-columns:1fr 1fr;gap:14px}dialog{border:0;border-radius:17px;padding:27px;width:min(510px,calc(100% - 28px));color:var(--ink);max-height:90vh;box-shadow:0 20px 100px var(--tone-4e263b20, #4e263b20)}dialog::backdrop{background:var(--tone-48263e65, #48263e65);backdrop-filter:blur(3px)}.modal-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:23px}.close{background:var(--tone-f6edf2, #f6edf2);border-radius:50%;width:30px;height:30px}.error{color:#a74646;font-size:12px;line-height:1.6;margin-bottom:12px}.footer-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}.book-page{max-width:640px;margin:0 auto;padding:30px 22px 65px}.book-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px}.brand-avatar{width:74px;height:74px;border-radius:24px;background:var(--tone-f0dce4, #f0dce4);display:grid;place-items:center;font-size:25px;margin:0 auto 15px}.studio{text-align:center;margin-bottom:30px}.studio h1{font-size:28px}.studio p{line-height:1.7;color:var(--muted);margin-top:9px}.steps{display:flex;justify-content:center;gap:22px;margin-bottom:25px;color:var(--text-secondary);font-size:12px}.steps .on{color:var(--green);font-weight:700}.service-option{width:100%;background:white;border:1px solid var(--line);border-radius:10px;padding:18px;display:flex;justify-content:space-between;align-items:center;text-align:left;color:var(--ink);margin-bottom:10px}.service-option:hover,.service-option.chosen{border-color:var(--green);background:#f4f6ee}.service-option p{font-size:12px;margin-top:6px;color:var(--muted)}.slots{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:20px 0}.slots button{background:white;border:1px solid var(--line);padding:13px 5px;border-radius:8px;color:var(--ink)}.slots button.chosen{background:var(--green);color:white}.success{text-align:center;padding:30px 0}.success-mark{font-size:28px;width:64px;height:64px;border-radius:50%;background:var(--accent);margin:0 auto 20px;display:grid;place-items:center}.success p{color:var(--muted);line-height:1.8;margin:13px 0 22px}.search{padding:11px 14px;border:1px solid var(--line);border-radius:9px;width:100%;margin-bottom:20px}.hidden{display:none!important}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);padding:13px 20px;border-radius:10px;background:var(--green);color:#fff;z-index:10;opacity:0;pointer-events:none;transition:opacity .2s;max-width:90%;text-align:center}#toast.show{opacity:1}.mobile-logo{display:none}.week-strip{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;padding:15px 20px;border-bottom:1px solid var(--line)}.week-strip button{background:none;border-radius:9px;padding:8px 2px;color:var(--text-secondary);font-size:10px}.week-strip strong{display:block;font-size:17px;margin-top:5px}.week-strip .selected{background:var(--green);color:white}
@media(min-width:1450px){.main{padding-left:55px;padding-right:55px}.time-row{min-height:84px}}@media(max-width:1100px){.side{width:195px;padding:25px 15px}.main{margin-left:195px;padding:0 22px 30px}.workspace{grid-template-columns:1fr}.aside-stack{grid-template-columns:1fr 1fr}.calendar{display:none}.day-note{display:none}.stats{gap:10px}.stat{padding:16px 13px}.heading{align-items:flex-start}.heading .actions{flex-direction:column}}@media(max-width:700px){.side{position:fixed;top:auto;bottom:0;width:100%;height:70px;padding:6px 5px;z-index:5;border-top:1px solid var(--line);border-right:0}.side .logo,.side>small,.side-bottom{display:none}.nav{display:flex;justify-content:space-around;gap:0}.nav button{font-size:10px;display:flex;flex-direction:column;gap:5px;padding:8px 10px;border-radius:9px}.main{margin-left:0;padding:0 17px 95px}.topbar{height:65px}.mobile-logo{display:block;font-size:26px;font-weight:800;letter-spacing:-1px}.topbar .breadcrumb{display:none}.topbar .btn{font-size:11px;padding:9px}.heading{margin:24px 0 20px;display:block}.heading h1{font-size:27px}.heading .actions{flex-direction:row;margin-top:17px}.heading .actions .btn{flex:1;font-size:12px;padding:12px 9px}.stats{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:18px}.stat strong{font-size:25px;margin-top:8px}.stat .label{font-size:11px}.panel-head{padding:16px}.panel-head h2{font-size:17px}.schedule{padding:6px 13px 15px}.time-row{gap:10px}.event{padding:11px 10px}.event p{font-size:10px}.event .right{font-size:10px}.aside-stack{grid-template-columns:1fr}.share-card{padding:20px}.empty-slot{opacity:1}.grid2{grid-template-columns:1fr}.row{gap:10px}.book-page{padding:20px 17px 40px}.steps{gap:14px;font-size:11px}.pad{padding:20px}.demo{font-size:10px}.list{padding:5px 16px}.list-row .btn{font-size:11px;padding:9px}.week-strip{padding:12px}.slots{grid-template-columns:repeat(3,1fr)}}

.event-wrap{position:relative}.event-wrap .event{min-height:65px}.reminder{font-size:11px;background:transparent;color:var(--text-secondary);padding:7px 2px;text-decoration:underline;text-underline-offset:3px}.btn:disabled{opacity:.45;cursor:not-allowed}.btn{text-decoration:none}

/* Beauty studio identity */
:root{--rose:var(--tone-b87896, #b87896);--plum:var(--tone-78465e, #78465e);--blush:var(--tone-f2dce4, #f2dce4);--lavender:var(--tone-eee6f3, #eee6f3)}
body{background:var(--bg);-webkit-font-smoothing:antialiased}
h1,.studio h1{font-family:'Cormorant Garamond',Georgia,serif;font-size:41px;line-height:1.12;font-weight:600;letter-spacing:-.8px}
h2{font-family:'Cormorant Garamond',Georgia,serif;font-size:26px;font-weight:600;letter-spacing:-.3px}
h3{font-weight:600;letter-spacing:-.2px}
.side{background:var(--tone-fffafb, #fffafb)}.logo{font-family:'Cormorant Garamond',Georgia,serif;font-size:46px;font-weight:600;letter-spacing:-2px;color:var(--plum)}.logo i{display:flex;align-items:center}.brand-mark{width:32px;height:36px;vertical-align:middle;fill:none;stroke:currentColor;stroke-width:1.15;flex-shrink:0}.logo .brand-mark{color:var(--text-secondary)}.mobile-logo{font-family:'Cormorant Garamond',Georgia,serif;color:var(--plum)}
.side>small{letter-spacing:.4px;color:var(--text-secondary);margin-top:1px}.nav button{transition:background .18s,color .18s}.nav button:hover{background:var(--tone-f7edf2, #f7edf2);color:var(--plum)}.nav button.active{background:var(--plum);color:#fff;box-shadow:0 5px 14px var(--tone-78465e18, #78465e18)}
.topbar{border-color:var(--tone-ebdfe5, #ebdfe5)}.eyebrow{font-size:10px;font-weight:600;letter-spacing:2.3px;text-transform:uppercase;color:var(--text-secondary);margin-bottom:10px;display:block}.heading p{font-size:13px;line-height:1.6}.heading{margin-top:28px}.heading .actions{align-self:center}.btn{border-radius:10px;transition:background .18s,transform .18s;min-height:42px}.btn:hover{background:var(--tone-f8edf3, #f8edf3)}.btn.primary:hover{background:var(--tone-65364d, #65364d)}.btn:active{transform:translateY(1px)}.btn:focus-visible,.service-option:focus-visible,.slots button:focus-visible{outline:2px solid var(--tone-9e6683, #9e6683);outline-offset:3px}
.panel,.stat{border-radius:15px;box-shadow:0 3px 15px var(--tone-74425804, #74425804)}.panel-head h2{font-size:25px}.stat{background:var(--tone-fffcfd, #fffcfd);padding:20px}.stat:first-child{background:var(--tone-f2dce4, #f2dce4);border-color:var(--tone-ecd1dc, #ecd1dc)}.stat:nth-child(2){background:var(--tone-fbf3ed, #fbf3ed);border-color:var(--tone-f1e2d8, #f1e2d8)}.stat:nth-child(3){background:var(--tone-f2ecf8, #f2ecf8);border-color:var(--tone-e7ddf0, #e7ddf0)}.stat:nth-child(4){background:var(--tone-fffafb, #fffafb)}.stat strong{color:var(--text-main);font-size:27px}.stat .label{color:var(--text-secondary)}.stat small{color:var(--text-secondary);line-height:1.5}.stat .ico{opacity:.7}
.event{border-left-width:3px}.event strong{font-weight:600}.event.purple{background:var(--tone-f0e9f7, #f0e9f7)}.event.peach{background:var(--tone-fbefe7, #fbefe7)}.event.block{background:var(--tone-f5f0f2, #f5f0f2)}.event:hover{filter:brightness(.98)}.tag{color:var(--text-secondary)}.empty-slot{color:var(--text-secondary)}.reminder{color:var(--text-secondary)}.calendar{background:var(--tone-fffcfd, #fffcfd)}.cal-head b{text-transform:capitalize;font-weight:500}.share-card{background:linear-gradient(130deg,var(--tone-f3e2eb, #f3e2eb),var(--tone-f1eaf7, #f1eaf7));position:relative}.share-card>h3{color:var(--text-main);font-family:'Cormorant Garamond',Georgia,serif;font-size:25px;font-weight:600;max-width:195px;line-height:1.15}.share-card>.ico{width:24px;height:24px;color:var(--text-secondary)}.share-card p{color:var(--text-secondary)}.share-card .btn{border:1px solid var(--tone-e0c9d8, #e0c9d8);background:#fff9;color:var(--text-main)}.help{background:var(--tone-f8edf2, #f8edf2)}.help b{color:var(--text-secondary)}.help p{color:var(--text-secondary)}.pill{color:var(--text-secondary);background:var(--tone-f5e8ef, #f5e8ef)}.profile .avatar{background:var(--tone-f0dce4, #f0dce4);color:var(--text-secondary)}.day-note h3{font-family:'Cormorant Garamond',Georgia,serif;font-size:24px;color:var(--text-secondary)}
.book-page{max-width:650px;padding-top:30px}.book-top>b{font-family:'Cormorant Garamond',Georgia,serif!important;font-size:36px!important;font-weight:600;color:var(--plum);display:flex;align-items:center;gap:7px}.book-top .brand-mark{width:25px;height:30px}.studio{position:relative;border-radius:24px;padding:29px 22px 25px;margin-bottom:25px;background:radial-gradient(ellipse at 10% 0%,var(--tone-edd4df, #edd4df) 0%,transparent 57%),radial-gradient(ellipse at 100% 95%,var(--tone-e9def0, #e9def0) 0%,transparent 60%),var(--tone-f8eef3, #f8eef3);border:1px solid var(--tone-eddae5, #eddae5);overflow:hidden}.studio::after{content:'';position:absolute;right:-24px;top:-40px;width:140px;height:210px;border:1px solid var(--tone-cfabbc75, #cfabbc75);border-radius:100% 0 100% 0;transform:rotate(-18deg);pointer-events:none}.studio .eyebrow{font-size:9px;letter-spacing:2px;margin-bottom:13px}.brand-avatar{width:70px;height:70px;border-radius:50% 50% 44% 44%;background:#fff8;box-shadow:0 0 0 6px #fff3;color:var(--text-secondary);border:1px solid var(--tone-e4cbd8, #e4cbd8);font-family:'Cormorant Garamond',Georgia,serif;font-size:30px;font-weight:600;margin-bottom:21px}.studio h1{font-size:42px;color:var(--text-main);position:relative;z-index:1}.studio p{font-size:13px;color:var(--text-secondary);position:relative;z-index:1}.book-page>.panel{box-shadow:0 10px 40px var(--tone-74425807, #74425807);border-color:var(--tone-eadbe5, #eadbe5)}.service-option{border-color:var(--tone-ebdce5, #ebdce5);padding:20px 17px;background:var(--tone-fffcfd, #fffcfd);border-radius:12px}.service-option>b{font-size:14px;color:var(--text-secondary)}.service-option p{color:var(--text-secondary)}.service-option:hover,.service-option.chosen{background:var(--tone-fbf0f5, #fbf0f5);border-color:var(--tone-bf91a9, #bf91a9)}.service-option:hover{box-shadow:0 3px 10px var(--tone-78465e09, #78465e09)}.slots button{color:var(--text-secondary);border-color:var(--tone-e5d0df, #e5d0df);min-height:44px}.slots button:hover{background:var(--tone-faedf5, #faedf5)}.slots button.chosen{background:var(--plum);color:white;border-color:var(--plum)}.success-mark{background:var(--tone-f4deea, #f4deea);color:var(--text-secondary)}.steps{font-size:11px;letter-spacing:.2px}.steps .on{color:var(--text-secondary)}.field{color:var(--text-secondary)}.field input:focus,.field textarea:focus,.field select:focus{outline:2px solid var(--tone-ddbbce, #ddbbce);outline-offset:1px;border-color:var(--tone-b2809e, #b2809e)}.search:focus{outline:2px solid var(--tone-ddbbce, #ddbbce)}.success h2{font-size:32px}.list-row b{font-weight:600}.demo{color:var(--text-secondary)}.time-label{color:var(--text-secondary)}.book-page>.demo{font-size:11px}
@media(max-width:1100px){.stat{padding:17px 14px}.heading h1{font-size:37px}.heading .actions{align-self:flex-start}}
@media(max-width:700px){.side{background:var(--tone-fffafb, #fffafb);box-shadow:0 -4px 20px var(--tone-6c3d5706, #6c3d5706)}.mobile-logo{font-size:32px;align-items:center;gap:4px}.mobile-logo .brand-mark{width:23px;height:29px}.heading h1{font-size:35px;line-height:1.15;max-width:340px}.heading p{font-size:12px;margin-top:9px}.eyebrow{font-size:9px;letter-spacing:1.8px}.stats{gap:10px}.stat{padding:16px 13px}.stat strong{font-size:24px}.stat .label{font-size:11px;line-height:1.5}.stat small{font-size:10px}.panel-head h2{font-size:23px}.topbar .pill{display:none}.topbar .btn{font-size:11px}.topbar{height:68px}.share-card>h3{max-width:none;font-size:27px}.studio{padding:26px 16px 24px}.studio h1{font-size:38px}.studio p{font-size:12px}.book-top .btn{font-size:11px;padding:10px}.book-page{padding-top:18px}.book-page h2{font-size:27px}.book-page .pad{padding:21px 18px}.steps{gap:17px;font-size:11px}.event strong{font-size:13px}.event .right{font-size:10px}.event p{font-size:11px;line-height:1.5}.event-wrap .event{min-height:70px}.reminder{font-size:11px;padding:9px 2px}.nav button{font-size:10px}.nav button.active{box-shadow:none}.service-option{padding:18px 14px}.brand-avatar{width:64px;height:64px;font-size:28px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}

/* Calendar navigation and a visible overview of future reservations. */
.agenda-navigation{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 20px;flex-wrap:wrap}.week-navigation{display:flex;gap:8px;align-items:center}.week-navigation .btn{min-height:43px;font-size:12px}.date-jump{display:flex;align-items:center;gap:12px;font-size:12px;color:var(--text-secondary)}.date-jump input{padding:10px 12px;min-height:43px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--plum);font:inherit}.workspace{grid-template-columns:minmax(0,1fr) 300px}.day-agenda{scroll-margin-top:15px}.day-weekday{display:block;font-size:11px;text-transform:capitalize;color:var(--text-secondary);margin-bottom:4px}.date-nav button{width:37px;height:37px;min-width:37px;font-size:19px}.date-nav button:nth-child(2){width:auto;font-size:12px;padding:0 12px}.week-strip button{position:relative;min-height:78px}.week-count{display:inline-flex;align-items:center;justify-content:center;background:var(--tone-f0dbe6, #f0dbe6);color:var(--text-secondary);min-width:17px;height:17px;border-radius:20px;font-size:9px;margin-top:7px;padding:0 4px}.week-strip .selected .week-count{background:#fff3;color:white}.week-count.no-bookings{background:none;color:var(--text-secondary)}.calendar{display:block;padding:18px}.cal-head{gap:8px;margin-bottom:13px}.cal-head b{font-size:13px;text-align:center}.cal-head .cal-arrow{width:36px;height:36px;min-width:36px;border:1px solid var(--tone-ecdae4, #ecdae4);background:var(--tone-fbf3f7, #fbf3f7);border-radius:9px;font-size:24px;display:grid;place-items:center;color:var(--plum)}.cal-head .cal-arrow:hover{background:var(--tone-f1dfeb, #f1dfeb)}.cal-grid{gap:3px}.cal-grid button{position:relative;border-radius:10px;min-height:35px;aspect-ratio:1;display:flex;align-items:center;justify-content:center;padding:0;font-size:12px}.cal-grid button>span{font:inherit;color:inherit;padding:0}.cal-grid button.has-bookings{background:var(--tone-f8eaf2, #f8eaf2);color:var(--text-secondary);font-weight:600}.cal-grid button.selected{background:var(--plum);color:white}.cal-grid button.today{box-shadow:inset 0 0 0 1px var(--tone-b17697, #b17697)}.cal-count{position:absolute;right:1px;top:1px;min-width:12px;height:12px;display:grid;place-items:center;border-radius:8px;background:var(--tone-d9afc6, #d9afc6);color:var(--text-main);font-size:8px;line-height:1;font-style:normal;padding:0 2px}.cal-grid .selected .cal-count{background:#fff;color:var(--text-main)}.cal-legend{border-top:1px solid var(--tone-efe0e8, #efe0e8);margin-top:14px;padding-top:13px;display:flex;gap:8px;justify-content:space-between;font-size:9px;color:var(--text-secondary)}.cal-legend span{display:flex;gap:5px;align-items:center}.cal-legend i{width:7px;height:7px;background:var(--tone-d9afc6, #d9afc6);border-radius:50%}.cal-legend b{font-weight:500;color:var(--text-secondary)}.upcoming{padding:20px}.upcoming-head{display:flex;justify-content:space-between;align-items:center;gap:12px}.upcoming-head h3{font-family:'Cormorant Garamond',Georgia,serif;font-size:25px;color:var(--text-secondary)}.upcoming-head .eyebrow{font-size:8px;letter-spacing:1.8px;margin-bottom:6px}.upcoming-total{min-width:32px;height:32px;border-radius:50%;background:var(--tone-f0dfeb, #f0dfeb);color:var(--text-secondary);display:grid;place-items:center;font-size:12px;font-weight:600}.upcoming-caption{font-size:11px;line-height:1.7;color:var(--text-secondary);margin:12px 0 6px}.upcoming-item{display:flex;width:100%;text-align:left;align-items:center;gap:11px;padding:14px 0;border-top:1px solid var(--tone-f1e6ed, #f1e6ed);background:none;color:var(--ink)}.upcoming-item:hover .upcoming-info strong{color:var(--text-secondary)}.upcoming-item:first-child{border-top:0}.upcoming-date{width:39px;min-width:39px;background:var(--tone-f8edf4, #f8edf4);border:1px solid var(--tone-f0dfeb, #f0dfeb);border-radius:9px;text-align:center;padding:7px 2px}.upcoming-date b{display:block;font-size:18px;font-weight:500;color:var(--text-secondary);line-height:1.1}.upcoming-date small{display:block;font-size:9px;color:var(--text-secondary);margin-top:3px;text-transform:uppercase}.upcoming-info{min-width:0;flex:1}.upcoming-info strong{display:block;font-size:12px;font-weight:600;overflow-wrap:anywhere}.upcoming-info small{display:block;font-size:10px;color:var(--text-secondary);margin-top:4px;overflow-wrap:anywhere}.upcoming-info>span{display:block;font-size:10px;color:var(--text-secondary);margin-top:5px}.upcoming-arrow{font-size:21px;color:var(--text-secondary)}.upcoming-empty{font-size:12px;line-height:1.8;color:var(--text-secondary);padding:20px 0 8px}.upcoming-more{width:100%;font-size:11px;margin-top:7px}
@media(max-width:1100px) and (min-width:701px){.workspace{grid-template-columns:minmax(0,1fr) 260px}.aside-stack{grid-template-columns:1fr}.calendar{display:block;padding:15px}.upcoming{padding:17px}.heading .actions{flex-direction:column}.stats{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.workspace{display:flex;flex-direction:column;gap:18px}.aside-stack{display:contents}.calendar{order:-3;display:block;padding:18px}.upcoming{order:-2;padding:19px}.day-agenda{order:-1}.share-card{order:1}.day-note{display:none}.agenda-navigation{gap:13px;margin-bottom:17px}.week-navigation{width:100%;gap:6px}.week-navigation .btn{flex:1;padding:10px 7px;font-size:11px;white-space:nowrap}.week-navigation .btn:nth-child(2){flex:0 0 52px}.date-jump{width:100%;justify-content:space-between;font-size:12px}.date-jump input{min-width:170px}.cal-grid{gap:5px;max-width:380px;margin:auto}.cal-grid button{min-height:36px;max-height:43px;aspect-ratio:auto;font-size:13px}.cal-count{top:2px;right:4px;min-width:14px;height:14px;font-size:9px}.cal-head{max-width:380px;margin:0 auto 13px}.cal-head b{font-size:14px}.cal-legend{font-size:10px}.upcoming-list{display:grid;grid-template-columns:1fr}.upcoming-item{padding:11px 0}.upcoming-caption{margin-bottom:8px}.upcoming-date{width:42px;min-width:42px}.upcoming-info strong{font-size:13px}.upcoming-info small,.upcoming-info>span{font-size:11px}.week-strip button{min-height:78px}.week-count{font-size:9px}.day-agenda .panel-head{gap:6px}.date-nav{gap:4px}.date-nav button{width:32px;height:36px;min-width:32px}.date-nav button:nth-child(2){padding:0 9px}.day-agenda .panel-head h2{font-size:22px}}
/* Professional profile and weekly working hours */
.settings-form{max-width:1000px;display:grid;gap:22px}.settings-section{padding:27px}.settings-section-head{display:flex;align-items:center;gap:14px;margin-bottom:25px}.section-number{height:37px;width:37px;min-width:37px;border:1px solid var(--tone-e7cedc, #e7cedc);background:var(--tone-f8edf3, #f8edf3);border-radius:12px;display:grid;place-items:center;font-size:11px;color:var(--text-secondary)}.settings-section-head h2{font-size:29px}.settings-section-head p{font-size:12px;color:var(--text-secondary);line-height:1.7;margin-top:4px}.logo-editor{display:flex;align-items:center;gap:23px;padding:21px;background:var(--tone-fcf5f9, #fcf5f9);border:1px dashed var(--tone-e6cddd, #e6cddd);border-radius:13px;margin-bottom:25px}.logo-preview{width:100px;height:100px;min-width:100px;border-radius:18px;background:#fff;border:1px solid var(--tone-eddee7, #eddee7);display:grid;place-items:center;overflow:hidden;color:var(--text-secondary);font-family:'Cormorant Garamond',Georgia,serif;font-size:34px}.logo-preview img{width:100%;height:100%;object-fit:contain;padding:7px}.logo-editor b{font-weight:600;font-size:13px}.logo-editor p{font-size:12px;line-height:1.7;color:var(--text-secondary);margin:7px 0 12px}.logo-editor small{display:block;font-size:10px;margin-top:10px;line-height:1.7;color:var(--text-secondary)}.upload-logo{position:relative;cursor:pointer;font-size:12px}.upload-logo input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%}.logo-editor .btn{font-size:12px}.optional{font-size:10px;font-weight:400;color:var(--text-secondary)}.settings-form .field>small{font-size:11px;color:var(--text-secondary);line-height:1.6;font-weight:400}.settings-form textarea{min-height:87px;line-height:1.7}.settings-tip{background:var(--tone-f9eff5, #f9eff5);border-radius:10px;padding:13px 16px;font-size:12px;color:var(--text-secondary);line-height:1.7;margin-bottom:15px}.copy-hours{font-size:11px;margin-bottom:21px;text-align:left;white-space:normal}.weekly-settings{display:grid;grid-template-columns:1fr 1fr;gap:13px;align-items:start}.working-day{border:1px solid var(--tone-eadce5, #eadce5);border-radius:12px;overflow:hidden;background:var(--tone-fffcfd, #fffcfd)}.working-day-head{padding:16px 15px;display:flex;align-items:center;justify-content:space-between;gap:8px;background:var(--tone-fdf7fa, #fdf7fa)}.day-switch{display:flex;align-items:center;gap:10px;position:relative;cursor:pointer}.day-switch b{font-size:12px;font-weight:600;color:var(--text-secondary)}.day-switch input{position:absolute;left:0;width:36px;height:24px;opacity:0;cursor:pointer}.switch-track{width:34px;min-width:34px;height:20px;border-radius:14px;background:var(--tone-decfd8, #decfd8);position:relative;pointer-events:none;transition:background .15s}.switch-track:after{content:'';position:absolute;left:3px;top:3px;width:14px;height:14px;background:#fff;border-radius:50%;transition:transform .15s;box-shadow:0 1px 3px var(--tone-78465e20, #78465e20)}.day-switch input:checked+.switch-track{background:var(--tone-9d6786, #9d6786)}.day-switch input:checked+.switch-track:after{transform:translateX(14px)}.day-switch input:focus-visible+.switch-track{outline:2px solid var(--tone-b28ba1, #b28ba1);outline-offset:4px}.day-status{font-size:9px;color:var(--text-secondary)}.day-content{padding:18px 15px 17px}.day-content .field{margin-bottom:13px;font-size:11px}.day-content .field input{padding:10px;font-size:13px;min-height:43px}.lunch-switch{display:flex;align-items:center;gap:7px;font-size:11px;color:var(--text-secondary);line-height:1.6;cursor:pointer}.lunch-switch input{accent-color:var(--tone-935d7c, #935d7c);width:15px;height:15px;margin:0;flex-shrink:0}.lunch-times{margin-top:14px;padding-top:14px;border-top:1px dashed var(--tone-ebdbe5, #ebdbe5)}.lunch-times .field{margin-bottom:0}.settings-footnote{font-size:11px;line-height:1.8;color:var(--text-secondary);margin-top:20px}.settings-save{padding:18px 22px;background:var(--tone-fff9fc, #fff9fc);border:1px solid var(--tone-e9d9e4, #e9d9e4);border-radius:13px;position:sticky;bottom:14px;box-shadow:0 6px 25px var(--tone-78465e0b, #78465e0b);z-index:2}.settings-save .btn{min-width:215px}.settings-save small{font-size:10px;color:var(--text-secondary);margin-left:15px;line-height:1.8}.settings-save .error:empty{display:none}.studio .brand-avatar.has-logo{width:120px;height:100px;border-radius:16px;background:#fff;box-shadow:none;padding:7px}.brand-avatar img{max-width:100%;max-height:100%;width:100%;height:100%;object-fit:contain}.studio-description{white-space:pre-line}.studio p.studio-address{font-size:11px;margin-top:13px;color:var(--text-secondary)}.studio-contact{display:inline-flex;margin-top:13px;font-size:11px;color:var(--text-secondary);text-underline-offset:3px}.booking-note{padding:16px;border-radius:10px;background:var(--tone-f9eef5, #f9eef5);border:1px solid var(--tone-efdeea, #efdeea);margin-bottom:20px}.booking-note b{font-size:12px;color:var(--text-secondary)}.booking-note p{white-space:pre-line;font-size:12px;line-height:1.8;color:var(--text-secondary);margin-top:6px}.closed-day{padding:40px 20px;text-align:center}.closed-day h3{font-family:'Cormorant Garamond',Georgia,serif;font-size:27px;color:var(--text-secondary)}.closed-day p{font-size:12px;color:var(--text-secondary);line-height:1.8;margin-top:10px;max-width:340px;margin-left:auto;margin-right:auto}.schedule-notice{background:var(--tone-faf0f6, #faf0f6);border-radius:9px;padding:13px;margin-top:10px;font-size:11px;line-height:1.8;color:var(--text-secondary)}
@media(max-width:800px){.weekly-settings{grid-template-columns:1fr}.settings-section{padding:21px}.settings-section-head h2{font-size:27px}.settings-save small{display:block;margin:10px 0 0}.logo-editor{gap:15px;padding:16px}.logo-preview{width:84px;height:84px;min-width:84px}.day-status{font-size:10px}.day-content .field{font-size:12px}.lunch-switch{font-size:12px}.day-switch b{font-size:13px}}
@media(max-width:700px){.settings-form{gap:17px}.settings-section{padding:19px 16px}.settings-section-head{gap:10px;margin-bottom:21px;align-items:flex-start}.settings-section-head h2{font-size:26px;line-height:1.12}.settings-section-head p{font-size:11px;margin-top:7px}.section-number{width:32px;height:32px;min-width:32px;border-radius:10px}.logo-editor{display:block;padding:17px}.logo-preview{margin-bottom:15px;width:94px;height:94px}.logo-editor .actions{flex-wrap:wrap}.logo-editor p{font-size:11px}.settings-save{bottom:81px;padding:15px;z-index:3}.settings-save .btn{width:100%;min-width:0}.settings-save small{font-size:10px;text-align:center;margin-top:8px}.day-content .row{gap:12px}.day-content .field input{font-size:14px;padding:10px}.copy-hours{width:100%;font-size:10px;line-height:1.7;padding:12px}.studio .brand-avatar.has-logo{width:110px;height:90px}.settings-tip{font-size:11px;padding:13px}.booking-note{padding:14px}}

/* Keep uploaded brand images within a square frame without stretching. */
.studio .brand-avatar.has-logo{--logo-size:120px;--logo-inset:8px;width:var(--logo-size);height:var(--logo-size);min-width:var(--logo-size);min-height:var(--logo-size);max-width:var(--logo-size);max-height:var(--logo-size);display:flex;align-items:center;justify-content:center;padding:var(--logo-inset);overflow:hidden;border-radius:18px;flex-shrink:0;box-sizing:border-box}
.studio .brand-avatar.has-logo img{display:block;flex:0 1 auto;min-width:0;min-height:0;width:auto!important;height:auto!important;max-width:calc(var(--logo-size) - 2 * var(--logo-inset));max-height:calc(var(--logo-size) - 2 * var(--logo-inset));object-fit:contain;object-position:center;aspect-ratio:auto}
.logo-preview{--logo-size:100px;--logo-inset:7px;display:flex;align-items:center;justify-content:center;width:var(--logo-size);height:var(--logo-size);min-width:var(--logo-size);padding:var(--logo-inset);overflow:hidden;flex-shrink:0}
.logo-preview img{display:block;flex:0 1 auto;min-width:0;min-height:0;width:auto!important;height:auto!important;max-width:calc(var(--logo-size) - 2 * var(--logo-inset));max-height:calc(var(--logo-size) - 2 * var(--logo-inset));padding:0;object-fit:contain;object-position:center}
.contact-visibility{display:flex;align-items:flex-start;gap:10px;padding:15px;background:var(--tone-faf1f6, #faf1f6);border:1px solid var(--tone-efdeea, #efdeea);border-radius:10px;margin:0 0 21px;cursor:pointer}.contact-visibility input{width:17px;height:17px;flex-shrink:0;accent-color:var(--tone-935d7c, #935d7c);margin:1px 0 0}.contact-visibility b{display:block;font-size:12px;font-weight:500;color:var(--text-secondary);line-height:1.6}.contact-visibility small{display:block;font-size:10px;line-height:1.8;color:var(--text-secondary);margin-top:5px}.studio-contact{font-size:11px;color:var(--text-secondary)}
@media(max-width:800px){.logo-preview{--logo-size:94px}}
@media(max-width:700px){.studio .brand-avatar.has-logo{--logo-size:112px}.contact-visibility b{font-size:12px}}

/* Specific closed dates, without changing the weekly working schedule. */
.off-editor-layout{display:grid;grid-template-columns:310px 1fr;gap:27px;align-items:start}.off-calendar{padding:17px;border:1px solid var(--tone-ead7e3, #ead7e3);border-radius:13px;background:var(--tone-fffafd, #fffafd)}.off-calendar .cal-grid button{min-height:37px}.off-calendar .cal-arrow{width:36px;height:36px;background:var(--tone-f8edf4, #f8edf4);border:1px solid var(--tone-ecdae5, #ecdae5);border-radius:9px;font-size:22px;color:var(--text-secondary)}.off-calendar .cal-head b{font-size:13px;text-transform:capitalize}.off-check{position:absolute;right:3px;top:1px;font-size:9px;font-style:normal;color:#fff}.off-hint{font-size:10px;color:var(--text-secondary);line-height:1.7;margin-top:14px;text-align:center}.off-dates-head{display:flex;align-items:center;justify-content:space-between;padding:5px 0 14px;border-bottom:1px solid var(--tone-efe3eb, #efe3eb)}.off-dates-head b{font-size:12px;font-weight:500;color:var(--text-secondary)}.off-dates-head>span{display:grid;place-items:center;min-width:25px;height:25px;background:var(--tone-f4e6ef, #f4e6ef);color:var(--text-secondary);border-radius:50%;font-size:10px}.off-date-list{max-height:350px;overflow:auto}.off-date{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:13px 0;border-bottom:1px solid var(--tone-f2e8ef, #f2e8ef)}.off-date b{font-size:12px;font-weight:500;color:var(--text-secondary)}.off-date small{display:block;font-size:10px;line-height:1.7;color:var(--text-secondary);margin-top:4px}.remove-off-date{border:1px solid var(--tone-eedee8, #eedee8);border-radius:8px;background:var(--tone-fff7fb, #fff7fb);color:var(--text-secondary);min-width:33px;height:33px;font-size:20px}.off-empty{font-size:11px;line-height:1.9;padding:18px 0;color:var(--text-secondary)}.cal-grid button.is-day-off{background:repeating-linear-gradient(135deg,var(--tone-f4edf2, #f4edf2),var(--tone-f4edf2, #f4edf2) 4px,var(--tone-e9dce6, #e9dce6) 4px,var(--tone-e9dce6, #e9dce6) 5px);color:var(--text-secondary)}.cal-grid button.is-day-off.selected{background:var(--plum);color:#fff}.cal-legend .off-legend-dot{background:var(--tone-d7c3d1, #d7c3d1);border-radius:2px}.off-calendar button:focus-visible{outline:2px solid var(--tone-b17d9b, #b17d9b);outline-offset:2px}
@media(max-width:900px){.off-editor-layout{grid-template-columns:1fr}.off-calendar{max-width:360px;width:100%;margin:0 auto}.off-dates{min-width:0}.off-calendar .cal-grid button{aspect-ratio:auto;min-height:39px}.off-date-list{max-height:280px}}
@media(max-width:700px){.off-editor-layout{gap:19px}.off-calendar{padding:16px 12px}.off-date small{font-size:11px}.off-empty{font-size:12px}.off-calendar .cal-head b{font-size:13px}}

/* The same logo renderer is used in the professional preview and client header. */
.logo-display{--logo-size:170px;--logo-padding:8px;box-sizing:border-box;display:flex;justify-content:center;align-items:center;margin:0 auto 24px;background:#fff;border:1px solid var(--tone-e4cbd8, #e4cbd8);overflow:hidden;box-shadow:0 3px 18px var(--tone-78465e08, #78465e08);flex-shrink:0;padding:var(--logo-padding);width:var(--logo-size);height:var(--logo-size);max-width:100%}
.logo-display img{display:block;min-width:0;min-height:0;flex:0 1 auto;object-fit:contain;object-position:center;width:auto!important;height:auto!important;max-width:100%;max-height:calc(var(--logo-size) - 2 * var(--logo-padding) - 2px);aspect-ratio:auto;padding:0}
.logo-display.logo-shape-round{border-radius:50%}.logo-display.logo-shape-square{border-radius:14px}.logo-display.logo-shape-auto{width:fit-content;height:auto;max-width:var(--logo-size);max-height:var(--logo-size);border-radius:12px}.logo-display.logo-shape-auto img{max-width:calc(var(--logo-size) - 2 * var(--logo-padding) - 2px);max-height:calc(var(--logo-size) - 2 * var(--logo-padding) - 2px)}
.logo-preview-area{flex:0 0 268px;align-self:stretch;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(ellipse at 0% 0%,var(--tone-edd4df, #edd4df),transparent 65%),var(--tone-f4eaf4, #f4eaf4);border:1px solid var(--tone-ecd9e6, #ecd9e6);border-radius:16px;padding:18px 12px}.preview-eyebrow{font-size:9px;letter-spacing:.8px;text-transform:uppercase;color:var(--text-secondary);text-align:center;display:block;margin-bottom:22px}.logo-preview-stage{width:100%;min-height:225px;display:flex;align-items:center;justify-content:center}.logo-preview-stage .logo-display{margin:0 auto}.logo-preview-stage .brand-avatar{margin:0 auto}.logo-editor{align-items:stretch}.logo-editor>div:last-child{flex:1;min-width:0}.logo-shape-controls{border:0;margin:18px 0 0;padding:0}.logo-shape-controls legend{font-size:11px;color:var(--text-secondary);margin-bottom:10px}.logo-shape-options{display:flex;gap:6px;flex-wrap:wrap}.logo-shape-options label{position:relative;cursor:pointer}.logo-shape-options input{position:absolute;opacity:0;width:100%;height:100%;margin:0}.logo-shape-options span{display:block;padding:10px 13px;border:1px solid var(--tone-e8d5e1, #e8d5e1);border-radius:8px;background:var(--tone-fffafb, #fffafb);color:var(--text-secondary);font-size:11px}.logo-shape-options input:checked+span{background:var(--tone-87516e, #87516e);border-color:var(--tone-87516e, #87516e);color:white}.logo-shape-options input:focus-visible+span{outline:2px solid var(--tone-b987a3, #b987a3);outline-offset:3px}.logo-editor p.logo-shape-hint{font-size:10px;margin:8px 0 0;line-height:1.7}.logo-range{display:block;margin-top:15px}.logo-range>span{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:var(--text-secondary);margin-bottom:7px}.logo-range output{color:var(--text-secondary);font-size:10px}.logo-range input{width:100%;accent-color:var(--tone-945c7d, #945c7d);min-height:25px;cursor:pointer}
@media(max-width:1000px){.logo-editor{flex-direction:column}.logo-preview-area{flex:0 0 auto;width:100%;padding:20px 12px}.logo-preview-stage{min-height:230px}.logo-editor>div:last-child{margin-top:8px}.logo-shape-options span{padding:11px 15px}}
@media(max-width:700px){.logo-preview-area{margin-bottom:20px}.logo-display{margin-bottom:24px}.logo-preview-stage .logo-display{margin:0 auto}.logo-editor{padding:14px}.logo-shape-options{gap:7px}.logo-shape-options label{flex:1;text-align:center}.logo-shape-options span{padding:11px 7px}.logo-range>span{font-size:11px}.logo-preview-area .preview-eyebrow{font-size:9px;letter-spacing:.5px}.logo-range input{min-height:33px}}

.logo-display.logo-shape-round img{max-width:calc((var(--logo-size) - 2 * var(--logo-padding) - 2px) * .7071);max-height:calc((var(--logo-size) - 2 * var(--logo-padding) - 2px) * .7071)}

/* A native horizontal month scroller, plus informational national holiday markers. */
.month-strip-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 22px 5px}.month-strip-heading b{font-size:12px;font-weight:500;color:var(--text-secondary);text-transform:capitalize}.month-strip-heading small{display:block;font-size:10px;color:var(--text-secondary);line-height:1.7;margin-top:4px}.strip-arrows{display:flex;gap:6px}.strip-arrows button{width:31px;height:31px;background:var(--tone-faf1f7, #faf1f7);border:1px solid var(--tone-efdeea, #efdeea);border-radius:8px;color:var(--text-secondary);font-size:20px}.week-strip.month-strip{display:flex;gap:7px;overflow-x:auto;overflow-y:hidden;position:relative;scroll-snap-type:x proximity;scroll-padding-inline:16px;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;padding:13px 20px 16px;scrollbar-width:thin;scrollbar-color:var(--tone-d6b9cb, #d6b9cb) var(--tone-fcf6fa, #fcf6fa);max-width:100%;min-width:0}.month-strip::-webkit-scrollbar{height:5px}.month-strip::-webkit-scrollbar-track{background:var(--tone-fcf6fa, #fcf6fa)}.month-strip::-webkit-scrollbar-thumb{background:var(--tone-d6b9cb, #d6b9cb);border-radius:6px}.month-strip button.month-day{flex:0 0 56px;width:56px;min-width:56px;min-height:90px;padding:11px 3px 12px;scroll-snap-align:center;position:relative;border:1px solid transparent;font-size:10px}.month-strip button.month-day:hover{background:var(--tone-fbf0f7, #fbf0f7)}.month-strip button.month-day.selected{background:var(--plum)}.month-strip .month-day strong{font-size:20px;font-weight:600;margin-top:6px}.month-strip .month-day .week-count{margin-top:8px}.month-strip .month-day.is-holiday{border-bottom:2px solid #d6a85f}.month-strip .month-day.strip-day-off:not(.selected){background:var(--tone-f7f0f5, #f7f0f5)}.strip-holiday-dot{position:absolute;width:5px;height:5px;border-radius:50%;background:#c99545;bottom:4px;left:calc(50% - 2.5px)}.calendar-holiday-dot{position:absolute;width:5px;height:5px;left:calc(50% - 2.5px);bottom:3px;background:#c99545;border-radius:50%}.cal-grid button.is-holiday:not(.selected){color:#a57532;box-shadow:inset 0 -1px 0 #d8af6b}.cal-grid button.selected .calendar-holiday-dot{background:#f9d799}.cal-legend .holiday-legend-dot{background:#c99545}.cal-legend{flex-wrap:wrap;line-height:1.6}.selected-holiday{display:flex;align-items:center;gap:9px;padding:12px 21px;background:#fff9ee;border-bottom:1px solid #f4e8d1;color:#a07b43;font-size:11px;line-height:1.7}.selected-holiday>i{width:6px;height:6px;min-width:6px;border-radius:50%;background:#cca464}.selected-holiday b{font-weight:500}.holiday-month-list{margin-top:14px;padding-top:14px;border-top:1px solid var(--tone-efe2e9, #efe2e9)}.holiday-list-label{display:flex;align-items:center;gap:6px;font-size:10px;font-weight:500;color:#a58558;margin-bottom:10px}.holiday-list-label i{width:6px;height:6px;border-radius:50%;background:#d2a96a}.holiday-item{display:flex;align-items:flex-start;gap:9px;padding:8px 0;width:100%;background:none;color:var(--text-secondary);text-align:left;font-size:10px;line-height:1.7}.holiday-item>b{display:grid;place-items:center;border-radius:5px;background:#fbf1e0;color:#ac854d;min-width:24px;height:23px;font-size:10px;font-weight:500}.holiday-item>span{padding-top:2px}.holiday-month-list>p{font-size:10px;color:var(--text-secondary);line-height:1.8}.holiday-month-list>small{font-size:9px;line-height:1.8;color:var(--text-secondary);display:block;margin-top:11px}.day-agenda{min-width:0;max-width:100%}.workspace{min-width:0}
@media(max-width:700px){.month-strip-heading{padding:16px 16px 3px}.week-strip.month-strip{padding:12px 13px 16px;gap:7px}.month-strip button.month-day{flex-basis:52px;width:52px;min-width:52px;min-height:94px;font-size:10px}.month-strip .month-day strong{font-size:21px}.strip-arrows button{min-width:34px;height:34px}.selected-holiday{padding:12px 16px;font-size:11px}.holiday-item{font-size:11px;padding:8px 0}.holiday-list-label{font-size:11px}.holiday-month-list>small,.holiday-month-list>p{font-size:10px}}
/* Soft color blooms on touch: no button displacement or action delay. */
.btn:active{transform:none}.touch-feedback-layer{position:fixed;z-index:2147482000;display:block;pointer-events:none!important;overflow:hidden;isolation:isolate;contain:strict;border:1px solid rgba(var(--touch-ink),.10);animation:touch-frame-fade 580ms ease-out both}.touch-feedback-wave{position:absolute;display:block;border-radius:50%;pointer-events:none;background:radial-gradient(circle,rgba(var(--touch-ink),.22) 0%,rgba(var(--touch-ink),.13) 38%,rgba(var(--touch-ink),.025) 70%,transparent 74%);transform-origin:center;animation:touch-color-bloom 580ms cubic-bezier(.18,.65,.32,1) both;will-change:transform,opacity}
@keyframes touch-color-bloom{0%{transform:scale(.045);opacity:.65}35%{opacity:.9}100%{transform:scale(1);opacity:0}}
@keyframes touch-frame-fade{0%{opacity:1}75%{opacity:.8}100%{opacity:0}}
@media(hover:hover) and (pointer:fine){.btn:not(:disabled),.date-nav button,.cal-arrow,.strip-arrows button{transition:background-color 180ms ease,border-color 180ms ease,color 180ms ease,box-shadow 180ms ease}.btn:not(:disabled):hover{border-color:var(--tone-d6b4c9, #d6b4c9);box-shadow:0 0 0 3px var(--tone-e7d0df30, #e7d0df30)}.btn.primary:not(:disabled):hover{border-color:var(--tone-78465e, #78465e);box-shadow:0 0 0 3px var(--tone-c799b135, #c799b135)}}
.touch-feedback-reduced .touch-feedback-wave{transform:scale(.6);animation:touch-simple-fade 160ms ease-out both}.touch-feedback-reduced{animation:touch-simple-fade 160ms ease-out both}
@keyframes touch-simple-fade{from{opacity:.45}to{opacity:0}}
@media(prefers-reduced-motion:reduce){.touch-feedback-wave{animation:touch-simple-fade 160ms ease-out both!important;transform:scale(.6)}.touch-feedback-layer{animation:touch-simple-fade 160ms ease-out both!important}}
/* Use the app's touch response instead of the browser's blue tap overlay. */
html,body,button,a,label,input,select,textarea,[role="button"]{-webkit-tap-highlight-color:transparent}
button,a.btn,[role="button"]{-webkit-user-select:none;user-select:none}
button:focus:not(:focus-visible),a:focus:not(:focus-visible),[role="button"]:focus:not(:focus-visible){outline:none}
button:focus-visible,a:focus-visible,[role="button"]:focus-visible{outline:2px solid var(--tone-a56c8b, #a56c8b);outline-offset:3px}
/* Palette choice cards retain their own colors so the alternatives remain comparable. */
.palette-picker{border:0;padding:0;margin:24px 0 29px}.palette-picker>legend{font-family:'Cormorant Garamond',Georgia,serif;font-size:27px;font-weight:600;color:var(--ink);padding:0}.palette-picker>p{font-size:12px;color:var(--muted);line-height:1.8;margin:6px 0 17px}.palette-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.palette-option{position:relative;display:block;cursor:pointer;min-width:0}.palette-option>input{position:absolute;opacity:0;width:100%;height:100%;inset:0;margin:0}.palette-card{position:relative;display:block;background:#fff;border:1px solid var(--line);border-radius:13px;padding:18px 15px;min-height:124px;height:100%;transition:border-color 160ms,box-shadow 160ms}.palette-swatches{display:flex;gap:5px;margin-bottom:13px}.palette-swatches i{width:26px;height:26px;display:block;border-radius:50%;border:1px solid #0000000b}.palette-card>b{display:block;font-size:12px;font-weight:600;color:var(--ink)}.palette-card>small{display:block;font-size:10px;line-height:1.7;color:var(--muted);margin-top:5px}.palette-choice-check{display:none;position:absolute;right:12px;top:13px;width:20px;height:20px;align-items:center;justify-content:center;border-radius:50%;background:var(--green);color:white;font-size:10px}.palette-option>input:checked+.palette-card{border-color:var(--green);box-shadow:0 0 0 1px var(--green)}.palette-option>input:checked+.palette-card .palette-choice-check{display:flex}.palette-option>input:focus-visible+.palette-card{outline:2px solid var(--green);outline-offset:4px}.palette-sample{margin-top:16px;border:1px solid var(--line);border-radius:12px;background:var(--palette-soft,var(--accent));display:flex;align-items:center;justify-content:space-between;gap:15px;padding:19px}.palette-sample b{display:block;color:var(--green);font-family:'Cormorant Garamond',Georgia,serif;font-size:23px;font-weight:600}.palette-sample div>span{display:block;color:var(--muted);font-size:10px;line-height:1.7;margin-top:5px}.palette-sample-button{display:inline-flex;padding:12px 15px;border-radius:9px;color:#fff;background:var(--green);font-size:11px;font-weight:500;white-space:nowrap}.palette-preview-note{display:block;font-size:10px;line-height:1.8;color:var(--muted);margin-top:12px}.logo-editor .logo-preview-area{background:radial-gradient(ellipse at 0% 0%,var(--palette-soft,var(--accent)),transparent 70%),var(--palette-background,var(--bg))}.logo>span{color:var(--muted)!important}
@media(max-width:700px){.palette-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.palette-card{padding:16px 11px;min-height:132px}.palette-swatches{gap:4px}.palette-swatches i{width:23px;height:23px}.palette-choice-check{right:8px;top:9px;width:17px;height:17px;font-size:9px}.palette-sample{flex-direction:column;align-items:flex-start;padding:17px}.palette-sample b{font-size:24px}.palette-card>small{font-size:10px}.palette-picker>legend{font-size:27px}.palette-sample-button{font-size:11px}.palette-picker>p{font-size:11px}}
/* Neutral foundations give each palette room to stand out. */
body,.main{background:#f6f7f9;color:var(--text-main)}.side,.panel,.stat,.calendar,.settings-section,.settings-save{background:#fff;border-color:#e2e5ea}.side{box-shadow:1px 0 0 #e6e8ed}.topbar{border-color:#dfe3e9}.heading h1,.studio h1,h2,h3{color:var(--text-main)}.heading p,.studio p,.day-weekday,.eyebrow,.side>small,.muted,small,.demo,.field,.cal-head b,.time-label,.steps,.stat .label,.stat small,.stat strong,.palette-card>b,.palette-card>small{color:var(--text-secondary)}.heading h1,.stat strong,.palette-card>b{color:var(--text-main)}.eyebrow{font-weight:600;color:var(--palette-primary)}.logo,.mobile-logo,.book-top>b,.logo i,.logo .brand-mark{color:var(--palette-primary)}.book-top .brand-mark{color:var(--palette-primary)}
.btn{background:#fff;color:#303640;border-color:#d8dde5}.btn:hover{background:#f5f7f9}.btn.primary{background:var(--palette-primary);border-color:var(--palette-primary);color:white;box-shadow:0 3px 10px #20273510}.btn.primary:hover{background:color-mix(in srgb,var(--palette-primary) 88%,#151820);border-color:color-mix(in srgb,var(--palette-primary) 88%,#151820)}.btn.soft{background:#f0f3f6;border-color:#e4e7ec;color:#414954}.btn.danger{color:#ad3b4d}.nav button{color:#626a75}.nav button:hover{background:var(--palette-soft);color:var(--palette-primary)}.nav button.active{background:var(--palette-primary);color:#fff}.nav button.active .ico{color:#fff}.profile .avatar{background:var(--palette-soft);color:var(--palette-primary)}.help{background:#f3f5f8}.help b{color:#333b46}.help p{color:#626a75}.pill{background:var(--palette-soft);color:var(--palette-primary)}
.stats .stat{background:#fff;border:1px solid #e1e5eb;border-top:3px solid #cad1dc;box-shadow:0 3px 12px #20273505}.stats .stat:first-child{background:var(--palette-soft);border-color:color-mix(in srgb,var(--palette-primary) 18%,white);border-top-color:var(--palette-primary)}.stats .stat:first-child strong{color:var(--palette-primary)}.stats .stat:nth-child(2){background:#eff9f3;border-color:#dceee3;border-top-color:#28a16d}.stats .stat:nth-child(2) strong{color:#19764d}.stats .stat:nth-child(3){background:#fff6ea;border-color:#f1e3ce;border-top-color:#d48a27}.stats .stat:nth-child(3) strong{color:#9a5e12}.stats .stat:nth-child(4){background:#fff;border-color:#e1e5eb;border-top-color:var(--palette-secondary)}.stats .stat .label{color:#4f5967}.stats .stat small{color:#687180}.stats .stat .ico{opacity:.85}.stats .stat strong{font-weight:700}
.cal-grid button{color:#495360}.cal-grid button.has-bookings{background:var(--palette-soft);color:var(--palette-primary)}.cal-grid button.selected{background:var(--palette-primary);color:#fff}.cal-head .cal-arrow,.date-nav button,.strip-arrows button{background:#f1f4f7;border-color:#dfe4eb;color:#4b5563}.cal-grid button.today{box-shadow:inset 0 0 0 1px var(--palette-primary)}.cal-grid button.is-holiday:not(.selected){color:#9a651c}.week-strip button{color:#667180}.month-strip button.month-day:hover{background:#f2f5f8}.month-strip button.month-day.selected{background:var(--palette-primary);color:#fff}.week-count{background:var(--palette-soft);color:var(--palette-primary)}.week-strip .selected .week-count{background:#ffffff26;color:white}.week-count.no-bookings{color:#7d8794}.month-strip .month-day.strip-day-off:not(.selected){background:#edf0f4}.month-strip-heading b{color:#394451}.month-strip-heading small{color:#687180}.cal-legend,.cal-legend b{color:#687180}
.event{background:var(--palette-soft);border-color:var(--palette-primary);color:#2f3741}.event strong{color:#2f3741}.event p,.event .right{color:#596371}.event.purple{background:#e9f4f3;border-color:#4d9c93}.event.peach{background:#fff1e9;border-color:#d1956e}.event.block{background:#f0f2f5;border-color:#a9b2bd;color:#57616e}.event .tag{background:#fff9;color:#485461;border-color:#d8dfe6}.reminder{color:var(--palette-secondary);font-weight:500}.empty-slot{color:#65717d}.time-row{border-bottom-color:#edf0f3}.calendar{background:white}.upcoming-head h3{color:#2b333d}.upcoming-caption,.upcoming-info small,.upcoming-info>span,.upcoming-empty{color:#667180}.upcoming-date{background:var(--palette-soft);border-color:var(--line)}.upcoming-date b,.upcoming-date small{color:var(--palette-primary)}.upcoming-total{background:var(--palette-soft);color:var(--palette-primary)}.upcoming-info strong{color:#303944}.upcoming-item:hover .upcoming-info strong{color:var(--palette-primary)}.upcoming-arrow{color:var(--palette-primary)}
.share-card{background:#fff;border:1px solid #e1e5eb;border-top:3px solid var(--palette-secondary)}.share-card>h3{color:#2e3742}.share-card p{color:#626a75}.share-card>.ico{color:var(--palette-secondary)}.share-card .btn{background:var(--palette-soft);color:var(--palette-primary);border-color:transparent}.day-note h3{color:#303944}.section-number{background:var(--palette-soft);border-color:transparent;color:var(--palette-primary)}.settings-section-head h2{color:#2c343f}.settings-section-head p,.settings-footnote,.settings-save small,.settings-tip{color:#636d7a}.settings-tip{background:#f3f5f8}.settings-save{box-shadow:0 -3px 20px #25314a0c}.field input,.field select,.field textarea,.search{border-color:#dce1e8;color:#2e3742;background:#fff}.field input:focus,.field select:focus,.field textarea:focus,.search:focus{outline-color:color-mix(in srgb,var(--palette-primary) 28%,white);border-color:var(--palette-primary)}.field small,.optional,.day-status{color:#6b7582}.working-day,.working-day-head{background:#fff;border-color:#e2e6ec}.working-day-head{background:#f6f8fa}.day-switch b{color:#35404c}.day-switch input:checked+.switch-track{background:var(--palette-primary)}.lunch-switch input,.contact-visibility input,.logo-range input{accent-color:var(--palette-primary)}.logo-shape-options input:checked+span{background:var(--palette-primary);border-color:var(--palette-primary);color:#fff}.logo-shape-options span{background:#fff;border-color:#dce1e7;color:#4b5664}.logo-editor,.off-calendar{background:#f8f9fb;border-color:#dce2e9}.logo-editor .logo-preview-area{background:linear-gradient(140deg,var(--palette-soft),#fff);border-color:#e0e5ec}.logo-editor b,.logo-shape-controls legend,.contact-visibility b,.lunch-switch,.day-content .field{color:#3d4855}.logo-editor p,.logo-editor small,.logo-range>span,.logo-range output,.preview-eyebrow,.contact-visibility small{color:#66717e}.contact-visibility{background:#f5f7f9;border-color:#e2e6ec}.off-calendar .cal-arrow{background:#f2f5f8;border-color:#dfe5ec;color:#4a5563}.off-date b,.off-dates-head b{color:#414e5c}.off-date small,.off-hint,.off-empty{color:#6b7582}
.studio{background:linear-gradient(135deg,var(--palette-soft) 0%,#fff 82%);border-color:color-mix(in srgb,var(--palette-primary) 16%,#e6e9ee)}.studio::after{border-color:color-mix(in srgb,var(--palette-primary) 17%,transparent);opacity:.7}.studio h1{color:#262f3a}.studio p,.studio p.studio-address{color:#5d6876}.studio .eyebrow{color:var(--palette-primary)}.studio-contact{color:var(--palette-secondary);font-weight:500}.brand-avatar{background:#fff;color:var(--palette-primary);border-color:#dfe4ea}.steps{color:#6d7683}.steps .on{color:var(--palette-primary)}.service-option{background:#fff;border-color:#dfe4eb;color:#2e3742}.service-option>b{color:var(--palette-primary)}.service-option p{color:#687280}.service-option:hover,.service-option.chosen{background:color-mix(in srgb,var(--palette-soft) 55%,white);border-color:var(--palette-primary)}.slots button{color:#424e5d;border-color:#dbe2ea}.slots button:hover{background:var(--palette-soft)}.slots button.chosen{background:var(--palette-primary);border-color:var(--palette-primary);color:#fff}.booking-note{background:#f1f6f6;border-color:#dce8e7}.booking-note b{color:var(--palette-secondary)}.booking-note p{color:#5f6c78}.success-mark{background:#e5f5eb;color:#228456}
.palette-card{border-color:#dfe4eb}.palette-card>b{color:#2d3642}.palette-card>small{color:#606d7b}.palette-picker>p,.palette-preview-note{color:#637080}.palette-sample{background:#fff;border-color:#dde3eb;border-left:4px solid var(--palette-secondary);box-shadow:0 3px 12px #20273505}.palette-sample b{color:#28333f}.palette-sample div>span{color:#637080}.palette-sample-button{background:var(--palette-primary);color:#fff}.palette-swatches i{width:22px;height:22px}.palette-choice-check{background:var(--palette-primary);color:white}
@media(max-width:700px){.side{background:#fff;border-color:#dfe4ea}.stat .label{font-size:11px}.palette-swatches{gap:5px}.palette-swatches i{width:20px;height:20px}}
/* Settings are a menu of focused categories, while the single form keeps unsaved edits. */
.settings-overview{max-width:1050px}.settings-menu-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.settings-menu-card{display:flex;align-items:center;gap:16px;width:100%;padding:25px 23px;min-height:124px;border:1px solid #e0e5ec;background:#fff;border-radius:15px;text-align:left;color:var(--ink);transition:border-color 160ms,box-shadow 160ms}.settings-menu-card:hover{border-color:var(--palette-primary);box-shadow:0 4px 18px #25314a08}.settings-menu-icon{width:46px;height:46px;min-width:46px;border-radius:13px;background:var(--palette-soft);color:var(--palette-primary);display:grid;place-items:center}.settings-menu-icon .ico{width:23px;height:23px}.settings-menu-card:nth-child(3) .settings-menu-icon{background:#e9f5ef;color:#247555}.settings-menu-card:nth-child(4) .settings-menu-icon{background:#fff3df;color:#9b691c}.settings-menu-card:nth-child(5) .settings-menu-icon{background:#e9f1f8;color:#3d7199}.settings-menu-copy{flex:1;min-width:0}.settings-menu-copy>b{display:block;font-size:15px;font-weight:600;color:#303b48;margin-bottom:7px}.settings-menu-copy>span{display:block;font-size:12px;line-height:1.8;color:#687482}.settings-menu-arrow{font-size:25px;color:#98a2ae}.settings-overview-tip{font-size:12px;color:#6e7987;line-height:1.8;margin-top:22px;padding-left:3px}.settings-back{background:none;color:var(--palette-primary);font-size:13px;font-weight:500;padding:10px 0;margin-bottom:18px;display:inline-flex;align-items:center;gap:7px}.settings-category-form{max-width:1200px;gap:0}.settings-layout{display:grid;grid-template-columns:218px minmax(0,1fr);gap:23px;align-items:start}.settings-side-menu{display:grid;gap:7px;position:sticky;top:20px}.settings-category-link{display:flex;align-items:flex-start;gap:11px;padding:15px 13px;width:100%;background:transparent;color:#667180;text-align:left;border-radius:11px;border:1px solid transparent}.settings-category-link>.ico{margin-top:2px;min-width:19px}.settings-category-link b{display:block;font-size:12px;font-weight:600;color:inherit}.settings-category-link small{display:block;font-size:10px;line-height:1.7;color:#7a8592;margin-top:6px}.settings-category-link:hover{background:#f0f3f7}.settings-category-link.active{background:#fff;border-color:#e0e5ed;color:var(--palette-primary);box-shadow:inset 3px 0 0 var(--palette-primary)}.settings-category-content{min-width:0}.settings-category-panel{scroll-margin-top:20px}.settings-category-panel .settings-section-head h2:focus{outline:none}.settings-category-panel>.settings-section-head{padding-bottom:20px;border-bottom:1px solid #e8ecf1}.settings-category-panel .palette-picker{margin-bottom:0}.settings-category-panel .palette-picker>legend{font-size:24px}.settings-category-panel .section-number{font-size:0}.settings-category-panel .section-number:after{content:'•';font-size:21px;color:var(--palette-primary)}.settings-category-panel .section-number:has(svg):after{display:none}.settings-category-panel .settings-section-head .ico{width:18px;height:18px}.settings-category-content .settings-save{margin-top:19px;bottom:14px}.settings-mobile-menu{display:none}.settings-category-content .logo-editor{flex-direction:column}.settings-category-content .logo-preview-area{flex:0 0 auto;width:100%}.settings-category-content .logo-editor>div:last-child{margin-top:10px}.settings-category-content .palette-options{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-category-content .weekly-settings{grid-template-columns:1fr}.settings-category-content .off-editor-layout{grid-template-columns:1fr}.settings-category-content .off-calendar{max-width:360px;margin:auto;width:100%}
@media(min-width:1500px){.settings-category-content .logo-editor{flex-direction:row}.settings-category-content .logo-preview-area{flex:0 0 250px;width:auto}.settings-category-content .palette-options{grid-template-columns:repeat(3,minmax(0,1fr))}.settings-category-content .weekly-settings{grid-template-columns:1fr 1fr}}
@media(max-width:1100px){.settings-layout{grid-template-columns:190px minmax(0,1fr);gap:15px}.settings-category-link{padding:13px 9px;gap:9px}.settings-menu-card{padding:20px;gap:13px}.settings-category-content .grid2{grid-template-columns:1fr}}
@media(max-width:800px){.settings-menu-grid{grid-template-columns:1fr;gap:12px}.settings-menu-card{min-height:102px;padding:20px}.settings-menu-copy>b{font-size:14px}.settings-menu-copy>span{font-size:12px}.settings-layout{display:block}.settings-side-menu{display:none}.settings-mobile-menu{display:grid;gap:8px;margin-bottom:16px;font-size:11px;color:#677482}.settings-mobile-menu select{width:100%;padding:13px 15px;min-height:47px;border:1px solid #dce3ec;border-radius:10px;background:#fff;color:#354152;font:inherit;font-size:13px}.settings-back{margin-bottom:14px;font-size:12px}.settings-category-content .settings-save{bottom:82px}.settings-menu-icon{width:43px;height:43px;min-width:43px}.settings-category-content .row{grid-template-columns:1fr 1fr}}
@media(max-width:400px){.settings-menu-card{padding:18px 15px;gap:12px}.settings-menu-copy>span{font-size:11px}.settings-menu-copy>b{font-size:14px}.settings-menu-icon{width:39px;height:39px;min-width:39px}.settings-category-content .palette-card{padding-left:10px;padding-right:10px}.settings-category-content .palette-swatches i{width:18px;height:18px}.settings-category-content .logo-editor{padding-left:0;padding-right:0;border:0;background:none}}

/* Local de atendimento e escolha de navegação */
.business-location-editor{margin-top:22px;padding-top:24px;border-top:1px solid #e3e7ec}.business-location-editor h3{font-size:17px;color:var(--text-primary,#28323e);margin-bottom:8px}.business-location-editor>p{font-size:12px;color:var(--text-secondary);line-height:1.7;margin-bottom:20px}.business-location-editor>small{display:block;font-size:11px;color:var(--text-secondary);line-height:1.7;margin-top:9px}
.location-card{background:#fff;border:1px solid #dfe5eb;border-radius:16px;padding:20px;margin:22px 0;text-align:left;box-shadow:0 4px 18px #25314405}.location-card-label{display:block;text-transform:uppercase;letter-spacing:1.5px;font-size:10px;font-weight:600;color:var(--palette-primary);margin-bottom:12px}.location-address{display:flex;align-items:center;justify-content:space-between;gap:15px;width:100%;border:0;background:transparent;text-align:left;padding:8px 0;color:#28323e;border-radius:8px;font:inherit}.location-address b{font-size:15px;line-height:1.6;display:block;overflow-wrap:anywhere}.location-address small{display:block;font-size:12px;line-height:1.7;color:#606d7d}.location-arrow{font-size:23px;color:var(--palette-primary)}button.location-address{cursor:pointer}button.location-address:hover{background:var(--palette-soft)}.location-reference{font-size:12px!important;line-height:1.7!important;color:#606d7d!important;margin:7px 0 15px!important;white-space:pre-line}.location-apps{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.location-apps .btn{flex:1;justify-content:center;text-align:center;font-size:12px;white-space:nowrap;min-height:44px}.directions-address{font-size:15px;line-height:1.8;overflow-wrap:anywhere}.directions-reference{font-size:12px;line-height:1.8;margin-top:8px}.directions-hint{font-size:13px;line-height:1.7;margin-top:20px}.directions-footnote{font-size:11px;line-height:1.7;color:var(--text-secondary);margin-top:18px}.success .location-card p{max-width:none}.location-address:focus-visible{outline:2px solid var(--palette-primary);outline-offset:4px}
@media(max-width:400px){.location-card{padding:16px}.location-apps{gap:8px}.location-apps .btn{padding:12px 10px;font-size:11px}}

/* Ações de atendimento e contato da cliente */
.appointment-reminder-action{display:flex;justify-content:center;margin:0 0 14px}.appointment-reminder-action .btn{max-width:100%}.appointment-save-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.appointment-save-actions>.btn{min-width:0;padding:12px 10px;font-size:12px;text-align:center;white-space:normal;line-height:1.5}.appointment-save-actions>.btn:only-child{grid-column:1/-1}.client-form-actions{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}.client-contact-button{color:var(--palette-secondary);border-color:color-mix(in srgb,var(--palette-secondary) 25%,#dfe5eb)}
.off-calendar .cal-grid button{position:relative}.off-calendar .cal-grid button.is-holiday{box-shadow:inset 0 0 0 1px #e1bb77}.off-calendar .cal-grid button.is-holiday.selected{box-shadow:inset 0 0 0 1px #efce8e}.off-calendar .calendar-holiday-dot{bottom:3px}.off-calendar .cal-grid button.selected .calendar-holiday-dot{background:#f9d799}.off-holidays{text-align:left;margin-top:15px}.off-holidays .holiday-item{font-size:11px}.off-holidays>small{display:block;line-height:1.8;font-size:10px;margin-top:8px}
@media(max-width:360px){.appointment-save-actions>.btn{font-size:11px;padding:11px 7px}.client-form-actions>.btn{width:100%}}

/* Recebimentos por forma de pagamento */
.payment-summary{margin-bottom:24px}.payment-summary .panel-head p,.finance-row~p{font-size:11px;color:var(--text-secondary);line-height:1.7;margin-top:6px}.payment-totals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:20px}.payment-total{border:1px solid #e0e7e6;background:#f4faf6;border-radius:12px;padding:18px;min-width:0}.payment-total span{display:block;color:#52665d;font-size:12px}.payment-total strong{display:block;color:#23654a;font-size:22px;margin-top:9px;overflow-wrap:anywhere}.payment-legacy-note{font-size:11px;color:var(--text-secondary);padding:0 20px 20px;line-height:1.8}.payment-method-tag{display:inline-block;color:#26744e;background:#edf8f0;border-radius:6px;font-size:10px;padding:5px 8px;margin-top:8px}.finance-row-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}.finance-row .btn{font-size:11px}.panel-head>div>p{font-size:11px;color:var(--text-secondary);line-height:1.7;margin-top:7px}.appointment-payment-method{display:block;color:#26744e;font-size:12px;margin:-8px 0 20px}.appointment-payment-method:empty{display:none}.payment-modal{max-width:440px;width:calc(100% - 32px)}.payment-picker-description{font-size:13px;color:var(--text-secondary);line-height:1.9;margin-bottom:23px}.payment-picker-description b{font-size:22px;color:var(--text-main,#28323e)}.payment-method-options{border:0;padding:0;margin:0 0 25px;display:grid;gap:10px}.payment-method-options legend{font-size:12px;margin-bottom:12px;color:var(--text-secondary)}.payment-method-options label{display:flex;align-items:center;gap:12px;border:1px solid #dfe5eb;border-radius:12px;padding:16px;cursor:pointer}.payment-method-options label:has(input:checked){background:var(--palette-soft);border-color:var(--palette-primary)}.payment-method-options input{width:18px;height:18px;margin:0;accent-color:var(--palette-primary)}.payment-method-options span{font-size:14px;font-weight:500}.payment-picker-actions{display:flex;gap:10px}.payment-picker-actions .btn{flex:1;font-size:12px}.payment-modal::backdrop{background:#18232d66;backdrop-filter:blur(3px)}
@media(max-width:650px){.payment-totals{grid-template-columns:repeat(2,minmax(0,1fr));padding:16px;gap:10px}.payment-total{padding:15px}.payment-total strong{font-size:20px}.finance-row{align-items:flex-start;flex-direction:column;gap:14px}.finance-row-actions{width:100%;justify-content:flex-start}.finance-row-actions .btn{flex:1;min-height:42px}.payment-picker-actions .btn{padding:12px 9px;font-size:11px}}

.cancellation-policy{background:#f7f8fa;border:1px solid #dfe5eb;border-radius:13px;padding:19px;margin:20px 0;text-align:left}.cancellation-policy>b{font-size:14px}.cancellation-policy p{font-size:12px!important;line-height:1.8!important;margin:10px 0!important;color:var(--text-secondary);white-space:pre-line}.cancellation-accept{display:flex;align-items:flex-start;gap:10px;font-size:12px;line-height:1.8;margin:18px 0}.cancellation-accept input{width:18px;height:18px;flex:0 0 18px;margin:3px 0 0;accent-color:var(--palette-primary)}.late-cancellation-alert{padding:16px;border:1px solid #e4c68b;background:#fff8e9;border-radius:10px;margin-top:17px;color:#754d15}.late-cancellation-alert>b{font-size:13px}.late-cancellation-alert p{color:#75551f}.reservation-manage-link{display:block;font-size:13px;margin:18px 0;text-underline-offset:4px;color:var(--palette-primary)}.cancellation-result{font-size:13px;line-height:1.9;margin:20px 0}.cancellation-followup{margin-bottom:24px}.cancellation-followup small{font-size:11px;color:#86601e;line-height:1.8}.book-page #cancel-error+button{margin-bottom:14px}

.saved-reservation-link{display:block;text-align:center;font-size:13px;margin:22px 0;color:var(--palette-primary);text-underline-offset:4px}

.client-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 22px}.client-tabs button{border:1px solid #dfe5eb;background:#fff;border-radius:10px;padding:12px 16px;color:var(--text-secondary);font-size:12px;min-height:44px}.client-tabs button.active{background:var(--palette-primary);border-color:var(--palette-primary);color:#fff}.client-threshold{padding:23px;margin-bottom:22px}.client-threshold h2{font-size:25px}.client-threshold>p,.client-review-copy{font-size:12px;color:var(--text-secondary);line-height:1.9;margin:12px 0 22px}.client-threshold form{display:flex;align-items:flex-end;gap:14px;flex-wrap:wrap;margin:20px 0 12px}.client-threshold form .field{margin:0;flex:1;min-width:160px}.client-threshold form .btn{min-height:45px}.client-threshold>small{font-size:10px;line-height:1.8;display:block}.client-review-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.client-review-actions .btn{font-size:11px}.client-cancel-count{display:block;font-size:11px;color:#8b6428;margin-top:7px}.client-blocked-tag{display:inline-block;font-size:10px;color:#98505c;background:#fceff1;border-radius:5px;padding:4px 7px;margin-left:8px}.client-history-status{font-size:12px;color:var(--text-secondary);line-height:1.8;display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:15px 0 20px}.client-history-status .btn{font-size:11px}.booking-contact-action{color:var(--text-primary,#28323e);margin:14px 0;white-space:normal;text-align:center}.client-review-row{gap:17px}
@media(max-width:650px){.client-review-row{align-items:flex-start;flex-direction:column}.client-review-actions{width:100%}.client-review-actions .btn{flex:1;min-height:43px}.client-threshold{padding:19px}.client-threshold form .btn{width:100%}.client-tabs{gap:7px}.client-tabs button{padding:11px 12px;font-size:11px}.client-blocked-tag{margin-left:0;display:table;margin-top:8px}}

.booking-contact-notice{padding:17px;border:1px solid #dfe5eb;border-radius:12px;background:#f7f9fa;color:#526170;font-size:12px;line-height:1.9}.booking-contact-notice .btn{margin-bottom:0}

.client-analysis-entry{display:flex;justify-content:flex-end;margin:-2px 0 22px}.client-analysis-entry .btn{font-size:12px;color:var(--text-secondary);gap:16px}.client-analysis-entry .btn span{font-size:20px;color:var(--palette-primary)}.client-history{margin:20px 0 25px;font-size:12px;color:var(--text-secondary);line-height:1.8}.client-history>b{font-size:13px;color:var(--text-main,#28323e)}.client-history-item{padding:12px 0;border-bottom:1px solid #e7ebef;display:grid;gap:4px}.client-history-item:last-child{border-bottom:0}.client-history-item>small{font-size:11px}.history-origin-button{justify-self:start;background:transparent;color:var(--palette-primary);text-decoration:underline;text-underline-offset:3px;padding:6px 0;font-size:11px}.client-history>p{margin-top:10px}
@media(max-width:650px){.client-analysis-entry{justify-content:flex-start;margin-top:0}.client-analysis-entry .btn{min-height:44px}}

/* Compact month overview, expanded only when requested. */
.agenda-calendar-disclosure{background:#fff;min-width:0}.agenda-calendar-disclosure>summary{display:flex;align-items:center;gap:11px;cursor:pointer;list-style:none;padding:17px 15px;min-height:70px;user-select:none}.agenda-calendar-disclosure>summary::-webkit-details-marker{display:none}.calendar-disclosure-icon{width:34px;height:34px;display:grid;place-items:center;background:var(--palette-soft);border-radius:11px;color:var(--palette-primary);flex:0 0 34px}.calendar-disclosure-icon .ico{width:18px;height:18px}.calendar-disclosure-title{min-width:0}.calendar-disclosure-title>b{display:block;font-size:12px;font-weight:600;color:#39434f}.calendar-disclosure-title>small{display:block;font-size:10px;color:#7a8593;margin-top:5px;text-transform:capitalize}.calendar-disclosure-action{display:flex;align-items:center;gap:8px;margin-left:auto;color:var(--palette-primary);font-size:10px}.calendar-disclosure-action i{font-size:19px;font-style:normal;transition:transform .2s}.agenda-calendar-disclosure[open] .calendar-disclosure-action i{transform:rotate(180deg)}.agenda-calendar-disclosure[open]>summary{border-bottom:1px solid #e5e8ed}.agenda-calendar-disclosure>summary:hover{background:#fafbfd}.agenda-calendar-disclosure>summary:focus-visible{outline:2px solid var(--palette-primary);outline-offset:-4px;border-radius:14px}.agenda-calendar-disclosure:not([open])>.calendar{display:none!important}.agenda-calendar-disclosure .calendar{margin:0;border:0;border-radius:0;box-shadow:none;padding:15px}.agenda-calendar-disclosure .compact-date-jump{display:grid;gap:8px;font-size:10px;margin-bottom:20px}.agenda-calendar-disclosure .compact-date-jump input{min-width:0;width:100%;padding:10px;font-size:12px;min-height:42px}.month-day.is-today:not(.selected){background:color-mix(in srgb,var(--palette-soft) 48%,#fff);border-color:color-mix(in srgb,var(--palette-primary) 42%,#e0e5eb);box-shadow:inset 0 0 0 .5px color-mix(in srgb,var(--palette-primary) 15%,transparent)}.month-day.is-today:before{content:'';position:absolute;width:14px;height:2px;left:calc(50% - 7px);top:5px;border-radius:4px;background:var(--palette-primary);opacity:.5}.month-day.is-today.selected:before{background:#fff;opacity:.85}.month-day.is-today.selected{box-shadow:inset 0 0 0 1px #ffffff8c}
@media(max-width:800px){.agenda-calendar-disclosure{order:-3}.agenda-calendar-disclosure>summary{padding:15px 17px;min-height:65px}.agenda-calendar-disclosure .calendar{max-width:430px;margin:0 auto;padding:17px;width:100%}.calendar-disclosure-title>b{font-size:13px}.calendar-disclosure-title>small{font-size:11px}.calendar-disclosure-action{font-size:11px}}
@media(prefers-reduced-motion:reduce){.calendar-disclosure-action i{transition:none}}

/* The month calendar previews appointments without replacing the main daily schedule. */
.day-summary-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:23px}.day-summary-head h2{font-family:'Cormorant Garamond',Georgia,serif;font-weight:500;font-size:30px;line-height:1.15;margin-top:10px;max-width:310px}.day-summary-head>div>p{font-size:11px;color:var(--text-secondary);margin-top:10px;line-height:1.7}.day-summary-close{font-size:12px;min-height:42px;white-space:nowrap;padding:10px 13px;gap:9px;flex-shrink:0;color:#4c5260}.day-summary-close>span{font-size:19px;line-height:1}.day-summary-list{border:1px solid #e4e8ed;border-radius:13px;overflow:hidden;margin-bottom:22px}.day-summary-row{display:grid;grid-template-columns:64px minmax(0,1fr);gap:14px;align-items:start;padding:17px;border-bottom:1px solid #e9edf1;background:#fff}.day-summary-row:last-child{border-bottom:0}.day-summary-row time{font-size:13px;color:var(--palette-primary);font-weight:600;border-radius:8px;background:var(--palette-soft);text-align:center;padding:7px 5px;line-height:1.5}.day-summary-row b{font-size:13px;line-height:1.7;color:#394350;font-weight:600;overflow-wrap:anywhere}.day-summary-row p{font-size:12px;line-height:1.8;color:#707a89;margin-top:3px;overflow-wrap:anywhere}.day-summary-footer-close{width:100%;font-size:12px;min-height:45px}.agenda-calendar-disclosure>summary{-webkit-tap-highlight-color:transparent}
@media(max-width:450px){.day-summary-head{gap:12px;margin-bottom:20px}.day-summary-head h2{font-size:27px}.day-summary-head .eyebrow{font-size:9px}.day-summary-close{font-size:11px;padding:9px 11px;min-height:40px}.day-summary-row{padding:14px;grid-template-columns:56px minmax(0,1fr);gap:12px}.day-summary-row time{font-size:12px}.day-summary-row b{font-size:12px}.day-summary-row p{font-size:11px}}

/* A quiet, direct link from each day summary row to that client's profile. */
.day-summary-row{grid-template-columns:64px minmax(0,1fr) auto;align-items:center}.day-summary-client-button{font-size:10px;line-height:1.5;padding:9px 10px;min-height:38px;white-space:nowrap;border-radius:9px;background:#fff;color:#66717e;border-color:#dfe5eb;font-weight:500}.day-summary-client-button:hover{color:var(--palette-primary);border-color:color-mix(in srgb,var(--palette-primary) 35%,#e0e5eb);background:color-mix(in srgb,var(--palette-soft) 30%,#fff)}
@media(max-width:450px){.day-summary-row{grid-template-columns:50px minmax(0,1fr) auto;gap:10px;padding:14px 12px}.day-summary-client-button{font-size:10px;padding:8px;min-height:38px}}
@media(max-width:360px){.day-summary-row{grid-template-columns:44px minmax(0,1fr) auto;gap:8px;padding:12px 10px}.day-summary-client-button{font-size:9px;padding:8px 7px}}
/* Personal reservation: calm details first, explicit confirmation second. */
.reservation-detail>h2{margin:12px 0}.reservation-service{line-height:1.9;color:var(--text-muted,#64707a);margin:20px 0 24px}.reservation-service strong{color:var(--text,#292d32);font-size:1.05em}.reservation-status{border-radius:14px;padding:15px 18px;background:#edf8f2;color:#246c50;margin:0 0 22px;font-weight:600}.reservation-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:22px 0}.reservation-cancel-link{border:0;background:none;padding:12px 6px;color:#6b6870;text-decoration:underline;text-underline-offset:4px;cursor:pointer;font:inherit;font-size:13px}.reservation-payment,.fee-payment-settings{border:1px solid #e2e4e7;border-radius:18px;padding:22px;margin:24px 0}.reservation-payment p,.fee-payment-settings p{line-height:1.8;margin:12px 0}.reservation-pix{margin:20px 0}.reservation-pix small,.fee-payment-settings small{display:block;line-height:1.7;color:#66717a;margin-top:16px}.pix-qr{background:white;padding:8px;max-width:270px;margin:22px auto}.pix-qr svg{width:100%;height:auto;display:block}.reservation-pix textarea{font-family:monospace;font-size:12px;min-height:100px;resize:vertical;word-break:break-all}.reservation-detail .cancellation-result{line-height:1.8}.reservation-detail .cancellation-policy{margin-bottom:20px}.fee-payment-settings .field{margin-top:18px}@media(max-width:540px){.reservation-actions>.btn{flex:1 1 200px}.reservation-payment,.fee-payment-settings{padding:18px}.reservation-detail{padding:24px}}
/* Client history stays compact until requested. */
.client-history-disclosure{border:1px solid var(--border,#e3e4e6);border-radius:15px;overflow:hidden}.client-history-disclosure>summary{display:flex;align-items:center;justify-content:space-between;gap:14px;list-style:none;padding:16px 18px;cursor:pointer;color:var(--text-primary,#292d32);background:var(--surface,#fff)}.client-history-disclosure>summary::-webkit-details-marker{display:none}.client-history-disclosure>summary b{display:block;font-size:13px}.client-history-disclosure>summary small{display:block;color:var(--text-secondary,#6a727a);font-size:11px;font-weight:400;margin-top:3px}.client-history-chevron{font-size:23px;transition:transform .2s;color:var(--palette-primary)}.client-history-disclosure[open] .client-history-chevron{transform:rotate(180deg)}.client-history-disclosure>summary:focus-visible{outline:2px solid var(--palette-primary);outline-offset:-3px}.client-history-content{padding:0 18px 10px;border-top:1px solid var(--border,#e3e4e6)}.cancellation-grace-notice{background:#edf8f2;border:1px solid #cde5d9;border-radius:13px;padding:16px;color:#246c50;margin:18px 0}.cancellation-grace-notice p{margin-bottom:0}
/* Soft section surfaces: the page and form fields retain their existing colors. */
.settings-category-panel{--settings-group-bg:#faf3f7;--settings-group-border:#eadce3;--settings-group-bg:color-mix(in srgb,var(--palette-primary) 6%,white);--settings-group-border:color-mix(in srgb,var(--palette-primary) 17%,white)}
.settings-category-panel .settings-option-group,.settings-category-panel .business-location-editor,.settings-category-panel .fee-payment-settings{background:var(--settings-group-bg);border:1px solid var(--settings-group-border);border-radius:18px;padding:22px;margin:0 0 22px}
.settings-category-panel .settings-option-group.tone-sage{background:#f0f7f4;border-color:#d9e8df}.settings-category-panel .settings-option-group.tone-sand{background:#fcf5eb;border-color:#eee0c9}
.settings-option-group>h3,.settings-category-panel .business-location-editor>h3,.settings-category-panel .fee-payment-settings>h3{font-family:inherit;font-size:14px;font-weight:600;line-height:1.6;color:#303b45;margin:0 0 19px}.settings-option-group>.field:last-child,.settings-option-group>.grid2:last-child .field,.settings-option-group>.contact-visibility:last-child{margin-bottom:0}.settings-option-group .contact-visibility,.business-location-editor .contact-visibility{background:transparent;border-color:var(--settings-group-border)}
.settings-category-panel .business-location-editor{background:#f0f5fa;border-color:#dbe5ee;padding-top:22px}.settings-category-panel .fee-payment-settings{background:#f0f5fa;border-color:#dbe5ee}.settings-category-panel .fee-payment-settings>h3{margin-bottom:8px}
.settings-category-panel .logo-editor{background:var(--settings-group-bg);border:1px solid var(--settings-group-border);border-radius:18px}.settings-category-panel .palette-picker{background:#f3f5f8;border:1px solid #e0e5eb;padding:22px;border-radius:18px;min-width:0}.settings-category-panel .palette-picker>legend{float:left;width:100%;margin:0 0 12px}.settings-category-panel .palette-picker>p{clear:both}.settings-category-panel .palette-card{background:white}
.settings-category-panel .working-day{background:#f4f7f9;border-color:#dde4ea;border-radius:16px}.settings-category-panel .working-day-head{background:var(--settings-group-bg);border-bottom:1px solid var(--settings-group-border)}.settings-category-panel .day-content{background:#f4f7f9}.settings-category-panel .lunch-times{background:#edf4f0;border:1px solid #dae7df;border-radius:12px;padding:14px}
.settings-category-panel .off-calendar{background:var(--settings-group-bg);border:1px solid var(--settings-group-border);border-radius:18px}.settings-category-panel .off-dates{background:#f0f7f4;border:1px solid #d9e8df;border-radius:18px;padding:20px}.settings-category-panel .off-date{background:white}.settings-category-panel .settings-section-head{background:linear-gradient(110deg,var(--settings-group-bg),#fff);border:1px solid var(--settings-group-border);border-radius:16px;padding:19px;margin-bottom:22px}
@media(max-width:700px){.settings-category-panel .settings-option-group,.settings-category-panel .business-location-editor,.settings-category-panel .fee-payment-settings,.settings-category-panel .palette-picker{padding:17px 15px;border-radius:15px;margin-bottom:18px}.settings-category-panel .settings-section-head{padding:17px 15px}.settings-option-group>h3{font-size:13px;margin-bottom:16px}.settings-category-panel .off-dates{padding:16px}.settings-category-panel .lunch-times{padding:12px}.settings-category-panel .palette-picker>legend{font-size:22px}}
/* Municipality selector: compact, searchable, and usable by touch or keyboard. */
.city-picker{position:relative;display:flex;flex-direction:column;gap:0}.city-picker>label{margin-bottom:9px}.city-picker>input{width:100%}.city-picker>small{font-size:11px;color:var(--text-secondary);line-height:1.7;margin-top:9px;font-weight:400}.city-options{position:relative;z-index:2;max-height:260px;overflow-y:auto;overscroll-behavior:contain;border:1px solid #d9e1e8;border-radius:13px;margin-top:8px;padding:5px;background:#fff;box-shadow:0 6px 18px #25314a09}.city-options button{display:block;width:100%;min-height:44px;padding:12px 13px;border:0;border-radius:9px;background:#fff;text-align:left;font:inherit;font-size:13px;color:#303b45;cursor:pointer;line-height:1.5}.city-options button:hover,.city-options button[aria-selected=true]{background:var(--palette-soft,#f6eaf0);color:var(--palette-primary,#a43e68)}.city-options button:focus-visible{outline:2px solid var(--palette-primary);outline-offset:-2px}.location-migration-note{font-size:11px;color:#68727c;line-height:1.7;padding:12px 14px;background:#fff9ec;border:1px solid #eee2c8;border-radius:12px;margin:0 0 20px}
/* Arrival warnings have fixed semantic colors across all business palettes. */
.event.arrival-waiting{background:#fff3e3;border-left-color:#d88a22;box-shadow:inset 0 0 0 1px #edc99c}.event.arrival-late{background:#fff0f0;border-left-color:#d05c64;box-shadow:inset 0 0 0 1px #e9b6bc}.event.arrival-waiting strong,.event.arrival-late strong{color:#30343b}.event.arrival-waiting p,.event.arrival-late p,.event.arrival-waiting .right,.event.arrival-late .right{color:#62616a}.arrival-note{display:table;font-size:10px;font-weight:600;line-height:1.5;margin-top:8px;padding:4px 8px;border-radius:7px;background:#fff8eb;color:#946018}.arrival-note[hidden]{display:none}.arrival-late .arrival-note{background:#ffe0e2;color:#a43745}.arrival-arrived .arrival-note{background:#eaf7ee;color:#28704c}.event-followup-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:0 2px}.event-followup-actions .reminder{text-align:left;line-height:1.6}.arrival-action{font:inherit;font-size:10px;color:#326f58;background:#eff7f2;border:1px solid #d9e9df;padding:7px 10px;border-radius:8px;min-height:36px;cursor:pointer}.arrival-action.is-arrived{color:#71767d;background:#f7f8fa;border-color:#e0e5e9}.appointment-arrival-check{display:flex;align-items:flex-start;gap:11px;background:#eff7f2;border:1px solid #d9e9df;border-radius:12px;padding:14px;margin:18px 0;color:#37473f;font-size:12px}.appointment-arrival-check input{margin-top:3px;accent-color:#32765b}.appointment-arrival-check b,.appointment-arrival-check small{display:block}.appointment-arrival-check small{font-weight:400;font-size:11px;line-height:1.7;color:#627368;margin-top:4px}@media(max-width:700px){.event-followup-actions{gap:5px 10px}.arrival-action{font-size:10px;min-height:36px}.arrival-note{font-size:10px;max-width:100%}}
/* Finance unread badge clears on visit; unresolved receipts stay highlighted. */
.nav button[data-tour-nav=finance]{position:relative}.finance-nav-badge{display:inline-grid;place-items:center;min-width:19px;height:19px;padding:0 5px;border-radius:20px;background:#bd465d;border:2px solid #fff;color:#fff;font-size:10px;font-weight:700;line-height:1;box-shadow:0 2px 5px #69334018;margin-left:auto}.finance-nav-badge[hidden]{display:none}.finance-review-summary{display:flex;align-items:flex-start;gap:15px;border:1px solid #ead8b0;border-radius:16px;background:#fff7e7;padding:20px 22px;margin:0 0 22px}.finance-review-count{flex-shrink:0;min-width:34px;height:34px;padding:0 8px;border-radius:11px;background:#f6e4ba;color:#8b5b16;display:grid;place-items:center;font-size:15px;font-weight:700}.finance-review-summary b{font-size:14px;color:#574b37}.finance-review-summary p{font-size:12px;line-height:1.8;color:#766951;margin-top:5px}.finance-row.finance-needs-review{background:#fff8ed;box-shadow:inset 3px 0 0 #d6a04e;border-bottom-color:#eee1cb;padding-left:20px}.finance-review-tag{display:table;padding:4px 8px;margin:7px 0;border-radius:7px;background:#f7e9cd;color:#88611e;font-size:10px;font-weight:500;line-height:1.6}.finance-review-tag[hidden]{display:none}@media(max-width:700px){.nav button[data-tour-nav=finance] .finance-nav-badge{position:absolute;top:5px;right:8px;margin:0;min-width:19px;height:19px;font-size:9px}.finance-review-summary{gap:12px;padding:17px 15px}.finance-review-summary b{font-size:13px}.finance-review-summary p{font-size:11px}.finance-row.finance-needs-review{padding-left:17px}}
/* Agenda handles attendance; payment actions are reserved for Finance. */
.appointment-card{border:1px solid #e4e8ed;border-radius:14px;background:#fff;overflow:hidden;margin:3px 0 10px}.appointment-card .event{border-radius:12px 12px 0 0;min-height:86px;box-shadow:none}.appointment-card .event-followup-actions{padding:14px 13px;gap:12px;background:#fff;align-items:center}.appointment-card .reminder{padding:6px 0;margin:0;font-size:11px;line-height:1.7}.attendance-action{background:#fff;border:1px solid #d7dfe6;border-radius:10px;color:#37434f;font-size:11px;font-weight:600;padding:11px 14px;min-height:42px;cursor:pointer}.attendance-action:hover{background:#f3f6f8;border-color:#a8b8c5}.attendance-action:focus-visible{outline:2px solid var(--palette-primary);outline-offset:3px}.appointment-time{display:block;font-size:12px;color:#5b6875}.appointment-price{display:block;font-size:11px;color:#687583;margin-top:7px}.arrival-completed .arrival-note{background:#e8f5ee;color:#2a6c50}.attendance-complete-label{font-size:11px;color:#3b745e}.attendance-finance-link{background:transparent;border:0;padding:8px 0;color:var(--palette-primary);font-size:11px;font-weight:500;text-align:right}.attendance-payment-help{padding:12px 14px;background:#f3f6f9;border-radius:10px;color:#677482;font-size:11px;line-height:1.7;margin:18px 0}.attendance-status-field{padding:17px;background:#f4f7f6;border:1px solid #e0e8e3;border-radius:13px;margin:20px 0}.simulation-label{display:table;background:#f0edf8;color:#6b5c87;border-radius:6px;font-size:9px;font-weight:500;padding:4px 7px;line-height:1.5;margin-top:8px}.simulation-message{white-space:pre-line;padding:20px 0;line-height:1.9;color:#4c5865}.payment-adjustment-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}.finance-row-actions .btn{min-height:42px}.appointment-card .event.arrival-waiting{box-shadow:inset 0 0 0 1px #edc99c}.appointment-card .event.arrival-late{box-shadow:inset 0 0 0 1px #e9b6bc}@media(max-width:700px){.appointment-card .event{gap:12px;padding:15px 12px;align-items:flex-start}.appointment-card .event>div:first-child{min-width:0;flex:1}.appointment-card .right{flex-shrink:0;max-width:118px}.appointment-card .event-followup-actions{padding:13px 12px;gap:12px;display:grid;grid-template-columns:minmax(0,1fr) auto}.appointment-card .reminder{font-size:10px;white-space:normal;text-align:left}.attendance-action{font-size:10px;padding:10px 11px;max-width:145px;white-space:normal;line-height:1.6}.attendance-finance-link{font-size:10px}.appointment-time{font-size:11px}.appointment-price{font-size:10px}.simulation-label{font-size:9px}}
/* Cancellation follow-up stays below service receipts and collapsed until requested. */
.cancellation-disclosure{margin-top:24px}.cancellation-disclosure>summary{list-style:none;display:flex;align-items:center;gap:14px;padding:21px 22px;cursor:pointer;background:#f7f8fa}.cancellation-disclosure>summary::-webkit-details-marker{display:none}.cancellation-disclosure>summary:focus-visible{outline:2px solid var(--palette-primary);outline-offset:-4px}.cancellation-disclosure-icon{display:grid;place-items:center;background:#fff1d8;color:#9b6a20;border-radius:12px;width:42px;height:42px;flex-shrink:0}.cancellation-disclosure-copy{flex:1;min-width:0}.cancellation-disclosure-copy>b{display:block;font-size:15px;font-weight:600;color:#35424f;line-height:1.6}.cancellation-disclosure-copy>small{display:block;font-size:11px;color:#717c88;line-height:1.7;margin-top:3px}.cancellation-notice-badge{display:grid;place-items:center;min-width:23px;height:23px;border-radius:20px;padding:0 6px;font-size:11px;font-weight:700;background:#b97724;color:white;flex-shrink:0}.cancellation-notice-badge[hidden]{display:none}.cancellation-disclosure-arrow{font-size:23px;color:#7c8792;transition:transform .2s}.cancellation-disclosure[open] .cancellation-disclosure-arrow{transform:rotate(180deg)}.cancellation-disclosure-content{border-top:1px solid #e2e6eb}.cancellation-disclosure-help{padding:19px 22px 0;font-size:12px;line-height:1.8;color:#687582}.cancellation-disclosure-content>.help{margin:18px 20px}.cancellation-disclosure .list-row{gap:18px}.cancellation-disclosure .list-row>.btn{flex-shrink:0}.simulation-payment-summary{margin:0 22px 22px;border:1px solid #e1dced;background:#f7f4fc;border-radius:14px;padding:18px}.simulation-payment-summary>b,.simulation-payment-summary b{font-size:13px;color:#605476}.simulation-payment-summary p{font-size:11px;line-height:1.8;color:#7a7089;margin:6px 0 15px}.simulation-method-totals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.simulation-method-totals>div{padding:12px;background:white;border:1px solid #e8e2ef;border-radius:10px}.simulation-method-totals span{display:block;font-size:11px;color:#736b7e}.simulation-method-totals strong{display:block;font-size:17px;color:#564c67;margin-top:8px}@media(max-width:700px){.cancellation-disclosure>summary{padding:18px 15px;gap:11px}.cancellation-disclosure-copy>b{font-size:13px}.cancellation-disclosure-copy>small{font-size:10px}.cancellation-disclosure-icon{width:34px;height:34px}.cancellation-disclosure-help{padding:17px 16px 0;font-size:11px}.cancellation-disclosure-content>.help{margin:16px}.cancellation-disclosure .list-row{align-items:flex-start;flex-direction:column;gap:12px}.cancellation-disclosure .list-row>.btn{align-self:flex-end;min-height:42px}.simulation-payment-summary{margin:0 16px 18px;padding:15px}.simulation-method-totals{gap:7px}.simulation-method-totals>div{padding:10px 8px}.simulation-method-totals strong{font-size:14px}}
/* Coordinated finance accents adapt to each business palette. */
.payment-summary .payment-total{--method-accent:var(--palette-primary);background:linear-gradient(145deg,color-mix(in srgb,var(--method-accent) 12%,white),color-mix(in srgb,var(--method-accent) 5%,white));border:1px solid color-mix(in srgb,var(--method-accent) 26%,white);border-top:3px solid var(--method-accent);box-shadow:0 4px 12px color-mix(in srgb,var(--method-accent) 7%,transparent)}
.payment-summary .payment-total[data-payment-method=cash]{--method-accent:var(--palette-secondary)}.payment-summary .payment-total[data-payment-method=card]{--method-accent:var(--palette-support)}.payment-summary .payment-total[data-payment-method=unknown]{--method-accent:#738092}
.payment-summary .payment-total>span{display:flex;align-items:center;gap:7px;color:#4b5965;font-weight:500}.payment-summary .payment-total>span:before{content:'';width:7px;height:7px;flex-shrink:0;border-radius:50%;background:var(--method-accent)}.payment-summary .payment-total>strong{color:#2f3c48;font-weight:700;letter-spacing:-.4px}
.payment-summary>.panel-head{background:linear-gradient(110deg,color-mix(in srgb,var(--palette-primary) 7%,white),white);border-bottom-color:color-mix(in srgb,var(--palette-primary) 18%,white)}
.cancellation-disclosure{border-color:color-mix(in srgb,var(--palette-primary) 29%,white);border-left:4px solid var(--palette-primary);box-shadow:0 4px 14px color-mix(in srgb,var(--palette-primary) 6%,transparent)}.cancellation-disclosure>summary{background:linear-gradient(110deg,color-mix(in srgb,var(--palette-primary) 12%,white),color-mix(in srgb,var(--palette-secondary) 6%,white));transition:background .18s}.cancellation-disclosure>summary:hover{background:linear-gradient(110deg,color-mix(in srgb,var(--palette-primary) 16%,white),color-mix(in srgb,var(--palette-secondary) 8%,white))}.cancellation-disclosure-icon{background:#ffffffd9;border:1px solid color-mix(in srgb,var(--palette-primary) 20%,white);color:var(--palette-primary)}.cancellation-disclosure-copy>b{color:#303e49}.cancellation-disclosure-copy>small{color:#667281}.cancellation-disclosure-arrow{display:grid;place-items:center;flex-shrink:0;width:36px;height:36px;border-radius:50%;background:var(--palette-primary);color:white;font-size:24px;font-weight:600;line-height:1;box-shadow:0 3px 8px color-mix(in srgb,var(--palette-primary) 16%,transparent)}.cancellation-disclosure-content{background:white;border-top-color:color-mix(in srgb,var(--palette-primary) 21%,white)}
.finance-receipts>.panel-head{background:linear-gradient(110deg,color-mix(in srgb,var(--palette-secondary) 9%,white),white);border-bottom-color:color-mix(in srgb,var(--palette-secondary) 22%,white)}.finance-row-actions .btn.soft{background:color-mix(in srgb,var(--palette-primary) 8%,white);border-color:color-mix(in srgb,var(--palette-primary) 24%,white);color:var(--palette-primary)}.finance-row-actions .btn.soft:hover{background:color-mix(in srgb,var(--palette-primary) 13%,white)}
@media(max-width:700px){.cancellation-disclosure-arrow{width:30px;height:30px;font-size:21px}.payment-summary .payment-total{border-top-width:3px}.payment-summary .payment-total>strong{font-size:21px}}

/* Minha assinatura: a calm overview, with billing integration still pending. */
.subscription-plan{position:relative;padding:28px;border-radius:18px;margin-bottom:22px;border:1px solid color-mix(in srgb,var(--palette-primary) 24%,white);background:linear-gradient(135deg,var(--palette-soft),white);overflow:hidden}
.subscription-plan h3{font-size:30px;margin:12px 0 8px;color:#303944}.subscription-plan>p{margin:0 0 13px;color:#596574;line-height:1.7}.subscription-plan-caption{font-size:13px;color:#596574}.subscription-plan ul{padding:18px 0 0;margin:18px 0 0;list-style:none;border-top:1px solid color-mix(in srgb,var(--palette-primary) 15%,white);display:grid;gap:12px;font-size:13px;color:#3b4855}.subscription-plan li:before{content:'✓';color:var(--palette-primary);margin-right:10px;font-weight:700}.subscription-status{display:table;margin-bottom:24px;padding:7px 12px;border-radius:20px;background:#fff;color:var(--palette-primary);font-size:11px;font-weight:600;border:1px solid color-mix(in srgb,var(--palette-primary) 22%,white)}
.subscription-facts{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:0 24px}.subscription-facts>div{padding:17px 0;border-bottom:1px solid #d9e8df}.subscription-facts dt{font-size:12px;color:#64736d;line-height:1.6}.subscription-facts dd{margin:6px 0 0;font-size:14px;font-weight:600;color:#34463e;line-height:1.6}.subscription-note{font-size:12px;line-height:1.8;color:#607369;margin:18px 0 0}.subscription-history{border:1px solid color-mix(in srgb,var(--palette-secondary) 22%,white);background:color-mix(in srgb,var(--palette-secondary) 6%,white);border-radius:16px;margin-bottom:22px}.subscription-history summary{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;padding:20px;list-style:none;color:#3b4855;font-size:14px;font-weight:600}.subscription-history summary::-webkit-details-marker{display:none}.subscription-history summary>span:first-child{display:flex;align-items:center;gap:10px}.subscription-history summary>span:last-child{color:var(--palette-primary);font-size:22px}.subscription-history[open] summary>span:last-child{transform:rotate(180deg)}.subscription-history>div{padding:0 20px 20px;color:#5d6975;font-size:13px;line-height:1.8}.subscription-history p{margin:6px 0 0}.subscription-demo-note{padding:18px 20px;background:#fcf5eb;border:1px solid #eee0c9;border-radius:14px;font-size:12px;line-height:1.8;color:#756248}.subscription-demo-note p{margin:6px 0 0}.subscription-history summary:focus-visible{outline:2px solid var(--palette-primary);outline-offset:3px;border-radius:16px}
@media(max-width:600px){.subscription-plan{padding:22px}.subscription-facts{grid-template-columns:1fr}.subscription-plan h3{font-size:27px}}

/* Compact summaries: one reading surface, fewer separate tiles. */
.overview-summary{background:#fff;border:1px solid #dfe4eb;border-radius:17px;margin:0 0 24px;overflow:hidden;box-shadow:0 3px 15px #25314a03}
.overview-count{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px 22px;background:color-mix(in srgb,var(--palette-primary) 8%,white);border-bottom:1px solid color-mix(in srgb,var(--palette-primary) 14%,white)}
.overview-count>span{display:flex;align-items:center;gap:7px;font-size:13px;color:#4d5865;line-height:1.6}.overview-count .ico{color:var(--palette-primary);margin-right:4px;flex-shrink:0}.overview-count b{font-size:16px;color:var(--palette-primary);font-weight:700}.overview-count small{font-size:11px;color:#66717d;white-space:nowrap;text-transform:capitalize}
.overview-money{display:grid;grid-template-columns:1fr 1fr;margin:0}.overview-money>div{padding:21px 22px;min-width:0}.overview-money>div+div{border-left:1px solid #e5e9ed}.overview-received{background:linear-gradient(130deg,#f0f9f4,white)}.overview-due{background:linear-gradient(130deg,#fff8ec,white)}.overview-money dt{display:flex;align-items:center;gap:8px;color:#586572;font-size:13px}.overview-dot{width:7px;height:7px;display:inline-block;border-radius:50%;background:#309673}.overview-due .overview-dot{background:#c58a2b}.overview-money dd{margin:10px 0 6px;color:#247354;font:700 clamp(21px,2.4vw,29px)/1.3 Manrope,sans-serif;letter-spacing:-.6px;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.overview-due dd{color:#93611d}.overview-money small{font-size:11px;color:#6b7682;line-height:1.6}
.payment-summary .payment-totals{display:grid;grid-template-columns:1fr;gap:0;padding:0 22px}
.payment-summary .payment-total{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:17px 0;min-width:0;border:0;border-bottom:1px solid #e8ecf0;border-radius:0;background:transparent;box-shadow:none}
.payment-summary .payment-total:last-child{border-bottom:0}.payment-summary .payment-total span{display:flex;align-items:center;gap:10px;font-size:13px;color:#4e5c68}.payment-summary .payment-total span:before{width:9px;height:9px;flex:0 0 9px;margin:0;background:var(--method-accent)}.payment-summary .payment-total strong{margin:0;font-size:22px;color:#34414d;line-height:1.4;font-variant-numeric:tabular-nums;text-align:right}.payment-summary .panel-head{padding:19px 22px}.payment-summary .panel-head h2{font-size:22px}.payment-summary .panel-head p{margin-top:5px}
@media(max-width:650px){.overview-count{padding:12px 16px;gap:6px;flex-wrap:wrap}.overview-count>span{font-size:12px}.overview-count small{font-size:10px;margin-left:auto}.overview-money>div{padding:17px 16px}.overview-money dt{font-size:12px}.overview-money dd{font-size:clamp(20px,5.4vw,26px)}.overview-money small{font-size:10px}.payment-summary .payment-totals{padding:0 18px}.payment-summary .payment-total{padding:15px 0}.payment-summary .payment-total strong{font-size:21px}.payment-summary .panel-head{padding:18px}.payment-summary .panel-head h2{font-size:21px}}

/* Appointment status has priority over the brand/service color. */
.appointment-card .event:not(.block){background:var(--appointment-future-bg,color-mix(in srgb,var(--palette-primary) 4%,white));border-left-color:var(--appointment-future-border,color-mix(in srgb,var(--palette-primary) 30%,white));box-shadow:none}
html[data-palette="rose"]{--appointment-future-bg:#fcf7fa;--appointment-future-border:#d6bed1}
.appointment-card .event.arrival-arrived:not(.block){background:#f0f8f4;border-left-color:#71a78d}
.appointment-card .event.arrival-completed:not(.block){background:#eaf6ee;border-left-color:#40936a}
.appointment-card:has(.arrival-completed){border-color:#cce3d5}.appointment-card:has(.arrival-completed) .event-followup-actions{background:#f2f9f5}.appointment-card .arrival-completed .arrival-note{background:#d6eddf;color:#276044}.appointment-card:has(.arrival-completed) .attendance-finance-link{color:#326e52}
.appointment-card .event.arrival-waiting:not(.block){background:#fff3e3;border-left-color:#d88a22;box-shadow:inset 0 0 0 1px #edc99c}
.appointment-card .event.arrival-late:not(.block){background:#fff0f0;border-left-color:#d05c64;box-shadow:inset 0 0 0 1px #e9b6bc}

.report-launch{background:var(--palette-soft);color:var(--palette-primary);border-color:color-mix(in srgb,var(--palette-primary) 24%,white);white-space:nowrap}
#reports-modal{width:min(820px,calc(100% - 28px));max-width:820px;max-height:90dvh;padding:0;border:1px solid #dce3ea;border-radius:22px;color:#35424e;background:#fff;overflow:auto}#reports-modal::backdrop{background:#22303c55;backdrop-filter:blur(1px)}.report-top{position:sticky;top:0;z-index:2;background:#fff;display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid #e2e7ed;padding:23px 26px}.report-top h2{font-size:30px;margin-top:6px}.report-top .btn{font-size:12px;min-height:44px;flex-shrink:0}.report-body{padding:24px 26px}.report-filters{display:grid;grid-template-columns:1fr 1.4fr;gap:16px;padding:18px;background:color-mix(in srgb,var(--palette-primary) 6%,white);border:1px solid color-mix(in srgb,var(--palette-primary) 15%,white);border-radius:14px}.report-filters .field{margin:0;min-width:0;font-size:12px}.report-filters input,.report-filters select{width:100%;min-width:0;min-height:43px}.report-range{display:grid;grid-template-columns:1fr 1fr;gap:10px;min-width:0}.report-period{margin:22px 0 7px;font-weight:600;font-size:15px}.report-basis,.report-footnote{font-size:11px;line-height:1.8;color:#6d7884}.report-basis{margin-bottom:20px}.report-metrics{display:grid;grid-template-columns:1fr 1fr;gap:12px}.report-metric{padding:18px;border-radius:13px;background:var(--palette-soft);border:1px solid color-mix(in srgb,var(--palette-primary) 16%,white);min-width:0}.report-metric.green{background:#eef8f2;border-color:#d4e8dc}.report-metric.amber{background:#fff7e9;border-color:#efdfc1}.report-metric>span{display:block;font-size:12px;line-height:1.7;color:#576573}.report-metric strong{display:block;font:700 25px/1.4 Manrope,sans-serif;margin:8px 0;color:#35414e;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.report-metric.green strong{color:#267052}.report-metric.amber strong{color:#94621d}.report-metric small{font-size:10px;color:#6b7782;line-height:1.7;display:block}.report-insights{display:grid;grid-template-columns:1fr 1fr;margin:20px 0;gap:20px}.report-insights>div{display:grid;gap:7px;padding:0 4px}.report-insights span{font-size:12px}.report-insights b{font-size:20px;color:#35414e}.report-insights small{font-size:10px;line-height:1.8;color:#6a7683}.report-section{border-top:1px solid #e5e9ee;padding-top:22px;margin-top:22px}.report-section h3{font-size:16px}.report-section>p,.report-cancellations>p{font-size:11px;line-height:1.8;color:#6c7985;margin-top:8px}.report-methods{margin:12px 0 0}.report-methods>div{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:13px 0;border-bottom:1px solid #edf0f3;font-size:12px;line-height:1.7}.report-methods>div:last-child{border-bottom:0}.report-methods dd{margin:0;font-size:16px;font-weight:600;white-space:nowrap;color:#35414e}.report-table-wrap{overflow-x:auto}.report-table{border-collapse:collapse;width:100%;font-size:12px;margin:15px 0 0}.report-table th{text-align:left;font-size:10px;color:#6b7783;font-weight:500}.report-table th,.report-table td{padding:13px 8px;border-bottom:1px solid #e8ecf0;line-height:1.7}.report-table th:first-child,.report-table td:first-child{padding-left:0;overflow-wrap:anywhere}.report-table th:last-child,.report-table td:last-child{text-align:right;white-space:nowrap;padding-right:0}.report-cancellations{padding:17px;border-radius:12px;background:#fff8ed;border:1px solid #efe2cb;margin-top:24px}.report-cancellations summary{display:flex;align-items:center;justify-content:space-between;cursor:pointer;font-size:13px;font-weight:600;list-style:none}.report-cancellations summary::-webkit-details-marker{display:none}.report-cancellations summary span{color:#986624;font-size:21px}.report-footnote{margin-top:24px}.report-empty{padding:17px;background:#f6f8fa;border-radius:10px;font-size:12px;line-height:1.8;color:#687582;margin-bottom:16px}
@media(max-width:650px){.report-launch{width:100%;min-height:44px}.heading:has(.report-launch){align-items:stretch;flex-direction:column}.report-top{padding:18px}.report-top h2{font-size:25px}.report-top .eyebrow{font-size:9px;letter-spacing:1.4px}.report-body{padding:18px}.report-filters{grid-template-columns:1fr;padding:14px;gap:13px}.report-metric{padding:14px 12px}.report-metric strong{font-size:22px}.report-metric>span{font-size:11px}.report-metrics{gap:10px}.report-insights{gap:14px}.report-methods dd{font-size:14px}.report-table{font-size:11px}}

.appointment-payment-status{display:inline-block;margin-top:9px;border:1px solid;border-radius:7px;padding:4px 8px;font-size:10px;line-height:1.6;font-weight:600;white-space:nowrap}.appointment-payment-status.is-paid{background:#def2e5;border-color:#b5dcc3;color:#286443}.appointment-payment-status.is-unpaid{background:#fff0f1;border-color:#edc9ce;color:#9f3c4b}.appointment-payment-details{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:13px}.appointment-payment-details .appointment-payment-status{margin:0}.appointment-payment-details .btn{font-size:11px;min-height:42px}.finance-row.finance-selected-receipt{outline:2px solid var(--palette-primary);outline-offset:-2px;background:color-mix(in srgb,var(--palette-primary) 7%,white);border-radius:12px;scroll-margin:25px}
@media(max-width:650px){.appointment-payment-status{font-size:9px;padding:3px 7px}.appointment-payment-details .btn{width:100%}}

/* Receipt tabs keep outstanding payments separate from the paid archive. */
.receipt-filters{display:flex;gap:7px;padding:16px 20px;background:#fff;border-bottom:1px solid #e8ecf0}.receipt-filters button{display:flex;align-items:center;justify-content:center;gap:9px;min-height:43px;padding:10px 17px;border:1px solid #e0e5ec;border-radius:10px;background:#fff;color:#62707d;font-size:12px;font-weight:600}.receipt-filters button[aria-pressed="true"]{background:var(--palette-soft);border-color:color-mix(in srgb,var(--palette-primary) 35%,white);color:var(--palette-primary)}.receipt-filters button span{display:grid;place-items:center;min-width:23px;height:23px;padding:0 5px;border-radius:20px;font-size:10px;background:#f0f3f6;color:#667380}.receipt-filters button[aria-pressed="true"] span{background:var(--palette-primary);color:#fff}.receipt-filters button:focus-visible{outline:2px solid var(--palette-primary);outline-offset:2px}
.receipt-list{padding:18px 20px;display:grid;gap:15px}.finance-receipts .receipt-card{display:block;border:1px solid #e0e6ec;border-radius:14px;background:#fff;padding:18px;margin:0;min-width:0}.finance-receipts .receipt-card.finance-needs-review{background:#fffcf5;border-color:#e8d8b5;box-shadow:inset 3px 0 0 #c58a2b}.receipt-main{display:flex;align-items:center;gap:14px}.receipt-date{display:flex;flex-direction:column;align-items:center;justify-content:center;flex-shrink:0;min-width:57px;padding:9px 10px;background:var(--palette-soft);border:1px solid color-mix(in srgb,var(--palette-primary) 16%,white);border-radius:11px;line-height:1.3;color:var(--palette-primary)}.receipt-date strong{font-size:23px;font-weight:700}.receipt-date>span{font-size:10px;text-transform:uppercase;margin-top:2px}.receipt-date small{font-size:9px;color:#74808b;margin-top:3px}.receipt-description{flex:1;min-width:0;display:grid;gap:5px}.receipt-client{font-size:15px;color:#303d49;line-height:1.5;overflow-wrap:anywhere}.receipt-service{font-size:12px;color:#4e5e6d;font-weight:500;line-height:1.6;overflow-wrap:anywhere}.receipt-time{display:flex;align-items:center;gap:5px;font-size:12px;font-weight:600;color:#536574;line-height:1.5}.receipt-time .ico{width:14px;height:14px;color:var(--palette-primary)}.receipt-time>span{font-size:10px;font-weight:400;color:#77838f}.receipt-price{font-size:18px;color:#344953;white-space:nowrap;font-variant-numeric:tabular-nums}.receipt-state:empty{display:none}.receipt-state .finance-review-tag{display:table;font-size:10px;line-height:1.7;margin-top:12px}.receipt-state .payment-method-tag{font-size:10px;margin-top:12px}.finance-receipts .receipt-card .finance-row-actions{margin-top:15px;padding-top:14px;border-top:1px solid #e8ecf0;display:flex;justify-content:flex-end}.finance-receipts .receipt-card .finance-row-actions .btn{font-size:11px;min-height:42px}.receipt-empty{padding:20px 10px;text-align:center;color:#536270;font-size:13px;line-height:1.8}.receipt-empty p{font-size:12px;margin-top:6px;color:#78838e}
@media(max-width:650px){.receipt-filters{padding:14px 16px}.receipt-filters button{flex:1;padding:9px 12px}.receipt-list{padding:15px;gap:13px}.finance-receipts .receipt-card{padding:16px 14px}.receipt-main{gap:11px;flex-wrap:wrap}.receipt-date{min-width:51px;padding:8px}.receipt-date strong{font-size:22px}.receipt-client{font-size:14px}.receipt-service{font-size:12px}.receipt-description{min-width:90px}.receipt-price{font-size:16px;margin-left:auto}.finance-receipts .receipt-card .finance-row-actions .btn{flex:1;width:100%}}

/* Fine line illustrations identify the profession without changing its palette. */
.specialty-art{display:block;color:var(--palette-primary);pointer-events:none}.specialty-art svg{display:block;width:100%;height:100%}.specialty-heading>div:first-child{position:relative;isolation:isolate}.specialty-heading>div:first-child>.specialty-art{position:absolute;width:128px;height:116px;right:-18px;top:-22px;z-index:-1;opacity:.17;transform:rotate(-8deg)}.specialty-sidebar{position:relative;isolation:isolate}.specialty-sidebar>.specialty-art{position:absolute;right:2px;bottom:0;width:82px;height:80px;opacity:.13;z-index:-1}.studio{position:relative;isolation:isolate}.studio>.specialty-art{position:absolute;right:12px;top:20px;width:140px;height:130px;opacity:.16;z-index:-1;transform:rotate(8deg)}
.specialty-control{margin:0 0 24px;min-width:0}.specialty-field-label{display:block;font-size:13px;line-height:1.7;color:#56616e;margin-bottom:9px}.specialty-picker{position:relative;background:#fff;border:1px solid #dce1e8;border-radius:12px;overflow:hidden}.specialty-picker>summary{list-style:none;display:flex;align-items:center;gap:12px;min-height:62px;padding:10px 14px;cursor:pointer;color:#35414e}.specialty-picker>summary::-webkit-details-marker{display:none}.specialty-picker>summary>b{flex:1;font-size:13px;font-weight:500;line-height:1.7}.specialty-picker>summary>i{font-style:normal;color:var(--palette-primary);font-size:22px}.specialty-picker[open]>summary>i{transform:rotate(180deg)}.specialty-selected-icon{display:grid;place-items:center;width:39px;height:39px;border-radius:10px;background:var(--palette-soft);color:var(--palette-primary);flex-shrink:0}.specialty-selected-icon svg{width:34px;height:34px}.specialty-picker summary:focus-visible,.specialty-option:focus-visible{outline:2px solid var(--palette-primary);outline-offset:-3px}.specialty-search-panel{padding:12px;border-top:1px solid #e7ebf0;background:#fafbfd}.specialty-search{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid #dce3ea;border-radius:10px;padding:0 12px;cursor:text}.specialty-search>span{color:var(--palette-primary);display:flex}.specialty-search input{min-width:0;width:100%;border:0!important;outline:0!important;padding:12px 0!important;background:transparent!important;font-size:13px;color:#35424e;box-shadow:none!important}.specialty-search:focus-within{outline:2px solid color-mix(in srgb,var(--palette-primary) 30%,white);border-color:var(--palette-primary)}.specialty-results{max-height:255px;overflow-y:auto;overscroll-behavior:contain;margin-top:10px;display:grid;gap:5px;scrollbar-width:thin}.specialty-option{display:flex;align-items:center;gap:10px;padding:9px 10px;min-height:50px;text-align:left;border-radius:9px;background:#fff;border:1px solid #e8ecf1;color:#455463;width:100%}.specialty-option>span{width:34px;height:34px;color:var(--palette-primary);flex-shrink:0}.specialty-option svg{width:100%;height:100%}.specialty-option>b{flex:1;font-size:12px;font-weight:500;line-height:1.6}.specialty-option>i{font-style:normal;color:var(--palette-primary)}.specialty-option[aria-pressed="true"]{background:var(--palette-soft);border-color:color-mix(in srgb,var(--palette-primary) 25%,white)}.specialty-option:hover{border-color:var(--palette-primary)}.specialty-search-count{display:block;font-size:10px;line-height:1.8;color:#77828e;margin:9px 4px 0}.specialty-no-results{font-size:12px;line-height:1.8;padding:13px;color:#6a7784}.specialty-selection-preview{display:flex;align-items:center;gap:14px;border:1px solid color-mix(in srgb,var(--palette-primary) 14%,white);background:linear-gradient(115deg,var(--palette-soft),white);border-radius:12px;margin-top:12px;padding:14px 16px}.specialty-selection-preview>span{display:block;color:var(--palette-primary);width:68px;height:65px;flex-shrink:0}.specialty-selection-preview svg{width:100%;height:100%}.specialty-selection-preview b{font-size:12px;font-weight:600;color:#455260;line-height:1.6;display:block}.specialty-selection-preview p{font-size:11px;line-height:1.8;color:#74808b;margin-top:4px}.specialty-help{display:block;font-size:10px;color:#7a8590;line-height:1.8;margin:9px 2px 0}
@media(max-width:650px){.specialty-heading>div:first-child>.specialty-art{right:0;top:-10px;width:102px;height:98px;opacity:.13}.studio>.specialty-art{width:92px;height:88px;right:0;top:22px}.specialty-field-label{font-size:12px}.specialty-selection-preview{padding:12px;gap:10px}.specialty-selection-preview>span{width:54px;height:55px}.specialty-picker>summary>b{font-size:12px}.specialty-search-panel{padding:10px}.specialty-results{max-height:235px}}

/* Recognizable professional identity, kept separate from status/payment colors. */
.specialty-menu-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:27px;height:27px;color:var(--palette-primary)}.specialty-menu-icon svg{display:block;width:100%;height:100%}.nav button>.specialty-menu-icon{color:inherit;width:23px;height:23px}.specialty-identity{display:flex;align-items:center;gap:12px;margin:22px 0 0;padding:13px 17px;border:1px solid color-mix(in srgb,var(--palette-primary) 20%,white);border-radius:14px;background:linear-gradient(110deg,var(--palette-soft),white);min-height:68px;overflow:hidden}.specialty-identity>.specialty-menu-icon{width:42px;height:42px;padding:3px;border-radius:11px;background:#fff;border:1px solid color-mix(in srgb,var(--palette-primary) 14%,white)}.specialty-identity>span:nth-child(2){display:grid;gap:4px;flex:1;min-width:0}.specialty-identity small{font-size:9px;color:#7c8793;letter-spacing:1.4px;text-transform:uppercase}.specialty-identity b{font-size:13px;font-weight:600;line-height:1.6;color:#465261}.specialty-identity-flourish{display:flex;align-items:center;gap:15px;color:var(--palette-primary);opacity:.65}.specialty-identity-flourish>svg{width:54px;height:48px;transform:rotate(12deg)}.specialty-identity-flourish i{display:block;width:65px;height:1px;background:currentColor;opacity:.35}
.specialty-heading>div:first-child{flex:1}.specialty-heading>div:first-child>.specialty-art{position:static;float:right;z-index:auto;opacity:.85;width:86px;height:84px;padding:9px;margin:0 0 8px 16px;border:1px solid color-mix(in srgb,var(--palette-primary) 18%,white);border-radius:19px;background:var(--palette-soft);transform:none}.specialty-heading>div:first-child:after{content:'';display:table;clear:both}.specialty-sidebar>.specialty-art{opacity:.3}.studio>.specialty-art{opacity:.6;z-index:0;background:color-mix(in srgb,var(--palette-primary) 5%,white);border-radius:24px;padding:12px;width:112px;height:108px;right:3px;top:25px}.studio>.eyebrow,.studio>.logo-display,.studio>.brand-avatar,.studio>h1,.studio>p{position:relative}
.agenda-date-identity{display:flex;align-items:center;gap:12px}.agenda-date-identity>.specialty-menu-icon{width:42px;height:43px;padding:6px;border:1px solid color-mix(in srgb,var(--palette-primary) 20%,white);background:var(--palette-soft);border-radius:11px}.specialty-service-item{display:flex;align-items:center;gap:13px;min-width:0}.specialty-service-item>.specialty-menu-icon{width:45px;height:45px;padding:5px;background:var(--palette-soft);border:1px solid color-mix(in srgb,var(--palette-primary) 14%,white);border-radius:11px}.service-option>.specialty-menu-icon{width:42px;height:42px;padding:5px;border-radius:11px;background:var(--palette-soft)}.service-option>div{flex:1}.event-client-heading{display:flex;align-items:center;gap:8px}.event-client-heading>.specialty-menu-icon{width:27px;height:27px;padding:2px;border-radius:7px;background:#ffffffb3;color:var(--palette-primary)}.event-client-heading>strong{min-width:0;overflow-wrap:anywhere}.specialty-change-notice{padding:14px 16px;margin-top:12px;border:1px solid #e7dcc4;background:#fff8eb;border-radius:12px;color:#746143;font-size:11px;line-height:1.8}.specialty-change-notice b{display:block;font-weight:600}.specialty-change-notice p{margin-top:5px;color:#7b705d}.specialty-control>.specialty-selection-preview:first-of-type{margin-top:0}
@media(max-width:650px){.specialty-identity{padding:11px 13px;margin-top:16px;gap:10px;min-height:64px}.specialty-identity>.specialty-menu-icon{width:38px;height:38px}.specialty-identity b{font-size:12px}.specialty-identity small{font-size:8px;letter-spacing:1.1px}.specialty-identity-flourish>svg{width:40px;height:41px}.specialty-identity-flourish i{display:none}.specialty-heading>div:first-child>.specialty-art{width:65px;height:65px;padding:7px;margin-left:10px;border-radius:15px;opacity:.85}.studio>.specialty-art{width:84px;height:82px;padding:8px;top:33px;right:0;opacity:.6}.agenda-date-identity{gap:9px}.agenda-date-identity>.specialty-menu-icon{width:34px;height:37px;padding:4px}.specialty-service-item{gap:10px}.specialty-service-item>.specialty-menu-icon{width:38px;height:40px}.event-client-heading{gap:6px}.event-client-heading>.specialty-menu-icon{width:24px;height:24px}.service-option>.specialty-menu-icon{width:35px;height:37px;min-width:35px;padding:4px}}

/* Editorial imagery replaces repeated decorative pictograms. */
.specialty-editorial-image{background-image:url('/beauty/editorial-a.webp');background-size:400% 500%;background-position:var(--art-x) var(--art-y);background-repeat:no-repeat;aspect-ratio:1;overflow:hidden}
.specialty-editorial-image[data-editorial-series="b"]{background-image:url('/beauty/editorial-b.webp')}
.specialty-heading>div:first-child>.specialty-editorial-image{position:static;float:right;width:120px;height:120px;padding:0;margin:0 0 12px 22px;border:0;border-radius:52% 48% 20% 20%;opacity:1;transform:rotate(3deg);box-shadow:0 8px 24px #59453012;background-color:#f3ece5}.specialty-heading>div:first-child{padding-top:3px}.specialty-heading>div:first-child>h1{position:relative}.specialty-heading .eyebrow{font-size:10px;letter-spacing:2px}
.studio>.specialty-editorial-image{width:112px;height:112px;padding:0;top:24px;right:0;opacity:.95;border:0;border-radius:56% 44% 45% 55%;transform:rotate(7deg);z-index:0;box-shadow:0 8px 22px #49362a0d;background-color:#f3ece5}
.specialty-sidebar:after{content:'';position:absolute;right:-7px;bottom:0;width:75px;height:90px;border:1px solid color-mix(in srgb,var(--palette-primary) 22%,transparent);border-radius:80% 20% 75% 25%;transform:rotate(30deg);z-index:-1}.specialty-sidebar:before{content:'';position:absolute;right:18px;bottom:4px;width:48px;height:75px;border:1px solid color-mix(in srgb,var(--palette-secondary) 20%,transparent);border-radius:70% 30% 75% 25%;transform:rotate(10deg);z-index:-1}.specialty-service-item{display:block}.specialty-service-item>div{min-width:0}.agenda-date-identity{gap:0}.event-client-heading{display:block}
@media(max-width:650px){.specialty-heading>div:first-child>.specialty-editorial-image{width:94px;height:94px;margin:0 0 10px 14px;padding:0;opacity:1;transform:rotate(3deg);border-radius:52% 48% 20% 20%}.studio>.specialty-editorial-image{width:82px;height:82px;padding:0;opacity:.95;top:35px;right:-3px}.specialty-heading .eyebrow{font-size:9px;letter-spacing:1.6px}.specialty-heading>div:first-child>h1{font-size:clamp(29px,7.6vw,40px)}}
/* Keep atlas windows intact when earlier header styles set a background shorthand. */
.specialty-editorial-image{background-image:url('/beauty/editorial-a.webp')!important;background-size:400% 500%!important;background-position:var(--art-x) var(--art-y)!important;background-repeat:no-repeat!important}
.specialty-editorial-image[data-editorial-series="b"]{background-image:url('/beauty/editorial-b.webp')!important}
html[data-palette="navy"] .logo>span,html[data-palette="graphite"] .logo>span{color:var(--palette-secondary)!important}

/* Keep customer branding soft and framed, with no decorative editorial image. */
.logo-display img{border-radius:8px}.logo-display.logo-shape-round img{border-radius:50%}
.client-welcome-visual{display:block}.client-welcome-brand .logo-display{border-radius:16px;border:1px solid color-mix(in srgb,var(--palette-primary) 20%,white);box-shadow:0 3px 14px #00000006}
.booking-deposit .booking-payment-note{font-size:.9em;color:var(--text-secondary)}

/* Keep hidden finance warnings hidden even inside the more specific receipt layout. */
.receipt-state .finance-review-tag[hidden]{display:none!important}.receipt-state>[data-finance-review]:empty{display:none}.receipt-attendance-tag{display:inline-flex;align-items:center;gap:5px;margin:12px 0 0;padding:5px 9px;font-size:10px;font-weight:600;line-height:1.6;border-radius:7px;white-space:normal}.receipt-attendance-completed{background:#d6eddf;color:#276044}.receipt-attendance-arrived{background:#eaf7ee;color:#28704c}.receipt-attendance-scheduled{background:var(--palette-soft);color:var(--palette-primary)}.receipt-attendance-unconfirmed{background:#f0f2f4;color:#59636d}
