:root{--font-figtree:"Figtree", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-display:"Cormorant Garamond", Georgia, "Times New Roman", serif;--salon-bg:#f2f0ee;--salon-surface:#fff;--salon-text:#2c2426;--salon-muted:#7a7073;--salon-border:#e6e0dc;--salon-primary:#9a3d4f;--salon-primary-hover:#823344;--salon-soft:#f7ecef;--salon-shadow:0 8px 28px #2c242612;--salon-shadow-soft:0 2px 8px #2c24260a;--salon-radius:12px;--salon-ease:cubic-bezier(.22, 1, .36, 1)}*{box-sizing:border-box}html,body{background:var(--salon-bg);min-height:100%;color:var(--salon-text);font-family:var(--font-figtree), system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;margin:0;padding:0;overflow-x:hidden}body{background-color:var(--salon-bg);background-image:radial-gradient(90% 55% at 50% -15%,#9a3d4f1a,#0000 55%),radial-gradient(50% 40% at 100% 80%,#9a3d4f0d,#0000),linear-gradient(165deg,#f7f5f3 0%,#efecea 45%,#e9e6e3 100%);background-attachment:fixed}a{color:var(--salon-primary);transition:color .2s var(--salon-ease);text-decoration:none}a:hover{color:var(--salon-primary-hover)}.salon-shell{box-sizing:border-box;width:100%;max-width:100%;min-height:100dvh;animation:salon-fade-up .55s var(--salon-ease) both;flex-direction:column;align-items:center;padding:56px 20px 72px;display:flex}@keyframes salon-fade-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes salon-fade-in{0%{opacity:0}to{opacity:1}}@keyframes salon-scale-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.salon-brand{text-align:center;max-width:640px;margin-bottom:36px;padding:0 8px}.salon-brand__avatar{width:112px;height:112px;box-shadow:0 0 0 1px var(--salon-border), var(--salon-shadow);animation:salon-scale-in .5s var(--salon-ease) both;border:3px solid #fff;border-radius:50%;margin:0 auto 18px;overflow:hidden}.salon-brand__avatar-img{object-fit:cover;object-position:center 25%;width:100%;height:100%;display:block}.salon-brand__eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--salon-primary);margin:0 0 12px;font-size:12px;font-weight:600}.salon-brand__name{font-family:var(--font-display), Georgia, "Times New Roman", serif;letter-spacing:-.02em;color:var(--salon-text);margin:0;font-size:clamp(28px,5vw,42px);font-weight:500;line-height:1.18}.salon-brand__name--with-info{flex-wrap:wrap;justify-content:center;align-items:center;gap:2px;max-width:100%;display:inline-flex}.salon-brand__tagline{max-width:420px;color:var(--salon-muted);margin:14px auto 0;font-size:15px;line-height:1.55}.calc-admin-note{max-width:520px;font-size:13px;font-style:italic}.salon-card{background:var(--salon-surface);border:1px solid var(--salon-border);border-radius:var(--salon-radius);width:100%;max-width:520px;box-shadow:var(--salon-shadow);animation:salon-scale-in .45s var(--salon-ease) 80ms both;padding:0;overflow:hidden}.salon-card--wide{max-width:980px}.salon-card__accent{background:linear-gradient(90deg, var(--salon-primary), #c47a88 55%, transparent);height:3px}.salon-card__body{padding:28px 28px 24px}.salon-steps{gap:8px;margin-bottom:24px;display:flex}.salon-step{background:var(--salon-border);height:3px;transition:background .3s var(--salon-ease);border-radius:999px;flex:1}.salon-step.is-active{background:var(--salon-primary)}.salon-step.is-done{background:#c9a0a8}.salon-section{animation:salon-fade-in .35s var(--salon-ease) both;flex-direction:column;gap:12px;display:flex}.salon-section+.salon-section{border-top:1px solid var(--salon-border);margin-top:28px;padding-top:28px}.salon-section--actions{border-top:none;margin-top:8px;padding-top:16px;padding-bottom:4px}.salon-label{letter-spacing:.06em;text-transform:uppercase;color:var(--salon-muted);font-size:12px;font-weight:600}.salon-slot-rows{flex-direction:column;gap:10px;display:flex}.salon-slot-row{animation:salon-fade-up .4s var(--salon-ease) both;align-items:center;gap:10px;display:flex}.salon-slot-row:first-child{animation-delay:20ms}.salon-slot-row:nth-child(2){animation-delay:50ms}.salon-slot-row:nth-child(3){animation-delay:80ms}.salon-slot-row:nth-child(4){animation-delay:.11s}.salon-slot-row:nth-child(5){animation-delay:.14s}.salon-slot-row:nth-child(6){animation-delay:.17s}.salon-slot-row:nth-child(n+7){animation-delay:.2s}.salon-slot-hour{color:var(--salon-text);letter-spacing:.02em;flex:0 0 3.25rem;font-size:15px;font-weight:650}.salon-slot-quarters{flex:1;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;min-width:0;display:grid}.salon-slots{grid-template-columns:repeat(auto-fill,minmax(128px,1fr));gap:10px;display:grid}.salon-slot{appearance:none;border:1px solid var(--salon-border);color:var(--salon-text);font:inherit;cursor:pointer;transition:background .2s var(--salon-ease), border-color .2s var(--salon-ease), color .2s var(--salon-ease), transform .2s var(--salon-ease), box-shadow .2s var(--salon-ease);background:#faf9f8;border-radius:10px;padding:12px 6px;font-size:14px;font-weight:500}.salon-slot-quarters .salon-slot{font-variant-numeric:tabular-nums;padding:11px 4px}.salon-slot:hover{background:var(--salon-soft);box-shadow:var(--salon-shadow-soft);border-color:#c9a0a8;transform:translateY(-1px)}.salon-slot.is-selected{background:var(--salon-primary);border-color:var(--salon-primary);color:#fff;box-shadow:0 4px 14px #9a3d4f47}.salon-slot:disabled{opacity:.45;cursor:not-allowed;box-shadow:none;transform:none}@media (width<=380px){.salon-slot-hour{flex-basis:2.75rem;font-size:14px}.salon-slot-quarters{gap:6px}.salon-slot-quarters .salon-slot{padding:10px 2px;font-size:13px}}.salon-empty{color:var(--salon-muted);border:1px dashed var(--salon-border);background:#faf9f8;border-radius:10px;margin:0;padding:14px 16px;font-size:14px;line-height:1.45}.salon-success{text-align:center;padding:20px 8px 8px}.salon-success__mark{background:var(--salon-soft);width:52px;height:52px;color:var(--salon-primary);animation:salon-scale-in .45s var(--salon-ease) both;border-radius:50%;place-items:center;margin:0 auto 18px;font-size:24px;display:grid}.salon-success h2{font-family:var(--font-display), Georgia, serif;margin:0 0 10px;font-size:28px;font-weight:500}.salon-success__when{color:var(--salon-text);background:#faf9f8;border-radius:10px;margin:16px 0 0;padding:14px 16px;font-size:15px;font-weight:500;line-height:1.55}.salon-success__services{color:var(--salon-text)!important;margin-top:12px!important;font-size:14px!important}.salon-success__sign{font-family:var(--font-display), Georgia, serif;font-weight:500;color:var(--salon-text)!important;margin-top:28px!important;font-size:22px!important}.salon-success p{color:var(--salon-muted);margin:0;font-size:15px;line-height:1.5}.salon-legal__title{color:var(--salon-text);margin:0 0 8px;font-size:16px;font-weight:650}.salon-legal p{color:var(--salon-muted);margin:0 0 10px;font-size:14px;line-height:1.55}.salon-legal .salon-section+.salon-section{border-top:1px solid var(--salon-border);margin-top:8px;padding-top:16px}.wizard-group{flex-direction:column;gap:10px;display:flex}.wizard-group+.wizard-group{margin-top:8px}.wizard-group__title{color:var(--salon-text);margin:0;font-size:13px;font-weight:600}.wizard-group__note{color:var(--salon-muted);font-size:12px;font-weight:400}.wizard-hint{color:var(--salon-muted);margin:0;font-size:14px;line-height:1.45}.wizard-radios{flex-wrap:wrap;width:100%;display:flex}.wizard-radios .ant-radio-button-wrapper{text-align:center;flex:1;height:44px;font-weight:500;line-height:42px}.wizard-choice-row{grid-template-columns:1fr 1fr;gap:10px;width:100%;display:grid}.wizard-choice{border:2px solid var(--salon-border);min-height:88px;color:var(--salon-text);cursor:pointer;font:inherit;transition:background .15s var(--salon-ease), border-color .15s var(--salon-ease), box-shadow .15s var(--salon-ease), color .15s var(--salon-ease);touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:#fff;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:6px;margin:0;padding:12px 10px;display:flex}.wizard-choice--text{min-height:52px;font-size:16px;font-weight:600}.wizard-choice:hover{background:var(--salon-soft);border-color:#c9a0a8}.wizard-choice.is-selected{background:var(--salon-primary);border-color:var(--salon-primary);color:#fff;box-shadow:0 0 0 3px #9a3d4f40}.wizard-choice__label{font-size:14px;font-weight:700}.wizard-gender-icon{object-fit:contain;pointer-events:none;width:48px;height:48px;display:block}.wizard-choice.is-selected .wizard-gender-icon{filter:brightness(1.05)}.wizard-gender-confirm{background:var(--salon-soft);color:var(--salon-text);border:1px solid #e8d0d5;border-radius:8px;margin:4px 0 0;padding:10px 12px;font-size:14px;line-height:1.4}.wizard-gender-confirm strong{color:var(--salon-primary);font-weight:700}.wizard-check.is-disabled{opacity:.55;cursor:not-allowed}.wizard-radios--gender .ant-radio-button-wrapper{justify-content:center;align-items:center;height:auto;min-height:72px;padding:10px 12px;line-height:1;display:inline-flex}.wizard-radios--wrap .ant-radio-button-wrapper{flex:auto;min-width:30%}.wizard-services{border:1px solid var(--salon-border);background:#faf9f8;border-radius:10px;flex-direction:column;gap:12px;padding:14px 16px;display:flex}.wizard-check{color:var(--salon-text);cursor:pointer;align-items:flex-start;gap:10px;font-size:14px;line-height:1.4;display:flex}.wizard-check .ant-checkbox-wrapper{margin-top:1px}.wizard-subgroup{flex-direction:column;gap:8px;padding-top:4px;display:flex}.wizard-summary{background:var(--salon-soft);border:1px solid #eddde1;border-radius:10px;padding:14px 16px}.wizard-summary__label{letter-spacing:.06em;text-transform:uppercase;color:var(--salon-primary);margin:0 0 8px;font-size:12px;font-weight:700}.wizard-summary ul{color:var(--salon-text);flex-direction:column;gap:4px;margin:0;padding-left:18px;font-size:14px;display:flex}.wizard-summary__total{color:var(--salon-text);margin:12px 0 0;font-size:15px;font-weight:600}.salon-footer{color:var(--salon-muted);text-align:center;animation:salon-fade-in .5s var(--salon-ease) .2s both;margin-top:32px;font-size:13px;line-height:1.7}.salon-footer__link{opacity:.75;letter-spacing:.02em;margin-top:6px;font-size:12px;display:inline-block}.salon-booking-row{border:1px solid var(--salon-border);transition:border-color .2s var(--salon-ease), background .2s var(--salon-ease);background:#faf9f8;border-radius:10px;align-items:stretch;gap:12px;padding:14px 16px;display:flex}.salon-booking-row:hover{background:#fff;border-color:#c9a0a8}.salon-week-nav{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:4px 0;display:flex}.salon-week-nav .ant-typography{flex:140px;min-width:0;font-size:clamp(13px,3.5vw,15px)}.salon-week-grid{grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:12px;width:100%;display:grid}.salon-week-col{border:1px solid var(--salon-border);background:#faf9f8;border-radius:10px;min-width:0;overflow:hidden}.salon-week-col__head{border-bottom:1px solid var(--salon-border);text-align:center;background:#fff;flex-direction:column;gap:2px;padding:12px 12px 10px;display:flex}.salon-week-col__day{letter-spacing:.06em;text-transform:uppercase;color:var(--salon-primary);font-size:12px;font-weight:700}.salon-week-col__date{color:var(--salon-muted);font-size:13px}.salon-week-col.is-holiday .salon-week-col__head{background:#f7ecef}.salon-week-col__holiday{color:var(--salon-primary);margin-top:4px;font-size:11px;font-weight:600;line-height:1.3}.salon-week-col__empty--holiday{color:var(--salon-primary);font-weight:600}.salon-week-col__holiday-art{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:8px 6px 10px;display:flex}.salon-week-col__holiday-img{object-fit:contain;width:min(112px,78%);height:auto;max-height:84px;display:block}.salon-week-col__body{flex-direction:column;gap:8px;min-height:88px;padding:10px;display:flex}.salon-week-col__empty{text-align:center;color:var(--salon-muted);margin:0;padding:16px 8px;font-size:13px}.salon-booking-card{border:1px solid var(--salon-border);background:#fff;border-radius:8px;flex-direction:column;gap:2px;padding:10px;display:flex}.salon-booking-card__time{color:var(--salon-primary);font-size:12px;font-weight:600}.salon-booking-card__duration{color:var(--salon-muted);font-weight:500}.salon-booking-card__name{color:var(--salon-text);word-break:break-word;font-size:14px;font-weight:600}.salon-booking-card__phone{color:var(--salon-muted);font-size:12px}.salon-booking-card__flags{flex-wrap:wrap;gap:4px;margin:4px 0 2px;display:flex}.salon-flag{border-radius:999px;padding:2px 7px;font-size:11px;font-weight:700;line-height:1.3;display:inline-block}.salon-flag--new{color:#1668dc;background:#eef5ff}.salon-flag--device{color:#b76e00;background:#fff7e8}.salon-flag--phone{color:#5b4db8;background:#f3f0ff}.salon-flag--generated{color:#e2445c;background:#fdecee}.salon-flag--email{color:#c45c26;background:#fff0e6}.salon-booking-card__services{color:var(--salon-text);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:4px;font-size:12px;line-height:1.35;display:-webkit-box;overflow:hidden}.salon-booking-card__actions{flex-wrap:wrap;align-items:center;gap:4px;margin-top:6px;display:flex}.salon-booking-detail p{color:var(--salon-text);margin:0 0 14px;font-size:14px;line-height:1.5}.salon-booking-detail p:last-child{margin-bottom:0}.client-recettes{flex-direction:column;gap:12px;display:flex}.client-row--suspect td{color:#e2445c!important;background:#fff5f6!important}.client-name--suspect{color:#e2445c;font-weight:600}.client-suspect-tag{text-transform:lowercase;font-size:12px;font-weight:700}.salon-guards-trigger{touch-action:manipulation;justify-content:center;align-items:center;color:var(--salon-muted)!important;width:40px!important;min-width:40px!important;height:40px!important;padding:0!important;font-size:22px!important;display:inline-flex!important}.salon-guards-trigger:hover,.salon-guards-trigger:focus{color:var(--salon-primary)!important;background:var(--salon-soft)!important}.salon-guards-popover{z-index:1100;max-width:calc(100vw - 16px)!important}.salon-guards-popover .ant-popover-inner{max-width:min(360px,100vw - 24px);padding:12px 14px}.salon-guards-popover .ant-popover-title{color:var(--salon-text);border-bottom:1px solid var(--salon-border);margin-bottom:4px;padding-bottom:8px;font-weight:600}.salon-guards{color:var(--salon-text);font-size:13px;line-height:1.45}.salon-guards__lead{color:var(--salon-muted);margin:0 0 12px;font-size:13px}.salon-guards__heading{letter-spacing:.06em;text-transform:uppercase;color:var(--salon-primary);margin:12px 0 4px;font-size:11px;font-weight:700}.salon-guards__heading:first-of-type{margin-top:0}.salon-guards__list{flex-direction:column;gap:4px;margin:0;padding-left:18px;display:flex}.salon-guards__list li{color:var(--salon-text)}.salon-guards__list strong{font-weight:600}.salon-admin-footer{z-index:5;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;width:100%;display:flex;position:relative}.salon-admin-footer__links{flex-wrap:wrap;align-items:center;gap:8px 14px;display:flex}.salon-admin-footer__links a{z-index:1;touch-action:manipulation;align-items:center;min-height:36px;padding:6px 2px;display:inline-flex;position:relative}.calc-table-card .ant-table-sticky-scroll{display:none!important}@media (width<=900px){.salon-week-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){.salon-week-grid{grid-template-columns:1fr}.salon-admin-footer{flex-direction:column;align-items:stretch}.salon-admin-footer__links{justify-content:center}.salon-admin-footer .ant-btn{align-self:center}.salon-booking-card__actions .ant-btn{min-height:36px;padding-inline:8px}.wizard-choice{min-height:80px}.wizard-gender-icon{width:40px;height:40px}.wizard-radios .ant-radio-button-wrapper{padding-inline:6px;font-size:13px}}@media (width<=480px){.salon-shell{padding:28px 12px 48px}.salon-card__body{padding:20px 14px 16px}.salon-brand__name{font-size:clamp(24px,7vw,32px)}.salon-week-col__head,.salon-booking-card{padding:10px}.salon-section--actions{padding-top:16px;padding-bottom:16px}}.salon-mobile-modal.ant-modal{max-width:calc(100vw - 24px);margin:12px auto;padding-bottom:0}.ant-modal-confirm{max-width:calc(100vw - 24px)!important}.ant-modal-confirm .ant-modal-body{padding:20px 16px!important}.ant-modal-confirm .ant-modal-confirm-btns{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.ant-modal-confirm .ant-modal-confirm-btns .ant-btn{min-height:40px;margin:0!important}@media (width<=480px){.ant-modal-confirm .ant-modal-confirm-btns{flex-direction:column-reverse;width:100%}.ant-modal-confirm .ant-modal-confirm-btns .ant-btn{width:100%}}.calc-layout{grid-template-columns:minmax(0,1.4fr) minmax(240px,.8fr);align-items:start;gap:28px;display:grid}.calc-options{flex-direction:column;gap:18px;display:flex}.calc-group{border:1px solid var(--salon-border);background:#faf9f8;border-radius:10px;padding:14px 16px}.calc-group__title{letter-spacing:.06em;text-transform:uppercase;color:var(--salon-primary);margin-bottom:8px;font-size:12px;font-weight:700}.calc-group__hint{color:var(--salon-muted);margin:0 0 10px;font-size:13px}.calc-summary{background:var(--salon-soft);border:1px solid #e8d0d5;border-radius:12px;padding:20px;position:sticky;top:24px}.calc-summary__label{letter-spacing:.08em;text-transform:uppercase;color:var(--salon-muted);font-size:12px;font-weight:700}.calc-summary__total{font-family:var(--font-display), Georgia, serif;color:var(--salon-text);margin-top:6px;font-size:40px;font-weight:500;line-height:1.1}.calc-summary__lines{flex-direction:column;gap:10px;margin:18px 0 0;padding:0;list-style:none;display:flex}.calc-summary__lines li{color:var(--salon-text);justify-content:space-between;gap:12px;font-size:14px;display:flex}.calc-summary__lines strong{white-space:nowrap;color:var(--salon-primary);font-weight:600}@media (width<=800px){.calc-layout{grid-template-columns:1fr}.calc-summary{position:static}}.calc-table-card{max-width:1100px}.calc-table__combo{font-size:14px;line-height:1.4}.calc-table__num{font-variant-numeric:tabular-nums;color:var(--salon-muted);font-weight:600}.calc-table__simple{color:var(--salon-muted);font-size:12px}.calc-table__na{color:var(--salon-muted)}.calc-table__computed{color:var(--salon-primary);white-space:nowrap}
