
:root{--paper:#fffbf5;--white:#fff;--ink:#382d25;--muted:#796757;--rose:#a34f39;--rose-dark:#7e3928;--pink:#f7e4d6;--blush:#edc5ad;--line:#ebdfd2;--green:#366554;--soft:#f3f5ee;--shadow:0 15px 50px #472b3610;--radius:22px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.55 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed}a{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #a34f39;outline-offset:4px}h1,h2,h3,p{margin:0}h1,h2,.serif{font-family:Georgia,"Times New Roman",serif;font-weight:400}h1{font-size:clamp(48px,5.4vw,74px);line-height:1.05;letter-spacing:-3px}h2{font-size:clamp(32px,4vw,47px);line-height:1.16;letter-spacing:-1px}h3{font-size:18px;line-height:1.3}small,.small{font-size:12px}.muted{color:var(--muted)}.eyebrow{text-transform:uppercase;letter-spacing:2.3px;font-size:11px;font-weight:700}.wrap{max-width:1200px;margin:auto;padding:0 42px}.demo-bar{background:var(--ink);color:#fff;padding:8px 22px;text-align:center;font-size:11px;letter-spacing:.4px}.demo-bar span{opacity:.75}.topbar{border-bottom:1px solid var(--line);background:#fffbf5f5;position:sticky;top:0;z-index:20}.nav{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{text-decoration:none;display:flex;align-items:center;gap:12px}.brand-symbol{font-family:Georgia,serif;font-size:30px;color:var(--rose);line-height:1}.brand-name{font-family:Georgia,serif;font-size:27px;letter-spacing:-1px;line-height:1}.brand-sub{font-size:9px;letter-spacing:2px;text-transform:uppercase;margin-top:6px;color:var(--muted)}.navlinks{display:flex;align-items:center;gap:26px;font-size:12px}.navlinks a{text-decoration:none}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:1px solid transparent;padding:12px 20px;min-height:45px;border-radius:8px;background:var(--rose);color:white;font-size:12px;font-weight:600;text-decoration:none;transition:background .15s,transform .15s}.btn:hover{background:var(--rose-dark)}.btn:active{transform:translateY(1px)}.btn.secondary{background:transparent;border-color:var(--line);color:var(--ink)}.btn.secondary:hover{background:var(--pink)}.btn.light{background:white;color:var(--ink)}.btn.text{padding:8px 0;min-height:36px;background:none;color:var(--rose);border:0}.btn.small{padding:7px 12px;min-height:36px}.btn:disabled{opacity:.45}.hero{display:grid;grid-template-columns:1.04fr 1fr;gap:65px;align-items:center;padding:66px 0 60px}.hero-copy .eyebrow{color:var(--rose);margin-bottom:24px}.hero-copy h1 em{color:var(--rose);font-weight:400}.hero-copy p{max-width:380px;margin:25px 0;color:var(--muted);font-size:15px;line-height:1.8}.hero-actions{display:flex;gap:20px;align-items:center;flex-wrap:wrap}.under-note{font-size:11px;color:var(--muted);margin-top:15px}.hero-art{position:relative;min-height:480px;border-radius:190px 190px 18px 18px;background:#f2d4ba;overflow:hidden}.hero-art svg{width:100%;height:100%;position:absolute;inset:0}.art-tag{position:absolute;bottom:28px;left:25px;right:25px;background:#fff9;padding:13px 16px;border:1px solid #fff8;border-radius:10px;backdrop-filter:blur(8px);font-size:11px;display:flex;justify-content:space-between;gap:16px}.art-tag strong{font-weight:500}.art-label{position:absolute;top:38px;left:30px;color:#85643c;font-size:10px;letter-spacing:2px;writing-mode:vertical-rl}.strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 0;display:flex;justify-content:space-around;gap:20px;font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:1.3px}.strip span::before{content:'☀';color:var(--rose);padding-right:18px}.section{padding:76px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:30px}.section-head .eyebrow{color:var(--rose);margin-bottom:12px}.section-head p{max-width:330px;font-size:13px;color:var(--muted)}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service{padding:28px;border:1px solid var(--line);border-radius:var(--radius);background:#fff8}.service-number{font-family:Georgia,serif;font-style:italic;color:var(--rose);font-size:30px;margin-bottom:25px}.service p{font-size:13px;color:var(--muted);margin:12px 0 20px}.service-footer{font-size:11px;display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:16px;color:var(--muted)}.pill{display:inline-flex;gap:5px;align-items:center;padding:4px 9px;font-size:10px;border-radius:20px;background:var(--pink);color:var(--rose-dark);white-space:nowrap}.pill.green{background:#e7efe9;color:var(--green)}.pill.gray{background:#eee9e6;color:#6d6266}.inspiration{background:#f6e8d6;border-radius:var(--radius);display:grid;grid-template-columns:1fr 1fr;overflow:hidden}.inspiration-copy{padding:48px}.inspiration-copy p{margin:20px 0;color:var(--muted);font-size:13px}.nail-palette{display:flex;gap:14px;align-items:center;justify-content:center;padding:40px;min-height:290px;transform:rotate(-8deg)}.nail{height:160px;width:67px;flex-shrink:0;border-radius:45% 45% 28% 28%;box-shadow:inset 5px 5px 12px #fff7,inset -5px -6px 12px #57344020,5px 12px 20px #593a4420;position:relative}.nail:nth-child(1){background:#dda078;transform:translateY(18px)}.nail:nth-child(2){background:#a75139}.nail:nth-child(3){background:#efc5a5;transform:translateY(-8px)}.nail:nth-child(4){background:linear-gradient(135deg,#efc5a5 48%,#b16043 49%,#b16043 52%,#efc5a5 53%);transform:translateY(18px)}.booking-section{background:#f8f0e5}.booking-layout{display:grid;grid-template-columns:.65fr 1.35fr;gap:65px}.booking-intro p{margin:20px 0;color:var(--muted);font-size:13px}.step-list{list-style:none;padding:0;counter-reset:step;margin-top:30px}.step-list li{counter-increment:step;display:flex;gap:14px;margin-bottom:18px;font-size:12px;align-items:center}.step-list li::before{content:counter(step);width:26px;height:26px;display:grid;place-items:center;border-radius:50%;border:1px solid var(--blush);color:var(--rose)}.booking-card{background:white;border:1px solid var(--line);border-radius:var(--radius);padding:28px;box-shadow:var(--shadow)}label,.label{display:block;font-size:12px;font-weight:600;margin-bottom:7px}input,select,textarea{width:100%;border:1px solid #dbccba;border-radius:8px;padding:10px 12px;min-height:43px;background:white;color:var(--ink)}input::placeholder,textarea::placeholder{color:#8f7e87}textarea{resize:vertical;min-height:95px}.field{margin-bottom:17px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}.week-header{display:flex;align-items:center;justify-content:space-between;margin:22px 0 12px;font-size:12px;gap:10px}.icon-btn{background:white;border:1px solid var(--line);border-radius:8px;width:36px;height:36px;display:inline-grid;place-items:center;color:var(--ink)}.days{display:grid;grid-template-columns:repeat(7,1fr);gap:7px}.day{background:white;border:1px solid var(--line);border-radius:9px;padding:9px 2px;color:var(--muted);font-size:10px;min-height:64px}.day strong{font-size:16px;display:block;font-weight:500;margin-top:3px;color:var(--ink)}.day.active{background:var(--rose);border-color:var(--rose);color:white}.day.active strong{color:white}.slots{display:flex;gap:8px;flex-wrap:wrap;margin:15px 0 8px}.slot{min-height:38px;border:1px solid var(--line);background:white;padding:8px 15px;border-radius:7px;font-size:12px;color:var(--ink)}.slot.active{border-color:var(--rose);background:var(--pink);color:var(--rose-dark)}.slot:disabled{background:#f5f2f2;color:#a799a0;text-decoration:line-through}.check{display:flex;align-items:flex-start;gap:9px;font-size:11px;font-weight:400;color:var(--muted);margin:15px 0;line-height:1.5}.check input{width:16px;min-height:16px;height:16px;margin:1px 0;accent-color:var(--rose);flex-shrink:0}.info{font-size:11px;background:#faf4ec;border-radius:8px;padding:11px 13px;color:var(--muted);margin:14px 0}.success{border:1px solid #c6d8cd;border-radius:12px;padding:22px;background:#f1f6f2}.success h3{color:var(--green);margin-bottom:8px}.success p{font-size:13px;margin:10px 0}.footer{padding:32px 0;display:flex;justify-content:space-between;gap:20px;align-items:center;font-size:11px;color:var(--muted)}.footer .brand-name{color:var(--ink);font-size:23px}.footer p{max-width:440px}.hidden,[hidden]{display:none!important}.app-shell{max-width:1440px;min-height:calc(100vh - 45px);display:grid;grid-template-columns:222px 1fr;margin:0 auto}.sidebar{padding:30px 18px;border-right:1px solid var(--line);background:#fff9;display:flex;flex-direction:column;gap:28px}.sidebar .brand{padding:0 12px}.sidebar .brand-name{font-size:25px}.side-nav{display:flex;flex-direction:column;gap:5px}.side-nav button{border:none;background:transparent;text-align:left;padding:11px 15px;border-radius:9px;color:var(--muted);font-size:12px;display:flex;align-items:center;gap:12px;min-height:43px}.side-nav button.active{background:var(--pink);color:var(--rose-dark);font-weight:600}.nav-icon{font-size:17px;width:18px;display:inline-grid;place-items:center}.side-bottom{margin-top:auto;padding:14px 10px;font-size:11px;color:var(--muted)}.owner{display:flex;align-items:center;gap:10px;border-top:1px solid var(--line);padding-top:18px}.avatar{width:35px;height:35px;border-radius:50%;display:grid;place-items:center;background:var(--pink);color:var(--rose-dark);font-size:12px;flex-shrink:0}.app-main{min-width:0;padding:30px 38px}.app-top{display:flex;justify-content:space-between;align-items:center;gap:15px;padding-bottom:25px;border-bottom:1px solid var(--line);margin-bottom:32px}.app-top .eyebrow{font-size:9px;color:var(--muted);letter-spacing:1.7px}.app-top p{font-size:12px;margin-top:5px;color:var(--muted)}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:25px}.page-heading h1{font-size:39px;letter-spacing:-1px}.page-heading p{font-size:12px;color:var(--muted);margin-top:8px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:27px}.stat{border:1px solid var(--line);border-radius:14px;background:#fff;padding:20px}.stat-label{font-size:11px;color:var(--muted);display:flex;justify-content:space-between;gap:10px}.stat-value{font:32px Georgia,serif;margin:12px 0 4px}.stat small{font-size:10px;color:var(--muted)}.dash-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:22px}.panel{background:white;border:1px solid var(--line);border-radius:16px;padding:23px;margin-bottom:22px}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:20px}.panel-head h2{font:19px Georgia,serif;letter-spacing:0}.appointment{display:flex;align-items:center;gap:16px;border-top:1px solid var(--line);padding:17px 0}.appointment:first-of-type{border-top:0}.appt-time{min-width:46px;font-size:13px}.appt-time small{display:block;font-size:10px;color:var(--muted)}.appt-line{width:3px;align-self:stretch;background:var(--blush);border-radius:5px}.appt-main{flex:1;min-width:0}.appt-main strong{font-size:12px;font-weight:600}.appt-main p{font-size:11px;color:var(--muted);margin-top:3px}.task{display:flex;gap:12px;padding:12px 0;border-top:1px solid var(--line);font-size:12px;align-items:flex-start}.task p{font-size:11px;color:var(--muted);margin-top:5px}.task-icon{width:28px;height:28px;border-radius:7px;background:var(--pink);color:var(--rose);display:grid;place-items:center;flex-shrink:0}.quote-panel{background:var(--pink);border:0}.quote-panel h2{font-size:25px;margin:12px 0}.quote-panel p{font-size:12px;color:var(--rose-dark)}.filterbar{display:flex;gap:12px;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap}.filterbar input{max-width:290px}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;font-size:12px;text-align:left;white-space:nowrap}th{font-weight:500;color:var(--muted);font-size:10px;padding:0 12px 14px}td{padding:15px 12px;border-top:1px solid var(--line)}td:first-child,th:first-child{padding-left:0}td small{display:block;font-size:10px;color:var(--muted)}.empty{text-align:center;padding:32px 15px;color:var(--muted);font-size:12px}.toggle-row{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid var(--line);padding:16px 0}.toggle-row:first-of-type{border-top:0}.toggle-row strong{font-size:12px}.toggle-row p{font-size:11px;color:var(--muted);margin-top:3px}.switch{width:40px;height:23px;min-height:23px;accent-color:var(--rose)}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.settings-grid .panel{margin-bottom:0}.summary-line{display:flex;justify-content:space-between;padding:10px 0;border-top:1px solid var(--line);font-size:12px}.summary-line strong{font-weight:600}.comm-card{display:grid;grid-template-columns:100px 1fr;gap:20px;align-items:center}.insta-art{width:100px;height:120px;border-radius:8px;background:linear-gradient(145deg,#efc6a0,#fff6e5);display:grid;place-items:center;text-align:center;font:23px/1.1 Georgia,serif;color:var(--rose-dark)}.hint{font-size:11px;color:var(--muted);margin-top:10px}.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:var(--ink);color:white;border-radius:10px;padding:13px 20px;max-width:calc(100vw - 32px);z-index:100;font-size:12px;box-shadow:var(--shadow)}dialog{width:min(540px,calc(100vw - 30px));border:1px solid var(--line);border-radius:20px;padding:28px;color:var(--ink);max-height:90vh;overflow:auto;background:var(--paper)}dialog::backdrop{background:#2c182b66;backdrop-filter:blur(3px)}.dialog-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;gap:20px}.dialog-head h2{font-size:28px}.dialog-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.client-profile{display:flex;align-items:center;gap:15px;margin-bottom:20px}.client-profile .avatar{width:55px;height:55px;font-size:20px}.preview-message{white-space:pre-wrap;background:white;border:1px solid var(--line);padding:18px;border-radius:10px;font-size:13px;margin:15px 0}.storage-alert{background:#fff1d2;padding:10px 20px;font-size:12px;text-align:center;color:#624807}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.mobile-only{display:none}.danger{color:#913e51!important}.wide{width:100%}.calendar-date{max-width:190px}.mini-note{font-size:11px;color:var(--muted);line-height:1.6}.margin-top{margin-top:18px}.newsletter-meta{font-size:10px;color:var(--muted);margin-top:4px}
@media(min-width:1500px){.hero{padding-top:80px;padding-bottom:80px}.hero-art{min-height:540px}}
@media(max-width:1050px){.wrap{padding:0 28px}.hero{gap:30px}.hero-art{min-height:430px}.navlinks{gap:16px}.booking-layout{gap:30px;grid-template-columns:.8fr 1.2fr}.app-shell{grid-template-columns:190px 1fr}.app-main{padding:25px}.sidebar{padding:25px 10px}.dash-grid{grid-template-columns:1fr}.settings-grid{grid-template-columns:1fr}.nail-palette{gap:10px;padding:25px}.nail{width:50px;height:135px}}
@media(max-width:760px){.wrap{padding:0 20px}.nav{min-height:75px;gap:10px}.brand-name{font-size:24px}.brand-sub{font-size:8px}.navlinks>a{display:none}.navlinks{gap:0}.navlinks .btn{padding:10px 12px;font-size:10px;min-height:39px}.hero{grid-template-columns:1fr;gap:32px;padding:40px 0}.hero-copy h1{font-size:59px;letter-spacing:-2px}.hero-copy p{font-size:14px;max-width:440px;margin:20px 0}.hero-copy .eyebrow{margin-bottom:18px}.hero-art{min-height:390px;border-radius:150px 150px 14px 14px;max-width:480px;width:100%;margin:auto}.strip{font-size:9px;gap:10px;letter-spacing:.6px;flex-wrap:wrap}.strip span::before{padding-right:8px}.section{padding:48px 0}.section-head{display:block;margin-bottom:23px}.section-head p{margin-top:15px}.services{grid-template-columns:1fr;gap:12px}.service{padding:24px}.service-number{font-size:24px;margin-bottom:13px}.service p{margin:9px 0 15px}.inspiration{grid-template-columns:1fr}.inspiration-copy{padding:30px 27px 0}.nail-palette{padding:30px;min-height:240px;gap:18px}.nail{height:140px;width:53px}.booking-layout{grid-template-columns:1fr;gap:20px}.step-list{display:none}.booking-card{padding:20px}.booking-intro p{margin:15px 0}.footer{display:block;padding:28px 0}.footer p{margin-top:15px}.demo-bar{font-size:10px;padding:7px 14px}.demo-bar span{display:none}.app-shell{display:block}.sidebar{padding:18px 16px 0;gap:18px;border-right:0;border-bottom:1px solid var(--line)}.sidebar>.brand,.side-bottom{display:none}.side-nav{flex-direction:row;overflow:auto;gap:6px;padding-bottom:13px}.side-nav button{white-space:nowrap;flex-shrink:0;padding:10px 13px;font-size:11px}.nav-icon{font-size:15px;width:15px}.app-main{padding:20px 18px}.app-top{margin-bottom:25px;padding-bottom:18px}.app-top .btn{font-size:10px;padding:9px 12px;min-height:37px}.page-heading{align-items:flex-start;gap:10px}.page-heading h1{font-size:32px}.page-heading>.btn{padding:10px 12px;min-height:39px;font-size:10px}.stats{gap:8px;margin-bottom:20px}.stat{padding:13px 11px;border-radius:11px}.stat-label{font-size:10px}.stat-label span{display:none}.stat-value{font-size:26px;margin-top:10px}.stat small{font-size:9px}.panel{padding:18px;border-radius:13px}.appointment{gap:11px}.appt-main strong{font-size:11px}.appt-main p{font-size:10px}.appointment .btn{font-size:10px;padding:6px 8px}.appointment .pill{font-size:9px;padding:3px 6px}.app-top p{font-size:11px}.app-top .eyebrow{font-size:8px}.settings-grid{gap:16px}.comm-card{grid-template-columns:80px 1fr;gap:14px}.insta-art{width:80px;height:110px;font-size:20px}.day{padding:8px 1px;font-size:9px}.days{gap:4px}.day strong{font-size:15px}.form-grid{gap:0 10px}.mobile-only{display:block}.toast{bottom:15px}.filterbar{gap:10px}.filterbar input{max-width:100%}}
@media(max-width:480px){.form-grid{grid-template-columns:1fr}.app-top .pill{white-space:normal}.appointment{flex-wrap:wrap}.appt-main{min-width:100px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.schedule-day{border:0;border-top:1px solid var(--line);padding:16px 0 10px;margin:15px 0 0;min-width:0}.schedule-day legend{font-size:13px;font-weight:600;padding:0 10px 0 0}.range-row{display:grid;grid-template-columns:1fr 14px 1fr 36px;gap:8px;align-items:end;margin:10px 0}.range-row>span{align-self:center;padding-top:22px;color:var(--muted)}.range-row label{font-size:10px}.range-row .icon-btn{margin-bottom:4px}.range-row input{padding:8px;min-width:0}.availability-grid{grid-template-columns:1.05fr 1fr}.slots{max-height:240px;overflow:auto;padding:3px}.closed-note{padding:8px 0}@media(max-width:1050px){.availability-grid{grid-template-columns:1fr}}@media(max-width:480px){.range-row{gap:5px;grid-template-columns:minmax(0,1fr) 12px minmax(0,1fr) 32px}.range-row .icon-btn{width:32px}.summary-line{gap:14px}.summary-line strong{text-align:right}}

/* Logo original reçu : proportions conservées, aucune reconstruction graphique. */
.brand-logo{display:block;width:84px;height:100px;object-fit:contain;flex-shrink:0;mix-blend-mode:multiply}.nav{min-height:124px}.sidebar .brand{flex-direction:column;align-items:center;gap:8px}.sidebar .brand-logo{height:128px;width:108px}.sidebar .brand-name{font-size:23px;text-align:center}.sidebar .brand-sub{font-size:8px;text-align:center;letter-spacing:1.4px}.footer-brand{display:flex;align-items:center;gap:18px}.footer-brand .brand-logo{width:105px;height:125px}.app-identity{display:flex;align-items:center;min-width:0;gap:10px}.admin-mobile-logo{display:none}@media(max-width:760px){.nav{min-height:108px}.nav>.brand{gap:9px}.nav .brand-logo{width:71px;height:84px}.nav .brand-name{font-size:21px}.nav .brand-sub{letter-spacing:1.3px;font-size:7px}.footer-brand .brand-logo{width:88px;height:105px}.admin-mobile-logo{display:block;width:60px;height:72px;object-fit:contain;mix-blend-mode:multiply;flex-shrink:0}.app-identity .eyebrow{display:none}.app-identity>div{min-width:0}.app-top{gap:10px}.app-top>.btn{flex-shrink:0}.app-top p{font-size:10px}.app-top .pill{font-size:9px}}@media(max-width:360px){.nav .brand-logo{width:60px;height:72px}.nav .brand-name{font-size:17px}.nav .brand-sub{display:none}.admin-mobile-logo{width:48px;height:58px}}

.portrait-art{margin:0}.hero-portrait{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 45%}.portrait-art .art-tag{background:#fffbf5e8;border-color:#fff9;color:var(--ink)}@media(max-width:760px){.portrait-art{min-height:440px}.hero-portrait{object-position:50% 45%}.portrait-art .art-tag{left:20px;right:20px;bottom:22px}}

:root{--card:#fff;--focus:#a34f39}.theme-toggle{border:1px solid var(--line);background:var(--card);color:var(--ink);width:40px;min-height:40px;border-radius:50%;display:inline-grid;place-items:center;font-size:20px;padding:0;cursor:pointer;flex-shrink:0}.compact-label{display:none}.app-controls{display:flex;align-items:center;gap:9px}.save-status{font-size:10px;color:var(--muted);margin-top:5px}.login-main{max-width:450px;margin:55px auto;padding:0 22px}.login-brand{display:flex;justify-content:center;align-items:center;gap:16px;margin-bottom:28px}.login-brand .brand-logo{height:106px;width:90px}.login-card{background:var(--card);border:1px solid var(--line);border-radius:22px;padding:30px;box-shadow:var(--shadow)}.login-card h1{font-size:37px;letter-spacing:-1px}.login-card p{font-size:12px;color:var(--muted);margin:14px 0}.login-card .field{margin-top:20px}.pin-field{font-size:22px;letter-spacing:7px;text-align:center}.login-divider{display:flex;align-items:center;gap:14px;color:var(--muted);font-size:10px;margin:22px 0}.login-divider:before,.login-divider:after{content:'';height:1px;background:var(--line);flex:1}.login-top{max-width:1200px;margin:auto;padding:20px 25px;display:flex;justify-content:space-between;align-items:center}.error-message{font-size:12px;color:#a33240;min-height:18px}.email-preview{background:#fff;color:#302720;border-radius:12px;overflow:hidden;padding:8px;margin-top:15px}.email-preview a{color:#9c4b36}.security-list{padding:0;list-style:none}.security-list li{padding:12px 0;border-top:1px solid var(--line);font-size:12px}.gallery-track{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 0 15px}.gallery-item{flex:0 0 min(340px,80vw);scroll-snap-align:start}.gallery-item img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:15px}.gallery-item figcaption{font-size:12px;margin-top:8px}.gallery-controls{display:flex;gap:8px}.gallery-empty{border:1px dashed var(--line);border-radius:18px;padding:28px;background:var(--card);font-size:13px;color:var(--muted)}
html:is([data-theme="dark"],[data-theme="signature"]){--paper:#211c1a;--white:#2d2521;--card:#2d2521;--ink:#f7eee4;--muted:#c6b5a8;--rose:#e8a184;--rose-dark:#f3bca5;--pink:#48312b;--blush:#815340;--line:#53443a;--shadow:0 15px 50px #0004;--focus:#f6ba9b;--green:#b3d9c2}
html:is([data-theme="dark"],[data-theme="signature"]) .topbar{background:#211c1af5}html:is([data-theme="dark"],[data-theme="signature"]) .sidebar{background:#27211e}html:is([data-theme="dark"],[data-theme="signature"]) .panel,html:is([data-theme="dark"],[data-theme="signature"]) .stat,html:is([data-theme="dark"],[data-theme="signature"]) .booking-card,html:is([data-theme="dark"],[data-theme="signature"]) .service,html:is([data-theme="dark"],[data-theme="signature"]) .day,html:is([data-theme="dark"],[data-theme="signature"]) .slot,html:is([data-theme="dark"],[data-theme="signature"]) .icon-btn{background:var(--card);color:var(--ink)}html:is([data-theme="dark"],[data-theme="signature"]) .btn{color:#2c1d17}html:is([data-theme="dark"],[data-theme="signature"]) .btn.secondary{color:var(--ink)}html:is([data-theme="dark"],[data-theme="signature"]) .btn.text{color:var(--rose)}html:is([data-theme="dark"],[data-theme="signature"]) input,html:is([data-theme="dark"],[data-theme="signature"]) select,html:is([data-theme="dark"],[data-theme="signature"]) textarea{background:#241e1b;color:var(--ink);border-color:var(--line)}html:is([data-theme="dark"],[data-theme="signature"]) .info{background:#3a2b24;color:#ddc6b6}html:is([data-theme="dark"],[data-theme="signature"]) .booking-section{background:#2a211d}html:is([data-theme="dark"],[data-theme="signature"]) .inspiration{background:#37281f}html:is([data-theme="dark"],[data-theme="signature"]) .quote-panel{background:var(--pink)}html:is([data-theme="dark"],[data-theme="signature"]) .pill.gray{background:#453b35;color:#ddccc0}html:is([data-theme="dark"],[data-theme="signature"]) .pill.green{background:#263f33;color:#b6dfc7}html:is([data-theme="dark"],[data-theme="signature"]) .pill{background:#51372d;color:#f1bda6}html:is([data-theme="dark"],[data-theme="signature"]) .btn.secondary:hover{background:#48312b}html:is([data-theme="dark"],[data-theme="signature"]) .brand-logo,html:is([data-theme="dark"],[data-theme="signature"]) .admin-mobile-logo{mix-blend-mode:normal;border-radius:6px}html:is([data-theme="dark"],[data-theme="signature"]) .portrait-art .art-tag{color:#30251e;background:#fffbf5ed}html:is([data-theme="dark"],[data-theme="signature"]) .slot:disabled{background:#241e1b;color:#8e7d70}html:is([data-theme="dark"],[data-theme="signature"]) .day.active{background:var(--rose);color:#211c1a}html:is([data-theme="dark"],[data-theme="signature"]) .day.active strong{color:#211c1a}html:is([data-theme="dark"],[data-theme="signature"]) .slot.active{background:#51372d}html:is([data-theme="dark"],[data-theme="signature"]) .preview-message{background:#302620;color:var(--ink)}html:is([data-theme="dark"],[data-theme="signature"]) .success{background:#25382d;border-color:#4c7159}html:is([data-theme="dark"],[data-theme="signature"]) .error-message,html:is([data-theme="dark"],[data-theme="signature"]) .danger{color:#ffa4a4!important}html:is([data-theme="dark"],[data-theme="signature"]) .storage-alert{background:#624818;color:#fff1cd}html:is([data-theme="dark"],[data-theme="signature"]) .btn:hover{background:#f2b79b}html:is([data-theme="dark"],[data-theme="signature"]) .nail-palette{background:#f6e8d6;border-radius:20px}html:is([data-theme="dark"],[data-theme="signature"]) .demo-bar{background:#130f0d}html:is([data-theme="dark"],[data-theme="signature"]) .insta-art{color:#5d3225}html:is([data-theme="dark"],[data-theme="signature"]) :focus-visible{outline-color:var(--focus)}
@media(max-width:760px){.nav>.brand{gap:7px}.nav .brand-logo{width:60px;height:72px}.nav .brand-name{font-size:18px}.navlinks{gap:7px}.navlinks .theme-toggle{width:34px;min-height:34px}.navlinks .desktop-label{display:none}.navlinks .compact-label{display:inline}.navlinks .btn{padding:9px 10px}.login-main{margin-top:24px}.login-card{padding:24px}.app-controls{gap:6px}.app-controls .btn{font-size:9px}.app-controls .theme-toggle{width:32px;min-height:32px}.app-controls .logout-button{width:32px}.app-top{flex-wrap:wrap}.app-identity{flex:1}.app-top .app-controls{margin-left:auto}}
@media print{.theme-toggle{display:none}html:is([data-theme="dark"],[data-theme="signature"]){--paper:white;--card:white;--ink:#222;--muted:#555;--line:#ddd}}

/* Devis: airy cards, strong totals, readable touch targets. */
.quote-toolbar,.quote-meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.quote-toolbar{margin:0 0 24px}.quote-stats{margin:24px 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.quote-stats strong{display:block;font-family:var(--serif,Georgia,serif);font-size:32px;margin-top:12px}.quote-card{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 0;border-bottom:1px solid var(--line,#e5d8cd)}.quote-card:last-child{border-bottom:0}.quote-card h3{margin-top:12px}.quote-card-end{text-align:right;flex-shrink:0}.quote-card-end .hero-actions{justify-content:flex-end}.quote-amount{font-size:24px;font-family:Georgia,serif}.quote-line{border:1px solid var(--line,#e5d8cd);border-radius:14px;padding:20px;margin:20px 0}.quote-line legend{font-size:13px;font-weight:600;padding:0 8px}.quote-line-numbers{display:grid;grid-template-columns:1fr 1.3fr 1fr;gap:16px;align-items:center}.quote-save-bar{position:sticky;bottom:16px;z-index:12;padding:18px 24px;border:1px solid var(--line,#e5d8cd);border-radius:16px;background:var(--surface,#fffaf3);box-shadow:0 8px 28px #302b2715;display:flex;align-items:center;justify-content:space-between;gap:20px}.quote-save-bar strong{display:block;font:26px Georgia,serif;margin-top:5px}.pwa-install{position:fixed;right:20px;bottom:18px;z-index:30;border:1px solid #cfae8a;border-radius:24px;padding:10px 16px;background:#fff8ef;color:#704736;box-shadow:0 3px 15px #302b2714;font:500 12px system-ui;cursor:pointer}.pwa-install[hidden],.pwa-offline[hidden]{display:none}.pwa-offline,.pwa-update{position:fixed;bottom:0;left:0;width:100%;padding:12px 24px;z-index:60;background:#47352d;color:#fff8ef;font:13px system-ui}.pwa-update{display:flex;align-items:center;gap:18px;justify-content:center}.quote-save-bar{margin-bottom:60px}.pwa-install:hover{background:#f3e3d5}html:is([data-theme="dark"],[data-theme="signature"]) .quote-save-bar{background:#29211d}html:is([data-theme="dark"],[data-theme="signature"]) .pwa-install{background:#342820;color:#f4dcc7;border-color:#75614c}
@media(max-width:650px){.quote-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.quote-card{display:block}.quote-card-end{text-align:left;margin-top:18px}.quote-card-end .hero-actions{justify-content:flex-start}.quote-line{padding:14px}.quote-line-numbers{gap:10px}.quote-save-bar{padding:14px;bottom:8px;flex-wrap:wrap}.quote-save-bar .hero-actions{width:100%}.pwa-install{right:12px;bottom:12px;padding:9px 13px}.pwa-update{flex-wrap:wrap}.quote-card-end .btn{white-space:normal}}
.quote-line-numbers .field>span,.quote-line-numbers .field>strong{display:block}.quote-line-numbers .field>strong{margin-top:8px}

.pwa-install{position:static;display:inline-flex;align-self:flex-start;margin:0 0 20px;box-shadow:none}.pwa-install[hidden]{display:none}.quote-save-bar{margin-bottom:24px}

/* J’Rayonne: gallery and quiet motion, using the existing brand palette. */
:root{--sun:#caa15e;--motion-soft:560ms;--motion-ease:cubic-bezier(.22,.61,.36,1)}
.gallery-intro{max-width:590px;margin-bottom:30px}.gallery-group+.gallery-group{margin-top:44px}.gallery-group-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:16px}.gallery-group-head h3{font:28px/1.25 Georgia,serif}.gallery-count{display:block;margin-top:6px;color:var(--muted);font:12px/1.5 system-ui}.gallery-controls .icon-btn{width:44px;height:44px;transition:background 180ms,color 180ms,transform 180ms}.gallery-controls .icon-btn:disabled{opacity:.35}.gallery-track{scroll-padding-inline:4px;padding:4px 4px 18px;overscroll-behavior-x:contain}.gallery-item{margin:0;flex:0 0 min(320px,78vw)}.gallery-photo{position:relative;display:block;overflow:hidden;width:100%;border:1px solid var(--line);padding:0;background:var(--pink);border-radius:16px;color:var(--ink);text-align:left}.gallery-photo img{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:contain;border-radius:0;transition:transform 650ms var(--motion-ease)}.gallery-photo-hint{position:absolute;right:12px;bottom:12px;padding:8px 12px;border-radius:24px;background:var(--paper);color:var(--ink);font-size:11px;box-shadow:var(--shadow);opacity:0;transform:translateY(5px);transition:opacity 200ms,transform 250ms}.gallery-photo:focus-visible .gallery-photo-hint{opacity:1;transform:none}.gallery-item figcaption{padding:0 2px;margin-top:12px;color:var(--muted);line-height:1.5}.gallery-large{display:block;width:100%;max-height:70vh;object-fit:contain;border-radius:10px}#modal[open]{animation:dialog-arrive 260ms var(--motion-ease)}#modal::backdrop{background:#21181499;backdrop-filter:blur(4px)}.reveal-section{transition:opacity var(--motion-soft) var(--motion-ease),transform var(--motion-soft) var(--motion-ease)}.pointer-aura{display:none;position:fixed;top:0;left:0;width:44px;height:44px;border:1px solid #caa15e55;border-radius:50%;background:radial-gradient(circle,#e3bd7625,transparent 72%);pointer-events:none;z-index:1000;opacity:0;transition:opacity 180ms,border-color 180ms,background 180ms}.pointer-aura.is-photo{border-color:#c8786066;background:radial-gradient(circle,#d5917830,transparent 72%)}
@keyframes dialog-arrive{from{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:no-preference){.reveal-pending{opacity:0;transform:translateY(18px)}}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.pointer-aura{display:block}.pointer-aura.is-visible{opacity:1}.gallery-photo:hover img{transform:scale(1.025)}.gallery-photo:hover .gallery-photo-hint{opacity:1;transform:none}.gallery-controls .icon-btn:hover:not(:disabled){background:var(--pink);transform:translateY(-2px)}}
@media(hover:none){.gallery-photo-hint{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal-pending{opacity:1;transform:none}.pointer-aura{display:none}}
#realisations{scroll-margin-top:36px}

.pose-motion{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,340px);align-items:center;gap:70px;border-top:1px solid var(--line);scroll-margin-top:36px}.pose-motion-copy{max-width:440px}.pose-motion-copy .eyebrow{color:var(--rose);margin-bottom:18px}.pose-motion-copy h2{font-size:clamp(38px,4.5vw,56px)}.pose-motion-copy>p{margin:24px 0;color:var(--muted);line-height:1.8}.pose-motion-copy .mini-note{font-size:12px;max-width:290px}.pose-motion-film{margin:0;min-width:0}.pose-video-frame{position:relative;border:1px solid var(--line);border-radius:22px;overflow:hidden;background:var(--pink);box-shadow:var(--shadow)}.pose-video-frame video{display:block;width:100%;height:auto;aspect-ratio:9/16;object-fit:contain}.pose-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:54px;white-space:nowrap;padding:14px 20px;border:1px solid var(--line);border-radius:40px;background:var(--paper);color:var(--ink);box-shadow:var(--shadow);font-size:13px;font-weight:600;transition:background 180ms,box-shadow 180ms}.pose-play:hover{background:var(--pink)}.pose-play>span{color:var(--rose);font-size:16px}.pose-motion-film figcaption{margin:14px 3px 0;color:var(--muted);font-size:12px;line-height:1.6}.pose-motion-film [role="alert"]{margin-top:12px;color:var(--rose)}
@media(max-width:700px){.pose-motion{grid-template-columns:minmax(0,1fr);gap:28px}.pose-motion-copy{max-width:none}.pose-motion-copy h2 br{display:none}.pose-motion-copy>p{margin:18px 0}.pose-motion-film{width:min(100%,340px);justify-self:center}}
@media(prefers-reduced-motion:reduce){.pose-play{transition:none}}

.hero-call{gap:18px;text-align:left}.hero-call>span:first-child{display:block;font-size:11px}.hero-call strong{display:block;margin-top:3px;font-size:18px;letter-spacing:.4px}.contact-section{padding:34px;margin:42px 0 0;background:var(--pink);border:1px solid var(--line);border-radius:var(--radius);scroll-margin-top:36px}.contact-heading{display:flex;align-items:end;justify-content:space-between;gap:32px;margin-bottom:26px}.contact-heading .eyebrow{color:var(--rose);margin-bottom:12px}.contact-heading h2{font-size:clamp(32px,3.5vw,42px)}.contact-heading>p{max-width:380px;color:var(--muted);font-size:13px;line-height:1.7}.contact-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:18px;font-style:normal}.contact-card{display:flex;flex-direction:column;align-items:flex-start;gap:12px;min-width:0;padding:24px;border:1px solid var(--line);border-radius:16px;background:var(--paper)}.contact-label{color:var(--muted);font-size:10px;letter-spacing:1.6px;text-transform:uppercase;font-weight:700}.contact-number{display:inline-block;padding:4px 0;color:var(--rose);font-size:clamp(22px,2.1vw,28px);font-weight:650;letter-spacing:.5px;text-decoration:none;white-space:nowrap}.contact-action{display:inline-flex;align-items:center;justify-content:space-between;gap:18px;min-height:44px;color:var(--rose);font-size:12px;font-weight:600;text-underline-offset:4px}.contact-card>strong,.contact-instagram{font-size:20px;line-height:1.4}.contact-instagram{padding:7px 0;color:var(--rose);text-underline-offset:5px}.contact-card>p{font-size:12px;color:var(--muted);line-height:1.7}.contact-card .contact-detail{font-size:11px}.contact-phone{border-color:var(--blush)}
@media(max-width:950px){.contact-grid{grid-template-columns:1fr 1fr}.contact-phone{grid-column:1/-1}.contact-heading{align-items:start;flex-direction:column;gap:18px}.contact-heading>p{max-width:560px}.contact-number{font-size:28px}}
@media(max-width:600px){.contact-section{padding:24px 18px;margin-top:28px}.contact-grid{grid-template-columns:minmax(0,1fr)}.contact-card{padding:22px}.contact-heading h2{font-size:34px}.contact-number{font-size:clamp(22px,7.2vw,28px)}.hero-call strong{font-size:18px}}

/* Illustrated services and the shared price booklet. */
.services-section{position:relative;isolation:isolate;scroll-margin-top:36px}.services-watermark{position:absolute;z-index:-1;right:8%;top:0;width:min(450px,65%);opacity:.055;pointer-events:none;mix-blend-mode:multiply;mask-image:radial-gradient(ellipse,#000 35%,transparent 72%)}.services-intro{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-bottom:30px}.services-intro .eyebrow{color:var(--rose);margin-bottom:14px}.services-intro p{margin-top:20px;color:var(--muted);max-width:390px;font-size:14px}.services-illustration{width:min(42%,380px);height:auto;object-fit:contain;filter:drop-shadow(0 15px 20px #c18b6420)}.service-illustrated{position:relative;overflow:hidden;display:flex;flex-direction:column;background:var(--card)}.service-illustrated p{flex:1}.service-illustrated .service-footer{align-items:center}.service-illustrated .service-footer strong{font:24px Georgia,serif;color:var(--rose)}.service-nails{display:flex;align-items:center;gap:8px;position:relative;width:105px;height:86px;margin-bottom:22px}.service-nails i{display:block;width:24px;height:54px;border-radius:45% 45% 30% 30%;background:#e9b497;border:1px solid #c68e6c;box-shadow:inset 4px 3px 5px #fff6}.service-nails i:nth-child(2){height:66px;background:#b4644a;transform:translateY(-5px)}.service-nails i:nth-child(3){height:52px;background:#f2cfb0}.service-nails>span{position:absolute;right:0;top:1px;color:var(--sun);font-size:24px}.feet-nails i{height:37px;width:23px;border-radius:45%}.feet-nails i:nth-child(2){height:46px;transform:none}.feet-nails i:nth-child(3){height:34px}.art-nails i:nth-child(1){background:linear-gradient(135deg,#f2cfb0 55%,#b4644a 56%)}.art-nails i:nth-child(2){background:radial-gradient(circle at 40% 40%,#edc795 3px,transparent 4px),#b4644a}.art-nails i:nth-child(3){background:linear-gradient(160deg,#f2cfb0 60%,#caa15e 62%,#f2cfb0 66%)}.catalogue-callout{display:flex;align-items:center;justify-content:space-between;gap:28px;margin-top:26px;padding:28px 30px;background:var(--pink);border:1px solid var(--blush);border-radius:18px}.catalogue-callout .eyebrow{color:var(--rose);font-size:10px}.catalogue-callout h3{font:24px/1.35 Georgia,serif;margin:7px 0}.catalogue-callout p{max-width:580px;font-size:11px;color:var(--muted)}.catalogue-button{flex-shrink:0;gap:24px;min-height:56px;font-size:13px;box-shadow:0 6px 20px #7c3f2a1a}.catalogue-dialog{width:min(940px,calc(100vw - 28px));padding:28px;max-height:92svh}.catalogue-dialog .dialog-head{position:sticky;top:-28px;z-index:3;padding:18px 0;margin-top:-10px;background:var(--paper);border-bottom:1px solid var(--line)}.catalogue-dialog .dialog-head .icon-btn{width:44px;height:44px;flex-shrink:0}.catalogue-intro{display:grid;grid-template-columns:1.2fr 1fr;gap:20px;align-items:center;padding:10px 6px 16px}.catalogue-intro>img{width:100%;height:auto}.catalogue-intro .eyebrow{color:var(--rose);font-size:10px}.catalogue-lead{font:32px/1.3 Georgia,serif;margin:12px 0 18px}.catalogue-reference{font-size:11px;color:var(--muted);line-height:1.7;border-left:2px solid var(--blush);padding:10px 16px;margin:10px 0 24px}.price-cards{display:grid;grid-template-columns:1fr 1fr;gap:20px}.price-card{padding:24px;background:var(--card);border:1px solid var(--line);border-radius:20px;position:relative;overflow:hidden}.price-card::after{content:'☀';position:absolute;right:16px;top:14px;color:var(--sun);font-size:26px;opacity:.6}.price-card-title{display:flex;align-items:center;gap:18px;margin-bottom:14px}.price-card-title .service-nails{transform:scale(.65);transform-origin:left center;width:75px;flex-shrink:0;height:70px;margin:0 -15px 0 0}.price-card-title .eyebrow{font-size:8px;color:var(--muted);letter-spacing:1.2px}.price-card-title h3{font:30px Georgia,serif;margin-top:5px;color:var(--rose)}.service-drawing{width:58px;height:70px;stroke:var(--rose);stroke-width:1.6;flex-shrink:0}.price-card dl{margin:0}.price-row{display:flex;gap:20px;align-items:baseline;padding:13px 0;border-bottom:1px dashed var(--line)}.price-row:last-child{border:0}.price-row dt{font-size:13px;line-height:1.55;flex:1}.price-row dd{margin:0;white-space:nowrap;color:var(--rose);font:23px Georgia,serif}.price-row dd span{font-size:15px}.price-card-wide{grid-column:1/-1}.price-card-wide dl{display:grid;grid-template-columns:1fr 1fr;gap:0 32px}.price-conditions{border:1px solid var(--blush);background:var(--pink);border-radius:20px;padding:28px;margin-top:24px}.price-conditions>.eyebrow{color:var(--rose);font-size:9px}.price-conditions>h3{font:28px Georgia,serif;margin:8px 0 22px}.conditions-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px 28px}.conditions-grid p{font-size:12px;color:var(--muted);line-height:1.8}.conditions-grid strong{display:block;font-size:13px;color:var(--ink);margin-bottom:4px}.price-conditions>.btn{margin-top:14px}html:is([data-theme="dark"],[data-theme="signature"]) .services-watermark{opacity:.08;mix-blend-mode:screen}
@media(max-width:760px){.services-intro{align-items:flex-start}.services-illustration{width:38%;margin-top:36px}.services-intro h2{font-size:36px}.catalogue-callout{flex-direction:column;align-items:stretch;padding:24px}.catalogue-button{width:100%}.price-card{padding:20px}.catalogue-intro{grid-template-columns:1fr .8fr}.catalogue-lead{font-size:26px}}
@media(max-width:540px){.services-intro{position:relative;display:block;padding-bottom:130px}.services-illustration{position:absolute;right:0;bottom:0;width:220px;max-height:150px;object-fit:contain;margin:0}.services-intro p{max-width:100%}.services-watermark{width:80%;right:0}.catalogue-dialog{padding:18px}.catalogue-dialog .dialog-head{top:-18px}.catalogue-dialog .dialog-head h2{font-size:24px}.catalogue-intro{grid-template-columns:1fr}.catalogue-intro>img{width:210px;justify-self:center}.price-cards{grid-template-columns:1fr}.price-card-wide{grid-column:auto}.price-card-wide dl,.conditions-grid{grid-template-columns:1fr}.price-card-title .eyebrow{font-size:9px}.price-conditions{padding:22px}}

/* Shared owner/admin workspace. */
.ws-shortcuts{display:grid;gap:12px;margin-top:24px}.ws-shortcuts .btn{justify-content:flex-start}.ws-calendar-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}.ws-calendar-toolbar input{max-width:170px}.ws-view-switch{display:flex;border:1px solid var(--line);border-radius:10px;padding:4px;gap:3px;background:var(--paper)}.ws-view-switch button{border:0;border-radius:7px;padding:10px 16px;min-height:44px;background:transparent;color:var(--muted);font-size:12px}.ws-view-switch button[aria-pressed="true"]{background:var(--pink);color:var(--rose);font-weight:700}.ws-period-title{font-size:28px;margin:24px 0 14px;text-transform:capitalize}.ws-calendar-legend{display:flex;flex-wrap:wrap;gap:18px;color:var(--muted);font-size:11px;margin-bottom:20px}.ws-timeline-scroll{max-width:100%;overflow:auto;border:1px solid var(--line);border-radius:12px;max-height:650px}.ws-timeline{display:grid;grid-template-columns:52px repeat(var(--days),minmax(0,1fr));background:var(--paper)}.ws-day-head{position:sticky;top:0;z-index:6;padding:12px 5px;background:var(--paper);border-left:1px solid var(--line);border-bottom:1px solid var(--line);text-align:center}.ws-day-head button{padding:6px 8px;min-height:40px;border:0;background:none;font-size:13px;font-weight:700;color:var(--ink)}.ws-day-head>span{display:block;font-size:9px;color:var(--muted);min-height:28px}.ws-time-rail{position:relative;background:var(--paper)}.ws-time-rail>span{position:absolute;left:5px;font-size:10px;color:var(--muted);padding-top:3px}.ws-day-column{position:relative;border-left:1px solid var(--line);background:repeating-linear-gradient(135deg,var(--pink),var(--pink) 3px,var(--paper) 3px,var(--paper) 9px)}.ws-open-window{position:absolute;width:100%;background:var(--card);pointer-events:none}.ws-hour-slot{position:absolute;left:0;width:100%;height:56px;min-height:44px;border:0;border-bottom:1px solid var(--line);background:transparent;z-index:1}.ws-hour-slot:hover,.ws-hour-slot:focus-visible{background:var(--pink);outline-offset:-3px}.ws-positioned-event{position:absolute;left:3px;right:3px;z-index:3}.ws-event{display:flex;flex-direction:column;justify-content:flex-start;text-align:left;gap:3px;width:100%;height:100%;min-height:36px;padding:6px;border:1px solid var(--blush);border-left:3px solid var(--rose);border-radius:7px;color:var(--ink);background:var(--pink);overflow:hidden}.ws-event strong{font-size:10px;line-height:1.4}.ws-event>span{font-size:9px;line-height:1.4}.ws-event.is-completed{border-left-color:var(--green);opacity:.8}.ws-absence-block{position:absolute;left:0;right:0;z-index:2;background:color-mix(in srgb,var(--blush) 70%,transparent);pointer-events:none;padding:5px;overflow:hidden;color:var(--ink);font-size:10px}.ws-absence-block>span{position:sticky;top:70px}.ws-month{overflow-x:auto;max-width:100%;border:1px solid var(--line);border-radius:12px}.ws-month-labels,.ws-month-grid{display:grid;grid-template-columns:repeat(7,minmax(95px,1fr));min-width:720px}.ws-month-labels>span{padding:12px 8px;font-size:11px;text-align:center;color:var(--muted);border-bottom:1px solid var(--line)}.ws-month-day{position:relative;min-height:150px;padding:5px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--card)}.ws-month-day.is-outside{opacity:.5}.ws-month-day.is-today{background:var(--soft)}.ws-date-number{border:0;background:none;color:var(--ink);min-width:40px;min-height:40px;font-size:13px;border-radius:50%}.is-today .ws-date-number{background:var(--rose);color:var(--paper)}.ws-month-hours{display:block;font-size:8px;color:var(--muted);line-height:1.4;margin-bottom:5px}.ws-month .ws-event{height:auto;min-height:28px;margin-top:4px}.ws-month .ws-event>span{display:none}.ws-month-add{border:0;background:none;color:var(--rose);min-width:40px;min-height:40px;font-size:18px}.ws-new-customer{border:1px solid var(--line);padding:18px;border-radius:12px;margin:18px 0}.ws-new-customer legend{font-size:12px;font-weight:600;padding:0 6px}.ws-record-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center;border-top:1px solid var(--line);margin-top:22px;padding-top:20px}.ws-finance-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.ws-finance-filters .field{margin:0}.ws-finance-stats{grid-template-columns:repeat(4,minmax(0,1fr))}.ws-finance-stats .stat-value{font-size:clamp(22px,2.5vw,35px)}.ws-money-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;padding:20px 0}.ws-money-summary span{font-size:11px;color:var(--muted)}.ws-money-summary strong{display:block;margin-top:5px;font:24px Georgia,serif;color:var(--ink)}
@media(max-width:900px){.ws-finance-stats,.ws-finance-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.ws-calendar-toolbar>.hero-actions{gap:8px}.ws-calendar-toolbar input{max-width:145px}}
@media(max-width:500px){.ws-calendar-toolbar{display:block}.ws-view-switch{margin-bottom:14px}.ws-view-switch button{flex:1;padding:8px}.ws-money-summary{gap:8px}.ws-money-summary strong{font-size:21px}.ws-period-title{font-size:24px}.ws-finance-filters{gap:10px}.ws-finance-stats{gap:10px}.ws-finance-stats .stat{padding:16px}.ws-finance-stats .stat-value{font-size:24px}}
/* Media and correspondence share the same calm, responsive workspace. */
.media-filters{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:14px}.media-grid,.media-picker-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:20px}.media-card{overflow:hidden;background:var(--bg);border:1px solid var(--line);border-radius:18px}.media-thumb{display:block;width:100%;height:240px;border:0;padding:0;background:var(--surface);cursor:pointer}.media-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .25s}.media-thumb:hover img{transform:scale(1.025)}.media-card-content{padding:18px}.media-card-content h3{margin:12px 0 6px;font-size:18px;overflow-wrap:anywhere}.media-tags{display:flex;gap:6px;flex-wrap:wrap}.media-file-symbol{font:36px Georgia,serif;display:flex;align-items:center;justify-content:center;height:100%;color:var(--accent)}.media-large-image{display:block;width:100%;max-height:62vh;object-fit:contain;border-radius:12px;background:var(--bg)}.media-picker-grid{max-height:55vh;overflow:auto;margin-top:18px}.media-picker-card{display:flex;flex-direction:column;gap:6px;align-items:flex-start;border:1px solid var(--line);border-radius:12px;padding:10px;background:var(--surface);color:var(--ink);cursor:pointer;text-align:left}.media-picker-card img{width:100%;height:145px;object-fit:cover;border-radius:8px}.media-picker-card strong{max-width:100%;overflow-wrap:anywhere}.media-picker-card span{font-size:12px;color:var(--muted)}
.mail-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:22px}.mail-tabs>button{border:1px solid var(--line);background:var(--surface);color:var(--ink);padding:10px 16px;border-radius:99px;cursor:pointer}.mail-tabs>button[aria-pressed=true]{background:var(--accent);color:#fff}.mail-row{display:flex;align-items:center;gap:14px;width:100%;padding:20px 0;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--ink);text-align:left;cursor:pointer}.mail-row-text{flex:1;display:grid;gap:4px;min-width:0}.mail-row-text>strong,.mail-row-text>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mail-row-text>span{font-size:14px;color:var(--muted)}.mail-row-avatar{display:grid;place-items:center;flex:none;width:42px;height:42px;background:var(--bg);color:var(--accent);border:1px solid var(--line);border-radius:50%;font:22px Georgia,serif}.mail-row.is-unread .mail-row-avatar{background:var(--accent);color:#fff}.mail-row small{color:var(--muted);font-size:12px}.mail-template-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.mail-template{position:relative;overflow:hidden}.mail-template h2{max-width:85%}.mail-template-mark{position:absolute;right:24px;top:15px;font-size:40px;color:var(--accent);opacity:.55}.mail-template-tools{display:flex;align-items:flex-end;gap:14px;margin-bottom:20px;flex-wrap:wrap}.mail-template-tools>.field{flex:1;min-width:210px;margin:0}.mail-template-tools>button{margin-bottom:2px}.mail-toolbar{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:10px;background:var(--bg);border:1px solid var(--line);border-radius:12px 12px 0 0}.mail-toolbar>button{border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--ink);padding:8px 10px;cursor:pointer}.mail-toolbar>button[data-mail-format=bold]{font-weight:700}.mail-toolbar>button[data-mail-format=italic]{font-style:italic}.mail-toolbar>button[data-mail-format=underline]{text-decoration:underline}.mail-color{display:flex;align-items:center;gap:7px;padding:0 6px;font-size:12px}.mail-color input{width:34px;height:34px;padding:2px;border-radius:6px}.mail-rich-editor{min-height:290px;padding:24px;border:1px solid var(--line);border-top:0;border-radius:0 0 12px 12px;background:var(--surface);color:var(--ink);line-height:1.8;overflow-wrap:anywhere}.mail-rich-editor:focus{outline:2px solid var(--accent);outline-offset:2px}.mail-rich-editor p{margin:0 0 12px}.mail-rich-editor img{max-width:100%;height:auto;border-radius:8px}.mail-rich-editor blockquote{border-left:3px solid var(--line);margin:20px 0;padding:0 18px;color:var(--muted)}.mail-attachment-tools,.mail-attachments{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:18px}.mail-attachment{display:inline-flex;align-items:center;gap:8px;padding:4px 10px;border:1px solid var(--line);border-radius:9px;font-size:13px;max-width:100%;overflow-wrap:anywhere}.mail-attachment button{border:0;padding:3px 6px}.mail-send-bar{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-top:24px;padding-top:20px;border-top:1px solid var(--line)}.mail-preview-frame{display:block;width:100%;height:min(70vh,740px);border:1px solid var(--line);border-radius:12px;background:#fffaf2}.mail-preview-addresses{padding:14px 18px;background:var(--bg);border-radius:12px;margin-bottom:18px;font-size:13px;overflow-wrap:anywhere}.mail-preview-addresses p{margin:5px 0}
@media(max-width:760px){.media-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.media-filters>.field:first-child{grid-column:1/-1}.media-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.media-card-content{padding:12px}.media-thumb{height:190px}.media-card-content h3{font-size:16px}.mail-template-grid{grid-template-columns:1fr}.mail-row{flex-wrap:wrap;gap:10px}.mail-row-text{min-width:60%}.mail-row small{margin-left:52px}.mail-tabs{gap:6px}.mail-tabs>button{padding:9px 12px}.mail-rich-editor{padding:16px;min-height:260px}.mail-preview-frame{height:65vh}.mail-toolbar{gap:5px}.mail-send-bar>.hero-actions{width:100%}.mail-send-bar>.hero-actions>.btn{flex:1}.mail-template-tools{display:grid;grid-template-columns:1fr}.mail-template-tools>.field{min-width:0}}
@media(max-width:420px){.media-grid{grid-template-columns:1fr}.media-thumb{height:270px}.media-picker-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){.media-thumb img{transition:none}.media-thumb:hover img{transform:none}}
:root{--bg:var(--paper);--surface:var(--white);--accent:var(--rose);--serif:Georgia,"Times New Roman",serif}dialog:has(.mail-preview-frame){width:min(850px,calc(100vw - 30px))}dialog:has(.media-large-image){width:min(820px,calc(100vw - 30px))}
.mobile-menu-toggle,.ws-month-count{display:none}@media(max-width:680px){.sidebar .mobile-menu-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:44px;padding:10px 14px;border:1px solid var(--line);border-radius:10px;background:var(--white);color:var(--ink);font-weight:600}.mobile-menu-toggle span{flex:1;text-align:right;font-size:12px;font-weight:400;color:var(--muted)}.sidebar .side-nav{display:none}.sidebar.menu-open .side-nav{display:grid;grid-template-columns:1fr 1fr;overflow:visible;padding-top:12px}.sidebar .side-nav button{min-height:44px;white-space:normal;text-align:left}.page-heading{flex-direction:column;align-items:stretch;gap:16px}.page-heading>.btn{align-self:flex-start;white-space:nowrap}.page-heading>.hero-actions{flex-wrap:wrap}.ws-month-hours,.ws-month-day .ws-event,.ws-month-add{display:none}.ws-month-count{display:block;font-size:10px;color:var(--rose);text-align:center;white-space:nowrap}.ws-date-number{min-height:38px;width:100%;text-align:center}.ws-month-day{min-height:86px;padding:3px}.ws-month-grid{gap:3px}}

.contact-email{font-weight:600;color:var(--ink);overflow-wrap:anywhere}.contact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:680px){.contact-grid{grid-template-columns:1fr}}
@media(max-width:680px){.ws-month-labels,.ws-month-grid{grid-template-columns:repeat(7,minmax(0,1fr));min-width:0}.ws-month-labels>span{padding:10px 0;font-size:10px}.ws-month-day{min-width:0;min-height:66px;padding:1px}.ws-date-number{min-width:0;min-height:44px;font-size:12px}.ws-month-count{font-size:9px}.ws-month{overflow:visible}}

.service-pedicure{width:72px;height:72px;object-fit:cover;border-radius:50%;border:3px solid var(--pink);flex-shrink:0}.wax-drawing{stroke-linecap:round;stroke-linejoin:round}.wax-fill{fill:var(--pink)}.wax-drop{stroke-width:2}

/* Les illustrations font partie du décor, sans cadre ni ombre de vignette. */
.services-intro{position:relative;padding:28px 0 18px;isolation:isolate}.services-intro:before{content:"";position:absolute;inset:-30px -20px -15px 25%;z-index:-1;background:radial-gradient(ellipse at 76% 56%,var(--pink),transparent 68%);opacity:.7;pointer-events:none}.services-illustration{filter:none;align-self:flex-end;mask-image:radial-gradient(ellipse at 54% 55%,#000 48%,transparent 78%)}.catalogue-intro{position:relative;isolation:isolate}.catalogue-intro:before{content:"";position:absolute;inset:0 -15px -20px 35%;z-index:-1;background:radial-gradient(ellipse,var(--pink),transparent 70%);opacity:.65;pointer-events:none}.catalogue-intro>img{mask-image:radial-gradient(ellipse at 52% 55%,#000 48%,transparent 78%)}.service-foot-art{display:block;position:relative;overflow:hidden;width:76px;height:80px;flex-shrink:0;mask-image:radial-gradient(ellipse,#000 48%,transparent 75%)}.service-foot-art img{position:absolute;width:154px!important;max-width:none;height:auto;right:-7px;top:-4px}.service-illustrated>.service-foot-art{margin-bottom:20px}.wax-drawing{background:radial-gradient(ellipse,var(--pink),transparent 74%)}
@media(max-width:680px){.services-intro:before{inset:8% -15px -10px 0}.services-intro{padding-top:12px}.services-illustration{align-self:center}.catalogue-intro:before{inset:20% -10px -20px 0}}

.portrait-art{position:relative;isolation:isolate;overflow:visible!important;border-radius:28px;box-shadow:0 24px 65px #24150f30,0 5px 15px #24150f18;transform:rotate(-1deg);transition:transform .45s ease,box-shadow .45s ease}.portrait-art:before{content:"";position:absolute;inset:12px -12px -12px 12px;border:1px solid var(--blush);border-radius:28px;z-index:-1;pointer-events:none}.portrait-art:after{content:"";position:absolute;inset:-28px -25px;z-index:-2;background:radial-gradient(ellipse,var(--pink),transparent 68%);opacity:.7;pointer-events:none}.hero-portrait{border-radius:28px}.portrait-art:hover{transform:rotate(0) translateY(-4px);box-shadow:0 30px 75px #24150f38,0 8px 20px #24150f18}@media(max-width:680px){.portrait-art{transform:none}.portrait-art:before{inset:8px -7px -8px 7px}.portrait-art:hover{transform:none}}@media(prefers-reduced-motion:reduce){.portrait-art,.portrait-art:hover{transform:none;transition:none}}

.service-category{display:block;color:var(--rose);font-size:10px;margin-bottom:22px}.service-illustrated{display:flex;flex-direction:column}.service-illustrated>p{flex:1}.service-illustrated .service-footer{margin-top:24px}.price-card-title{gap:0}
.gallery-track{padding-top:12px;padding-bottom:26px}.gallery-photo{transition:transform .35s var(--motion-ease),box-shadow .35s var(--motion-ease),border-color .35s}.gallery-photo img{transition:transform .6s var(--motion-ease),filter .35s}.gallery-photo:focus-visible{outline:2px solid var(--rose);outline-offset:4px;box-shadow:0 12px 32px #24150f26}@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.gallery-photo:hover{transform:translateY(-7px);border-color:var(--rose);box-shadow:0 18px 40px #24150f30}.gallery-photo:hover img{transform:scale(1.035);filter:brightness(1.055) saturate(1.025)}}@media(hover:none){.gallery-photo:active{border-color:var(--rose);box-shadow:0 5px 20px #24150f22}}@media(prefers-reduced-motion:reduce){.gallery-photo,.gallery-photo img{transition:none;transform:none!important}}
.admin-search-bar{margin:0 0 24px}.admin-search-bar>button{display:flex;align-items:center;gap:12px;width:100%;padding:13px 18px;min-height:46px;border:1px solid var(--line);border-radius:12px;background:var(--white);color:var(--muted);text-align:left;font-size:14px;cursor:pointer}.admin-search-bar>button span{flex:1}.admin-search-bar kbd{font:11px system-ui;border:1px solid var(--line);padding:3px 6px;border-radius:5px}.organizer-search-result{display:flex;align-items:center;gap:14px;width:100%;padding:16px 0;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--ink);text-align:left;cursor:pointer}.organizer-search-result>span:nth-child(2){flex:1;min-width:0;overflow-wrap:anywhere}.organizer-search-result small{display:block;color:var(--muted);margin-top:5px}.organizer-search-result:hover{background:var(--pink)}.organizer-check{padding:10px 0}.organizer-waitlist>summary,.organizer-reminders>summary,details.panel>summary{cursor:pointer;font:23px Georgia,serif;padding:6px 0;color:var(--ink)}.organizer-waitlist>summary .pill,.organizer-reminders>summary .pill{margin-left:12px;vertical-align:middle}.organizer-wait-row{display:flex;gap:20px;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:20px 0}.organizer-wait-row .hero-actions{flex-shrink:0}.organizer-slots,.media-favorites{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}.organizer-preferences{border:1px solid var(--line);border-radius:12px;padding:14px;margin:14px 0}.organizer-preferences>summary{cursor:pointer;font-size:14px;font-weight:600}.organizer-client-prefs{margin:14px 0 0}.organizer-client-prefs>div{display:flex;gap:14px;margin-top:8px;font-size:13px}.organizer-client-prefs dt{min-width:65px;color:var(--muted)}.organizer-client-prefs dd{margin:0;overflow-wrap:anywhere}.organizer-category-list{max-height:34vh;overflow:auto}.organizer-category-list .summary-line{gap:16px}.organizer-category-list strong{overflow-wrap:anywhere}
@media(max-width:680px){.admin-search-bar{margin-top:8px;margin-bottom:24px}.admin-search-bar kbd{display:none}.admin-search-bar>button{font-size:13px;padding:12px}.organizer-wait-row{display:block}.organizer-wait-row .hero-actions{margin-top:14px;flex-wrap:wrap}.organizer-search-result{gap:9px;flex-wrap:wrap}.organizer-search-result>span:nth-child(2){min-width:60%}.organizer-preferences .form-grid{grid-template-columns:1fr}.ws-shortcuts .btn{white-space:normal}}

.admin-search-bar{display:flex;gap:10px}.admin-search-bar>button:first-child{flex:1;min-width:0}.admin-search-bar .calculator-launch{flex:none;width:48px;justify-content:center;padding:5px;position:relative;font:23px Georgia,serif;color:var(--rose);background:var(--pink);transition:transform .2s,box-shadow .2s}.calculator-launch span{font-size:15px;align-self:flex-end}.calculator-launch:hover{transform:translateY(-2px);box-shadow:0 6px 16px #a34f3920}.calculator{max-width:340px;margin:auto}.calculator-history{min-height:24px;text-align:right;font-size:14px;color:var(--muted)}#calculator-display{display:block;text-align:right;font:40px/1.5 Georgia,serif;overflow-wrap:anywhere;padding:12px 8px 20px}.calculator-keys{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.calculator-keys button{min-height:54px;border:1px solid var(--line);border-radius:12px;background:var(--white);color:var(--ink);font-size:22px;cursor:pointer}.calculator-keys .calculator-operation{background:var(--pink);color:var(--rose)}.calculator-keys button[data-calc="="]{background:var(--rose);color:var(--paper)}.mail-pencil-menu{position:relative}.mail-pencil-menu summary{cursor:pointer;padding:8px 12px;font-size:13px;list-style:none;border:1px solid var(--line);border-radius:7px;background:var(--surface)}.mail-pencils{position:absolute;z-index:15;top:42px;left:0;display:grid;grid-template-columns:repeat(6,32px);gap:9px;padding:16px;background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);width:max-content}.mail-pencils button{width:32px;height:68px;border:0;background:transparent;padding:3px;cursor:pointer}.mail-pencils button span{display:block;width:22px;height:60px;background:linear-gradient(90deg,#fff3,transparent 40%,#0002),linear-gradient(to top,var(--pencil) 0 72%,#e2bc8d 72% 90%,var(--pencil) 90%);clip-path:polygon(0 100%,0 30%,50% 0,100% 30%,100% 100%);border-radius:0 0 3px 3px;transition:transform .2s}.mail-pencils button:hover span,.mail-pencils button:focus-visible span{transform:translateY(-5px)}.mail-device-previews{display:flex;gap:16px;overflow:auto;margin-bottom:20px}.mail-device-previews figure{margin:0;flex:0 0 180px}.mail-device-previews img{width:100%;height:180px;object-fit:contain;border-radius:12px;background:var(--pink)}.mail-device-previews figcaption{font-size:12px;overflow-wrap:anywhere}
@media(prefers-reduced-motion:reduce){.calculator-launch,.mail-pencils button span{transition:none}}
.client-table-identity,.client-profile-photo{display:flex;align-items:center;gap:16px}.client-avatar{display:block;object-fit:cover;border-radius:50%;flex-shrink:0}.client-avatar.large{width:80px;height:80px}.client-photos{padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:24px}.client-realizations{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.client-realizations article{min-width:0;border:1px solid var(--line);padding:12px;border-radius:12px}.client-realizations img{width:100%;height:180px;object-fit:cover;border-radius:8px;margin-bottom:12px}.client-recent-photos{display:flex;gap:10px;margin-top:15px;overflow:auto}.client-recent-photos a{display:block;flex:0 0 90px;font-size:10px;color:var(--muted)}.client-recent-photos img{width:90px;height:100px;object-fit:cover;border-radius:8px}.client-note-editor{min-height:240px;max-height:480px;overflow:auto;padding:18px;line-height:1.75;border:1px solid var(--line);border-radius:0 0 12px 12px;background:var(--white);color:var(--ink);overflow-wrap:anywhere}.client-note-editor:focus{outline:2px solid var(--rose);outline-offset:2px}.client-note-editor ul,.client-note-editor ol{padding-left:24px}@media(max-width:420px){.client-realizations{grid-template-columns:1fr}.client-profile-photo{align-items:flex-start}.client-note-editor{min-height:220px}}

.ws-finance-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.ws-service-row{display:flex;align-items:flex-end;gap:10px}.ws-service-row>.field{flex:1;min-width:0}.ws-service-row>.btn{margin-bottom:22px}.ws-finance-filters{margin-top:18px}.ws-money-summary small{font-size:11px;color:var(--muted)}@media(max-width:680px){.ws-finance-stats{grid-template-columns:1fr}.ws-service-row{display:block}.ws-service-row>.btn{margin-top:-10px;margin-bottom:16px}.ws-view-switch{flex-wrap:wrap}.ws-money-summary{gap:12px}}

.calculator [data-calculator-display]{display:block;text-align:right;font:40px/1.5 Georgia,serif;overflow-wrap:anywhere;padding:12px 8px 20px}.dashboard-calculator h2{font-size:28px}.dashboard-calculator .calculator{margin-top:16px}.side-bottom>.pwa-install{position:static;display:block;width:100%;margin-top:20px;box-shadow:none;font-size:12px}.side-bottom>.pwa-install[hidden]{display:none}.client-avatar.avatar{display:grid;place-items:center}@media(max-width:680px){.sidebar.menu-open .side-bottom{display:block;padding:14px 4px 0}.sidebar.menu-open .side-bottom>p{display:none}.sidebar.menu-open .side-bottom .owner{margin-top:0}.side-bottom>.pwa-install{max-width:280px;margin-top:12px}}
.conditions-grid{align-items:start;column-gap:38px;row-gap:32px;margin:26px 0}.conditions-grid>p{margin:0;min-width:0;line-height:1.8;overflow-wrap:anywhere}.conditions-grid strong{display:block;line-height:1.4;margin-bottom:10px}.price-conditions>.hint{clear:both;margin-top:26px;margin-bottom:20px;line-height:1.8}.price-conditions>.btn{margin-top:4px}@media(max-width:680px){.conditions-grid{grid-template-columns:1fr;row-gap:25px;margin:22px 0}.conditions-grid strong{margin-bottom:8px}}

.image-viewer-dialog{width:min(96vw,1100px);max-width:1100px}.image-zoom-controls{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;margin-bottom:16px}.image-zoom-controls .icon-btn{min-width:44px;min-height:44px;font-size:23px}.image-zoom-controls output{min-width:65px;text-align:center;font-size:14px}.image-zoom-stage{overflow:auto;max-height:65vh;width:100%;background:var(--paper);border-radius:12px;touch-action:none;overscroll-behavior:contain}.image-zoom-stage img{display:block;max-width:none;max-height:none;margin:auto;object-fit:contain;user-select:none;-webkit-user-drag:none}.image-zoom-stage.is-zoomed{cursor:grab}.image-zoom-stage.is-zoomed:active{cursor:grabbing}.image-viewer>.hint{margin-top:14px;font-size:12px}.confirmation-dialog{max-width:540px}.confirmation-dialog .dialog-head h2{font-size:28px}.confirmation-dialog>p{line-height:1.7;margin-bottom:16px}

.theme-menu{position:fixed;z-index:1000;width:230px;padding:8px;border:1px solid var(--line);border-radius:14px;background:var(--white);box-shadow:var(--shadow)}.theme-menu button{display:flex;align-items:center;gap:12px;width:100%;min-height:44px;border:0;border-radius:8px;padding:10px 12px;background:transparent;color:var(--ink);text-align:left;cursor:pointer}.theme-menu button>span:nth-child(2){flex:1}.theme-menu button[aria-checked=true],.theme-menu button:hover{background:var(--pink);color:var(--rose)}html[data-theme="signature"]{--paper:#211721;--white:#2e222e;--card:#2e222e;--ink:#fff4e5;--muted:#d3bdc9;--rose:#ef9bad;--rose-dark:#ffd2c5;--pink:#472b3b;--blush:#af865b;--line:#624252;--soft:#332b31;--green:#b5d3b5;--focus:#e8c879;--shadow:0 18px 50px #07030755}html[data-theme="signature"] body{background:radial-gradient(ellipse at 95% 0,#5d324329,transparent 55%),var(--paper)}html[data-theme="signature"] .sidebar{background:#2a1e2b}html[data-theme="signature"] .topbar{background:#211721f5}html[data-theme="signature"] .price-row dd,html[data-theme="signature"] .stat-value,html[data-theme="signature"] .calculator-operation{color:#ebc879}html[data-theme="signature"] .service-category,html[data-theme="signature"] .eyebrow{color:#e6bc83}html[data-theme="signature"] .btn:not(.secondary):not(.text){background:linear-gradient(120deg,#ec9ba8,#e8bd86);color:#291821;border-color:#d3998d}html[data-theme="signature"] .services-watermark{opacity:.09}html[data-theme="signature"] .app-main{background:radial-gradient(ellipse at 100% 0,#5b31412e,transparent 65%)}

/* Brush hotspot is the varnish tip, exactly where the trail begins. */
.pointer-aura{display:none!important}.varnish-trail{position:fixed;inset:0;z-index:90;pointer-events:none;display:none}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 #public-view,#public-view *,body:has(#public-view) dialog,body:has(#public-view) dialog *{cursor:url('/icons/applicateur-vernis-fin.png?v=stable1') 3 3,crosshair!important}
 #public-view input,#public-view textarea,#public-view [contenteditable],body:has(#public-view) dialog input,body:has(#public-view) dialog textarea{cursor:text!important}
 .varnish-trail{display:block}
 .hero-radiance::before,.hero-radiance::after{position:absolute;pointer-events:none;color:#f2cb78;font-style:normal;line-height:1;text-shadow:0 0 12px #edbd78aa;animation:rayonne-spark 3.5s ease-in-out infinite}
 .hero-radiance::before{content:"☀";font-size:.38em;right:-.5em;top:-.28em}
 .hero-radiance::after{content:"☀";font-size:.22em;left:-.55em;bottom:.35em;animation-delay:.65s}
}
@keyframes rayonne-arrival{from{opacity:.65;transform:translateY(10px)}to{opacity:1;transform:none}}
@keyframes rayonne-spark{0%,100%{opacity:.35;transform:scale(.8) rotate(-12deg)}45%,60%{opacity:1;transform:scale(1.2) rotate(12deg)}}

/* Calculator stays behind the compact toolbar button; agenda takes the full width. */
.overview-agenda{display:block}.calculator{max-width:290px}.calculator-keys{gap:7px;direction:ltr}.calculator-keys button{height:44px;min-height:44px;padding:0;transition:background-color .12s,box-shadow .12s,transform .12s}.calculator [data-calculator-display]{font-size:32px;padding:4px 6px 12px}.calculator-history{min-height:18px}.calculator-keys button:active,.calculator-keys button.calc-clicked{background:#ebc879!important;color:#382d25!important;box-shadow:inset 0 3px 7px #382d2540,0 0 0 3px #ebc87955;transform:scale(.93)}
.btn:active,.icon-btn:active,.admin-search-bar>button:active{filter:brightness(1.15);box-shadow:inset 0 2px 6px #0003;transform:translateY(1px)}
@media(prefers-reduced-motion:reduce){.calculator-keys button{transition:none}.calculator-keys button:active,.calculator-keys button.calc-clicked{transform:none}}

.client-select-row{cursor:pointer}.client-select-row td{transition:background-color .15s}.client-select-row:hover td,.client-select-row:focus-visible td{background:var(--pink)}.client-select-row:focus-visible{outline:2px solid var(--rose);outline-offset:-2px}.client-select-row:active td{background:var(--blush)}

#modal:has(.calculator){width:350px;max-width:calc(100vw - 28px);padding:20px}#modal:has(.calculator) .dialog-head{margin-bottom:12px}#modal:has(.calculator) .dialog-head h2{font-size:24px}.calculator .hero-actions{margin-top:14px}.calculator [data-calculator-error]:empty{display:none}

.media-dropzone{border:2px dashed var(--line);border-radius:16px;padding:24px;text-align:center;background:var(--paper);transition:background-color .15s,border-color .15s,box-shadow .15s}.media-dropzone>strong{display:block;font-size:17px}.media-drop-symbol{display:block;font-size:28px;color:var(--rose)}.media-dropzone.is-dragover{border-color:var(--rose);background:var(--pink);box-shadow:inset 0 0 0 3px var(--blush)}.media-selected-files{list-style:none;padding:0;margin:16px 0 0;text-align:left}.media-selected-files:empty{display:none}.media-selected-files li{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-top:1px solid var(--line)}.media-selected-files li span{overflow-wrap:anywhere;min-width:0}.media-selected-files small{white-space:nowrap;color:var(--muted)}.media-dropzone [hidden]{display:none!important}@media(max-width:680px){.media-dropzone{padding:18px 12px}}

.admin-search-bar .calculator-launch{background:linear-gradient(145deg,var(--pink),var(--paper));border-color:var(--line);box-shadow:inset 0 1px 1px #ffffff22,0 2px 0 #00000018}.calculator-launch svg{display:block;filter:drop-shadow(0 2px 1px #0002);flex-shrink:0}.calculator-launch:active svg{transform:translateY(1px);filter:none}
@media(prefers-reduced-motion:no-preference){
 html[data-theme="light"] .hero-radiance::before,html[data-theme="light"] .hero-radiance::after{color:#a86a13;text-shadow:0 0 9px #d79a3b99}
}

/* Full silhouette: preserve the hand and nails, without the old photo frame. */
.hero-art.portrait-art{min-height:0;max-height:none;background:radial-gradient(ellipse at 50% 58%,#d6a3571c,transparent 68%);border:0;border-radius:0;box-shadow:none;transform:none;overflow:visible!important;padding:0 14px}
.hero-art.portrait-art::before,.hero-art.portrait-art::after{display:none}
.hero-art.portrait-art:hover{transform:none;box-shadow:none}
.hero-art.portrait-art .hero-portrait{position:relative;inset:auto;display:block;width:100%;height:auto;max-height:650px;object-fit:contain;object-position:center bottom;border-radius:0;filter:drop-shadow(0 18px 26px #24150f22)}
@media(max-width:680px){.hero-art.portrait-art{max-width:380px;margin:0 auto;width:100%;padding:0 12px}.hero-art.portrait-art .hero-portrait{max-height:none;width:100%;height:auto}}

/* Bring the introduction closer to the header, with breathing room for descenders. */
.hero{padding-top:24px;padding-bottom:52px;align-items:center}
.hero-radiance{padding:.05em .1em .2em .04em;margin:-.05em -.1em -.2em -.04em;line-height:1.22;overflow:visible}
.portrait-scene{position:relative;isolation:isolate;width:100%;line-height:0}
.portrait-rest{position:absolute!important;inset:0;z-index:0;width:100%;height:100%;pointer-events:none;filter:drop-shadow(-3px 7px 9px #24150f12)}
.hero-art.portrait-art .hero-portrait{z-index:1}
@media(max-width:680px){.hero{padding-top:22px;padding-bottom:32px}}
.hero{align-items:start}.hero-copy{padding-top:20px}@media(max-width:1050px){.hero-copy{padding-top:12px}}@media(max-width:680px){.hero-copy{padding-top:0}}

/* Touch-friendly galleries: themed feedback instead of the browser's blue tap box. */
.gallery-photo{-webkit-appearance:none;appearance:none;-webkit-tap-highlight-color:transparent}
.gallery-photo:focus:not(:focus-visible){outline:none}
@media(hover:none),(pointer:coarse){
 .gallery-photo{box-shadow:0 5px 16px #24150f12;transition:box-shadow .18s,border-color .18s}
 .gallery-photo img{transition:transform .22s ease,filter .22s ease}
 .gallery-photo:active,.gallery-photo.is-touched{border-color:var(--rose);box-shadow:0 0 0 2px var(--rose),0 10px 24px #24150f24}
 .gallery-photo:active img,.gallery-photo.is-touched img{transform:scale(1.025);filter:brightness(1.065) saturate(1.04)}
 .gallery-controls .icon-btn{-webkit-appearance:none;appearance:none;-webkit-tap-highlight-color:transparent}
}
@media(max-width:680px){
 .services-intro{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;padding:12px 0 18px}
 .services-intro>div{min-width:0}
 .services-intro .services-illustration{position:static;inset:auto;width:min(240px,75%);max-height:160px;height:auto;margin:0;justify-self:end;align-self:auto}
 .services-intro p{margin-bottom:0}
}
@media(prefers-reduced-motion:reduce){.gallery-photo:active img,.gallery-photo.is-touched img{transform:none!important}.gallery-photo,.gallery-photo img{transition:none!important}}

/* Stable mobile navigation: the dropdown does not alter page layout or scroll anchoring. */
.mobile-menu-panel{display:contents}
.form-grid,.field,.client-realizations,.client-realizations article,dialog form{min-width:0;max-width:100%}
input,select,textarea{min-width:0;max-width:100%;box-sizing:border-box}
input[type="date"],input[type="time"],input[type="datetime-local"]{display:block;min-inline-size:0;max-inline-size:100%;width:100%;font-variant-numeric:lining-nums tabular-nums}
input::-webkit-datetime-edit{min-width:0;padding:0}input::-webkit-date-and-time-value{min-width:0;text-align:left}
.calculator,.calculator button,.calculator output,.calculator [data-calculator-display],.calculator-history{font-family:Arial,Helvetica,sans-serif;font-variant-numeric:lining-nums tabular-nums;font-feature-settings:"lnum" 1,"tnum" 1}
@media(max-width:680px){
 .sidebar{position:sticky;top:0;z-index:45;align-self:start;overflow:visible;padding-bottom:12px;background:var(--paper)}
 .sidebar .mobile-menu-panel{display:none;position:absolute;top:100%;left:0;right:0;max-height:calc(100dvh - 80px);overflow:auto;overscroll-behavior:contain;padding:0 16px 18px;background:var(--paper);border-bottom:1px solid var(--line);box-shadow:0 14px 25px #24150f22}
 .sidebar.menu-open .mobile-menu-panel{display:block}
 .sidebar.menu-open .side-nav{padding-top:8px}
 .form-grid{grid-template-columns:minmax(0,1fr)}
 input[type="date"],input[type="time"],input[type="datetime-local"]{font-size:16px;line-height:1.4}
 .client-realizations{grid-template-columns:minmax(0,1fr)}
 .client-profile-photo{flex-wrap:wrap}
}
.stats .stat{display:flex;flex-direction:column;min-width:0}.stats .stat-label{min-height:2.8em;line-height:1.4}.stats .stat-value{margin-top:auto;padding-top:10px;line-height:1.2;font-family:Arial,Helvetica,sans-serif;font-variant-numeric:lining-nums tabular-nums;font-feature-settings:"lnum" 1,"tnum" 1}
@media(max-width:680px){.stats .stat-value{font-size:clamp(16px,4.5vw,24px)}}
.pwa-install-steps{margin:18px 0}.pwa-install-steps h3{font-size:18px;margin:0 0 12px}.pwa-install-steps ol{padding-left:22px}.pwa-install-steps li{margin:8px 0;line-height:1.65}

.gallery-track{-webkit-tap-highlight-color:transparent}.gallery-track:focus{outline:none}.gallery-track:focus-visible{outline:2px solid var(--rose);outline-offset:4px;border-radius:16px}

@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 html:is([data-theme="dark"],[data-theme="signature"]) #public-view,html:is([data-theme="dark"],[data-theme="signature"]) #public-view *,html:is([data-theme="dark"],[data-theme="signature"]) body:has(#public-view) dialog,html:is([data-theme="dark"],[data-theme="signature"]) body:has(#public-view) dialog *{cursor:url('/icons/applicateur-vernis-fin-sombre.png?v=stable1') 3 3,crosshair!important}
 html:is([data-theme="dark"],[data-theme="signature"]) #public-view input,html:is([data-theme="dark"],[data-theme="signature"]) #public-view textarea,html:is([data-theme="dark"],[data-theme="signature"]) #public-view [contenteditable]{cursor:text!important}
}

/* A slightly clearer brand watermark; card motion stays restrained. */
.services-watermark{opacity:.095}
html:is([data-theme="dark"],[data-theme="signature"]) .services-watermark{opacity:.13}
html[data-theme="signature"] .services-watermark{opacity:.14}
@media(prefers-reduced-motion:no-preference){
 .service-illustrated,.contact-card{transition:opacity .6s var(--motion-ease),transform .45s var(--motion-ease),box-shadow .35s ease,border-color .25s ease}
}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 .service-illustrated:not(.reveal-pending):hover,.contact-card:not(.reveal-pending):hover{transform:translateY(-5px);box-shadow:0 14px 30px #24150f1c;border-color:var(--rose)}
}
@media(hover:none),(pointer:coarse){
 .service-illustrated:active,.contact-card:active{border-color:var(--rose);box-shadow:0 4px 14px #24150f20}
}
@media(hover:none) and (prefers-reduced-motion:no-preference){.service-illustrated:not(.reveal-pending):active,.contact-card:not(.reveal-pending):active{transform:scale(.99)}}
@media(prefers-reduced-motion:reduce){.service-illustrated,.contact-card{transition:none;transform:none}}

/* Juliette — palette des planches originales, sur la structure du thème Clair. */
html[data-theme="juliette"]{--paper:#fff7e6;--white:#fffaf0;--card:#fff4dc;--ink:#29251f;--muted:#6c5746;--rose:#a63f3b;--rose-dark:#84312d;--pink:#f9e7c7;--blush:#e4ae8a;--line:#dfc38d;--soft:#f0efd8;--green:#366554;--focus:#9d4c19;--shadow:0 16px 46px #a8682a15;--juliette-coral:#ff6b6b;--juliette-sun:#ffb703;--juliette-board:linear-gradient(125deg,#ff6b6b 0%,#e4ae8a 34%,#e2c09a 60%,#e9eaca 100%);--varnish-pigment:255,107,107;--varnish-sheen:255,183,3}
html[data-theme="juliette"] body{background:radial-gradient(ellipse at 98% 3%,#e9eaca70,transparent 44%),var(--paper)}
html[data-theme="juliette"] .topbar{background:#fff7e6f5}
html[data-theme="juliette"] :is(.panel,.stat,.booking-card,.login-card,.theme-menu,.sidebar,dialog){background:var(--white)}
html[data-theme="juliette"] :is(input,select,textarea,.icon-btn,.day,.slot){background:#fffdf7;border-color:var(--line)}
html[data-theme="juliette"] :is(.contact-section,.catalogue-callout,.price-conditions,.inspiration){background:var(--juliette-board);border-color:#e1b75d}
html[data-theme="juliette"] :is(.contact-section,.catalogue-callout,.price-conditions,.inspiration) :is(p,.muted,.small){color:#423024}
html[data-theme="juliette"] :is(.service,.price-card,.contact-card){background:#fff4dceF;border-color:#e9bc56;box-shadow:0 7px 26px #af693b0a}
html[data-theme="juliette"] .services-intro:before{background:radial-gradient(ellipse at 76% 56%,#ffb7034a,transparent 68%)}
html[data-theme="juliette"] .btn:not(.secondary):not(.text):not(.light){background:#ff6b6b;color:#29251f;border-color:#d65555}
html[data-theme="juliette"] .btn:not(.secondary):not(.text):not(.light):hover{background:#ff8b7b;box-shadow:0 5px 18px #e4ae8a55}
html[data-theme="juliette"] .btn.secondary{border-color:#b98b43;background:#fffaf066}
html[data-theme="juliette"] .btn.secondary:hover{background:#f9e7c7}
html[data-theme="juliette"] .side-nav button.active{background:#f9e7c7;color:#84312d;box-shadow:inset 3px 0 #ff6b6b}
html[data-theme="juliette"] .theme-menu button[aria-checked=true]{background:#f9e7c7;color:#84312d}
html[data-theme="juliette"] .nail:nth-child(1){background:#e4ae8a}html[data-theme="juliette"] .nail:nth-child(2){background:#ff6b6b}html[data-theme="juliette"] .nail:nth-child(3){background:#e9eaca}html[data-theme="juliette"] .nail:nth-child(4){background:linear-gradient(135deg,#fff0ce 48%,#ffb703 49%,#ffb703 53%,#fff0ce 54%)}
html[data-theme="juliette"] :is(button,a,input,select,textarea):focus-visible{outline-color:var(--focus)}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 html[data-theme="juliette"] #public-view,html[data-theme="juliette"] #public-view *,html[data-theme="juliette"] body:has(#public-view) dialog,html[data-theme="juliette"] body:has(#public-view) dialog *{cursor:url('/icons/applicateur-vernis-juliette.png?v=stable1') 3 3,crosshair!important}
 html[data-theme="juliette"] #public-view :is(input,textarea,[contenteditable]),html[data-theme="juliette"] body:has(#public-view) dialog :is(input,textarea){cursor:text!important}
}
/* De vrais petits soleils, visibles aussi au toucher ; le texte reste lisible. */
.hero-radiance{display:inline-block;position:relative}
.hero-radiance::before,.hero-radiance::after{content:"☀";position:absolute;pointer-events:none;font-style:normal;line-height:1;color:#b87514;text-shadow:0 0 12px #ffb70380}
.hero-radiance::before{font-size:.34em;right:-.44em;top:-.26em}
.hero-radiance::after{font-size:.2em;left:-.4em;bottom:.35em}
.rayonne-word{display:inline-block;position:relative;isolation:isolate}
html:is([data-theme="dark"],[data-theme="signature"]) .hero-radiance::before,html:is([data-theme="dark"],[data-theme="signature"]) .hero-radiance::after{color:#f5c65d}
@media(prefers-reduced-motion:reduce){.hero-radiance,.hero-radiance::before,.hero-radiance::after,.rayonne-word::before{animation:none!important}}
@media print{html[data-theme="juliette"]{--paper:white;--card:white;--white:white;--ink:#222;--muted:#555;--line:#ddd}html[data-theme="juliette"] body{background:white}}
.goal-totals{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin:18px 0 10px;font-variant-numeric:lining-nums tabular-nums}.goal-totals strong{font-size:22px}.goal-progress{display:block;width:100%;height:14px;appearance:none;border:0;border-radius:20px;overflow:hidden;background:var(--pink)}.goal-progress::-webkit-progress-bar{background:var(--pink);border-radius:20px}.goal-progress::-webkit-progress-value{background:linear-gradient(90deg,#ff6b6b,#ffb703);border-radius:20px}.goal-progress::-moz-progress-bar{background:linear-gradient(90deg,#ff6b6b,#ffb703);border-radius:20px}
@media(max-width:480px){.finance-goal .panel-head{align-items:flex-start;flex-wrap:wrap}.goal-totals strong{font-size:19px}}
.phone-steps{padding-left:22px}.phone-steps li{margin:12px 0}.phone-credentials{display:grid;grid-template-columns:110px minmax(0,1fr);gap:10px;margin:20px 0;padding:18px;background:var(--pink);border-radius:12px}.phone-credentials dt{font-weight:600}.phone-credentials dd{margin:0;overflow-wrap:anywhere}.phone-secret{font-family:monospace;user-select:all}.rib-preview{display:block;width:100%;height:min(58vh,600px);object-fit:contain;border:1px solid var(--line);border-radius:12px;background:white}.finance-goal .panel-head h2{margin-top:6px}
@media(max-width:480px){.phone-credentials{grid-template-columns:1fr;gap:4px}.phone-credentials dd{margin-bottom:12px}}
.pdf-preview{overflow:auto;background:var(--soft);padding:10px;max-width:100%;overscroll-behavior:contain}.pdf-tools{display:flex;align-items:center;gap:8px;position:sticky;top:0;z-index:1;background:var(--white);border:1px solid var(--line);border-radius:10px;padding:6px;margin-bottom:12px;min-width:240px}.pdf-tools>span{margin-right:auto;font-size:12px;white-space:nowrap}.pdf-tools .icon-btn{min-width:40px;width:40px;height:40px;flex-shrink:0}.pdf-pages{width:calc(var(--pdf-zoom,1)*100%)}.pdf-pages canvas{display:block;width:100%;height:auto;margin:0 auto 14px;background:white;box-shadow:0 2px 12px #0002}
@media(prefers-reduced-motion:no-preference){.hero-radiance::before,.hero-radiance::after{animation-name:soleil-scintille}}
@keyframes soleil-scintille{0%,100%{opacity:.72;transform:scale(.95) rotate(-8deg)}50%{opacity:1;transform:scale(1.1) rotate(8deg)}}

/* A passing light emission: no permanent coloured cloud behind the word. */
html .hero-copy h1 .hero-radiance{position:relative;display:inline-block;background:none;-webkit-text-fill-color:currentColor;color:var(--rose);text-shadow:none;animation:none}
.rayonne-word{position:relative;display:inline-block;isolation:isolate;color:var(--rose);text-shadow:none}
.rayonne-word::before{content:"";position:absolute;z-index:-1;pointer-events:none;inset:-.32em -.13em -.22em;border-radius:50%;background:radial-gradient(ellipse at 50% 56%,#fffef5 0%,#fff9e0b3 13%,#fff0ca47 34%,#ffe4a80d 51%,transparent 70%);filter:blur(8px);opacity:0;transform:scale(.12,.3);transform-origin:50% 56%}
.rayonne-word::after{content:none}
.rayonne-light{position:absolute;inset:0;pointer-events:none;user-select:none;font:inherit;line-height:inherit;letter-spacing:inherit;color:#fff9e8;-webkit-text-fill-color:#fff9e8;text-shadow:0 0 .06em #fffdf5,0 0 .18em #fff1c4b3,0 0 .38em #ffe4a34d;opacity:0;clip-path:ellipse(0% 72% at 50% 56%)}
html:is([data-theme="dark"],[data-theme="signature"]) .rayonne-word::before{background:radial-gradient(ellipse at 50% 56%,#fffdf0b3 0%,#fff5d166 14%,#ffe5a326 34%,#ffcb6608 51%,transparent 70%)}
@media(prefers-reduced-motion:no-preference){.rayonne-word::before{animation:rayonne-light-unfold 14.4s cubic-bezier(.2,.55,.3,1) .15s infinite}.rayonne-light{animation:rayonne-letter-emission 14.4s ease-out .15s infinite}}
@keyframes rayonne-light-unfold{0%,4%{opacity:0;transform:scale(.1,.25)}20%{opacity:.65;transform:scale(.4,.7)}38%{opacity:1;transform:scale(.95,1.1)}55%{opacity:1;transform:scale(1.15,1.3)}82%,100%{opacity:0;transform:scale(1.35,1.5)}}
@keyframes rayonne-letter-emission{0%,4%{opacity:0;clip-path:ellipse(0% 72% at 50% 56%)}20%{opacity:.38;clip-path:ellipse(20% 72% at 50% 56%)}38%{opacity:.64;clip-path:ellipse(52% 82% at 50% 56%)}55%{opacity:.6;clip-path:ellipse(72% 88% at 50% 56%)}75%{opacity:.18;clip-path:ellipse(82% 90% at 50% 56%)}88%,100%{opacity:0;clip-path:ellipse(82% 90% at 50% 56%)}}
@media(prefers-reduced-motion:reduce){.rayonne-word::before,.rayonne-light{display:none;animation:none!important}}
@media(max-width:480px){.rayonne-word::before{filter:blur(6px);inset:-.24em -.08em -.18em}}
/* Native raster cursors stay present while stationary, including Safari/macOS.
   Cover the whole public canvas, including page margins; keep text inputs usable. */
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 html:has(#public-view),body:has(#public-view){cursor:url('/icons/applicateur-vernis-fin.png?v=stable1') 3 3,crosshair}
 html:is([data-theme="dark"],[data-theme="signature"]):has(#public-view),html:is([data-theme="dark"],[data-theme="signature"]) body:has(#public-view){cursor:url('/icons/applicateur-vernis-fin-sombre.png?v=stable1') 3 3,crosshair}
 html[data-theme="juliette"]:has(#public-view),html[data-theme="juliette"] body:has(#public-view){cursor:url('/icons/applicateur-vernis-juliette.png?v=stable1') 3 3,crosshair}
}
.varnish-pointer{position:fixed;top:0;left:0;width:30px;height:30px;max-width:none;pointer-events:none;z-index:95;object-fit:contain;will-change:transform}.varnish-pointer[hidden]{display:none!important}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){html.varnish-cursor-active:not(:has(dialog[open])),html.varnish-cursor-active:not(:has(dialog[open])) body,html.varnish-cursor-active:not(:has(dialog[open])) #public-view,html.varnish-cursor-active:not(:has(dialog[open])) #public-view *{cursor:none!important}}

.rayonne-flare{position:absolute;left:50%;top:56%;width:2.2em;height:2.2em;margin:-1.1em 0 0 -1.1em;pointer-events:none;opacity:0;border-radius:50%;background:radial-gradient(circle,#fff 0%,#fffdf4fa 2%,#fff9dbd9 5%,#ffe8ad99 12%,#ffdb8a40 23%,#ffcf720d 30%,transparent 66%);filter:blur(.6px);mix-blend-mode:screen;transform:scale(.08)}
@media(prefers-reduced-motion:no-preference){.rayonne-flare{animation:rayonne-point-light 14.4s ease-out .15s infinite}}
@keyframes rayonne-point-light{0%,5%{opacity:0;transform:scale(.08)}20%{opacity:.95;transform:scale(.5)}38%{opacity:1;transform:scale(1.2)}55%{opacity:.95;transform:scale(1.45)}80%,100%{opacity:0;transform:scale(2)}}
@media(prefers-reduced-motion:reduce){.rayonne-flare{display:none;animation:none!important}}
