/* Maison WE Beauty: ivory, antique gold and chocolate from the salon sign. */
:root{--paper:#f5efe6;--white:#fffdf8;--ink:#3d2b23;--muted:#756457;--line:#dfd2c0;--sage:#68452f;--sage-light:#f0e3c8;--beige:#ecddc4;--clay:#a17b37;--gold:#ad853c}
body{background-color:var(--paper);color:var(--ink)}
.business-logo{display:block;object-fit:contain;width:108px;height:108px;border-radius:50%;background:#fffdf8;border:1px solid #e9ddc8;margin-top:8px}
.logo-name{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip-path:inset(50%);white-space:nowrap;border:0!important}
.has-business-logo>small{display:none}.brand .product-name,.identity b,.mobile-brand .product-name{color:#8c642a}
.sidebar{background:#4a3026}.sidebar .product-name{color:#e4c47f}.sidebar .business-logo{width:136px;height:136px;margin-top:14px}.sidebar .workspace{display:none}.sidebar .nav-label{margin-top:25px}.sidebar nav button.active{background:#e7cb8e;color:#3d2b23}.sidebar nav button:hover{background:#654535;color:#fff9eb}
.client-header .brand,.client-footer .brand,.identity{letter-spacing:0}.client-header .product-name,.client-footer .product-name{color:#8c642a}.client-header{padding-top:18px;padding-bottom:18px}.direct-booking .client-header{padding-top:14px;padding-bottom:14px}.direct-booking .booking-summary{background:#f0e5d1;border-color:#d8bd84}
button.primary,.button-link.primary,.button{background:#68452f;border-color:#68452f;color:#fffdf8}button.primary:hover,.button:hover{background:#4a3026}.eyebrow{color:#87622b}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline-color:#ad853c}
.client-picker{background:#f2e7d1;border-color:#d8c393}.client-result{border-color:#dfd2bb}#fields input[readonly]{background:#f4eee2;color:#5c4433}
.salon-logo-display{background:#fffdf8;border:1px solid #d8c393;box-shadow:0 15px 45px #68452f10;border-radius:50%;aspect-ratio:1;min-height:0;padding:0;max-width:390px;justify-self:center;width:100%}.salon-logo-display img{position:static;width:100%;height:100%;object-fit:contain}.salon-logo-display span,.salon-logo-display small{display:none}
@media(max-width:760px){.business-logo{width:80px;height:80px;margin-top:5px}.direct-booking .client-header .product-name{font-size:22px}.mobile-brand.has-business-logo{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.mobile-brand .business-logo{width:51px;height:51px;order:0;margin:0}.mobile-brand .product-name{order:1;font-size:23px;margin:0}.sidebar nav button.active{background:#795632;color:#fff7e6;border-top-color:#e0bd69}.topbar{height:86px}.salon-logo-display{max-width:260px}.salon-logo-display img{opacity:1}.client-footer .business-logo{margin:8px auto}header .identity b{font-size:22px}.identity .business-logo{width:80px;height:80px}header{gap:15px}}
@media print{.business-logo{display:none}}
@media(max-width:760px){.mobile-brand.has-business-logo{display:block}.mobile-brand .product-name{font-size:20px;margin-bottom:4px}.mobile-brand .business-logo{width:48px;height:48px;margin:0}.topbar{height:105px}}
@media(max-width:760px){.agenda-mobile-controls{display:grid;grid-template-columns:1fr;gap:8px;padding:12px 0}.agenda-mobile-controls .agenda-client-search{width:100%;max-width:none;min-width:0;min-height:46px}.agenda-mobile-controls .head-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.agenda-mobile-controls .head-actions button{width:100%;padding:10px 6px;font-size:12px}}
/* Maison palette drawn from the salon: warm ivory, sand, walnut and brushed gold. */
:root{--paper:#f3eadc;--white:#fffaf1;--ink:#39261d;--muted:#766354;--line:#ddcdb7;--sage:#704a2f;--sage-light:#efe0c8;--beige:#e9d5b3;--clay:#a77d38;--gold:#b18a43}
body{background:var(--paper);color:var(--ink)}
main{background:transparent}
.topbar{border-color:#dfd0bb}
.page-head .eyebrow,.eyebrow{color:#8b642d}
.sidebar{background:#422c22;border-color:#5a4031}
.sidebar nav button{color:#f3e6d3}
.sidebar nav button.active{background:#d9bd83;color:#39261d}
.sidebar nav button:hover{background:#654633;color:#fffaf1}
.sidebar nav button.active:hover{background:#d9bd83;color:#39261d}
.metric,.agenda-shell,.panel,.daily-visits{background:var(--white);border-color:#dfd0bb}
.metric i,.calendar-availability-key,.availability-legend{color:#80602e}
button.primary,.button-link.primary{background:#68452f;border-color:#68452f;color:#fffaf1}
button.primary:hover,.button-link.primary:hover{background:#4b3023}
.agenda-client-search{background:#fffaf1;border-color:#cbb797}
.calendar-head,.calendar-closure-notices,.calendar-closure-notice{background-color:#f5ead6}
.calendar-closure-notice{border-color:#d6bd8c;color:#4a3023}
.event.block{background:#f3e4c8;border-color:#d2b477;color:#4a3023}
.agenda-toolbar,.legend{border-color:#dfd0bb}
.day-block-trigger:hover{background:#f2e3c9}
.date-chips button.available-day{background:#e7efe4;border-color:#a5b99d;color:#365c3b}
@media(max-width:760px){.sidebar{background:#422c22}.sidebar nav button.active{background:#d9bd83;color:#39261d;border-top-color:#b18a43}.topbar{border-color:#dfd0bb}}
/* Horizontal swipes change dates; vertical page scrolling stays available. */
.swipe-date,.date-chips,#slots,#manage-slots,.agenda-toolbar{touch-action:pan-y pinch-zoom}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
@media(pointer:coarse){.date-control::after{content:'← Scorri i giorni →';font-size:9px;color:var(--muted);display:block}.date-chips::after{content:'← Scorri per cambiare giorno →';font-size:10px;flex-basis:100%;color:var(--muted)}.date-control{flex-wrap:wrap}}
.day-block-trigger{display:block;width:100%;border:0;background:transparent;padding:0;font-size:12px;line-height:1.5}.day-block-trigger:hover{background:#f0e3c8}.day-block-trigger small{font-size:9px}.calendar-head>div:has(.day-block-trigger){padding:12px 5px}@media(max-width:760px){.day-block-trigger{font-size:10px;min-height:48px}.day-block-trigger small{font-size:8px}}
/* Named closures stay readable instead of disappearing into grey time. */
.event.block{background:#f1e3c7;border:1px solid #d5b775;border-left:4px solid #ad853c;color:#4a3026;display:block;padding:10px;text-align:left}.event.block:hover{background:#ead6ad}.event.block .block-copy{display:block;position:sticky;top:12px;text-align:left}.event.block strong{font-size:12px;line-height:1.45;margin:5px 0}.event.block .block-message{display:block;font-size:11px;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere;margin:8px 0}.event.block small{font-size:9px;color:#725434}.event.block.compact{padding:2px 7px}.event.block.compact .block-message{margin:2px 0;font-size:10px}.calendar-closure-notices{display:grid;gap:9px;padding:14px 20px;background:#fbf4e5;border-bottom:1px solid #dfd2c0}.calendar-closure-notice{display:flex;gap:12px;align-items:flex-start;text-align:left;background:#f0dfba;border:1px solid #d7b77a;border-radius:10px;padding:14px 16px;color:#4a3026;white-space:normal}.calendar-closure-notice:hover{background:#ead3a3}.calendar-closure-notice strong{display:block;font:600 17px/1.4 Georgia,serif}.calendar-closure-notice .closure-message{display:block;font-size:13px;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere;margin:5px 0}.calendar-closure-notice small{display:block;margin-top:6px;font-size:10px;color:#725434}.closure-icon{font-size:23px;color:#8c642a}.block-message-detail{white-space:pre-wrap;overflow-wrap:anywhere;color:#68452f;font-size:12px;line-height:1.6}@media(max-width:760px){.calendar-closure-notices{padding:12px}.calendar-closure-notice{padding:12px}.calendar-closure-notice .closure-message{font-size:12px}.event.block .block-message{font-size:10px}.event.block strong{font-size:11px}}
.date-chips button.available-day{position:relative;background:#e4f0e7;border-color:#a9c9ae;color:#275e3e;font-weight:700}.date-chips button.available-day.selected{background:#4a3026;color:#fff7e7;border-color:#4a3026}.date-chips button.available-day::after{content:"";display:inline-block;width:7px;height:7px;margin-left:5px;border-radius:50%;background:#4e9b65;vertical-align:1px}.date-chips button.available-day.selected::after{background:#80d49a;box-shadow:0 0 0 2px #fff7e7}.calendar-availability-key{display:flex;align-items:center;gap:7px;margin:-17px 0 20px;font-size:10px;color:#47684f!important}.calendar-availability-key i,.availability-legend i{width:8px;height:8px;border-radius:50%;background:#4e9b65;display:inline-block;flex:none}.availability-legend{color:#376c49;display:inline-flex;align-items:center;gap:6px}.day-block-trigger.has-availability{color:#285f3d}.day-block-trigger.has-availability small{color:#34794d;font-weight:700}.day-block-trigger.has-availability .staff-badge{box-shadow:0 0 0 2px #8fbd98}.availability-legend{font-size:10px}
.whatsapp-consent{align-items:flex-start!important;gap:11px!important;padding:14px 16px;background:#f0f5ee;border:1px solid #c6d8c6;border-radius:9px;line-height:1.5}.whatsapp-consent input{margin-top:3px!important;accent-color:#4e8058}.whatsapp-consent span{font-size:11px;color:#455b47}.whatsapp-consent-note{font-size:10px!important;color:#647366!important;margin-top:-7px}
.event.staff-color-0{background:#f4dfca;border-color:#e8c6a8;border-left-color:#a75c32;color:#503321}.staff-badge.staff-color-0,.dot.staff-color-0{background:#c47a4e;color:#fff}.event.staff-color-1{background:#f1dce3;border-color:#e5bdca;border-left-color:#a34c68;color:#502c38}.staff-badge.staff-color-1,.dot.staff-color-1{background:#b96880;color:#fff}.event.staff-color-2{background:#dfe9dc;border-color:#c6d7c0;border-left-color:#52744e;color:#30442e}.staff-badge.staff-color-2,.dot.staff-color-2{background:#718e6a;color:#fff}.event.staff-color-3{background:#dce7f1;border-color:#c0d3e6;border-left-color:#4c759c;color:#263b50}.staff-badge.staff-color-3,.dot.staff-color-3{background:#6389ad;color:#fff}.event.staff-color-4{background:#eee3c8;border-color:#decca3;border-left-color:#9a7729;color:#4b3a17}.staff-badge.staff-color-4,.dot.staff-color-4{background:#b3974b;color:#fff}.event.staff-color-5{background:#f4ddd7;border-color:#e9c2b6;border-left-color:#b45d4a;color:#532e26}.staff-badge.staff-color-5,.dot.staff-color-5{background:#c67762;color:#fff}.event.staff-color-6{background:#d8e9e6;border-color:#b9d5d0;border-left-color:#3d7b72;color:#24433f}.staff-badge.staff-color-6,.dot.staff-color-6{background:#5c9389;color:#fff}.event.staff-color-7{background:#e7def1;border-color:#d0c0e2;border-left-color:#79599a;color:#3d2b50}.staff-badge.staff-color-7,.dot.staff-color-7{background:#8d70aa;color:#fff}
.head-actions[hidden]{display:none!important}
