:root{--bg:#f8f7f3;--paper:#fffefa;--ink:#273b34;--muted:#718078;--sage:#dfe7dc;--line:#e6e7e0;--peach:#f0dfd3;--dark:#273b34;--gold:#c79b63;font-family:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",sans-serif;color:var(--ink);background:var(--bg);font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a{color:inherit;text-decoration:none}svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.app-shell{min-height:100dvh;max-width:660px;margin:0 auto;background:var(--paper);box-shadow:0 0 80px rgba(38,58,49,.08);padding-bottom:90px}.topbar{height:76px;padding:12px 23px;display:flex;align-items:center;justify-content:space-between;background:var(--paper);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.brand{display:flex;align-items:center;gap:10px}.brand-mark{height:43px;width:43px;display:grid;place-items:center;background:var(--dark);border-radius:50%;color:#f8e9cf}.brand-mark svg{width:26px;height:26px}.brand strong{font-size:17px;letter-spacing:.18em;font-weight:650;display:block}.brand small{font-size:9px;letter-spacing:.13em;color:var(--muted);display:block;margin-top:2px}.top-contact{height:42px;width:42px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center}.top-contact svg{width:18px;height:18px}.page{display:none;animation:reveal .23s ease}.page.active{display:block}@keyframes reveal{from{opacity:.4;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.hero{position:relative;background:var(--dark);color:#fcf8f0;padding:52px 26px 38px;overflow:hidden;min-height:358px}.hero .eyebrow{position:relative;z-index:1}.eyebrow{font-size:10px;letter-spacing:.19em;font-weight:720;color:#98765d}.eyebrow.light{color:#decdb0}.hero h1{font-family:Georgia,Times,serif;font-size:clamp(39px,8.3vw,56px);line-height:1.1;letter-spacing:-.035em;font-weight:400;position:relative;z-index:1;margin:22px 0 12px}.hero h1 em{font-weight:400;color:#e3c2a5}.hero p{line-height:1.6;max-width:325px;font-size:13px;opacity:.91;margin-bottom:26px;position:relative;z-index:1}.hero-floral{position:absolute;font-size:320px;font-family:serif;font-weight:100;line-height:1;right:-75px;top:4px;opacity:.06;transform:rotate(12deg);pointer-events:none}.btn{padding:14px 19px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;gap:12px;border:0;font-weight:650;font-size:13px;line-height:1.25;min-height:50px}.btn svg{width:17px;height:17px}.light-btn{color:var(--dark);background:#f7e9d8}.dark-btn{background:var(--dark);color:#fff}.outline-btn{border:1px solid var(--dark);background:transparent;color:var(--dark)}.full-width{width:100%}.section-head{margin:31px 24px 14px;display:flex;justify-content:space-between}.section-head h2{font:normal 30px Georgia,serif;margin:7px 0 0}.universes{padding:0 20px;display:grid;gap:11px}.universe-card{border:0;width:100%;display:flex;align-items:center;gap:14px;padding:19px 16px;border-radius:15px;text-align:left;color:var(--dark)}.card-hair{background:#e8e6df}.card-beauty{background:#f3e7df}.card-balance{background:#e2ebe3}.universe-icon{width:51px;height:51px;border:1px solid rgba(39,59,52,.16);display:grid;place-items:center;border-radius:50%;flex-shrink:0}.universe-icon svg{width:25px;height:25px}.universe-card span:nth-child(2){flex:1}.universe-card strong{font-size:15px;display:block;letter-spacing:-.015em;margin-bottom:5px}.universe-card small{font-size:11px;color:#647169;display:block}.end-arrow{width:17px;height:17px;opacity:.7}.promo-banner{background:#f6eee8;border-radius:18px;margin:26px 20px 12px;padding:26px 23px}.promo-banner h3{font:normal 28px Georgia,serif;margin:8px 0}.promo-banner p{font-size:13px;line-height:1.65;color:#636962;max-width:420px}.text-button{display:inline-flex;align-items:center;gap:6px;color:var(--dark);border:0;padding:0;background:transparent;font-weight:700;font-size:12px}.text-button svg{width:17px;height:17px}.guides-teaser{margin:0 20px 22px;padding:16px 12px;border:1px solid var(--line);border-radius:14px;display:flex;align-items:center;gap:12px}.guides-teaser>svg{width:26px;height:26px;flex-shrink:0}.guides-teaser span{flex:1}.guides-teaser strong{display:block;font-size:12px}.guides-teaser small{display:block;color:var(--muted);font-size:11px;line-height:1.5;margin-top:3px}.page-heading{padding:35px 24px 18px}.page-heading h1{font:normal 38px Georgia,serif;letter-spacing:-.025em;margin:10px 0 12px}.page-heading p{font-size:13px;line-height:1.65;color:#64736b;margin:0}.empty-offer{margin:12px 20px;background:var(--sage);border-radius:19px;padding:28px 23px;text-align:center}.round-illustration{background:rgba(255,255,255,.6);color:var(--dark);width:66px;height:66px;border-radius:50%;display:grid;place-items:center;margin:8px auto 21px}.round-illustration svg{width:30px;height:30px}.empty-offer h2{font:normal 29px Georgia,serif;margin:13px 0}.empty-offer p{font-size:13px;color:#55675e;line-height:1.7;margin:10px auto 25px;max-width:350px}.empty-offer .btn{font-size:12px}.hint{font-size:11px;line-height:1.6;color:#6c7771;margin:16px 24px 28px;padding:13px;border:1px solid var(--line);border-radius:11px;background:#f9faf7}.filter-tabs{display:flex;gap:6px;margin:6px 20px 20px;background:#f0f1ec;padding:5px;border-radius:13px}.filter{flex:1;border:0;border-radius:10px;padding:12px 6px;background:transparent;color:#67756d;font-size:12px;font-weight:700}.filter.active{background:#fff;color:var(--dark);box-shadow:0 2px 8px #263b3417}.service-group{margin:0 20px 16px;padding:20px;background:#f9f9f6;border-radius:15px;border:1px solid var(--line)}.service-group h2{font:normal 22px Georgia,serif;margin:0 0 15px}.service-row{display:flex;justify-content:space-between;gap:15px;padding:11px 0;border-top:1px solid #e6e9e2}.service-name{font-size:13px;line-height:1.45}.service-price{font-size:13px;font-weight:750;white-space:nowrap}.tariff-note{padding:0 24px 20px;color:#68736d;font-size:11px;line-height:1.65}.page#prestations>.btn{width:calc(100% - 40px);margin:0 20px 24px}.loyalty-visual{background:linear-gradient(127deg,#344d41,#243a33 72%,#415c4d);margin:8px 22px 24px;min-height:232px;border-radius:21px;padding:22px;box-shadow:0 13px 20px #263b3425;color:#faf3e7;display:flex;flex-direction:column;justify-content:space-between}.loyalty-top{display:flex;align-items:center;justify-content:space-between}.loyalty-top svg{height:35px;width:35px;color:#e5ceb4}.loyalty-top small{letter-spacing:.24em}.loyalty-visual>strong{font:normal 30px/1.18 Georgia,serif}.loyalty-bottom{display:flex;justify-content:space-between;letter-spacing:.18em;font-size:10px;color:#e4d2bc}.loyalty-bottom span{font-size:19px}.info-section{padding:0 24px;margin:22px 0}.info-section h2{font:normal 25px Georgia,serif;margin-bottom:8px}.info-section p{font-size:13px;color:#66746b;line-height:1.75}.booking-box{margin:7px 20px 21px;padding:24px;background:#e9eee7;border-radius:20px}.booking-box h2{font:normal 31px Georgia,serif;margin:12px 0}.booking-box p{font-size:13px;color:#5e6d64;line-height:1.7;margin-bottom:22px}.booking-box .btn{margin-bottom:10px}.sms-link{display:block;text-align:center;font-size:12px;text-decoration:underline;margin:12px 0 2px}.book-feature{margin:10px 20px 25px;display:grid;grid-template-columns:42% 1fr;gap:17px;align-items:center}.book-cover{aspect-ratio:.65;background:linear-gradient(145deg,#355449,#203b31);box-shadow:6px 6px 15px #273b3423;color:#f2dec1;padding:16px 12px;display:flex;flex-direction:column;align-items:center;text-align:center;justify-content:space-around;border-left:5px solid #172b23}.book-cover>span{font-size:9px;letter-spacing:.24em}.book-cover svg{width:41px;height:41px}.book-cover strong{font:normal clamp(17px,4vw,24px)/1.15 Georgia,serif}.book-cover small{font-size:9px;line-height:1.5}.book-body h2{font:normal 25px Georgia,serif;margin:11px 0}.book-body p{font-size:12px;line-height:1.7;color:#637066}.coming{font-size:10px;background:#e9eee8;border-radius:8px;padding:7px;display:inline-block;line-height:1.5}.main-footer{text-align:center;padding:25px 0 18px;color:#8a938c;font-size:10px;line-height:2}.main-footer a{text-decoration:underline}.bottom-nav{position:fixed;bottom:0;left:50%;transform:translateX(-50%);width:min(100%,660px);padding:9px 7px calc(11px + env(safe-area-inset-bottom));background:#fffefa;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(5,1fr);z-index:30;box-shadow:0 -9px 20px rgba(50,55,45,.03)}.nav-item{padding:5px 3px;border:0;color:#859088;background:transparent;display:flex;align-items:center;gap:5px;flex-direction:column}.nav-item svg{width:22px;height:22px}.nav-item span{font-size:10px;font-weight:600}.nav-item.active{color:var(--dark)}.nav-item.active svg{stroke-width:2.4}:focus-visible{outline:3px solid #b37f45;outline-offset:3px}@media(min-width:700px){.topbar{border-left:1px solid var(--line);border-right:1px solid var(--line)}body{background:#e7eae5}.app-shell{border-left:1px solid var(--line);border-right:1px solid var(--line)}.hero{padding-top:55px;padding-bottom:48px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.page{animation:none}}

/* Mise en avant du diagnostic capillaire */
.diagnostic-card{margin:12px 20px 20px;padding:25px 22px;background:linear-gradient(150deg,#e6eee4,#f6eee8);border:1px solid #dce4d9;border-radius:19px;}
.diagnostic-card[hidden]{display:none;}
.diagnostic-card h2{font:normal 27px/1.17 Georgia,serif;letter-spacing:-.015em;margin:10px 0 16px;}
.diagnostic-card p{font-size:13px;line-height:1.75;color:#45574d;margin:11px 0;}
.diagnostic-card strong{color:#273b34;}

/* Fidélité, acomptes et conditions : version 4 */
.policy-strip{margin:14px 20px 20px;background:#f5eee6;border-left:3px solid #b8926f;border-radius:9px;padding:14px 16px;line-height:1.7;font-size:12px;color:#4b554d}
.rewards-wrap{padding:2px 22px 0}.rewards-wrap h2{font:normal 27px Georgia,serif;margin:8px 0 12px}.rewards-wrap .policy-strip{margin:14px 0 8px}.small-muted{font-size:13px;color:#617168;line-height:1.7}.reward-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:17px 0 20px}.reward-card{border-radius:15px;background:#e9eee7;text-align:center;padding:20px 8px;display:grid;gap:6px}.reward-card strong{font:normal 36px Georgia,serif}.reward-card span{font-size:13px;font-weight:700}.reward-card small{font-size:11px;color:#5f6e63}.inline-conditions{margin:1px 24px 9px}.reservation-policy{margin:20px 20px;background:#f9f4ed;border:1px solid #e6d8c9;padding:23px 20px;border-radius:19px}.reservation-policy h2{font:normal 29px Georgia,serif;margin:12px 0}.reservation-policy>p{font-size:13px;line-height:1.75;color:#526257}.reservation-steps{display:grid;gap:3px;margin:18px 0}.reservation-steps>div{display:flex;gap:13px;align-items:flex-start;padding:9px 0;border-top:1px solid #e5e0d7}.reservation-steps>div>span{display:grid;place-items:center;width:29px;height:29px;flex-shrink:0;border-radius:100%;background:#e1e9dd;font-size:12px;font-weight:bold}.reservation-steps p{font-size:12px;line-height:1.55;color:#55645b;margin:1px 0}.fine-print{font-size:11px!important;line-height:1.65!important;color:#75786f!important}.terms-box{margin:3px 20px 20px;padding:22px;background:#f9f9f6;border:1px solid #e5e9e0;border-radius:16px}.terms-box h2{font:normal 22px Georgia,serif;margin:22px 0 8px}.terms-box h2:first-child{margin-top:0}.terms-box p{font-size:12px;line-height:1.8;color:#58695e}.terms-back{width:calc(100% - 40px);margin:4px 20px 22px}.footer-link{background:none;border:none;text-decoration:underline;color:inherit;font-size:inherit;padding:0}

/* V6 : petits avantages et échéance anniversaire du compte */
.small-rewards,.anniversary-rule,.loyalty-simulator{background:#f5f6f1;border:1px solid #e5e9df;border-radius:16px;padding:18px;margin:17px 0;}
.small-rewards h3,.anniversary-rule h3,.loyalty-simulator h3{font:normal 23px Georgia,serif;margin:8px 0 8px;color:#273b34}
.small-rewards p,.anniversary-rule p,.loyalty-simulator p{font-size:12px;line-height:1.7;color:#5d6b61;margin:8px 0}
.mini-reward-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:13px 0}
.mini-reward-grid>div{background:#e5ebe1;border-radius:12px;padding:14px 9px;text-align:center;display:flex;gap:7px;flex-direction:column}
.mini-reward-grid strong{font:normal 18px Georgia,serif;color:#273b34}
.mini-reward-grid span{font-size:10px;color:#5a6b5d}
.cycle-example{padding:10px 12px;background:#fffdf8;border-radius:9px}
.loyalty-simulator label{display:block;font-size:12px;color:#46574c;margin:12px 0 7px}
.calc-control{display:flex;align-items:center;gap:8px;width:160px;background:#fffdf8;border-radius:10px;border:1px solid #cad6c8;padding:4px 10px}
.calc-control input{width:100%;background:none;border:0;font:500 20px Georgia,serif;color:#273b34;padding:6px 2px;outline:0}
.calc-control span{color:#66736b;font-size:12px}
#loyalty-example-result{font-weight:600;color:#273b34}

/* V7: quatre exemples de conversion de points */
.mini-reward-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
@media(min-width:650px){.mini-reward-grid{grid-template-columns:repeat(4,minmax(0,1fr));}}


/* V8 — espace privé et cartes personnelles */
.account-cta{background:#e7eee4;border-radius:17px;margin:0 20px 20px;padding:16px 17px;display:flex;align-items:center;gap:15px;justify-content:space-between}
.account-cta>div{display:flex;flex-direction:column;gap:6px}
.account-cta strong{font-size:14px}.account-cta small{color:#63756b;font-size:11px;line-height:1.4}
.account-cta .btn{padding:12px 13px;min-width:123px}
.account-host{margin:2px 20px 30px}.portal-banner{background:#fff4de;border:1px solid #ead7a9;color:#665334;border-radius:12px;padding:13px 15px;font-size:12px;line-height:1.65;margin-bottom:17px}
.portal-banner strong{display:block}.account-card{border:1px solid #e5eae1;background:#fbfcf9;border-radius:16px;padding:19px;margin-bottom:15px}
.account-card h2{font:normal 25px Georgia,serif;margin:0 0 12px}.account-card p{font-size:12px;line-height:1.75;color:#586b5f}
.account-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:13px 0}.account-stat{border-radius:12px;padding:15px;background:#e6eee4;min-width:0}.account-stat strong{display:block;font:normal 29px Georgia,serif;color:#273b34}.account-stat span{font-size:11px;color:#607165;line-height:1.45}
.account-form{display:grid;gap:11px}.account-form label{font-size:12px;font-weight:650;color:#475a4f;display:grid;gap:5px}.account-form input,.account-form select{padding:12px;border:1px solid #cbd7ca;border-radius:10px;background:#fff;color:#273b34;font:inherit;width:100%;min-width:0}.account-form input[type=checkbox]{width:auto;accent-color:#273b34}.account-form .checkline{display:flex;align-items:center;gap:9px;line-height:1.5;font-weight:400}
.account-form .btn{width:100%}.account-toolbar{display:flex;gap:8px;flex-wrap:wrap;margin:9px 0 15px}.account-toolbar .btn{min-height:42px;padding:10px 13px}.portal-button{background:#fff;border:1px solid #ccd9cd;color:#273b34;padding:11px 13px;border-radius:10px;cursor:pointer;font-size:12px;font-weight:650}
.portal-button.active{background:#273b34;color:white}.portal-feedback{padding:12px;background:#e7efe5;border-radius:10px;color:#263b31;font-size:12px;line-height:1.6;margin:13px 0}.portal-feedback.error{background:#fff0ec;color:#823f36}
.client-row{width:100%;text-align:left;background:white;border:1px solid #dce5d9;border-radius:11px;padding:13px;margin-top:8px;display:flex;justify-content:space-between;align-items:center;gap:12px;color:#273b34}.client-row small{color:#6e7a6f;display:block;margin-top:4px}.client-row.active{border-color:#829c81;background:#f0f6ee}
.account-history{list-style:none;padding:0;margin:10px 0}.account-history li{padding:12px 0;display:flex;gap:10px;justify-content:space-between;border-bottom:1px solid #e2e9de;font-size:12px;line-height:1.4}.account-history small{color:#78847a;display:block;margin-top:5px}.account-history b{white-space:nowrap}.note-line{font-size:11px!important;line-height:1.7;color:#6b786f!important}.admin-headline{display:flex;justify-content:space-between;align-items:center;gap:10px}
.reward-picker{display:grid;gap:9px;margin:12px 0}.reward-option{display:flex;justify-content:space-between;align-items:center;background:#eff4ec;border:1px solid #d8e4d5;padding:11px;border-radius:10px;font-size:12px}.reward-option strong{font-size:15px}
.account-card .auth-choices{display:flex;gap:8px;margin-bottom:16px}.auth-choices button{flex:1}.subtle-locked{opacity:.88}
@media(min-width:650px){.account-host{margin-left:35px;margin-right:35px}}
@media(max-width:380px){.account-cta{flex-direction:column;align-items:stretch}.account-cta .btn{width:100%}}

.header-actions{display:flex;gap:7px;align-items:center}.header-actions .top-contact{background:transparent;color:#273b34}

/* V9 — identité et dossier de gestion */
.brand-logo{background:#fff;overflow:hidden;border:1px solid #e6e5d9;padding:0}.brand-logo img{width:100%;height:100%;object-fit:cover}.hero-logo{width:74px;height:74px;border-radius:50%;object-fit:cover;display:block;margin:13px 0 16px;border:2px solid #e7e3d5;box-shadow:0 4px 20px #0002}
.admin-tabs{display:flex;overflow-x:auto;gap:7px;padding-bottom:6px;margin:0 0 17px;scrollbar-width:thin}.admin-tabs button{white-space:nowrap}.adm-form{display:grid;gap:12px}.adm-form label,.adm-label{font-size:12px;font-weight:650;color:#475a4f;display:flex;flex-direction:column;gap:6px}.adm-form input,.adm-form select,.adm-form textarea,.adm-label input,.adm-label select{padding:11px 12px;border:1px solid #cbd7ca;border-radius:10px;background:#fff;color:#263a32;font:inherit;width:100%;min-width:0}.adm-form textarea{resize:vertical}.adm-form input[type=checkbox]{width:auto;accent-color:#273b34}.adm-form .checkline{display:flex;flex-direction:row;gap:8px;align-items:flex-start;line-height:1.5;font-weight:500}.adm-form .checkline input{margin-top:2px}.adm-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.adm-button{border:1px solid #c7d6c8;border-radius:10px;padding:11px 13px;color:#273b34;background:#f3f7f1;font-size:12px;font-weight:700}.adm-button.primary{background:#273b34;border-color:#273b34;color:#fff}.adm-button.rose{background:#f9f3eb;border-color:#e8dacc}.adm-button:disabled{opacity:.45;cursor:not-allowed}.adm-small{font-size:11px!important;color:#657269!important;line-height:1.65!important}.adm-tag{border-radius:99px;padding:5px 9px;background:#e9efe6;color:#364c3b;font-size:11px;font-weight:600}.adm-alert{border-left:4px solid #b0694c;background:#fff1e9;border-radius:10px;padding:12px 14px;color:#74452e;font-size:12px;line-height:1.6}.adm-section-title{font:normal 23px Georgia,serif;margin:15px 0 8px}.adm-rule{height:1px;background:#e4e8e1;margin:15px 0}.adm-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:13px}.adm-actions>*{flex:1 1 auto}.adm-products{display:grid;gap:9px;margin:12px 0}.adm-product{background:#f0f4ee;border-radius:12px;padding:12px;display:grid;gap:9px}.adm-prod-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.adm-toolbar{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;margin:12px 0}.adm-toolbar>*{flex:1 1 auto}.adm-pill{display:inline-flex;padding:4px 8px;background:#ebf1e7;border-radius:99px;font-size:11px}.adm-photos{width:100%;height:170px;object-fit:cover;border-radius:13px;margin:10px 0}.adm-rows{display:grid;gap:8px}.adm-entry{border:1px solid #dfe5dc;border-radius:12px;padding:12px;background:#fff}.adm-entry p{margin:4px 0!important}.adm-client-card{background:linear-gradient(125deg,#e8efe5,#faf7f0);border-radius:16px;padding:16px;margin:12px 0}.adm-big{font:normal 33px Georgia,serif}.adm-inline{display:flex;justify-content:space-between;gap:12px;align-items:center}.adm-hidden{display:none!important}
@media(max-width:400px){.adm-pair{grid-template-columns:1fr}.adm-button{width:100%}}

/* Interface sécurisée et formulaires de la première version connectée */
.app-toast{position:fixed;z-index:1100;left:50%;bottom:calc(88px + env(safe-area-inset-bottom));transform:translateX(-50%);width:min(92vw,420px);padding:14px 20px;background:#23483c;color:white;border-radius:16px;box-shadow:0 12px 28px #0003;font-size:14px}
.app-toast.error{background:#883b40}.app-toast[hidden]{display:none}
.formula-product{background:#f9f7f2;border:1px solid #e3dfd4;border-radius:12px;padding:12px;margin:12px 0;display:grid;gap:8px}
.lp-campaigns{display:grid;gap:14px;padding:10px 18px}
.lp-campaign-image{width:100%;height:auto;max-height:440px;object-fit:contain;border-radius:14px;background:#f6f4ee}
#admin-live-content .account-card{margin-bottom:16px}
#admin-live-content input,#admin-live-content select,#admin-live-content textarea,#client-area input,#client-area select,#client-area textarea{min-width:0;max-width:100%}
#admin-live-content .adm-inline{flex-wrap:wrap}
#admin-live-content .adm-actions,#client-area .adm-actions{display:flex;flex-wrap:wrap;gap:8px}
#admin-live-content .adm-actions .text-button,#client-area .adm-actions .text-button{display:inline-flex}
#client-search-list{max-height:260px;overflow:auto}
.account-card [disabled]{opacity:.45;cursor:not-allowed}
