@font-face{font-family:Frank Ruhl Libre;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/frank-ruhl-libre-latin-ext-j8_w6_fAw7.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Frank Ruhl Libre;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/frank-ruhl-libre-latin-j8_w6_fAw7.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Frank Ruhl Libre;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/frank-ruhl-libre-latin-ext-j8_w6_fAw7.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Frank Ruhl Libre;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/frank-ruhl-libre-latin-j8_w6_fAw7.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Frank Ruhl Libre;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/frank-ruhl-libre-latin-ext-j8_w6_fAw7.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Frank Ruhl Libre;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/frank-ruhl-libre-latin-j8_w6_fAw7.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Frank Ruhl Libre;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/frank-ruhl-libre-latin-ext-j8_w6_fAw7.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Frank Ruhl Libre;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/frank-ruhl-libre-latin-j8_w6_fAw7.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Open Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/open-sans-latin-ext-memvYaGs12.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Open Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/open-sans-latin-memvYaGs12.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Open Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/open-sans-latin-ext-memvYaGs12.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Open Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/open-sans-latin-memvYaGs12.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Open Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/open-sans-latin-ext-memvYaGs12.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Open Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/open-sans-latin-memvYaGs12.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Open Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/open-sans-latin-ext-memvYaGs12.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Open Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/open-sans-latin-memvYaGs12.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Great Vibes;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/great-vibes-latin.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}:root{--bg:#fff4f8;--surface:#fff;--gris:#f1e4f7;--rose:#ffd8e6;--rose-soft:#ffedf4;--rose-btn:#ffb0cd;--rose-btn-hover:#ff96bc;--ink:#3b2737;--ink-2:#6a5266;--muted:#766170;--line:#f2dce7;--contour:#4a3046;--accent:#de4f8a;--accent-dark:#b53a6c;--accent-soft:#ffe0ec;--lilas:#e4d2f6;--lilas-soft:#f6eefc;--degrade:linear-gradient(135deg,#ffb0cd,#f4b8e4 55%,#dcc4f5);--ok:#276c48;--ok-soft:#e4f3ea;--warn:#8f5808;--warn-soft:#fbf0dc;--bad:#b03a3a;--bad-soft:#f9e3e3;--info:#3c5f9a;--info-soft:#e5ecf8;--radius:20px;--radius-sm:12px;--shadow:0 1px 2px rgba(181,58,108,.05),0 6px 18px rgba(222,79,138,.08);--serif:"Frank Ruhl Libre",Georgia,"Times New Roman",serif;--script:"Great Vibes","Brush Script MT",cursive;--sans:"Open Sans",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}*{box-sizing:border-box}body,html{margin:0;padding:0}body{font-family:var(--sans);font-size:15px;color:var(--ink);background:var(--bg);line-height:1.5;-webkit-font-smoothing:antialiased}a{color:inherit}h1,h2,h3{margin:0 0 .5em;line-height:1.2}h1{font-size:2.2rem}h1,h2,h3{font-family:var(--serif);font-weight:600}h2{font-size:1.3rem}.serif{font-family:var(--serif)}.muted{color:var(--muted)}.small{font-size:.85rem}.num{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4em;border:1px solid var(--contour);border-radius:999px;padding:.75em 1.6em;font:inherit;font-size:.8rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;text-decoration:none;transition:background .15s,border-color .15s,opacity .15s;background:var(--degrade);color:var(--ink);white-space:nowrap}.btn:hover{background:var(--rose-btn-hover);box-shadow:0 6px 16px rgba(222,79,138,.25)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.secondaire{background:var(--surface);color:var(--ink);border-color:var(--line)}.btn.secondaire:hover{background:var(--rose-soft)}.btn.danger{background:var(--surface);color:var(--bad);border-color:#e7b9b9}.btn.danger:hover{background:var(--bad-soft)}.btn.petit{padding:.45em .9em;font-size:.78rem}.btn.lien{background:none;color:var(--accent-dark);padding:0;border:0;text-transform:none;letter-spacing:0;font-size:inherit}input,select,textarea{font:inherit;color:inherit;width:100%;padding:.6em .8em;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface)}input:focus,select:focus,textarea:focus{outline:3px solid var(--rose);border-color:var(--contour)}input[type=checkbox]{width:auto;accent-color:var(--accent)}label{display:block;font-size:.85rem;font-weight:500;color:var(--ink-2);margin-bottom:.3em}.champ{margin-bottom:1em}.grille2{display:grid;grid-template-columns:1fr 1fr;grid-gap:0 1em;gap:0 1em}@media (max-width:560px){.grille2{grid-template-columns:1fr}}.carte{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:1.25em;box-shadow:var(--shadow)}.erreur{background:var(--bad-soft);color:var(--bad)}.erreur,.succes{padding:.7em 1em;border-radius:var(--radius-sm);margin-bottom:1em;font-size:.9rem}.succes{background:var(--ok-soft);color:var(--ok)}.badge{display:inline-flex;align-items:center;gap:.35em;font-size:.75rem;font-weight:600;padding:.2em .65em;border-radius:999px;white-space:nowrap}.badge:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.badge.confirme{background:var(--info-soft);color:var(--info)}.badge.termine{background:var(--ok-soft);color:var(--ok)}.badge.annule{background:var(--bad-soft);color:var(--bad)}.badge.absent{background:var(--warn-soft);color:var(--warn)}table.tableau{width:100%;border-collapse:collapse;font-size:.9rem}.tableau th{text-align:left;font-weight:500;color:var(--muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;padding:.6em .75em}.tableau td,.tableau th{border-bottom:1px solid var(--line)}.tableau td{padding:.7em .75em;vertical-align:middle}.tableau tr.cliquable{cursor:pointer}.tableau tr.cliquable:hover td{background:var(--bg)}.defile{overflow-x:auto}.voile{position:fixed;inset:0;background:rgba(43,37,34,.35);display:flex;align-items:flex-start;justify-content:center;padding:5vh 16px;z-index:100;overflow-y:auto}.modale{background:var(--surface);border-radius:24px;width:100%;max-width:520px;padding:1.5em;box-shadow:0 20px 60px rgba(0,0,0,.2)}.modale-tete{display:flex;justify-content:space-between;align-items:flex-start;gap:1em;margin-bottom:1em}.fermer{background:none;border:0;font-size:1.5rem;line-height:1;cursor:pointer;color:var(--muted)}.toasts{position:fixed;right:16px;bottom:calc(16px + env(safe-area-inset-bottom, 0px));display:flex;flex-direction:column;gap:8px;z-index:200;max-width:calc(100vw - 32px)}.toast{background:var(--ink);color:#fff;padding:.9em 1.1em;border-radius:12px;box-shadow:var(--shadow);width:340px;max-width:100%;animation:monte .25s ease-out;cursor:pointer}.toast strong{display:block}@keyframes monte{0%{transform:translateY(10px);opacity:0}}.papillon{flex:none;overflow:visible}.papillon .aile-d,.papillon .aile-g{transform-box:view-box;transition:transform .3s ease}.papillon .aile-d,.papillon .aile-g{transform-origin:25px 21px}a:focus-visible>.papillon .aile-g,a:hover>.papillon .aile-g{animation:battement-g .7s ease-in-out 2}a:focus-visible>.papillon .aile-d,a:hover>.papillon .aile-d{animation:battement-d .7s ease-in-out 2}@keyframes battement-g{50%{transform:scaleX(.55) skewY(4deg)}}@keyframes battement-d{50%{transform:scaleX(.55) skewY(-4deg)}}@media (prefers-reduced-motion:reduce){.papillon .aile-d,.papillon .aile-g{animation:none!important}}html{scroll-behavior:smooth;scroll-padding-top:84px}.anim [data-apparition]{transition:opacity .8s cubic-bezier(.22,.61,.36,1),transform .8s cubic-bezier(.22,.61,.36,1);transition-delay:var(--delai,0ms)}.anim [data-apparition][data-cache]{opacity:0;transform:translateY(28px)}.vague{position:relative;overflow:hidden;line-height:0}.vague svg{position:absolute;bottom:0;left:0;width:200%;height:100%}.vague-arriere{animation:vague-defile 22s linear infinite;transform:translateX(-25%)}.vague-avant{animation:vague-defile 14s linear infinite reverse}@keyframes vague-defile{0%{transform:translateX(0)}to{transform:translateX(-50%)}}.btn{transition:background .2s,border-color .2s,transform .2s cubic-bezier(.22,.61,.36,1),box-shadow .2s}.btn:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(194,87,122,.18)}.btn:active{transform:translateY(0);box-shadow:none}header .papillon{animation:flotte 5s ease-in-out infinite}@keyframes flotte{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-2px) rotate(-3deg)}}@keyframes ondule{0%,to{border-radius:42% 58% 63% 37%/41% 44% 56% 59%;transform:translate(0) rotate(0)}33%{border-radius:63% 37% 45% 55%/55% 62% 38% 45%;transform:translate(4%,-6%) rotate(40deg)}66%{border-radius:38% 62% 56% 44%/63% 37% 63% 37%;transform:translate(-5%,4%) rotate(-30deg)}}@keyframes deplie{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{animation:none!important;transition:none!important}.anim [data-apparition][data-cache]{opacity:1;transform:none}}.lienIcone{display:inline-flex;align-items:center;gap:.45em;vertical-align:middle}.lienIcone svg{flex:none;color:var(--accent)}.paillettes{position:fixed;inset:0;z-index:30;pointer-events:none;overflow:hidden}.paillettes i{position:absolute;width:var(--t,12px);height:var(--t,12px);left:var(--x);top:var(--y);opacity:0;transform:scale(.3) rotate(0);animation:scintille var(--d,4s) ease-in-out var(--delai,0s) infinite;background:radial-gradient(circle closest-side,#fff 0 18%,hsla(0,0%,100%,0) 60%),conic-gradient(from 0deg,transparent 0 8%,var(--c,#ffc2da) 8% 12%,transparent 12% 33%,var(--c,#ffc2da) 33% 37%,transparent 37% 58%,var(--c,#ffc2da) 58% 62%,transparent 62% 83%,var(--c,#ffc2da) 83% 87%,transparent 87%);-webkit-mask:radial-gradient(circle closest-side,#000 30%,transparent 100%);mask:radial-gradient(circle closest-side,#000 30%,transparent 100%);filter:drop-shadow(0 0 3px rgba(255,255,255,.9))}@keyframes scintille{0%,to{opacity:0;transform:scale(.3) rotate(0)}50%{opacity:.95;transform:scale(1) rotate(45deg)}}@media (prefers-reduced-motion:reduce){.paillettes i{animation:none;opacity:.5;transform:none}}:root{--pl-blanc:radial-gradient(circle at 18% 30%,hsla(0,0%,100%,.95) 0 1.1px,transparent 2px),radial-gradient(circle at 72% 62%,hsla(0,0%,100%,.9) 0 1.3px,transparent 2.2px),radial-gradient(circle at 45% 80%,hsla(0,0%,100%,.8) 0 .9px,transparent 1.7px),radial-gradient(circle at 88% 22%,hsla(0,0%,100%,.9) 0 1px,transparent 1.9px),radial-gradient(circle at 55% 12%,hsla(0,0%,100%,.85) 0 1.2px,transparent 2px);--pl-rose:radial-gradient(circle at 18% 30%,rgba(222,79,138,.7) 0 1px,transparent 1.8px),radial-gradient(circle at 72% 62%,rgba(180,130,235,.75) 0 1.2px,transparent 2px),radial-gradient(circle at 45% 80%,rgba(255,150,190,.8) 0 .9px,transparent 1.6px),radial-gradient(circle at 88% 22%,rgba(180,130,235,.7) 0 1px,transparent 1.8px),radial-gradient(circle at 55% 12%,rgba(222,79,138,.6) 0 1.1px,transparent 1.9px);--pl-taille:34px 22px,41px 26px,29px 19px,37px 24px,53px 31px;--pl-taille-cartes:68px 44px,82px 52px,58px 38px,74px 48px,106px 62px}@keyframes derive{0%{background-position:0 0,0 0,0 0,0 0,0 0}to{background-position:34px 22px,-41px 26px,29px -19px,-37px 24px,53px -31px}}@keyframes derive-grand{0%{background-position:0 0,0 0,0 0,0 0,0 0}to{background-position:68px 44px,-82px 52px,58px -38px,-74px 48px,106px -62px}}@keyframes grain{0%{opacity:.2}50%{opacity:1}to{opacity:.35}}.btn:not(.lien){position:relative;overflow:hidden;isolation:isolate}.btn:not(.lien):before{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;pointer-events:none;background-image:var(--pl-blanc);background-size:var(--pl-taille);animation:derive 7s linear infinite,grain 2.6s ease-in-out infinite}.btn.danger:before,.btn.secondaire:before{background-image:var(--pl-rose)}.btn:not(.lien):not(:disabled):hover:before{animation-duration:2.2s,1.2s}.btn:not(.secondaire):not(.danger):not(.lien):not(:disabled):after{content:"";position:absolute;z-index:-1;top:0;bottom:0;left:-60%;width:40%;background:linear-gradient(105deg,transparent,hsla(0,0%,100%,.75),transparent);transform:skewX(-20deg);animation:reflet-bouton 4.5s ease-in-out infinite}@keyframes reflet-bouton{0%,55%{left:-60%}to{left:130%}}@media (prefers-reduced-motion:reduce){.btn:after,.btn:before{animation:none!important}}@media (max-width:700px){input,select,textarea{font-size:16px}.tableau.empile,.tableau.empile tbody,.tableau.empile td,.tableau.empile tr{display:block;width:100%}.tableau.empile thead{display:none}.tableau.empile tr{padding:.8em 1em;border-bottom:1px solid var(--line)}.tableau.empile tr:last-child{border-bottom:0}.tableau.empile td{border:0;padding:.2em 0;display:flex;justify-content:space-between;align-items:center;gap:14px;text-align:right;white-space:normal!important}.tableau.empile td:before{content:attr(data-l);color:var(--muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;text-align:left;flex:none}.tableau.empile td:first-child{display:block;text-align:left;font-size:1rem;padding-bottom:.35em}.tableau.empile td:first-child:before,.tableau.empile td[colspan]:before{content:none}.tableau.empile tr.cliquable:hover td{background:none}.tab-rdv td:nth-child(2):before{content:"Cliente"}.tab-rdv td:nth-child(3):before{content:"Prestation"}.tab-rdv td:nth-child(4):before{content:"Prix"}.tab-rdv td:nth-child(5):before{content:"Statut"}.tab-rdv td:nth-child(6):before{content:"Source"}.tab-prest td:nth-child(2):before{content:"Catégorie"}.tab-prest td:nth-child(3):before{content:"Durée"}.tab-prest td:nth-child(4):before{content:"Prix"}.tab-prest td:nth-child(5):before{content:"Affichée"}.tab-prest td:nth-child(6):before{content:"Réservable"}.tab-cli td:nth-child(2):before{content:"Téléphone"}.tab-cli td:nth-child(3):before{content:"Visites"}.tab-cli td:nth-child(4):before{content:"Total dépensé"}.tab-cli td:nth-child(5):before{content:"Dernier RDV"}.tab-cli td:nth-child(6):before{content:"Absences"}.tab-horaires td:nth-child(2):before{content:"Ouvert"}.tab-horaires td:nth-child(3):before{content:"Ouverture"}.tab-horaires td:nth-child(4):before{content:"Fermeture"}.tab-horaires td:nth-child(5):before{content:"Pause début"}.tab-horaires td:nth-child(6):before{content:"Pause fin"}.tab-horaires td input[type=time]{width:auto;min-width:120px}.tab-hist td:nth-child(2):before{content:"Soin"}.tab-hist td:nth-child(3):before{content:"Prix"}.tab-hist td:nth-child(4):before{content:"Statut"}}