:root{--accent:#ff6a1a;--head:#0B5052;--ink:#101828;--mute:#667085;--line:#e4e7ec;--bg:#f5f6f8;--bad:#b42318;--ok:#067647;--warn:#b54708;--r:12px}
*{box-sizing:border-box}
html,body{margin:0}
body{font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;background:var(--bg);color:var(--ink);font-size:15px;line-height:1.45;-webkit-text-size-adjust:100%}
button,input,select,textarea{font:inherit;color:inherit}
a{color:var(--accent)}
.btn{min-height:44px;padding:0 18px;border:1px solid var(--line);background:#fff;border-radius:10px;font-weight:700;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;color:var(--ink)}
.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}
.btn.danger{color:var(--bad);border-color:#fecdca}
.btn.sm{min-height:36px;padding:0 12px;font-size:13px}
.btn.block{width:100%}.btn:disabled{opacity:.55;cursor:default}
.wrap{max-width:1180px;margin:0 auto;padding:14px}
.split{display:grid;gap:14px;grid-template-columns:1fr}
@media(min-width:960px){.split{grid-template-columns:minmax(320px,40%) 1fr;align-items:start}.split .detail{position:sticky;top:76px;max-height:calc(100vh - 92px);overflow:auto}.mobile-only{display:none!important}}
@media(max-width:959px){.split.has-detail .list{display:none}.desk-only{display:none!important}}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:14px;margin-bottom:10px}
.jc{cursor:pointer;display:block;text-decoration:none;color:inherit;border-left:4px solid transparent}
.jc:hover,.jc.on{border-color:var(--head);box-shadow:0 2px 10px rgba(16,24,40,.07)}
.jc h3{margin:0 0 2px;font-size:17px;color:var(--head)}
.jc .co{font-weight:600}.jc .sn{color:var(--mute);font-size:14px;margin-top:6px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.meta{color:var(--mute);font-size:13.5px;margin-top:3px}
.chip{display:inline-block;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:700;background:#f2f4f7;color:#344054;margin:4px 6px 0 0}
.chip.ok{background:#ecfdf3;color:var(--ok)}.chip.warn{background:#fffaeb;color:var(--warn)}.chip.bad{background:#fef3f2;color:var(--bad)}.chip.acc{background:#fff1e8;color:#c2410c}
.detail h1{font-size:23px;margin:0 0 4px}
.detail h4{margin:18px 0 6px;font-size:15px}
.detail .txt{white-space:pre-wrap;word-break:break-word}
.back{background:none;border:0;color:var(--accent);font-weight:700;padding:6px 0;cursor:pointer;font-size:15px}
.empty{text-align:center;color:var(--mute);padding:34px 10px}
label.f{display:block;font-weight:600;font-size:13px;margin:12px 0 5px}
input[type=text],input[type=email],input[type=tel],input[type=password],input[type=url],input[type=date],input[type=number],select,textarea{width:100%;min-height:44px;padding:9px 12px;border:1px solid var(--line);border-radius:10px;background:#fff;font-size:16px}
textarea{min-height:90px;resize:vertical}
input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:1px}
.g2{display:grid;gap:10px;grid-template-columns:1fr}@media(min-width:560px){.g2{grid-template-columns:1fr 1fr}}
.row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.row.sp{justify-content:space-between}
.tabs{display:flex;gap:6px;overflow-x:auto;margin:0 0 12px}.tabs a{flex:none;padding:9px 15px;border:1px solid var(--line);border-radius:999px;background:#fff;font-weight:700;font-size:14px;text-decoration:none;color:var(--ink)}.tabs a.on{background:var(--accent);border-color:var(--accent);color:#fff}
.auth{max-width:440px;margin:22px auto}.auth h2{margin:0 0 4px}
.err{background:#fef3f2;color:var(--bad);border-radius:10px;padding:10px 12px;margin:10px 0;font-size:14px}
.okb{background:#ecfdf3;color:var(--ok);border-radius:10px;padding:10px 12px;margin:10px 0;font-size:14px}
.bar{height:8px;background:#eaecf0;border-radius:6px;overflow:hidden}.bar i{display:block;height:100%;background:var(--ok)}
.ov{position:fixed;inset:0;background:rgba(16,24,40,.55);z-index:50;display:flex;align-items:flex-end;justify-content:center}
@media(min-width:600px){.ov{align-items:center}}
.sheet{background:#fff;width:100%;max-width:520px;max-height:92vh;overflow:auto;border-radius:16px 16px 0 0;padding:18px;padding-bottom:calc(18px + env(safe-area-inset-bottom,0px))}
@media(min-width:600px){.sheet{border-radius:16px}}
.toast{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(20px + env(safe-area-inset-bottom,0px));background:#101828;color:#fff;padding:11px 16px;border-radius:10px;z-index:80;max-width:92%}.toast.err{background:var(--bad)}
.rep{border:1px dashed var(--line);border-radius:10px;padding:10px;margin-bottom:8px;background:#fcfcfd}
.days{display:grid;gap:12px}.day h4{margin:0 0 6px;font-size:14px;text-transform:capitalize}
.slots{display:flex;gap:8px;flex-wrap:wrap}.slot{min-height:44px;padding:0 16px;border:1px solid var(--head);border-radius:10px;background:#fff;color:var(--head);font-weight:700;cursor:pointer}.slot.sel{background:var(--head);color:#fff}
.foot{text-align:center;color:var(--mute);font-size:13px;padding:24px 10px}
.hint{color:var(--mute);font-size:13px}

/* v0.10.1 : en-tête fixe sur une seule ligne, barre de recherche distincte */
html{scroll-padding-top:72px}
.hd{position:sticky;top:0;z-index:40;background:var(--head);color:#fff;min-height:58px;padding:0 16px;padding-top:env(safe-area-inset-top,0px);display:flex;align-items:center;gap:10px;flex-wrap:nowrap;white-space:nowrap;box-shadow:0 1px 0 rgba(255,255,255,.08),0 2px 10px rgba(16,24,40,.18)}
.hd .logo{font-weight:800;font-size:19px;color:#fff;text-decoration:none;letter-spacing:-.2px;flex:none}.hd .logo i{font-style:normal;color:var(--accent)}
.hd nav{margin-left:auto;display:flex;gap:8px;flex-wrap:nowrap;align-items:center}
.hd nav a{color:#fff;text-decoration:none;font-weight:600;font-size:14px;border:1px solid rgba(255,255,255,.45);border-radius:9px;padding:7px 13px;background:none}
.hd nav a:hover{background:rgba(255,255,255,.12)}.hd nav a.pri{background:var(--accent);border-color:var(--accent)}
@media(max-width:699px){.hd{padding:0 12px}.hd .logo{font-size:17px}.hd nav{gap:6px}.hd nav a{padding:6px 10px;font-size:13px}.hd nav a.rec{display:none}}
.sbar{background:#fff;border-bottom:1px solid var(--line);box-shadow:0 2px 8px rgba(16,24,40,.05);padding:12px 16px}
.sb{display:grid;gap:8px;max-width:1180px;margin:0 auto;grid-template-columns:1fr 1fr}
.sb .q,.sb button{grid-column:1/-1}
.sb input,.sb select{min-height:46px;border:1px solid var(--line);border-radius:10px;padding:0 12px;font-size:15px;background:#fff;width:100%;min-width:0}
@media(min-width:960px){.sb{grid-template-columns:1.7fr 1fr 1fr 1fr auto}.sb .q,.sb button{grid-column:auto}.sb button{min-height:46px}}
@media(max-width:959px){.sbar.dtl{display:none}}
.foot a{color:var(--accent);font-weight:600}

/* Boutons d'une même carte : jamais collés ni superposés */
.card .row{row-gap:10px}.card .row+.row,.card div+.row{margin-top:10px}
.card .row>.btn{flex:0 0 auto;max-width:100%}

.okbox{background:#ecfdf3;color:#067647;border:1px solid #abefc6;border-radius:10px;padding:10px 12px;margin:10px 0;font-size:14px}

/* v0.13.0 : en-tête avec bouton « Pricaxé RH » et menu hamburger sur mobile */
:root{--headtx:#fff}
.hd{color:var(--headtx);position:sticky}
.hd .logo,.hd nav a{color:var(--headtx)}
.hd .hr{margin-left:auto;display:flex;align-items:center;gap:8px;flex:none;min-width:0}
.hd .hr nav{margin-left:0}
.hd .rhb{color:var(--headtx);text-decoration:none;font-weight:600;font-size:13px;border:1px solid rgba(255,255,255,.45);border-radius:9px;padding:7px 12px;white-space:nowrap}
.hd .rhb:hover{background:rgba(255,255,255,.12)}
.hd .bg{display:none;width:38px;height:38px;place-content:center;gap:5px;border:1px solid rgba(255,255,255,.45);border-radius:9px;background:none;color:var(--headtx);cursor:pointer;padding:0}
.hd .bg span{display:block;width:18px;height:2px;background:currentColor;border-radius:2px;transition:transform .2s,opacity .2s}
.hd .bg[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.hd .bg[aria-expanded="true"] span:nth-child(2){opacity:0}
.hd .bg[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.hd .mn{position:absolute;left:0;right:0;top:100%;background:var(--head);border-top:1px solid rgba(255,255,255,.14);padding:6px 12px 14px;box-shadow:0 16px 30px rgba(0,0,0,.25);max-height:calc(100vh - 64px);max-height:calc(100dvh - 64px);overflow:auto;white-space:normal}
.hd .mn[hidden]{display:none}
.hd .mn a{display:flex;align-items:center;min-height:46px;padding:10px 6px;color:var(--headtx);text-decoration:none;font-weight:600;font-size:15px;border-bottom:1px solid rgba(255,255,255,.1)}
.hd .mn a.rhb{border:0;border-bottom:1px solid rgba(255,255,255,.1);border-radius:0;padding:10px 6px;font-size:15px}
.hd .mn a.pri{margin-top:10px;justify-content:center;background:var(--accent);border-radius:10px;color:#fff;border:0}
.hd .mn a.rec{display:flex}
@media(max-width:699px){
.hd .dk{display:none}
.hd .bg{display:inline-grid}
.hd .hr{gap:6px}
}
@media(min-width:700px){.hd .mn{display:none!important}}
.foot{font-size:12.5px;line-height:1.6;padding:16px 14px calc(18px + env(safe-area-inset-bottom,0px))}

.slot.past,.slot:disabled{background:#f2f4f7;border-color:#d0d5dd;color:#98a2b3;cursor:not-allowed;text-decoration:line-through;opacity:.8}
.slot.taken{background:#f2f4f7;border-color:#d0d5dd;color:#98a2b3;text-decoration:line-through;cursor:not-allowed}

/* v0.23.2 : sélecteur de langue (plugin Pricaxé Traduction) dans le menu, comme dans Pricaxé Boutique */
.hd .prh-lang{display:flex;align-items:center;gap:12px;color:var(--headtx,#fff);white-space:nowrap}
.hd .prh-lang .prh-gl{flex:none;opacity:.85}
.hd .prh-lang .pt-sw{display:inline-flex;align-items:center;gap:8px;font-size:0;line-height:0}
.hd .prh-lang .pt-sw a{display:inline-flex;align-items:center;justify-content:center;width:auto;min-width:52px;min-height:38px;padding:0 16px;font-size:.9rem;line-height:1;font-weight:600!important;color:var(--headtx,#fff)!important;border:1px solid rgba(255,255,255,.3);border-radius:999px;background:transparent;text-decoration:none}
.hd .prh-lang .pt-sw a[style*="700"]{background:var(--accent);border-color:var(--accent);color:#fff!important}
.hd .mn .jlang{padding:16px 6px 4px}
.hd .hr .jlang .prh-gl{display:none}
.hd .hr .jlang .pt-sw a{min-width:40px;min-height:32px;padding:0 11px;font-size:.82rem}
@media(max-width:699px){.hd .jlang.dk{display:none}}

/* v0.24.8 : bouton « Installer l'application » du menu */
.hd nav button.ib{color:var(--headtx);font-family:inherit;font-weight:600;font-size:14px;border:1px solid rgba(255,255,255,.45);border-radius:9px;padding:7px 13px;background:none;cursor:pointer;white-space:nowrap;align-items:center}
.hd nav button.ib:hover{background:rgba(255,255,255,.12)}
.hd .mn button.ib{width:100%;align-items:center;min-height:46px;padding:10px 6px;background:none;border:0;border-bottom:1px solid rgba(255,255,255,.1);color:var(--headtx);font-family:inherit;font-weight:600;font-size:15px;text-align:left;cursor:pointer}
@media(max-width:699px){.hd nav button.ib{display:none!important}}

/* v0.24.11 : en-tête et marges identiques à Pricaxé RH (contenu centré sur 1120 px, mêmes marges gauche/droite) */
:root{--px:clamp(12px,3.5vw,24px);--pxc:clamp(14px,4vw,24px)}
html{scroll-padding-top:60px}
.hd{min-height:56px;padding-left:max(var(--px),calc((100% - 1120px)/2 + var(--px)));padding-right:max(var(--px),calc((100% - 1120px)/2 + var(--px)))}
.hd .logo{font-size:clamp(1.05rem,4.4vw,1.2rem)}
.hd .rhb,.hd nav a,.hd nav button.ib{font-size:.88rem;padding:8px 14px;line-height:1.2}
.hd .bg{width:40px;height:40px}
.hd .mn{padding-left:max(var(--px),calc((100% - 1120px)/2 + var(--px)));padding-right:max(var(--px),calc((100% - 1120px)/2 + var(--px)))}
@media(max-width:699px){.hd{padding-left:var(--px);padding-right:var(--px)}.hd .logo{font-size:clamp(1.05rem,4.4vw,1.2rem)}.hd .mn{padding-left:var(--px);padding-right:var(--px)}}
.wrap{max-width:1120px;padding-left:var(--pxc);padding-right:var(--pxc)}
.sbar{padding-left:var(--pxc);padding-right:var(--pxc)}
.sb{max-width:1120px}
.foot{padding-left:var(--pxc);padding-right:var(--pxc)}
/* bouton « Installer l'application » en haut du champ de recherche, sur téléphone : pleine largeur, centré */
.sb .ib2{grid-column:1/-1;width:100%;min-height:46px;justify-content:center;text-align:center;align-items:center}
@media(min-width:700px){.sb .ib2{display:none!important}}
/* badge entreprise vérifiée */
.cov{display:flex;align-items:center;flex-wrap:wrap;gap:6px}
.vb{display:inline-flex;flex:none;line-height:0;vertical-align:middle}
.vb svg{display:block}
.vbt{display:inline-flex;align-items:center;padding:2px 9px;border-radius:999px;background:#ecfdf3;color:var(--ok);font-size:12px;font-weight:700}
