:root{--color-ivory:#fcfbf7;--color-warm-beige:#f5efeb;--color-surface:#fffefa;--color-blush-pink:#e8a7a1;--color-nude-rose:#f3ddd9;--color-champagne-gold:#c6a15b;--color-charcoal:#2c2928;--color-rose-deep:#87444d;--color-rose-deep-hover:#733740;--color-text-muted:#6f625d;--color-text-subtle:#8b7c76;--color-border:#82655829;--color-border-strong:#8265584d;--color-success:#2e6b4e;--color-success-soft:#edf7f1;--color-danger:#9d3d46;--color-danger-soft:#fdf1f1;--color-whatsapp:#25d366;--color-on-accent:#fff;--color-overlay:#2c29287a;--font-serif:Georgia, "Times New Roman", serif;--font-sans:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--radius-sm:.85rem;--radius-md:1.1rem;--radius-lg:1.4rem;--radius-xl:1.8rem;--shadow-soft:0 1rem 3rem #4a372f14;--shadow-raised:0 1.5rem 4rem #4a372f1f;--focus-ring:0 0 0 3px #87444d33;color:var(--color-charcoal);background:var(--color-ivory);font-family:var(--font-sans);font-synthesis:none;text-rendering:optimizelegibility}*{box-sizing:border-box}body{background:radial-gradient(circle at top right, #e8a7a12e, transparent 32rem), var(--color-ivory);min-width:320px;min-height:100vh;margin:0;line-height:1.5}button,a,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit}.button:focus-visible,button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--color-rose-deep);outline-offset:3px}.app-shell{width:min(100%,76rem);min-height:100%;margin:0 auto;padding:1rem .25rem 2rem}.app-shell__header{padding:1rem 0 1.5rem}.app-shell__eyebrow{color:var(--color-rose-deep);letter-spacing:.12em;text-transform:uppercase;font-size:.78rem;font-weight:800}.app-shell h1{max-width:20ch;font-family:var(--font-serif);letter-spacing:-.025em;margin:.5rem 0 .65rem;font-size:clamp(2rem,8vw,3.5rem);font-weight:500;line-height:1.05}.app-shell__header>p{max-width:42rem;color:var(--color-text-muted);margin:0;font-size:1rem;line-height:1.65}.app-shell__content{min-width:0;display:block}.app-shell__footer{color:var(--color-text-subtle);margin-top:2rem;font-size:.85rem}.brand-mark{align-items:center;gap:.6rem;font-weight:800;display:inline-flex}.brand-mark__logo{border-radius:var(--radius-sm);object-fit:cover;flex:0 0 2.5rem;width:2.5rem;height:2.5rem;display:block;box-shadow:0 .5rem 1.5rem #87444d24}.placeholder-card{border:1px solid var(--color-border);box-shadow:var(--shadow-soft);background:#fffefadb;border-radius:1.25rem;align-items:flex-start;gap:1rem;padding:1.25rem;display:flex}.placeholder-card__icon{width:2.75rem;height:2.75rem;color:var(--color-rose-deep);background:var(--color-nude-rose);border-radius:.9rem;flex:0 0 2.75rem;place-items:center;font-size:1.25rem;display:grid}.placeholder-card h2{margin:0 0 .35rem;font-size:1rem}.placeholder-card p{color:var(--color-text-muted);margin:0;font-size:.9rem;line-height:1.5}.button{text-align:center;min-height:3rem;color:var(--color-on-accent);background:var(--color-rose-deep);cursor:pointer;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;padding:.75rem 1.2rem;font-weight:750;text-decoration:none;transition:color .16s,background-color .16s,border-color .16s,transform .16s;display:inline-flex}.button:hover:not(:disabled){background:var(--color-rose-deep-hover);transform:translateY(-1px)}.button:disabled{cursor:not-allowed;opacity:.58}.status-pill{width:fit-content;color:var(--color-success);background:var(--color-success-soft);border-radius:999px;align-items:center;gap:.45rem;padding:.5rem .75rem;font-size:.8rem;font-weight:750;display:inline-flex}@media (width>=48rem){.app-shell{padding:1.5rem 1rem 3rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}body{min-width:0}.mobile-brand{z-index:2;position:absolute;top:1rem;left:1rem}.bottom-navigation{z-index:10;-webkit-backdrop-filter:blur(1rem);backdrop-filter:blur(1rem);background:#fffffff0;border:1px solid #a246701f;border-radius:999px;grid-template-columns:repeat(4,1fr);gap:.25rem;max-width:32rem;margin:auto;padding:.35rem;display:grid;position:fixed;bottom:1rem;left:1rem;right:1rem;box-shadow:0 1rem 3rem #41293529}.bottom-navigation a,.bottom-navigation button{color:#78636e;text-align:center;cursor:pointer;background:0 0;border:0;border-radius:999px;padding:.75rem;font-family:inherit;font-size:.85rem;font-weight:750;text-decoration:none}.bottom-navigation a.active,.bottom-navigation button.active{color:#fff;background:#a24670}.mobile-menu-backdrop{z-index:40;-webkit-backdrop-filter:blur(.2rem);backdrop-filter:blur(.2rem);background:#31252d61;border:0;position:fixed;inset:0}.mobile-menu-panel{z-index:50;background:#fffdfa;border:1px solid #a2467024;border-radius:1.5rem;max-width:32rem;max-height:calc(100dvh - 7rem);margin:auto;padding:1.25rem;position:fixed;bottom:5.75rem;left:1rem;right:1rem;overflow-y:auto;box-shadow:0 1.5rem 4rem #31252d3d}.mobile-menu-panel__header{color:#31252d;justify-content:space-between;align-items:center;margin-bottom:1rem;font-size:1.05rem;display:flex}.mobile-menu-panel__header button{color:#7d3b58;width:2.75rem;height:2.75rem;font:inherit;cursor:pointer;background:#a2467014;border:0;border-radius:999px;place-items:center;font-size:1.5rem;display:grid}.mobile-menu-panel__links{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;display:grid}.mobile-menu-panel__links a{color:#6f5d67;text-align:center;background:#a246700f;border-radius:.9rem;min-height:3rem;padding:.85rem 1rem;font-weight:750;text-decoration:none}.mobile-menu-panel__links a.active{color:#fff;background:#a24670}.mobile-menu-panel__footer{border-top:1px solid #a2467014;flex-direction:column;margin-top:1rem;padding-top:1rem;display:flex}.mobile-menu-logout-btn{cursor:pointer;border-radius:.9rem;justify-content:center;align-items:center;width:100%;min-height:3rem;font-weight:750;display:flex}@media (width>=48rem){.mobile-brand{top:2rem;left:2.5rem}}.auth-container{flex-direction:column;justify-content:center;align-items:center;width:100%;min-height:80vh;padding:1.5rem;display:flex}.auth-card{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffd9;border:1px solid #a246701f;border-radius:1.75rem;width:100%;max-width:26rem;padding:2.5rem 2rem;animation:.4s ease-out fadeIn;box-shadow:0 1.5rem 4rem #4129351a}@keyframes fadeIn{0%{opacity:0;transform:translateY(1.2rem)}to{opacity:1;transform:translateY(0)}}.auth-card h2{color:#31252d;text-align:center;margin:0 0 .5rem;font-family:Georgia,serif;font-size:1.8rem}.auth-card p.auth-subtitle{color:#76636d;text-align:center;margin:0 0 2rem;font-size:.95rem}.auth-form{flex-direction:column;gap:1.25rem;display:flex}.auth-checkbox{color:var(--color-charcoal);cursor:pointer;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:.7rem;display:grid}.auth-checkbox input{width:1rem;height:1rem;accent-color:var(--color-blush-pink);margin-top:.15rem}.auth-checkbox span{gap:.15rem;display:grid}.auth-checkbox small{color:var(--color-text-muted);font-size:.75rem}.form-group{flex-direction:column;gap:.45rem;display:flex}.form-group label{color:#6f5d67;letter-spacing:.03em;text-transform:uppercase;font-size:.82rem;font-weight:750}.form-group input,.form-group select,.form-group textarea{box-sizing:border-box;color:#31252d;background:#ffffffe6;border:1px solid #a2467038;border-radius:.9rem;outline:none;width:100%;padding:.85rem 1.1rem;font-family:inherit;font-size:.95rem;transition:all .2s ease-in-out}.form-group select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23a24670' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-position:right .75rem center;background-repeat:no-repeat;background-size:1.15rem;padding-right:2.2rem}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{background:#fff;border-color:#a24670;box-shadow:0 0 0 3px #a2467026}.auth-alert{border-radius:.9rem;margin-bottom:1rem;padding:.9rem 1.1rem;font-size:.9rem;line-height:1.4;animation:.3s ease-in-out shake}.auth-alert.error{color:#a24670;background:#fdf2f4;border:1px solid #a246702e}.two-factor-setup{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-ivory);gap:.65rem;margin-bottom:1rem;padding:1rem;display:grid}.two-factor-setup>span{color:var(--color-text-muted);text-transform:uppercase;font-size:.75rem;font-weight:750}.two-factor-setup code{overflow-wrap:anywhere}.two-factor-setup__qr{border:1px solid var(--color-border);background:#fffdf9;border-radius:.75rem;width:min(220px,100%);height:auto;margin:0 auto;padding:.4rem}.two-factor-setup__hint{color:var(--color-text-muted);text-align:center;margin:0;font-size:.84rem;line-height:1.45}.two-factor-setup__manual{color:var(--color-text-muted);font-size:.82rem}.two-factor-setup__manual summary{cursor:pointer;font-weight:750}.two-factor-setup__manual code{background:var(--color-surface);-webkit-user-select:all;user-select:all;border-radius:.5rem;margin-top:.65rem;padding:.65rem;display:block}.auth-alert.success{color:#2d694c;background:#e5f6ed;border:1px solid #2d694c2e}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(4px)}}.auth-submit-btn{cursor:pointer;margin-top:.5rem;transition:all .2s ease-out}.auth-submit-btn:hover{background:#8b375d;transform:translateY(-1px)}.auth-submit-btn:active{transform:translateY(1px)}.auth-footer{text-align:center;color:#76636d;margin-top:1.75rem;font-size:.9rem}.auth-footer a{color:#a24670;font-weight:750;text-decoration:none;transition:color .2s}.auth-footer a:hover{color:#8b375d;text-decoration:underline}.dashboard-header-actions{gap:.75rem;margin-top:1rem;display:flex}.btn-secondary{color:#a24670;background:0 0;border:1px solid #a2467066}.btn-secondary:hover{background:#a246700d}.dashboard-layout{flex-direction:column;width:100%;min-height:100vh;display:flex}.dashboard-sidebar{z-index:50;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff0;border-right:1px solid #a246701f;flex-direction:column;width:16rem;padding:2rem 1.5rem;display:none;position:fixed;top:0;bottom:0;left:0}.dashboard-sidebar__logo{margin-bottom:2.5rem}.dashboard-sidebar__links{flex-direction:column;flex-grow:1;gap:.5rem;display:flex}.dashboard-sidebar__links a{color:#6f5d67;border-radius:.9rem;padding:.8rem 1.1rem;font-size:.95rem;font-weight:750;text-decoration:none;transition:all .2s ease-in-out}.dashboard-sidebar__links a:hover,.dashboard-sidebar__links a.active{color:#fff;background:#a24670}.dashboard-sidebar__footer{border-top:1px solid #a2467014;flex-direction:column;gap:.75rem;margin-top:auto;padding-top:1.5rem;display:flex}.dashboard-sidebar__salon-name{color:#31252d;letter-spacing:.05em;text-transform:uppercase;font-size:.85rem;font-weight:800}.dashboard-main{flex-grow:1;width:100%;padding:1.5rem 1rem 6rem}.dashboard-mobile-brand{margin-bottom:1.25rem;display:flex}.metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin:1.25rem 0 1.5rem;display:grid}.metric-card{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);min-width:0;min-height:7.75rem;box-shadow:var(--shadow-soft);flex-direction:column;justify-content:space-between;gap:.5rem;padding:1rem;display:flex}.metric-card.primary{border-color:var(--color-blush-pink);background:var(--color-nude-rose)}.metric-card.success{background:#f4faf6;border-color:#2d694c33;grid-column:1/-1}.metric-card__label{color:var(--color-text-muted);letter-spacing:.05em;text-transform:uppercase;font-size:.72rem;font-weight:800;line-height:1.35}.metric-card__value{overflow-wrap:anywhere;color:var(--color-charcoal);font-family:var(--font-serif);font-size:clamp(1.65rem,8vw,2.15rem);font-weight:600;line-height:1}.metric-card.success .metric-card__value{color:#2d694c}.share-box{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-soft);margin-top:0;padding:1.25rem}.share-box h3{color:var(--color-charcoal);font-family:var(--font-serif);margin:0 0 .75rem;font-size:1.15rem}.share-box__url{overflow-wrap:anywhere;border:1px dashed var(--color-border-strong);border-radius:var(--radius-sm);color:var(--color-rose-deep);background:var(--color-nude-rose);margin-bottom:1.25rem;padding:.75rem 1rem;font-family:monospace;font-size:.84rem}.share-box__actions{flex-wrap:wrap;align-items:stretch;gap:.75rem;display:flex}.share-box__actions .button{flex:10rem}.modal-backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:1000;background:#31252d80;justify-content:center;align-items:center;animation:.25s ease-out fadeIn;display:flex;position:fixed;inset:0}.modal-content{text-align:center;background:#fff;border:1px solid #a2467026;border-radius:1.75rem;width:90%;max-width:24rem;padding:2.5rem 2rem;animation:.3s cubic-bezier(.34,1.56,.64,1) scaleUp;box-shadow:0 2rem 5rem #41293533}@keyframes scaleUp{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.modal-content h3{color:#31252d;margin:0 0 1.5rem;font-family:Georgia,serif;font-size:1.4rem}.modal-actions{justify-content:center;gap:.75rem;display:flex}@media (width>=48rem){.dashboard-layout{flex-direction:row}.dashboard-sidebar{display:flex}.dashboard-main{margin-left:16rem;padding:3rem 4rem}.dashboard-mobile-brand{display:none}.metrics-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.metric-card.success{grid-column:auto}.bottom-navigation,.mobile-menu-backdrop,.mobile-menu-panel{display:none}}.agenda-view-controls{gap:.75rem;margin-bottom:1rem;display:grid}.agenda-view-switcher{background:#f7eff3;border:1px solid #a246701f;border-radius:999px;grid-template-columns:repeat(3,minmax(0,1fr));padding:.25rem;display:grid}.agenda-view-switcher button{color:#76636d;min-height:2.5rem;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:999px;font-weight:750}.agenda-view-switcher button.is-active{color:#fff;background:#a24670;box-shadow:0 3px 10px #a246702e}.agenda-period-navigation{grid-template-columns:2.75rem minmax(0,1fr) 2.75rem;align-items:center;gap:.5rem;display:grid}.agenda-period-navigation>button{color:#a24670;cursor:pointer;background:#fff;border:1px solid #a2467029;border-radius:50%;width:2.75rem;height:2.75rem;font-size:1.6rem;line-height:1}.agenda-period-navigation>div{text-align:center;justify-content:center;align-items:center;gap:.65rem;min-width:0;display:flex}.agenda-period-navigation strong{color:#4b3943;text-transform:capitalize;font-size:.95rem}.agenda-period-navigation div button{color:#a24670;font:inherit;cursor:pointer;background:0 0;border:0;font-size:.82rem;font-weight:800}.agenda-view-switcher button:focus-visible,.agenda-period-navigation button:focus-visible,.agenda-week-day__heading:focus-visible,.agenda-month__day:focus-visible,.appointment-card:focus-visible{outline-offset:2px;outline:3px solid #a2467047}.agenda-filters{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fff9;border:1px solid #a2467014;border-radius:1.25rem;grid-template-columns:1fr;gap:1rem;margin-bottom:2rem;padding:1.25rem;display:grid}.agenda-filter-actions{align-items:end;gap:.5rem;display:grid}.agenda-filters select{color:#31252d;width:100%;min-height:2.65rem;font:inherit;background:#fff;border:1px solid #a246702e;border-radius:.5rem;padding:0 .6rem}@media (width>=48rem){.agenda-view-controls{grid-template-columns:minmax(18rem,22rem) minmax(20rem,1fr);align-items:center}.agenda-filters{grid-template-columns:repeat(4,minmax(0,1fr))}}.agenda-timeline{flex-direction:column;gap:1.25rem;padding-left:.5rem;display:flex;position:relative}.timeline-row{align-items:flex-start;gap:1.5rem;display:flex}.timeline-row__time{color:#76636d;text-align:right;width:5.25rem;padding-top:.4rem;font-family:Georgia,serif;font-size:1.05rem;font-weight:800}.timeline-row__cards{flex-direction:column;flex-grow:1;gap:.75rem;display:flex}.appointment-card{cursor:pointer;background:#fff;border:1px solid #a2467014;border-radius:1rem;justify-content:space-between;align-items:center;padding:1rem 1.25rem;transition:all .2s ease-out;display:flex;box-shadow:0 4px 12px #41293505}.appointment-card:hover{transform:translateY(-1px);box-shadow:0 6px 16px #4129350a}.appointment-card.confirmed{background:#f4faf6;border-left:4px solid #2d694c}.appointment-card.cancelled,.appointment-card.cancelled_by_salon,.appointment-card.cancelled_by_client{opacity:.65;background:#fdf2f4;border-left:4px solid #a24670}.appointment-card.noshow,.appointment-card.no_show{background:#faf6f8;border-left:4px solid #76636d}.appointment-card.completed{opacity:.85;background:#f7f5f6;border-left:4px solid #76636d}.appointment-card__info h5{color:#31252d;margin:0 0 .25rem;font-size:.95rem}.appointment-card__info p{color:#6f5d67;margin:0;font-size:.82rem}.appointment-card__meta{text-align:right}.appointment-card__time{color:#31252d;font-size:.85rem;font-weight:750;display:block}.appointment-card__status{text-transform:uppercase;margin-top:.25rem;font-size:.75rem;font-weight:750;display:inline-block}.appointment-card.confirmed .appointment-card__status{color:#2d694c}.appointment-card.cancelled .appointment-card__status,.appointment-card.cancelled_by_salon .appointment-card__status,.appointment-card.cancelled_by_client .appointment-card__status{color:#a24670}.appointment-card.noshow .appointment-card__status,.appointment-card.no_show .appointment-card__status,.appointment-card.completed .appointment-card__status{color:#76636d}.block-card{background:#faf8fa;border:1px solid #a246700d;border-left:4px solid #e0c8d4;border-radius:1rem;justify-content:space-between;align-items:center;padding:.9rem 1.25rem;display:flex}.block-card--continuation{background:#f8f1f5;border-left-color:#c995ae}.block-card--continuation:not(.block-card--last-segment){border-top-left-radius:.35rem;border-bottom-left-radius:.35rem}.block-card__title{color:#76636d;margin:0;font-size:.88rem;font-weight:750}.block-card__time{color:#8c7380;font-size:.8rem}.block-card__staff{color:#76636d;font-size:.8rem}.block-card__actions{align-items:center;gap:1rem;display:flex}.block-card__delete{cursor:pointer;background:0 0;border:0;font-size:1.1rem}.agenda-loading{color:#76636d}.agenda-week-list{gap:1.25rem;display:grid}.agenda-week-day{background:#ffffffb3;border:1px solid #a246701a;border-radius:1rem;overflow:hidden}.agenda-week-day__heading{color:#4b3943;width:100%;font:inherit;text-align:left;text-transform:capitalize;cursor:pointer;background:#f9f2f5;border:0;border-bottom:1px solid #a2467014;justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 1rem;display:flex}.agenda-week-day__heading span{font-weight:800}.agenda-week-day__heading small{color:#a24670;white-space:nowrap;font-weight:750}.agenda-week-day__entries{gap:.65rem;padding:.75rem;display:grid}.agenda-empty-state{color:#76636d;text-align:center;border:1px dashed #a2467038;border-radius:1rem;justify-items:center;gap:.25rem;padding:2.5rem 1rem;display:grid}.agenda-empty-state strong{color:#4b3943}.agenda-month{background:#fff;border:1px solid #a246701f;border-radius:1rem;overflow:hidden}.agenda-month__weekdays,.agenda-month__grid{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.agenda-month__weekdays{background:#f9f2f5}.agenda-month__weekdays span{color:#76636d;text-align:center;padding:.65rem .25rem;font-size:.72rem;font-weight:800}.agenda-month__empty,.agenda-month__day{background:#fff;border-top:1px solid #a2467014;border-bottom:0;border-left:0;border-right:1px solid #a2467014;min-height:5.25rem}.agenda-month__day{color:#4b3943;font:inherit;text-align:left;cursor:pointer;flex-direction:column;align-items:flex-start;gap:.25rem;padding:.5rem;display:flex}.agenda-month__day:nth-child(7n),.agenda-month__empty:nth-child(7n){border-right:0}.agenda-month__day>span{border-radius:50%;place-items:center;width:1.7rem;height:1.7rem;font-size:.8rem;font-weight:800;display:grid}.agenda-month__day.is-today>span{color:#fff;background:#a24670}.agenda-month__day strong{color:#a24670;font-size:.72rem}.agenda-month__day small{color:#76636d;font-size:.65rem}.agenda-booking-modal{text-align:left;width:min(95%,38rem);max-height:88vh;overflow-y:auto}.booking-event-history{border-top:1px solid #a246701a;gap:.3rem;padding-top:.75rem;display:grid}.booking-event-history span{color:#76636d;font-size:.75rem}.agenda-booking-grid{gap:.75rem;display:grid}.agenda-booking-datetime-grid{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.agenda-booking-modal select{color:#31252d;width:100%;min-height:2.75rem;font:inherit;background:#fff;border:1px solid #a246702e;border-radius:.85rem;padding:0 .75rem}.agenda-customer-search{position:relative}.agenda-customer-search>input{width:100%}.agenda-customer-results{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);max-height:13rem;box-shadow:var(--shadow-raised);margin-top:.4rem;display:grid;overflow-y:auto}.agenda-customer-results button{border:0;border-bottom:1px solid var(--color-border);text-align:left;width:100%;color:var(--color-charcoal);cursor:pointer;background:0 0;gap:.15rem;padding:.7rem .85rem;display:grid}.agenda-customer-results button:last-child{border-bottom:0}.agenda-customer-results button:hover,.agenda-customer-results button:focus-visible{background:var(--color-nude-rose)}.agenda-customer-results small,.agenda-customer-selected small{color:var(--color-text-subtle);display:block}.agenda-customer-results p,.agenda-customer-hint{color:var(--color-text-subtle);margin:0;padding:.75rem .85rem;font-size:.82rem}.agenda-customer-selected,.agenda-quick-customer-heading{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-ivory);justify-content:space-between;align-items:center;gap:.75rem;padding:.75rem .85rem;display:flex}.agenda-customer-mode-button{border:1px dashed var(--color-border-strong);border-radius:var(--radius-md);width:100%;color:var(--color-rose-deep);cursor:pointer;background:0 0;margin-top:.55rem;padding:.65rem;font-weight:700}.agenda-services-picker{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);gap:.75rem;min-width:0;margin:0;padding:.85rem;display:grid}.agenda-services-picker legend{color:var(--color-charcoal);padding:0 .35rem;font-weight:750}.agenda-services-picker legend small{color:var(--color-text-subtle);margin-left:.3rem;font-size:.7rem;font-weight:500}.agenda-services-picker__list{gap:.6rem;max-height:min(42dvh,23rem);padding:.1rem;display:grid;overflow-y:auto}.agenda-service-option{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-ivory);cursor:pointer;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.65rem;min-height:4rem;padding:.75rem;display:grid}.agenda-service-option--selected{border-color:var(--color-blush-pink);background:var(--color-nude-rose);box-shadow:inset 0 0 0 1px var(--color-blush-pink)}.agenda-service-option input{width:1.05rem;height:1.05rem;accent-color:var(--color-blush-pink)}.agenda-service-option span{gap:.1rem;min-width:0;display:grid}.agenda-service-option strong{overflow-wrap:anywhere;color:var(--color-charcoal);font-size:.88rem}.agenda-service-option small{color:var(--color-text-muted);font-size:.75rem}.agenda-service-option b{color:var(--color-rose-deep);white-space:nowrap;font-size:.8rem}.agenda-service-summary{border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-muted);background:var(--color-ivory);flex-wrap:wrap;justify-content:space-between;gap:.5rem 1rem;padding:.8rem;font-size:.82rem;display:flex}.agenda-service-summary strong{color:var(--color-rose-deep)}.agenda-field-error{color:var(--color-danger);margin-top:.4rem;font-size:.76rem;display:block}@media (width>=36rem){.agenda-booking-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.customers-toolbar{gap:.75rem;margin-bottom:1.5rem;display:grid}.customers-toolbar input,.customers-toolbar select{color:#31252d;min-height:2.75rem;font:inherit;background:#fff;border:1px solid #a246702e;border-radius:.85rem;padding:0 .85rem}.customers-status{color:#76636d}.customers-grid{gap:1rem;display:grid}.customer-card{background:#ffffffe0;border:1px solid #a246701a;border-radius:1.15rem;gap:1rem;padding:1.15rem;display:grid;box-shadow:0 8px 24px #4129350a}.customer-card__main{color:#31252d;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:.8rem;padding:0;display:flex}.customer-card__main span:last-child{gap:.15rem;display:grid}.customer-card__main small,.customer-history small{color:#76636d}.customer-avatar{color:#a24670;background:#f7e8ef;border-radius:50%;flex:none;place-items:center;width:2.8rem;height:2.8rem;font-family:Georgia,serif;font-size:1.2rem;font-weight:800;display:grid}.customer-segments{flex-wrap:wrap;gap:.4rem;display:flex}.customer-segment{color:#6f5d67;background:#f4eff2;border-radius:999px;padding:.25rem .55rem;font-size:.72rem;font-weight:750}.customer-segment--frequent,.customer-segment--upcoming{color:#2d694c;background:#eaf6ef}.customer-segment--cancellations,.customer-segment--inactive{color:#93405f;background:#f9ecef}.customer-card__metrics{border-block:1px solid #a2467014;grid-template-columns:repeat(3,1fr);margin:0;padding:.75rem 0;display:grid}.customer-card__metrics div{gap:.15rem;display:grid}.customer-card__metrics dt{color:#76636d;font-size:.7rem}.customer-card__metrics dd{color:#31252d;margin:0;font-size:.9rem;font-weight:800}.customer-card__footer,.customer-detail__header{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.customer-card__footer{color:#76636d;font-size:.72rem}.link-button{color:#a24670;font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:750}.auth-form textarea{resize:vertical;width:100%;min-height:6rem;font:inherit;border:1px solid #a246702e;border-radius:.9rem;padding:.8rem}.customer-detail{text-align:left;width:min(95%,42rem);max-height:85vh;overflow-y:auto}.customer-detail__header h3,.customer-detail__header p{margin:0}.customer-notes{color:#6f5d67;background:#faf6f8;border-radius:.85rem;padding:.85rem}.customer-detail__metrics{grid-template-columns:repeat(3,1fr);gap:.5rem;margin:1.25rem 0;display:grid}.customer-detail__metrics div{background:#faf6f8;border-radius:.85rem;gap:.2rem;padding:.8rem;display:grid}.customer-detail__metrics strong{color:#31252d}.customer-detail__metrics span{color:#76636d;font-size:.7rem}.customer-history{gap:.65rem;display:grid}.customer-history>div{border-bottom:1px solid #a2467014;justify-content:space-between;gap:1rem;padding:.65rem 0;display:flex}.customer-history>div>span{gap:.1rem;display:grid}.customer-history>div>span:last-child{text-align:right}@media (width>=48rem){.customers-toolbar{grid-template-columns:minmax(14rem,1fr) 12rem auto}.customers-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.dashboard-main .app-shell{padding-top:0}.dashboard-main .app-shell__header{max-width:46rem}.dashboard-main .app-shell__content{width:100%}.dashboard-main .button,.dashboard-main input,.dashboard-main select,.dashboard-main textarea,.bottom-navigation a,.bottom-navigation button{min-height:2.75rem}.dashboard-main .button{min-height:2.75rem!important}.auth-container{min-height:100dvh;padding:5.5rem 1rem 2rem}.auth-card{border-color:var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:none;backdrop-filter:none;background:#fffefaf0;padding:2rem 1.25rem}.auth-form input,.auth-form select,.auth-form textarea{min-height:3rem}.feature-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1.25rem;display:flex}.feature-heading h3{font-family:var(--font-serif);color:var(--color-charcoal);margin:0;font-size:1.25rem;font-weight:600}.feature-heading .button{flex:0 auto}.feature-heading__actions{flex-wrap:wrap;justify-content:flex-end;gap:.6rem;display:flex}.dashboard-main input,.dashboard-main select,.dashboard-main textarea{color:var(--color-charcoal)}.dashboard-main input:focus,.dashboard-main select:focus,.dashboard-main textarea:focus{border-color:var(--color-rose-deep);box-shadow:var(--focus-ring)}.btn-secondary{border-color:var(--color-border-strong);color:var(--color-rose-deep);background:0 0}.btn-secondary:hover:not(:disabled){border-color:var(--color-rose-deep);color:var(--color-rose-deep);background:var(--color-nude-rose)}.button-danger{border-color:var(--color-danger);background:var(--color-danger)}.button-danger:hover:not(:disabled){background:var(--color-danger)}.dashboard-header-actions,.modal-actions{align-items:stretch}.agenda-filters{border-color:var(--color-border);background:var(--color-surface);-webkit-backdrop-filter:none;backdrop-filter:none;gap:.75rem;margin-bottom:1.25rem;padding:1rem}.agenda-filter-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.agenda-timeline{gap:.85rem;padding-left:0}.timeline-row{gap:.65rem}.timeline-row__time{flex:0 0 2.7rem;width:2.7rem;font-size:.85rem}.appointment-card,.block-card{align-items:flex-start;gap:.75rem;padding:.9rem}.appointment-card__info{min-width:0}.appointment-card__info h5,.appointment-card__info p{overflow-wrap:anywhere}.appointment-card__meta{flex:none}.customers-toolbar{margin-bottom:1rem}.customer-card{border-color:var(--color-border);background:var(--color-surface);min-width:0;box-shadow:none;padding:1rem}.customer-card__metrics,.customer-detail__metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.customer-card__metrics div,.customer-detail__metrics div{min-width:0}.customer-card__metrics dd,.customer-detail__metrics strong{overflow-wrap:anywhere}.modal-backdrop{background:var(--color-overlay);align-items:flex-end;padding:.75rem}.modal-content{border-color:var(--color-border);border-radius:var(--radius-xl) var(--radius-xl) var(--radius-md) var(--radius-md);background:var(--color-surface);width:min(100%,32rem);max-height:92dvh;box-shadow:var(--shadow-raised);padding:1.5rem 1rem;overflow-y:auto}.action-dialog{text-align:left;gap:1rem;display:grid}.action-dialog h3{margin:0}.action-dialog__eyebrow{color:var(--color-rose-deep);letter-spacing:.1em;text-transform:uppercase;font-size:.72rem;font-weight:800}.action-dialog__description{color:var(--color-text-muted);margin:-.5rem 0 0;font-size:.9rem;line-height:1.55}.action-dialog .modal-actions{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:.5rem;display:grid}@media (width<=25rem){.agenda-filter-actions,.action-dialog .modal-actions{grid-template-columns:1fr}.appointment-card,.block-card{display:grid}.appointment-card__meta{text-align:left}.customer-detail__metrics{grid-template-columns:1fr}.feature-heading .button{width:100%}}@media (width>=36rem){.modal-backdrop{align-items:center;padding:1.5rem}.modal-content{border-radius:var(--radius-xl);padding:2rem}.auth-card{padding:2.5rem 2rem}}@media (width>=48rem){.dashboard-sidebar{border-color:var(--color-border);background:#fffefaf5;width:15rem;padding:1.75rem 1.25rem}.dashboard-main{margin-left:15rem;padding:2rem clamp(1.5rem,4vw,4rem) 4rem}.agenda-filters{grid-template-columns:minmax(10rem,.8fr) minmax(10rem,1fr) minmax(11rem,1fr) minmax(12rem,1.1fr)}}.pwa-toast-container{z-index:1000;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffffff2;border:1px solid #a246702e;border-radius:1.25rem;flex-direction:column;gap:1rem;max-width:28rem;margin:auto;padding:1.25rem;font-family:inherit;display:flex;position:fixed;bottom:5.5rem;left:1.5rem;right:1.5rem;box-shadow:0 1.5rem 3.5rem #41293533}@media (width>=32rem){.pwa-toast-container{flex-direction:row;justify-content:space-between;align-items:center;width:24rem;left:auto;right:1.5rem}}.pwa-toast-content{align-items:flex-start;gap:.85rem;display:flex}.pwa-toast-icon{font-size:1.5rem;line-height:1}.pwa-toast-text strong{color:#31252d;margin-bottom:.15rem;font-size:.95rem;font-weight:750;display:block}.pwa-toast-text p{color:#78636e;margin:0;font-size:.82rem;line-height:1.4}.pwa-toast-actions{justify-content:flex-end;gap:.5rem;display:flex}.pwa-btn{cursor:pointer;border:1px solid #0000;border-radius:999px;padding:.5rem .9rem;font-size:.82rem;font-weight:750;transition:all .2s}.pwa-btn-primary{color:#fff;background:#a24670}.pwa-btn-primary:hover{background:#8b3c60;transform:translateY(-1px)}.pwa-btn-secondary{color:#78636e;background:#f4eff1;border:1px solid #a246701a}.pwa-btn-secondary:hover{color:#31252d;background:#eae2e5}.animate-fade-in-up{animation:.4s cubic-bezier(.16,1,.3,1) forwards fadeInUp}@keyframes fadeInUp{0%{opacity:0;transform:translateY(1.5rem)}to{opacity:1;transform:translateY(0)}}.agenda-time-picker{margin-top:.5rem}.agenda-time-picker__title{color:#31252d;margin-bottom:.65rem;font-size:.9rem;display:block}.agenda-time-picker__legend{color:#76636d;margin:-.35rem 0 .7rem;font-size:.78rem;line-height:1.4;display:block}.agenda-time-picker--manual{margin-top:0}.agenda-time-picker__status{color:#76636d;background:#fffdfa;border:1px solid #a246701f;border-radius:12px;margin:0;padding:.9rem;font-size:.85rem;line-height:1.45}.agenda-time-picker__status--error{color:#9f253c;background:#fff7f8;border-color:#b9314833}.agenda-time-picker__grid{background:#fffdfa;border:1px solid #a246701f;border-radius:12px;grid-template-columns:repeat(4,1fr);gap:.5rem;max-height:12rem;padding:.35rem;display:grid;overflow-y:auto}.agenda-time-btn{color:#31252d;cursor:pointer;background:#fff;border:1px solid #a2467029;border-radius:8px;min-height:2.75rem;font-size:.88rem;font-weight:600;transition:all .15s}.agenda-time-btn:hover:not(:disabled){background:#a246700d;border-color:#a24670}.agenda-time-btn.is-selected{color:#fff;background:#a24670;border-color:#a24670}.agenda-time-btn:disabled{opacity:.38;color:#a5949d;cursor:not-allowed;background:#fdfafb;border-color:#a246700f;text-decoration:line-through}.agenda-block-tabs{grid-template-columns:repeat(3,1fr);gap:.5rem;margin-bottom:1rem;display:grid}.agenda-block-tab{color:#76636d;cursor:pointer;background:#fff;border:1px solid #a2467029;border-radius:12px;min-height:2.5rem;font-size:.85rem;font-weight:600;transition:all .15s}.agenda-block-tab:hover{background:#a2467008}.agenda-block-tab.is-active{color:#a24670;background:#f7e0e2;border-color:#e2a8af}.agenda-block-weekdays{flex-wrap:wrap;gap:.35rem;margin-top:.35rem;display:flex}.agenda-weekday-btn{color:#76636d;cursor:pointer;background:#fff;border:1px solid #a2467029;border-radius:8px;flex:1;min-width:2.25rem;min-height:2.25rem;padding:0;font-size:.8rem;font-weight:600;transition:all .15s}.agenda-weekday-btn:hover{background:#a246700d}.agenda-weekday-btn.is-active{color:#fff;background:#a24670;border-color:#a24670}.agenda-block-modal{text-align:left;width:min(100%,30rem);max-height:92dvh;overflow-y:auto}.agenda-block-modal__intro{color:var(--color-text-subtle);margin:-.5rem 0 1.25rem;font-size:.85rem}.agenda-block-scope-row,.agenda-block-date-row,.agenda-block-time-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.agenda-block-modal select{border:1px solid var(--color-border);border-radius:var(--radius-md);width:100%;min-height:2.75rem;color:var(--color-charcoal);background:var(--color-surface);font:inherit;padding:0 .75rem}.agenda-block-submit{width:100%;min-height:2.75rem;margin-top:.5rem}.agenda-blocks-active{border-top:1px solid var(--color-border);margin:1.5rem 0;padding-top:1rem}.agenda-blocks-active h4{color:var(--color-charcoal);text-align:center;margin:0 0 .75rem}.agenda-blocks-active>p{color:var(--color-text-subtle);text-align:center;font-size:.85rem;font-style:italic}.agenda-blocks-active__list{gap:.5rem;max-height:15rem;display:grid;overflow-y:auto}.agenda-blocks-active__list article{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-ivory);justify-content:space-between;align-items:center;gap:.5rem;padding:.65rem .8rem;display:flex}.agenda-blocks-active__list span{gap:.15rem;min-width:0;display:grid}.agenda-blocks-active__list small{color:var(--color-text-subtle)}.agenda-blocks-active__list button{color:var(--color-danger);cursor:pointer;background:#fff5f7;border:1px solid #d13c6933;border-radius:.6rem;padding:.4rem .65rem;font-weight:700}@media (width<=27rem){.agenda-block-scope-row,.agenda-block-date-row{grid-template-columns:1fr}}.customer-consents{flex-wrap:wrap;gap:.35rem;display:flex}.customer-consents span{border-radius:4px;padding:.2rem .4rem;font-size:.68rem;font-weight:800}.customer-consents .is-accepted{color:#28614f;background:#e5f3ed}.customer-consents .is-pending{color:#7d5a12;background:#fff4d8}.customer-consents .is-declined{color:#76636d;background:#f0ecee}.customer-consent-detail{gap:.55rem;margin-bottom:1rem;display:grid}.customer-consent-detail>div{border:1px solid #e7dce1;border-radius:6px;grid-template-columns:1.7rem 1fr;align-items:start;gap:.65rem;padding:.7rem;display:grid}.customer-consent-detail>div>span{border-radius:50%;place-items:center;width:1.7rem;height:1.7rem;font-weight:850;display:grid}.customer-consent-detail .is-accepted{color:#28614f;background:#e5f3ed}.customer-consent-detail .is-pending{color:#7d5a12;background:#fff4d8}.customer-consent-detail .is-declined{color:#76636d;background:#f0ecee}.customer-consent-detail .is-info{color:#35647d;background:#e8eff5}.customer-consent-detail p,.customer-consent-detail strong,.customer-consent-detail small{margin:0;display:block}.customer-consent-detail small{color:#76636d;margin-top:.15rem}.support-view-banner{z-index:1200;color:#fff;background:#3f2932;justify-content:center;align-items:center;gap:2rem;min-height:62px;padding:.65rem 1rem;display:flex;position:fixed;top:0;left:0;right:0;box-shadow:0 6px 18px #2f1d262e}.support-view-banner>div{gap:.1rem;display:grid}.support-view-banner span{color:#f3e4de;font-size:.8rem}.support-view-banner button{color:#6f3542;cursor:pointer;background:#fff9f5;border:1px solid #f4d9d0;border-radius:999px;padding:.55rem .9rem;font-weight:800}.dashboard-layout:has(.support-view-banner){padding-top:62px}@media (width<=680px){.support-view-banner{justify-content:space-between;align-items:stretch;gap:.6rem;min-height:82px}.support-view-banner button{white-space:nowrap;align-self:center}.dashboard-layout:has(.support-view-banner){padding-top:82px}}.public-booking{min-height:100vh;color:var(--color-charcoal);background:linear-gradient(145deg, #ffffff8a, transparent 52%), var(--color-ivory);padding:1rem;position:relative;overflow:hidden}.public-booking__glow{pointer-events:none;filter:blur(2px);border-radius:50%;width:18rem;height:18rem;position:fixed}.public-booking__glow--top{background:#e8a7a133;top:-9rem;right:-7rem}.public-booking__glow--bottom{background:#d4af371a;bottom:-11rem;left:-7rem}.public-booking__shell{width:min(100%,42rem);margin:0 auto;padding:.35rem 0 2rem;position:relative}.public-booking__header{align-items:center;gap:.75rem;padding:.5rem 0 1.5rem;display:flex}.public-booking__monogram{border:1px solid var(--color-champagne-gold);width:2.75rem;height:2.75rem;color:var(--color-charcoal);font-family:var(--font-serif);letter-spacing:.08em;background:#ffffffb3;border-radius:50%;flex:0 0 2.75rem;place-items:center;font-size:.78rem;display:grid}.public-booking__eyebrow{color:var(--color-rose-deep);letter-spacing:.14em;text-transform:uppercase;font-size:.7rem;font-weight:800}.public-booking__salon{font-family:var(--font-serif);margin:.1rem 0 0;font-size:1rem}.public-booking__intro{padding:.75rem 0 1.75rem}.public-booking__intro h1{max-width:15ch;font-family:var(--font-serif);letter-spacing:-.035em;margin:0;font-size:clamp(2.25rem,11vw,4.5rem);font-weight:500;line-height:.98}.public-booking__intro p{max-width:34rem;color:var(--color-text-muted);margin:1rem 0 0;font-size:.96rem;line-height:1.65}.public-booking__footer{color:var(--color-text-subtle);letter-spacing:.04em;text-align:center;padding:1.5rem 0 .5rem;font-size:.72rem}.booking-progress{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:#ffffff94;margin-bottom:1rem;padding:1rem}.booking-progress>p{color:var(--color-text-muted);margin:0 0 .75rem;font-size:.74rem;font-weight:750}.booking-progress ol{grid-template-columns:repeat(4,1fr);gap:.25rem;margin:0;padding:0;list-style:none;display:grid}.booking-progress__step{color:var(--color-text-subtle);text-align:center;justify-items:center;gap:.35rem;display:grid}.booking-progress__step>span{border:1px solid var(--color-border);background:var(--color-surface);border-radius:50%;place-items:center;width:1.75rem;height:1.75rem;font-size:.72rem;font-weight:800;display:grid}.booking-progress__step small{font-size:.65rem;display:none}.booking-progress__step--current,.booking-progress__step--complete{color:var(--color-rose-deep)}.booking-progress__step--current>span{border-color:var(--color-rose-deep);color:var(--color-on-accent);background:var(--color-rose-deep);box-shadow:0 .45rem 1.2rem #87444d33}.booking-progress__step--complete>span{border-color:var(--color-blush-pink);background:var(--color-nude-rose)}.booking-section{border:1px solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffffc7;padding:1.15rem}.booking-section__heading{gap:.35rem;margin-bottom:1.25rem;display:grid}.booking-section__heading>div{align-items:center;gap:.65rem;display:flex}.booking-section__heading>div>span{width:1.85rem;height:1.85rem;color:var(--color-rose-deep);background:var(--color-nude-rose);border-radius:50%;flex:0 0 1.85rem;place-items:center;font-size:.68rem;font-weight:850;display:grid}.booking-section__heading h2,.public-status h2{font-family:var(--font-serif);margin:0;font-size:1.35rem;font-weight:600}.booking-section__heading>p,.public-status p{color:var(--color-text-muted);margin:0;font-size:.86rem;line-height:1.55}.service-picker,.staff-picker{gap:.7rem;display:grid}.service-option,.staff-option{border:1px solid var(--color-border);border-radius:var(--radius-md);width:100%;min-height:4.75rem;color:var(--color-charcoal);background:var(--color-surface);text-align:left;cursor:pointer;align-items:center;gap:.75rem;padding:.9rem;transition:all .16s;display:flex}.service-option:hover,.staff-option:hover{border-color:var(--color-blush-pink);transform:translateY(-1px)}.service-option--selected,.staff-option--selected{border-color:var(--color-rose-deep);background:linear-gradient(135deg, var(--color-nude-rose), var(--color-surface));box-shadow:0 0 0 2px #87444d14}.service-option__check{border:1px solid var(--color-border-strong);width:1.45rem;height:1.45rem;color:var(--color-on-accent);border-radius:.45rem;flex:0 0 1.45rem;place-items:center;font-size:.8rem;display:grid}.service-option--selected .service-option__check{border-color:var(--color-rose-deep);background:var(--color-rose-deep)}.service-option__copy{flex:1;gap:.15rem;display:grid}.service-option__copy strong,.staff-option strong{font-size:.93rem}.service-option__copy small,.staff-option small{color:var(--color-text-muted);font-size:.77rem;line-height:1.4}.service-option__copy>span{color:var(--color-rose-deep);font-size:.72rem;font-weight:750}.service-option>b{color:var(--color-rose-deep);white-space:nowrap;font-size:.82rem}.staff-option__avatar{width:2.6rem;height:2.6rem;color:var(--color-rose-deep);background:var(--color-warm-beige);font-family:var(--font-serif);border-radius:50%;flex:0 0 2.6rem;place-items:center;font-size:1.1rem;display:grid}.staff-option>span:nth-child(2){flex:1;gap:.15rem;display:grid}.staff-option>i{border-bottom:1.5px solid;border-right:1.5px solid;width:.65rem;height:.65rem;transform:rotate(-45deg)}.booking-summary-strip{border-radius:var(--radius-sm);color:var(--color-text-muted);background:var(--color-warm-beige);flex-wrap:wrap;justify-content:space-between;gap:.5rem;margin-top:.9rem;padding:.8rem .9rem;font-size:.8rem;display:flex}.booking-summary-strip strong{color:var(--color-charcoal)}.public-actions{gap:.65rem;margin-top:1.35rem;display:grid}.public-button{border:1px solid var(--color-rose-deep);border-radius:var(--radius-md);min-height:3.25rem;color:var(--color-on-accent);background:var(--color-rose-deep);text-align:center;cursor:pointer;justify-content:center;align-items:center;padding:.8rem 1.1rem;font-weight:780;text-decoration:none;transition:all .16s;display:inline-flex;box-shadow:0 .65rem 1.5rem #87444d29}.public-button:hover:not(:disabled){background:var(--color-rose-deep-hover);transform:translateY(-1px)}.public-button:focus-visible,.service-option:focus-visible,.staff-option:focus-visible,.time-picker button:focus-visible,.public-field input:focus-visible,.public-field textarea:focus-visible{outline-offset:2px;outline:3px solid #87444d33}.public-button:disabled{border-color:var(--color-border-strong);color:var(--color-text-subtle);background:var(--color-warm-beige);box-shadow:none;cursor:not-allowed}.public-button--secondary{border-color:var(--color-border-strong);color:var(--color-charcoal);box-shadow:none;background:0 0}.public-button--secondary:hover:not(:disabled){border-color:var(--color-rose-deep);color:var(--color-rose-deep);background:var(--color-nude-rose)}.public-button--danger{border-color:var(--color-danger);color:var(--color-danger);background:var(--color-danger-soft);box-shadow:none}.public-button--danger:hover:not(:disabled){color:var(--color-on-accent);background:var(--color-danger)}.public-field{gap:.45rem;margin-top:1rem;display:grid}.public-field>span{color:var(--color-charcoal);letter-spacing:.02em;font-size:.78rem;font-weight:780}.public-field>span small{color:var(--color-text-subtle);font-weight:500}.public-field input,.public-field textarea{border:1px solid var(--color-border-strong);border-radius:var(--radius-md);width:100%;min-height:3.25rem;color:var(--color-charcoal);font:inherit;background:#ffffffe6;padding:.85rem .95rem;font-size:.92rem}.public-field textarea{resize:vertical;min-height:6rem}.public-field input:focus,.public-field textarea:focus{border-color:var(--color-rose-deep)}.time-picker{margin-top:1.25rem}.time-picker h3{margin:0 0 .75rem;font-size:.86rem}.time-picker__grid{grid-template-columns:repeat(3,1fr);gap:.5rem;display:grid}.time-picker button{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);min-height:2.8rem;color:var(--color-charcoal);background:var(--color-surface);cursor:pointer;font-weight:720}.time-picker button.is-selected{border-color:var(--color-rose-deep);color:var(--color-on-accent);background:var(--color-rose-deep)}.public-empty-copy{border-radius:var(--radius-sm);color:var(--color-text-muted);background:var(--color-warm-beige);margin:0;padding:.85rem;font-size:.82rem}.confirmation-card{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-warm-beige);gap:0;margin-bottom:1rem;display:grid;overflow:hidden}.confirmation-card>div{border-bottom:1px solid var(--color-border);gap:.2rem;padding:.85rem;display:grid}.confirmation-card>div:last-child{border-bottom:0}.confirmation-card span{color:var(--color-text-subtle);letter-spacing:.06em;text-transform:uppercase;font-size:.69rem;font-weight:750}.confirmation-card strong{font-size:.88rem;line-height:1.4}.confirmation-card--final{margin:1rem 0}.booking-success{text-align:center}.booking-success__seal{border:1px solid var(--color-champagne-gold);width:4.25rem;height:4.25rem;color:var(--color-success);background:var(--color-success-soft);font-family:var(--font-serif);border-radius:50%;place-items:center;margin:-.15rem auto 1rem;font-size:1.65rem;display:grid}.booking-success__note,.management-rule{color:var(--color-text-muted);margin:1rem 0 0;font-size:.82rem;line-height:1.55}.public-status{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-warm-beige);text-align:left;align-items:flex-start;gap:.8rem;padding:1rem;display:flex}.public-status__mark{border:2px solid var(--color-rose-deep);border-radius:50%;flex:0 0 .7rem;width:.7rem;height:.7rem;margin-top:.35rem}.public-status h2{margin-bottom:.3rem;font-size:1.05rem}.public-status--error{background:var(--color-danger-soft);border-color:#9d3d4633}.public-status--error .public-status__mark{border-color:var(--color-danger)}.public-status--success{background:var(--color-success-soft);border-color:#2e6b4e33}.public-status--success .public-status__mark{border-color:var(--color-success)}.public-inline-error,.public-success-banner{border-radius:var(--radius-sm);color:var(--color-danger);background:var(--color-danger-soft);border:1px solid #9d3d4633;margin-bottom:.8rem;padding:.85rem 1rem;font-size:.83rem;line-height:1.45}.public-success-banner{color:var(--color-success);background:var(--color-success-soft);border-color:#2e6b4e33}.appointment-state{color:var(--color-success);background:var(--color-success-soft);border-radius:999px;align-items:center;gap:.45rem;padding:.4rem .65rem;font-size:.74rem;font-weight:780;display:inline-flex}.appointment-state>span{background:var(--color-success);border-radius:50%;width:.45rem;height:.45rem}.appointment-hero{gap:.2rem;padding:1.5rem 0 1rem;display:grid}.appointment-hero>span{color:var(--color-text-muted);text-transform:capitalize;font-size:.84rem}.appointment-hero>strong{font-family:var(--font-serif);font-size:2.6rem;font-weight:500}.appointment-hero>small{color:var(--color-text-muted)}.booking-cancel{position:relative;overflow:hidden}.booking-cancel__line{background:var(--color-danger);width:.3rem;position:absolute;inset:0 auto 0 0}.public-skeleton{border:1px solid var(--color-border);border-radius:var(--radius-xl);background:#ffffffa6;gap:.75rem;padding:1.25rem;display:grid}.public-skeleton span{border-radius:var(--radius-sm);background:linear-gradient(90deg, var(--color-warm-beige), var(--color-surface), var(--color-warm-beige));background-size:200% 100%;height:3.2rem;animation:1.4s linear infinite public-shimmer}.public-skeleton--compact{background:0 0;border:0;padding:0}.public-skeleton--compact span{height:2.8rem}@keyframes public-shimmer{to{background-position:-200% 0}}@media (width>=34rem){.public-booking{padding:1.5rem}.booking-progress__step small{display:block}.booking-section{padding:1.6rem}.public-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.public-actions .public-button:only-child{grid-column:2}.time-picker__grid{grid-template-columns:repeat(4,1fr)}.confirmation-card>div{grid-template-columns:8rem 1fr;align-items:center}}@media (width<=23rem){.public-booking{padding:.75rem}.public-booking__intro h1{font-size:2.05rem}.booking-progress{padding:.75rem .5rem}.booking-section{padding:1rem}.time-picker__grid{grid-template-columns:repeat(2,1fr)}}@media (width>=48rem){.public-booking{padding:2rem}.public-booking__shell{padding-bottom:3rem}.service-picker{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (prefers-reduced-motion:reduce){.public-skeleton span{animation:none}.service-option,.staff-option,.public-button{transition:none}}.service-option__image{object-fit:cover;border-radius:.65rem;width:3.5rem;height:3.5rem}.proposal-page{place-items:center;min-height:100vh;display:grid}.proposal-date{color:#7f3046;background:#f9eef2;border-radius:.8rem;margin:1rem 0;padding:1rem;font-size:1.1rem;font-weight:700}.proposal-actions{gap:.75rem;margin-top:1.25rem;display:grid}.public-promotions{gap:.85rem;margin-bottom:1rem;display:grid}.booking-section__heading--compact{margin-bottom:0}.booking-section__heading--compact h2{font-size:1rem}.public-promotions__grid{gap:.75rem;display:grid}.public-promotion-card{appearance:none;text-align:left;color:#31252d;cursor:pointer;background:#fffdf9;border:1px solid #a2467029;border-radius:.75rem;gap:.25rem;padding:.9rem 1rem;display:grid}.public-promotion-card strong{color:#a24670}.public-promotion-card span,.public-promotion-card small{color:#76636d;line-height:1.35}.public-promotion-card--selected{border-color:#a2467085;box-shadow:0 0 0 3px #a246701a}.public-date-pair{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:.6rem;display:grid}.public-date-pair select{color:#31252d;background:#fff;border:1px solid #a246702e;border-radius:.75rem;width:100%;padding:.8rem .9rem}.public-consent-box{background:#a246700a;border:1px solid #a2467024;border-radius:.9rem;gap:.8rem;margin-bottom:1rem;padding:.95rem 1rem;display:grid}.public-consent-box--attention{border-color:#d13c699e;box-shadow:0 0 0 3px #d13c691a}.public-consent-box label{color:#4a3a43;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:.65rem;font-size:.88rem;line-height:1.4;display:grid}.public-consent-box input{margin-top:.15rem}.salon-qr{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-soft);padding:1.25rem}.salon-qr h3{color:var(--color-charcoal);font-family:var(--font-serif);margin:.35rem 0;font-size:clamp(1.35rem,5vw,1.75rem)}.salon-qr__eyebrow,.salon-qr__link-label{color:var(--color-champagne-gold);letter-spacing:.2em;text-transform:uppercase;font-size:.72rem;font-weight:800}.salon-qr__description{color:var(--color-text-muted);margin:0 0 1rem;font-size:.9rem;line-height:1.55}.salon-qr__toggle{width:100%}.salon-qr__details{gap:1rem;margin-top:1.25rem;animation:.18s ease-out salonQrReveal;display:grid}.salon-qr__card{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-ivory);align-content:center;place-items:center;width:min(100%,15rem);min-height:15rem;margin:0 auto;padding:.65rem .65rem .85rem;display:grid}.salon-qr__image{width:min(100%,14rem);height:auto;image-rendering:pixelated;border-radius:.35rem;display:block}.salon-qr__name{overflow-wrap:anywhere;max-width:100%;color:var(--color-rose-deep);letter-spacing:.04em;text-transform:uppercase;margin-top:.5rem;font-size:.75rem;font-weight:750}.salon-qr__loading,.salon-qr__error{color:var(--color-text-muted);margin:0;font-size:.9rem}.salon-qr__error{color:var(--color-danger)}.salon-qr__actions{flex-wrap:wrap;gap:.75rem;display:flex}.salon-qr__actions .button{flex:9rem}.salon-qr__link-box{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-ivory);gap:.45rem;padding:.9rem;display:grid}.salon-qr__link-box a{overflow-wrap:anywhere;color:var(--color-rose-deep);font-size:.85rem;line-height:1.45}@keyframes salonQrReveal{0%{opacity:0;transform:translateY(-.35rem)}to{opacity:1;transform:translateY(0)}}@media (width<=24rem){.salon-qr__actions .button{width:100%}}@media (prefers-reduced-motion:reduce){.salon-qr__details{animation:none}}.dashboard-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin-top:1.5rem;display:grid}.dashboard-metric{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);min-width:0;min-height:8.6rem;box-shadow:var(--shadow-soft);align-content:space-between;gap:.5rem;padding:1rem;display:grid}.dashboard-metric--highlighted{border-color:var(--color-blush-pink);background:var(--color-nude-rose)}.dashboard-metric__heading{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:.5rem;display:grid}.dashboard-metric__heading>span:first-child{overflow-wrap:anywhere;color:var(--color-text-muted);letter-spacing:.06em;text-transform:uppercase;font-size:.68rem;font-weight:750;line-height:1.35}.dashboard-metric__icon{border-radius:var(--radius-sm);width:2.5rem;height:2.5rem;color:var(--color-champagne-gold);background:var(--color-warm-beige);place-items:center;display:grid}.dashboard-metric--highlighted .dashboard-metric__icon{color:var(--color-blush-pink);background:var(--color-surface)}.dashboard-metric__icon svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:1.2rem;height:1.2rem}.dashboard-metric strong{color:var(--color-charcoal);font-family:var(--font-serif);font-size:clamp(1.65rem,8vw,2.15rem);font-weight:600;line-height:1}.dashboard-metric small{color:var(--color-text-subtle);font-size:.74rem;line-height:1.35}.dashboard-metrics__error{color:var(--color-danger);margin:1rem 0 0;font-size:.82rem}@media (width>=48rem){.dashboard-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.dashboard-metric{min-height:9.5rem;padding:1.2rem}}.services-list{gap:1rem;display:grid}.service-card{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-soft);gap:.75rem;padding:1rem;display:grid}.service-card--inactive{opacity:.66}.service-card__title{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.service-card h4{color:var(--color-charcoal);margin:0 0 .3rem;font-size:1.05rem}.service-card__status{color:var(--color-success);background:var(--color-success-soft);border-radius:999px;flex:none;padding:.25rem .55rem;font-size:.68rem;font-weight:800}.service-card__status.is-inactive{color:var(--color-text-muted);background:var(--color-warm-beige)}.service-card__description{color:var(--color-text-muted);margin:0;font-size:.85rem}.service-card__footer,.service-card__meta,.service-card__actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.service-card__footer{border-top:1px solid var(--color-border);justify-content:space-between;padding-top:.7rem}.service-card__meta{color:var(--color-text-muted);font-size:.78rem}.service-card__meta strong{color:var(--color-charcoal);font-size:.88rem}.service-card__action{color:var(--color-champagne-gold);font:inherit;text-transform:uppercase;cursor:pointer;background:0 0;border:0;font-size:.7rem;font-weight:800}.service-card__action--danger{color:var(--color-danger)}.service-form-dialog{text-align:left;width:min(100%,30rem)}.service-form textarea{resize:vertical;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);width:100%;min-height:5rem;color:var(--color-charcoal);background:var(--color-surface);font:inherit;padding:.8rem}.service-form__numbers{gap:1rem;display:grid}.service-form__price-note{color:#76636d;align-self:end;margin:0 0 .35rem;font-size:.82rem;line-height:1.45}.service-form__actions{margin-top:1.5rem}@media (width>=36rem){.service-form__numbers{grid-template-columns:1fr 1fr}}.service-card__image{object-fit:cover;border-radius:.8rem .8rem 0 0;width:100%;max-height:12rem}.salon-schedule,.staff-card{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-soft)}.salon-schedule{margin-bottom:2rem;padding:1.15rem}.salon-schedule__heading span,.staff-dialog__eyebrow{color:var(--color-champagne-gold);letter-spacing:.14em;text-transform:uppercase;font-size:.7rem;font-weight:800}.salon-schedule__heading h3{color:var(--color-charcoal);font-family:var(--font-serif);margin:.3rem 0;font-size:1.45rem}.salon-schedule__heading p,.staff-dialog__description,.staff-status{color:var(--color-text-muted);margin:0;font-size:.85rem;line-height:1.5}.salon-schedule__days{gap:.7rem;margin:1.25rem 0;display:grid}.schedule-day{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-ivory);grid-template-columns:minmax(5.5rem,.8fr) minmax(0,1.6fr);align-items:center;gap:.45rem;padding:.65rem;display:grid}.schedule-day--closed{opacity:.62}.schedule-day__toggle{min-height:2rem;color:var(--color-charcoal);align-items:center;gap:.6rem;display:flex}.schedule-day__toggle input,.staff-service-option input{width:1.05rem;height:1.05rem;accent-color:var(--color-blush-pink)}.schedule-day__times{grid-template-columns:repeat(2,minmax(0,1fr));gap:.4rem;display:grid}.schedule-day__times label{gap:.3rem;display:grid}.schedule-day__times span{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.schedule-day__times input{border:1px solid var(--color-border);background:var(--color-surface);width:100%;min-width:0;min-height:2.5rem;color:var(--color-charcoal);font:inherit;border-radius:.7rem;padding:.45rem}.salon-schedule__save{width:100%;margin-top:1rem}@media (width<=35.999rem){.schedule-day__toggle{grid-template-columns:1rem minmax(0,1fr);gap:.45rem;display:grid}.schedule-day__toggle input{width:1rem;height:1rem;margin:0}.schedule-day__toggle strong{white-space:nowrap;font-size:.78rem;line-height:1.2}.schedule-day__times input{padding-inline:.3rem;font-size:.75rem}.schedule-day__times input::-webkit-calendar-picker-indicator{width:.85rem;height:.85rem;margin:0;padding:0}}.staff-list{gap:1rem;display:grid}.staff-card{gap:.9rem;padding:1.15rem;display:grid}.staff-card--inactive{opacity:.68}.staff-card__identity{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:.8rem;display:grid}.staff-avatar{border:1px solid var(--color-border);width:2.7rem;height:2.7rem;color:var(--color-blush-pink);background:var(--color-ivory);font-family:var(--font-serif);border-radius:50%;place-items:center;font-weight:800;display:grid}.staff-card__title{flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.staff-card h4{color:var(--color-charcoal);margin:0;font-size:1.05rem}.staff-card__title>span,.staff-card__title>small{color:var(--color-rose-deep);background:var(--color-nude-rose);text-transform:uppercase;border-radius:999px;padding:.15rem .4rem;font-size:.62rem;font-weight:800}.staff-card__title>small{color:var(--color-text-muted);background:var(--color-warm-beige)}.staff-card__title>small.is-active{color:var(--color-success);background:var(--color-success-soft)}.staff-card__meta{color:var(--color-text-muted);margin:.25rem 0 0;font-size:.82rem}.staff-card__meta strong{color:var(--color-charcoal)}.staff-card__details{border-top:1px solid var(--color-border);padding-top:.75rem}.staff-card__services{flex-wrap:wrap;gap:.4rem;margin-top:.75rem;display:flex}.staff-card__services span{border:1px solid var(--color-border);color:var(--color-text-muted);background:var(--color-ivory);border-radius:999px;padding:.3rem .55rem;font-size:.72rem}.staff-card__services--empty{color:var(--color-danger);font-size:.78rem}.staff-card__actions{border-top:1px solid var(--color-border);justify-content:flex-end;gap:.8rem;padding-top:.7rem;display:flex}.staff-card__edit,.staff-card__delete{color:var(--color-champagne-gold);font:inherit;text-transform:uppercase;cursor:pointer;background:0 0;border:0;font-size:.75rem;font-weight:800}.staff-card__delete{color:var(--color-danger)}.staff-services-dialog{text-align:left;gap:1rem;display:grid}.staff-services-dialog h3{margin:-.5rem 0 0}.staff-create-services{border:0;gap:.6rem;margin:0;padding:0;display:grid}.staff-create-services legend{color:var(--color-charcoal);font-weight:750}.staff-create-services>p{color:var(--color-text-muted);margin:-.35rem 0 0;font-size:.78rem}.staff-service-picker{gap:.6rem;max-height:min(48dvh,25rem);padding:.15rem;display:grid;overflow-y:auto}.staff-service-option{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-ivory);cursor:pointer;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.65rem;min-height:4rem;padding:.75rem;display:grid}.staff-service-option--selected{border-color:var(--color-blush-pink);background:var(--color-nude-rose)}.staff-service-option span{gap:.2rem;min-width:0;display:grid}.staff-service-option strong{overflow-wrap:anywhere;color:var(--color-charcoal);font-size:.86rem}.staff-service-option small{color:var(--color-text-muted);font-size:.75rem}.staff-dialog__warning{color:var(--color-danger);margin:0;font-size:.8rem}.staff-edit-dialog{text-align:left;width:min(100%,34rem)}.staff-edit-dialog form{gap:1rem;display:grid}.staff-edit-dialog__identity{grid-template-columns:auto minmax(0,1fr);align-items:end;gap:.75rem;display:grid}.staff-edit-dialog__fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.staff-active-toggle{color:var(--color-charcoal);cursor:pointer;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:.65rem;display:grid}.staff-active-toggle input{width:1rem;height:1rem;accent-color:var(--color-blush-pink)}.staff-active-toggle span{gap:.15rem;display:grid}.staff-active-toggle small{color:var(--color-text-muted);font-size:.74rem}@media (width>=36rem){.salon-schedule{padding:1.5rem}.schedule-day{grid-template-columns:minmax(7rem,.8fr) minmax(14rem,1.5fr)}.staff-service-picker{grid-template-columns:repeat(2,minmax(0,1fr))}}.salon-users{background:#fff;border:1px solid #eadde1;border-radius:1rem;margin:0 0 2rem;padding:1.25rem}.salon-users .feature-heading{margin-top:0}.salon-users .feature-heading p{color:#76636d;margin:.3rem 0 0}.salon-users__list{gap:.75rem;display:grid}.salon-user-card{border:1px solid #eee3e6;border-radius:.8rem;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.75rem 1rem;padding:.9rem 1rem;display:grid}.salon-user-card div:first-child{gap:.2rem;display:grid}.salon-user-card span,.salon-user-card small{color:#76636d}.salon-user-card__status{gap:.4rem;display:flex}.salon-user-card__status span{background:#f7eef1;border-radius:999px;padding:.25rem .55rem;font-size:.78rem}.salon-user-card__status .is-active{color:#176b4b;background:#e9f7f0}.salon-user-card__actions{flex-wrap:wrap;grid-column:1/-1;gap:.5rem;display:flex}.salon-user-card__actions button{color:#7f3046;cursor:pointer;background:#fff;border:1px solid #decdd2;border-radius:.55rem;padding:.45rem .7rem}@media (width<=600px){.salon-user-card{grid-template-columns:1fr}}.availability-dialog{text-align:left;width:min(100%,36rem);max-height:min(88dvh,42rem);overflow:hidden auto}.availability-dialog>p:not(.staff-dialog__description){display:none}.availability-dialog h3{color:var(--color-charcoal);font-family:var(--font-serif);margin:.25rem 0 .35rem;font-size:1.45rem}.availability-days{gap:.65rem;margin:1rem 0;display:grid}.availability-day{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-ivory);grid-template-columns:minmax(7rem,.9fr) repeat(2,minmax(0,1fr));align-items:center;gap:.55rem;padding:.65rem;display:grid}.availability-day__toggle{color:var(--color-charcoal);grid-template-columns:1rem minmax(0,1fr);align-items:center;gap:.5rem;display:grid}.availability-day__toggle input{width:1rem;height:1rem;accent-color:var(--color-blush-pink);margin:0}.availability-day__toggle strong{overflow-wrap:anywhere;min-width:0;font-size:.85rem}.availability-day__time{gap:.25rem;min-width:0;display:grid}.availability-day__time span{color:var(--color-text-muted);text-transform:uppercase;font-size:.68rem;font-weight:800}.availability-day__time input[type=time]{border:1px solid var(--color-border);background:var(--color-surface);width:100%;min-width:0;min-height:2.4rem;color:var(--color-charcoal);font:inherit;border-radius:.65rem;padding:.35rem;font-size:.82rem}@media (width<=520px){.availability-day{grid-template-columns:1fr 1fr}.availability-day__toggle{grid-column:1/-1}}.schedule-holidays{background:#f8f6f7;border:1px solid #ded2d7;border-radius:8px;gap:.85rem;margin-top:1rem;padding:1rem;display:grid}.schedule-holidays.is-open{background:#f2f8f5;border-color:#8fb8a9}.schedule-holidays__toggle{cursor:pointer;align-items:flex-start;gap:.7rem;display:flex}.schedule-holidays__toggle input{accent-color:#3b7d68;width:1.15rem;height:1.15rem}.schedule-holidays__toggle span{gap:.2rem;display:grid}.schedule-holidays__toggle small,.schedule-holidays__closed{color:#76636d;font-size:.8rem}.conversations-toolbar{gap:.75rem;margin-bottom:1rem;display:grid}.conversations-toolbar input,.conversations-toolbar select{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);min-height:3rem;color:var(--color-charcoal);padding:0 .9rem}.conversations-list,.customer-conversations{gap:.75rem;display:grid}.conversation-card{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);width:100%;min-height:5.5rem;color:var(--color-charcoal);text-align:left;cursor:pointer;box-shadow:var(--shadow-soft);grid-template-columns:auto minmax(0,1fr);align-items:start;gap:.8rem;padding:1rem;display:grid}.conversation-card:hover{border-color:var(--color-border-strong)}.conversation-card:focus-visible,.conversation-back:focus-visible,.conversation-close:focus-visible,.conversations-pagination button:focus-visible{outline:3px solid color-mix(in srgb, var(--color-rose-deep) 28%, transparent);outline-offset:2px}.conversation-card__avatar{background:var(--color-nude-rose);width:2.75rem;height:2.75rem;color:var(--color-rose-deep);font-family:var(--font-serif);border-radius:50%;place-items:center;font-size:1.2rem;font-weight:800;display:grid}.conversation-card__content,.conversation-card__heading{min-width:0;display:flex}.conversation-card__content{flex-direction:column;gap:.2rem}.conversation-card__heading{justify-content:space-between;gap:.75rem}.conversation-card__heading time,.conversation-card__context,.conversation-card__preview,.conversation-state{color:var(--color-text-muted);font-size:.82rem}.conversation-card__heading time{flex:none;font-size:.72rem}.conversation-card__context{color:var(--color-rose-deep);font-weight:700}.conversation-card__preview{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.conversation-customer-card__action{color:var(--color-rose-deep);justify-content:flex-end;align-items:center;gap:.3rem;margin-top:.25rem;font-size:.78rem;font-weight:750;display:flex}.conversation-customer-card__action span{font-size:1.15rem;line-height:.8}.customer-conversations__heading{border-bottom:1px solid var(--color-border);justify-items:start;gap:.75rem;margin-bottom:1rem;padding-bottom:1rem;display:grid}.customer-conversations__title{gap:.15rem;width:100%;min-width:0;display:grid}.customer-conversations__heading span{color:var(--color-text-muted);font-size:.72rem}.customer-conversations__heading h2{color:var(--color-charcoal);font-family:var(--font-serif);overflow-wrap:anywhere;margin:0;font-size:1.25rem;line-height:1.2}.conversation-back{border:1px solid var(--color-border);background:var(--color-surface);min-height:2.5rem;color:var(--color-rose-deep);font:inherit;cursor:pointer;box-shadow:var(--shadow-soft);border-radius:999px;justify-content:center;align-items:center;gap:.45rem;padding:.55rem .8rem;font-size:.82rem;font-weight:750;display:inline-flex}.conversation-back:hover{border-color:var(--color-border-strong);background:var(--color-warm-beige)}.conversation-back span{font-size:1rem;line-height:1}.conversation-empty{border:1px dashed var(--color-border-strong);border-radius:var(--radius-md);text-align:center;padding:2rem 1rem}.conversation-empty h2,.conversation-empty p{margin:0}.conversation-empty p{color:var(--color-text-muted);margin-top:.35rem}.conversations-pagination{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:.75rem;margin-top:1.25rem;display:grid}.conversations-pagination button{width:100%}.conversations-pagination span{color:var(--color-text-muted);font-size:.82rem}.conversation-drawer-backdrop{z-index:90;background:var(--color-overlay);justify-content:center;align-items:flex-end;padding:.5rem;display:flex;position:fixed;inset:0}.conversation-drawer{border:1px solid var(--color-border);border-radius:var(--radius-xl) var(--radius-xl) var(--radius-sm) var(--radius-sm);background:var(--color-ivory);width:min(100%,48rem);max-height:94dvh;box-shadow:var(--shadow-raised);flex-direction:column;padding:1rem;display:flex;overflow:hidden}.conversation-drawer__header{border-bottom:1px solid var(--color-border);background:var(--color-surface);flex:none;justify-content:space-between;align-items:start;gap:1rem;margin:-1rem -1rem 1rem;padding:1rem;display:flex}.conversation-drawer__body{overscroll-behavior:contain;flex:auto;min-height:0;padding:.1rem;overflow-y:auto}.conversation-drawer__header span{color:var(--color-rose-deep);letter-spacing:.08em;text-transform:uppercase;font-size:.72rem;font-weight:800}.conversation-drawer__header h2{font-family:var(--font-serif);margin:.2rem 0 0;font-size:1.35rem}.conversation-close{border:1px solid var(--color-border);background:var(--color-surface);min-height:2.75rem;color:var(--color-rose-deep);font:inherit;cursor:pointer;border-radius:999px;padding:.55rem .85rem;font-size:.82rem;font-weight:750}.conversation-close:hover{border-color:var(--color-border-strong);background:var(--color-warm-beige)}.conversation-booking{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-warm-beige);grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin-bottom:1rem;padding:1rem;display:grid}.conversation-booking div{gap:.15rem;display:grid}.conversation-booking span{color:var(--color-text-muted);font-size:.72rem}.conversation-booking p{color:var(--color-text-muted);grid-column:1/-1;margin:0;font-size:.85rem}.conversation-load-older{width:100%;margin-bottom:1rem}.conversation-messages{flex-direction:column;gap:.65rem;display:flex}.conversation-message{overflow-wrap:anywhere;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);width:min(88%,32rem);padding:.8rem}.conversation-message__heading{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.conversation-message--outbound{background:var(--color-nude-rose);align-self:flex-end}.conversation-message__direction{color:var(--color-rose-deep);text-transform:uppercase;font-size:.68rem;font-weight:800}.conversation-message__template{background:color-mix(in srgb, var(--color-surface) 70%, transparent);color:var(--color-text-muted);border-radius:999px;padding:.2rem .5rem;font-size:.65rem;font-weight:700}.conversation-message p{white-space:pre-wrap;margin:.3rem 0 .55rem;line-height:1.5}.conversation-message a{color:var(--color-rose-deep);text-underline-offset:.15em;font-weight:700;text-decoration-thickness:1px}.conversation-message footer{color:var(--color-text-subtle);justify-content:space-between;gap:.75rem;font-size:.68rem;display:flex}.customer-detail__tabs{border-radius:var(--radius-sm);background:var(--color-warm-beige);grid-template-columns:repeat(3,1fr);gap:.35rem;margin:1rem 0;padding:.3rem;display:grid}.customer-detail__tabs button{min-height:2.75rem;color:var(--color-text-muted);cursor:pointer;background:0 0;border:0;border-radius:.7rem;font-weight:750}.customer-detail__tabs button.active{background:var(--color-surface);color:var(--color-rose-deep);box-shadow:var(--shadow-soft)}@media (width>=48rem){.conversations-toolbar{grid-template-columns:minmax(16rem,1fr) 12rem}.conversation-drawer-backdrop{align-items:center;padding:1.5rem}.conversation-drawer{border-radius:var(--radius-xl);padding:1.5rem}.conversation-drawer__header{margin:-1.5rem -1.5rem 1rem;padding:1.25rem 1.5rem}.customer-conversations__heading{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:1rem}}@media (width<=24rem){.conversations-pagination{grid-template-columns:repeat(2,minmax(0,1fr))}.conversations-pagination span{text-align:center;grid-area:1/1/auto/-1}.conversation-booking,.customer-detail__tabs{grid-template-columns:1fr}}.booking-detail{color:#251b20;text-align:left;background:#fffdfa;border:1px solid #eadfd8;border-radius:1.4rem 1.4rem .8rem .8rem;width:min(100%,38rem);max-height:92dvh;padding:1.35rem;overflow-y:auto;box-shadow:0 1.5rem 4rem #46303933}.booking-detail__header{border-bottom:1px solid #eee5df;justify-content:space-between;gap:1rem;padding-bottom:1rem;display:flex}.booking-detail__header span,.booking-detail__facts span,.booking-detail__notes>span{color:#a76712;letter-spacing:.08em;text-transform:uppercase;font-size:.68rem;font-weight:800}.booking-detail__header h2{margin:.25rem 0 0;font-family:Georgia,serif;font-size:clamp(1.35rem,5vw,1.7rem)}.booking-detail__header button{color:#8c7b82;cursor:pointer;background:0 0;border:0;align-self:flex-start;font-size:1.4rem}.booking-detail__facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.1rem;padding:1.3rem 0;display:grid}.booking-detail__facts div{align-content:start;gap:.35rem;display:grid}.booking-detail__facts span{color:#8c7f84}.booking-detail__facts strong{overflow-wrap:anywhere;font-size:.92rem}.booking-detail__fact-wide{grid-column:1/-1}.booking-detail__status,.booking-detail__origin{color:#a45a00;background:#fff8e8;border:1px solid #f1d38d;border-radius:.45rem;justify-self:start;padding:.3rem .6rem;font-size:.78rem!important}.booking-detail__status--completed{color:#087c45;background:#effbf4;border-color:#b7e5ca}.booking-detail__status--cancelled_by_salon,.booking-detail__status--cancelled_by_client,.booking-detail__status--no_show{color:#9a3932;background:#fff3f1;border-color:#efc6c3}.booking-detail__origin{color:#9b4d3c;background:#fff2ee;border-color:#efc7bf}.booking-detail__card,.booking-detail__management,.booking-detail__reminders,.booking-detail__notes{background:#fff;border:1px solid #eee4de;border-radius:1rem;margin-top:.25rem;padding:1rem}.booking-detail__card h3,.booking-detail__management h3,.booking-detail__reminders h3,.booking-detail__audit h3{color:#705b64;letter-spacing:.05em;text-transform:uppercase;margin:0 0 .8rem;font-family:inherit;font-size:.74rem;font-weight:800}.booking-detail__services{display:grid}.booking-detail__services>div,.booking-detail__total{border-bottom:1px solid #f0e8e3;justify-content:space-between;gap:1rem;padding:.6rem 0;display:flex}.booking-detail__services span{gap:.2rem;display:grid}.booking-detail__services small{color:#8f8187}.booking-detail__services b,.booking-detail__total strong{white-space:nowrap}.booking-detail__total{border:0;font-family:Georgia,serif;font-weight:700}.booking-detail__notes{background:#faf8f7}.booking-detail__notes p{color:#66575e;margin:.45rem 0 0;line-height:1.5}.booking-detail__management{background:#fffbef;border-color:#f1dba5;margin-top:1rem}.booking-detail__management h3{color:#a45a00}.booking-detail__management a{color:#594b51;overflow-wrap:anywhere;background:#fff;border:1px solid #f0dfae;border-radius:.65rem;padding:.65rem;font-size:.8rem;line-height:1.45;display:block}.booking-detail__reminders{background:#f1fff7;border-color:#b9ebd1;margin-top:1rem}.booking-detail__reminders h3{color:#087c45}.booking-detail__reminder-row{background:#ffffffc7;border:1px solid #d8f3e4;grid-template-columns:1fr auto;gap:.2rem .7rem;padding:.65rem;display:grid}.booking-detail__reminder-row:first-of-type{border-radius:.65rem .65rem 0 0}.booking-detail__reminder-row+.booking-detail__reminder-row{border-top:0;border-radius:0 0 .65rem .65rem}.booking-detail__reminder-row>span{color:#75686e;font-size:.8rem}.booking-detail__reminder-row strong{font-size:.78rem}.booking-detail__reminder-row small{color:#8a7e83;grid-column:1/-1;font-size:.68rem}.booking-detail .is-success{color:#008f53}.booking-detail .is-pending{color:#db7600}.booking-detail .is-error{color:#b33e36}.booking-detail .is-muted{color:#897d82}.booking-detail__reminders>p{color:#84777c;margin:.8rem 0 0;font-size:.68rem;line-height:1.45}.booking-detail__counters{border-block:1px solid #eee5df;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1rem 0;padding:1rem 0;display:grid}.booking-detail__counters div{gap:.25rem;display:grid}.booking-detail__counters span{color:#8a7d82;font-size:.78rem}.booking-detail__audit{padding:.25rem .75rem 0}.booking-detail__audit h3{color:#5a4a51}.booking-detail__audit ol{gap:0;margin:0;padding:0;list-style:none;display:grid}.booking-detail__audit li{border-left:1px solid #ead8ae;gap:.2rem;padding:0 0 1rem 1rem;display:grid;position:relative}.booking-detail__audit li:before{content:"";background:#dba524;border:2px solid #fffdfa;border-radius:999px;width:.48rem;height:.48rem;position:absolute;top:.35rem;left:-.28rem}.booking-detail__audit li.is-success:before{background:#14a865}.booking-detail__audit li.is-error:before{background:#c94a42}.booking-detail__audit li>div{justify-content:space-between;gap:.75rem;display:flex}.booking-detail__audit li strong{color:#33272c;font-size:.78rem}.booking-detail__audit time,.booking-detail__audit li>span,.booking-detail__audit li p{color:#8b7e83;font-size:.68rem}.booking-detail__audit time{flex:none}.booking-detail__audit li p{margin:0;font-style:italic;line-height:1.45}.booking-detail__empty-audit{color:#8b7e83;font-size:.82rem}.booking-detail__actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;margin-top:.5rem;display:grid}.booking-detail__actions>p{color:#897c82;text-align:center;background:#faf9f9;border:1px solid #ece8e7;border-radius:.75rem;grid-column:1/-1;margin:0;padding:.8rem;font-size:.75rem}.booking-detail__close{grid-column:1/-1}@media (width<=29rem){.booking-detail__facts,.booking-detail__counters,.booking-detail__actions{grid-template-columns:1fr}.booking-detail__fact-wide,.booking-detail__actions>p,.booking-detail__close{grid-column:1}.booking-detail__audit li>div{gap:.15rem;display:grid}}@media (width>=36rem){.booking-detail{border-radius:1.4rem;padding:1.75rem}}.salon-settings{gap:1rem;display:grid}.salon-settings__card{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-soft);padding:1.25rem}.salon-settings__eyebrow{color:var(--color-champagne-gold);letter-spacing:.13em;text-transform:uppercase;font-size:.68rem;font-weight:800}.salon-settings__card h2{color:var(--color-charcoal);font-family:var(--font-serif);margin:.25rem 0;font-size:1.4rem}.salon-settings__card>p,.salon-settings__status{color:var(--color-text-muted);margin:0 0 1rem;font-size:.84rem;line-height:1.5}.salon-settings__fields{gap:.85rem;display:grid}.salon-settings__fields label{color:var(--color-text-subtle);letter-spacing:.06em;text-transform:uppercase;gap:.35rem;font-size:.69rem;font-weight:800;display:grid}.salon-settings__fields input{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);min-width:0;min-height:2.8rem;color:var(--color-charcoal);font:inherit;letter-spacing:normal;text-transform:none;padding:.7rem;font-weight:400}.salon-settings__toggles{gap:.65rem;margin-top:1rem;display:grid}.salon-settings__toggles label{border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:.75rem;padding:.85rem;display:grid}.salon-settings__toggles input{width:1rem;height:1rem;accent-color:var(--color-blush-pink)}.salon-settings__toggles span{gap:.2rem;display:grid}.salon-settings__toggles strong{color:var(--color-charcoal);font-size:.82rem}.salon-settings__toggles small{color:var(--color-text-muted);font-size:.75rem;line-height:1.45}.salon-settings__save{width:100%}@media (width>=48rem){.salon-settings__card{padding:1.5rem}.salon-settings__fields:not(.salon-settings__fields--single){grid-template-columns:repeat(2,minmax(0,1fr))}}
