/* Good job Seb! */
:root{font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;color:#18343c;background:#eef4f4;font-synthesis:none}*{box-sizing:border-box}body{margin:0}.shell{max-width:680px;min-height:100dvh;margin:auto;background:#fff;padding-bottom:86px;box-shadow:0 0 36px #0a32320d}.top{height:76px;display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border-bottom:1px solid #edf1f2}.brand{display:flex;align-items:center;gap:10px}.brand strong{font-size:22px;letter-spacing:-.8px}.brand small{display:block;color:#6e8185;font-size:11px}.logo{background:#087e79;color:#fff;width:42px;height:42px;display:grid;place-items:center;border-radius:14px;font-size:25px;font-weight:800}.iconbtn{border:0;background:#f1f6f6;border-radius:50%;width:42px;height:42px;font-size:23px;position:relative}.dot{position:absolute;background:#ed9866;width:7px;height:7px;border-radius:50%;right:9px;top:8px}main{padding:20px}.hero{background:linear-gradient(135deg,#086d69,#0e9891);color:white;border-radius:22px;padding:26px 22px;margin-bottom:25px}.eyebrow{text-transform:uppercase;letter-spacing:1.7px;font-size:10px;font-weight:700;opacity:.85}.hero h1{font-size:29px;line-height:1.12;margin:10px 0 9px;letter-spacing:-1px}.hero p{font-size:14px;line-height:1.5;opacity:.92;margin:0 0 20px}.btn{border:0;border-radius:12px;padding:13px 16px;font-weight:750;font-size:14px;cursor:pointer;display:inline-flex;justify-content:center;align-items:center;gap:8px}.primary{background:#087e79;color:#fff}.light{background:#fff;color:#086d69}.outline{background:#fff;color:#087e79;border:1px solid #b8d6d4}.full{width:100%}.actions{display:flex;gap:9px;flex-wrap:wrap}.actions .btn{flex:1}h2{font-size:19px;letter-spacing:-.4px;margin:25px 0 13px}h3{font-size:16px;margin:0 0 7px}.muted{color:#73868b}.small{font-size:12px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.cat{border:1px solid #e5eeee;background:#fbfdfd;border-radius:15px;padding:15px 6px;text-align:center;cursor:pointer;font-size:12px;font-weight:650}.cat span{display:block;font-size:27px;margin-bottom:7px}.card{border:1px solid #e4eded;border-radius:17px;padding:16px;margin:11px 0;background:#fff}.cardhead{display:flex;justify-content:space-between;gap:8px;align-items:flex-start}.pill{background:#e7f5f2;color:#087e79;padding:5px 9px;border-radius:100px;font-size:11px;font-weight:750}.price{font-size:22px;color:#087e79;font-weight:800}.card p{line-height:1.5;margin:8px 0}.meta{display:flex;flex-wrap:wrap;gap:12px;color:#70858a;font-size:12px;margin:12px 0}.field{display:block;margin:15px 0 6px;font-size:13px;font-weight:700}input,select,textarea{width:100%;border:1px solid #d9e4e4;border-radius:12px;padding:13px;font:inherit;font-size:14px;background:#fff;color:#18343c}textarea{min-height:105px;resize:vertical}input:focus,select:focus,textarea:focus{outline:2px solid #6bcac2;outline-offset:1px}.hint{font-size:12px;color:#71878a;line-height:1.5}.sectiontop{display:flex;justify-content:space-between;align-items:center;gap:10px}.linkbtn{border:0;background:transparent;color:#087e79;font-weight:750;cursor:pointer}.bottom{position:fixed;bottom:0;width:min(100%,680px);height:74px;background:#fff;border-top:1px solid #e5eeee;display:grid;grid-template-columns:repeat(4,1fr);z-index:5;padding-bottom:env(safe-area-inset-bottom)}.bottom button{background:none;border:0;color:#7d9296;font-size:11px;font-weight:650;cursor:pointer}.bottom button span{display:block;font-size:25px;line-height:28px}.bottom button.active{color:#087e79}.empty{padding:28px 15px;text-align:center;background:#f6fafa;border-radius:17px;color:#647d82}.stats{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.stat{background:#f0f8f7;border-radius:15px;padding:17px}.stat b{display:block;font-size:25px;color:#087e79}.stat small{color:#71878a}.tabs{display:flex;gap:7px;margin:15px 0}.tabs button{flex:1;border:1px solid #dce8e8;border-radius:11px;padding:11px 6px;background:#fff;color:#45676b;font-weight:700}.tabs button.selected{background:#087e79;color:white;border-color:#087e79}.notice{background:#fff6e8;border-radius:12px;padding:12px;font-size:12px;color:#86632b;margin:14px 0}.divider{height:1px;background:#e7eeee;margin:16px 0}#toast{position:fixed;left:50%;transform:translateX(-50%);bottom:88px;background:#18343c;color:#fff;padding:12px 18px;border-radius:12px;display:none;max-width:90%;z-index:10;font-size:13px}#toast.show{display:block}@media(min-width:700px){main{padding:26px 32px}.hero{padding:33px}.hero h1{font-size:34px}}@media(max-width:380px){.actions{flex-direction:column}.grid{gap:7px}.cat{font-size:11px}}
/* Bilingual controls and color themes */
:root{color-scheme:light;--page:#eef4f4;--surface:#fff;--ink:#18343c;--muted:#73868b;--line:#e4eded;--soft:#f1f6f6;--accent:#087e79;--pill:#e7f5f2;--notice:#fff6e8;--notice-ink:#86632b}
@media(prefers-color-scheme:dark){:root:not([data-theme="light"]){color-scheme:dark;--page:#0c151a;--surface:#142229;--ink:#ecf7f6;--muted:#a1b6bc;--line:#31464d;--soft:#20353c;--accent:#61d4c9;--pill:#234a48;--notice:#392e22;--notice-ink:#f3d4a4}}
:root[data-theme="dark"]{color-scheme:dark;--page:#0c151a;--surface:#142229;--ink:#ecf7f6;--muted:#a1b6bc;--line:#31464d;--soft:#20353c;--accent:#61d4c9;--pill:#234a48;--notice:#392e22;--notice-ink:#f3d4a4}
body{background:var(--page);color:var(--ink)}.shell,.top,.bottom,.card{background:var(--surface)}.top,.bottom,.card,.cat,.tabs button{border-color:var(--line)}.brand small,.muted,.meta,.hint,.stat small{color:var(--muted)}.cat,input,select,textarea,.tabs button,.outline{background:var(--surface);color:var(--ink);border-color:var(--line)}.cat:hover{background:var(--soft)}.pill,.stat{background:var(--pill)}.pill,.price,.stat b,.linkbtn,.bottom button.active{color:var(--accent)}.empty,.iconbtn{background:var(--soft);color:var(--muted)}.notice{background:var(--notice);color:var(--notice-ink)}.divider{background:var(--line)}.bottom button{color:var(--muted)}.primary,.tabs button.selected{background:#087e79;color:#fff}.outline{color:var(--accent)}.hero-outline{border-color:#fff!important;color:#fff!important;background:transparent!important}.hero{background:linear-gradient(135deg,#086d69,#0e9891)}
.header-controls{display:flex;gap:6px;align-items:center}.header-controls select{width:auto;min-width:54px;max-width:94px;font-size:12px;font-weight:700;padding:8px 5px;border-radius:10px;background:var(--soft);color:var(--ink)}.header-controls .iconbtn{width:34px;height:34px;font-size:19px}.top{padding:12px 13px;gap:8px}.brand{min-width:0}.brand strong{font-size:19px}.brand small{max-width:120px;line-height:1.2}.logo{width:36px;height:36px;flex-shrink:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.bottom button .nav-label{font-size:11px;line-height:1.3}.bottom button>span:first-child{display:block;font-size:25px;line-height:28px}.bottom button>span:last-child{display:block}.tabs button{color:var(--ink)}
@media(max-width:385px){.top{padding:9px 8px}.header-controls{gap:4px}.header-controls select{max-width:78px;font-size:11px}.brand small{max-width:90px;font-size:10px}.brand strong{font-size:17px}.logo{width:31px;height:31px;font-size:20px}}

/* Landing page V1.2 */
.landing-hero{padding-bottom:35px}.hero-kicker{font-size:.85rem;letter-spacing:.04em;text-transform:uppercase;opacity:.9;margin-top:16px}.landing-hero h1{max-width:700px;font-size:clamp(2rem,6vw,3.25rem);line-height:1.12}.landing-section{margin:34px 0}.landing-section>h2{margin-bottom:14px}.landing-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.landing-panel,.fee-example,.faq details{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:20px}.landing-panel{display:flex;flex-direction:column;gap:12px}.landing-panel h3{margin:0}.landing-panel ol{padding-left:20px;line-height:1.7;flex:1;margin:0}.landing-emoji{font-size:2rem}.fee-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:18px 0}.fee-tile{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:16px 10px;text-align:center;display:flex;flex-direction:column;gap:8px}.fee-tile strong{font-size:clamp(1.4rem,4vw,2.2rem);color:var(--accent)}.fee-tile span{font-size:.85rem}.fee-example h3{margin-top:0}.fee-example>div{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid var(--line)}.fee-example>p{margin-bottom:0}.faq{display:grid;gap:10px}.faq details{padding:15px 18px}.faq summary{cursor:pointer;font-weight:700}.faq p{line-height:1.55;margin-bottom:0}.landing-cta{border-radius:20px;padding:24px;background:var(--surface);border:1px solid var(--line);margin:32px 0}.landing-cta h2{margin-top:0}@media(max-width:580px){.landing-columns{grid-template-columns:1fr}.fee-tile{padding:12px 6px}.fee-tile span{font-size:.74rem}.landing-panel{padding:17px}}

/* Public website privacy and trust sections */
.trust-callout{padding:22px;border:1px solid var(--line);border-radius:18px;background:var(--soft)}.trust-callout h2{margin-top:0}.site-footer{display:flex;flex-wrap:wrap;gap:14px;margin:24px 0 10px;padding:20px 0;border-top:1px solid var(--line)}.site-footer button,.cookie-link{border:0;background:none;color:var(--accent);text-decoration:underline;cursor:pointer;font:inherit;font-size:12px;padding:4px 0}.cookie-panel{position:fixed;z-index:40;bottom:0;left:50%;transform:translateX(-50%);width:min(100%,680px);max-height:78vh;overflow-y:auto;padding:20px 22px calc(22px + env(safe-area-inset-bottom));border:1px solid var(--line);border-radius:18px 18px 0 0;background:var(--surface);box-shadow:0 -10px 45px #0003;color:var(--ink)}.cookie-panel h2{margin:0 0 8px}.cookie-panel p{line-height:1.55;font-size:13px}.cookie-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:15px}.cookie-actions .btn{flex:1;min-width:145px}.consent-row{display:flex;gap:10px;align-items:center;margin:15px 0;font-size:14px}.consent-row input{width:18px;height:18px;flex:none}.cookie-panel .cookie-link{margin-top:12px}

/* V1.4 Map view */
.map-toggle{display:flex;gap:8px;margin:16px 0}.map-toggle .btn{flex:1}.map-surface{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:var(--soft);min-height:350px}.map-gate{min-height:350px;padding:25px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:10px}.map-gate p{max-width:380px;font-size:13px;line-height:1.6;color:var(--muted)}.map-emoji{font-size:54px}#requestMap{height:390px;width:100%;z-index:0}.map-popup-item{padding-top:10px;border-top:1px solid #ddd;margin-top:8px;font-size:12px}.map-popup-item button{margin-top:5px}.leaflet-popup-content{color:#18343c}.leaflet-container{font-family:inherit}#mapFallback{font-size:13px;color:var(--muted);padding:10px}

/* PRATIKO V1.6 | Lime & Gold design system. Overrides previous turquoise palette. */
:root{color-scheme:light;--page:#F5F5EF;--surface:#FFFFFF;--ink:#171A17;--muted:#596259;--line:#DCE2D5;--soft:#F0F3E9;--accent:#344C00;--pill:#EBF9D4;--notice:#FFF5E4;--notice-ink:#76521A;--lime:#B8F238;--gold:#A47B2C;--charcoal:#111315}
@media(prefers-color-scheme:dark){:root:not([data-theme="light"]){color-scheme:dark;--page:#0B0D0C;--surface:#171A18;--ink:#F5F5EF;--muted:#B3BDB0;--line:#343B34;--soft:#252B24;--accent:#B8F238;--pill:#29351C;--notice:#362B19;--notice-ink:#F0D19A;--lime:#B8F238;--gold:#D6AD55;--charcoal:#111315}}
:root[data-theme="dark"]{color-scheme:dark;--page:#0B0D0C;--surface:#171A18;--ink:#F5F5EF;--muted:#B3BDB0;--line:#343B34;--soft:#252B24;--accent:#B8F238;--pill:#29351C;--notice:#362B19;--notice-ink:#F0D19A;--lime:#B8F238;--gold:#D6AD55;--charcoal:#111315}
body{background:var(--page);color:var(--ink)}.shell,.top,.bottom,.card{background:var(--surface)}.top,.bottom,.card,.cat,.tabs button{border-color:var(--line)}.brand small,.muted,.meta,.hint,.stat small{color:var(--muted)}.cat,input,select,textarea,.tabs button,.outline{background:var(--surface);color:var(--ink);border-color:var(--line)}.cat:hover{background:var(--soft)}.pill,.stat{background:var(--pill)}.pill,.price,.stat b,.linkbtn,.bottom button.active{color:var(--accent)}.empty,.iconbtn{background:var(--soft);color:var(--muted)}.notice{background:var(--notice);color:var(--notice-ink)}.divider{background:var(--line)}.bottom button{color:var(--muted)}
.logo{background:var(--charcoal);color:var(--lime);font-size:21px;letter-spacing:-2px}.logo svg{width:74%;height:74%;display:block}.brand strong{font-weight:850;letter-spacing:.3px}.hero{background:linear-gradient(135deg,#111315 0%,#232B1C 100%);color:#FFFFFF;border:1px solid #414A34}.hero .eyebrow,.hero-kicker{color:#D6AD55;opacity:1}.primary,.tabs button.selected{background:var(--lime);color:var(--charcoal);border-color:var(--lime)}.primary:hover,.tabs button.selected:hover{background:#A6DE26}.light{background:var(--lime);color:var(--charcoal)}.outline{color:var(--accent);border-color:var(--line)}.hero-outline{border-color:#D6AD55!important;color:#F5F5EF!important;background:transparent!important}.btn:focus-visible,.iconbtn:focus-visible,.bottom button:focus-visible{outline:3px solid var(--gold);outline-offset:2px}input:focus,select:focus,textarea:focus{outline:2px solid var(--lime);outline-offset:1px}#toast{background:#111315;color:#F5F5EF}.fee-tile strong{color:var(--accent)}.site-footer button,.cookie-link{color:var(--accent)}.trust-callout{background:var(--soft)}
/* Ensure sufficient contrast for lime text on light surfaces */
:root:not([data-theme="dark"]) .pill,:root:not([data-theme="dark"]) .price,:root:not([data-theme="dark"]) .stat b,:root:not([data-theme="dark"]) .linkbtn,:root:not([data-theme="dark"]) .bottom button.active,:root:not([data-theme="dark"]) .fee-tile strong{color:#344C00}
@media(prefers-color-scheme:dark){:root:not([data-theme="light"]) .pill,:root:not([data-theme="light"]) .price,:root:not([data-theme="light"]) .stat b,:root:not([data-theme="light"]) .linkbtn,:root:not([data-theme="light"]) .bottom button.active,:root:not([data-theme="light"]) .fee-tile strong{color:#B8F238}}

/* PRATIKO V1.7 | Version web (ordinateur et tablette). Le mobile reste inchangé. */
.bottom{left:50%;transform:translateX(-50%)}
.filters{display:grid;grid-template-columns:1fr;gap:0 14px}
.card-grid{display:block}
@media(min-width:900px){
 .shell{max-width:none;padding-bottom:0;background:var(--page);box-shadow:none}
 .top{position:sticky;top:0;z-index:20;height:72px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;padding:0 max(32px,calc((100vw - 1180px)/2 + 32px));border-bottom:1px solid var(--line)}
 .brand strong{font-size:22px}
 .brand small{max-width:none;font-size:12px}
 .logo{width:42px;height:42px;font-size:24px}
 .header-controls{justify-self:end;gap:10px}
 .header-controls select{font-size:13px;padding:9px 10px;max-width:none;min-width:70px}
 .header-controls .iconbtn{width:40px;height:40px;font-size:21px}
 .bottom{position:static;transform:none;left:auto;width:auto;height:auto;background:transparent;border:0;display:flex;gap:6px;padding:0;justify-self:center}
 .bottom button{display:flex;flex-direction:row;align-items:center;gap:9px;padding:10px 16px;border-radius:12px;font-size:14px;font-weight:700}
 .bottom button>span:first-child{font-size:18px;line-height:1}
 .bottom button .nav-label{font-size:14px;line-height:1.2}
 .bottom button:hover{background:var(--soft)}
 .bottom button.active{background:var(--pill);color:var(--accent)}
 main{max-width:1180px;margin:0 auto;padding:36px 32px 56px}
 main[data-page=create],main[data-page=account],main[data-page=detail]{max-width:820px}
 main[data-page=privacy],main[data-page=trust]{max-width:860px}
 h2{font-size:22px;margin:34px 0 16px}
 .hero,.landing-hero{padding:52px 48px;border-radius:28px}
 .landing-hero h1{font-size:clamp(2.6rem,4.2vw,3.6rem);max-width:760px}
 .hero p{font-size:16px;max-width:640px}
 .actions .btn{flex:0 0 auto;min-width:200px}
 .btn{padding:14px 22px;font-size:15px}
 .grid{grid-template-columns:repeat(6,1fr);gap:14px}
 .cat{padding:22px 8px;font-size:13px;transition:transform .12s,background .12s}
 .cat:hover{transform:translateY(-2px)}
 .card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
 .card-grid .card{margin:0;display:flex;flex-direction:column}
 .card-grid .card .meta{margin-top:auto;padding-top:12px}
 .card{transition:box-shadow .15s,border-color .15s}
 .card:hover{border-color:var(--accent);box-shadow:0 6px 24px #0000000f}
 .filters{grid-template-columns:1fr 1fr;max-width:640px}
 .map-toggle .btn{flex:0 0 auto;min-width:150px}
 #requestMap{height:540px}.map-surface,.map-gate{min-height:420px}
 .stats{grid-template-columns:repeat(2,1fr)}
 .tabs button{padding:13px 10px}
 .landing-section{margin:52px 0}
 .landing-columns{gap:20px}.landing-panel{padding:28px}
 .landing-cta{padding:36px}
 #toast{bottom:28px;left:auto;right:28px;transform:none;max-width:380px}
 .cookie-panel{width:min(100%,760px);bottom:24px;border-radius:18px}
 .site-footer{margin-top:44px}
}
@media(min-width:1200px){
 .card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
 main[data-page=browse] .card-grid,main[data-page=jobs] .card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(min-width:900px) and (max-width:1100px){
 .brand small{display:none}
 .bottom button{padding:10px 12px}
}

/* PRATIKO V1.8 | Interrupteur clair / sombre (remplace le menu à 3 choix) */
.theme-switch{position:relative;flex:none;width:54px;height:30px;padding:0;border-radius:999px;border:1px solid var(--line);background:var(--soft);cursor:pointer;display:inline-block}
.theme-switch .ts-knob{position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:var(--lime);transition:transform .2s ease}
.theme-switch[aria-checked="true"] .ts-knob{transform:translateX(24px)}
.theme-switch .ts-icon{position:absolute;top:50%;transform:translateY(-50%);font-size:14px;line-height:1;color:var(--muted);pointer-events:none}
.theme-switch .ts-sun{left:8px}.theme-switch .ts-moon{right:8px}
.theme-switch[aria-checked="false"] .ts-sun,.theme-switch[aria-checked="true"] .ts-moon{color:#111315}
.theme-switch:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.theme-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:15px 0}.theme-row .field{margin:0}
@media(prefers-reduced-motion:reduce){.theme-switch .ts-knob{transition:none}}

/* V1.10 | Carte : points numérotés Lime & Gold, accessibles au clavier, recentrage, liste des secteurs */
.map-surface{isolation:isolate}
#requestMap:focus-visible{outline:3px solid var(--gold);outline-offset:-3px}
.map-pin-wrap{background:none;border:0}
.map-pin{display:grid;place-items:center;box-sizing:border-box;border-radius:50%;background:#B8F238;color:#111315;border:3px solid #111315;font-weight:800;font-size:14px;line-height:1;box-shadow:0 2px 10px rgba(0,0,0,.35);cursor:pointer;transition:transform .15s}
.map-pin-wrap:hover .map-pin{transform:scale(1.1)}
.map-pin-wrap:focus-visible{outline:none}.map-pin-wrap:focus-visible .map-pin{outline:3px solid #D6AD55;outline-offset:3px}
.map-reset{width:34px;height:34px;background:#fff;background-clip:padding-box;color:#111315;border:2px solid rgba(0,0,0,.2);border-radius:4px;font-size:20px;line-height:1;cursor:pointer;padding:0}
.map-reset:hover{background-color:#f4f4f4}.map-reset:focus-visible{outline:3px solid #D6AD55;outline-offset:2px}
.leaflet-popup-content{color:#171A17}.leaflet-popup-content strong{font-size:14px}
.leaflet-popup-content .linkbtn{color:#344C00;padding:0;text-decoration:underline}
.map-help{margin:8px 2px 0}
.map-sectors{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0 4px}
.map-sectors .btn{padding:9px 13px;font-size:13px}
@media(prefers-reduced-motion:reduce){.map-pin{transition:none}}

/* V1.11 | Comptes, conversations et chat */
.conv-list{display:flex;flex-direction:column;gap:8px}
.conv{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;text-align:left;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:14px;padding:13px 15px;cursor:pointer;font:inherit}
.conv:hover{background:var(--soft)}.conv:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.conv-main{display:flex;flex-direction:column;gap:3px;min-width:0}.conv-main strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.badge{flex:none;min-width:24px;height:24px;padding:0 7px;border-radius:999px;background:var(--lime);color:#111315;font-weight:800;font-size:12px;display:grid;place-items:center}
.st-assigned,.st-accepted{background:#E3F6C8;color:#2C4200}.st-done{background:#E6E8E3;color:#3D433B}
.st-cancelled,.st-declined,.st-withdrawn{background:#F7E3E1;color:#7A2A20}
.chat-head h2{margin-bottom:4px}
.chat-log{display:flex;flex-direction:column;gap:8px;height:min(55vh,520px);overflow-y:auto;padding:14px;background:var(--soft);border:1px solid var(--line);border-radius:16px;margin:12px 0}
.chat-empty{margin:auto;text-align:center}
.msg{max-width:80%;padding:9px 13px;border-radius:16px;line-height:1.45}
.msg p{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}
.msg time{display:block;font-size:10.5px;margin-top:4px;opacity:.7}
.msg.me{align-self:flex-end;background:var(--lime);color:#111315;border-bottom-right-radius:5px}
.msg.them{align-self:flex-start;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-bottom-left-radius:5px}
.chat-form{display:flex;gap:8px;align-items:flex-end}
.chat-form textarea{min-height:48px;flex:1;resize:none}
.chat-form .btn{flex:none}

/* V1.12 | Suivi du travail et messages système */
.job-panel{border:2px solid var(--lime);background:var(--surface);border-radius:16px;padding:14px 16px;margin:14px 0}
.job-panel h3{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 8px}
.job-panel p{margin:0 0 10px;line-height:1.5}
.job-panel .actions{gap:8px}.job-panel .actions .btn{flex:1 1 auto}
.msg.sys{align-self:center;max-width:92%;background:var(--pill);color:var(--ink);border:1px dashed var(--line);border-radius:12px;text-align:center;font-size:13px}
.st-delivered{background:#FFF1D6;color:#6B4A0F}.st-disputed{background:#F7E3E1;color:#7A2A20}
/* V1.13 : bouton Se connecter dans l'en-tête (remplace la cloche quand on n'est pas connecté) */
.login-btn{padding:8px 12px;font-size:13px;border-radius:10px;white-space:nowrap}.login-btn[hidden],.iconbtn[hidden]{display:none}
@media(max-width:385px){.login-btn{padding:7px 9px;font-size:12px}}
@media(min-width:900px){.login-btn{padding:9px 14px;font-size:14px}}
/* Menu Connexion (Se connecter / Créer un compte) et écran de choix */
.login-menu{position:relative}.login-menu[hidden]{display:none}
.login-pop{position:absolute;right:0;top:calc(100% + 8px);z-index:30;min-width:190px;background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:0 10px 30px #0000002e;padding:6px;display:flex;flex-direction:column}
.login-pop[hidden]{display:none}
.login-pop button{border:0;background:transparent;color:var(--ink);text-align:left;font:inherit;font-size:14px;font-weight:700;padding:11px 12px;border-radius:8px;cursor:pointer}
.login-pop button:hover,.login-pop button:focus-visible{background:var(--soft)}
.auth-choice{max-width:420px;margin:24px auto}.auth-choice>.btn{margin-top:12px}
/* Coordonnées de l'autre partie (V2.4) */
.contact-card p{margin:6px 0}.contact-card a{color:inherit;font-weight:800;text-decoration:underline}
/* Tarifs (V2.6) : trois cartes Client / Travailleur / Pro */
.plan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:16px 0}
.plan{display:flex;flex-direction:column;gap:8px;padding:20px;border:1px solid var(--line);border-radius:18px;background:var(--surface)}
.plan h3{margin:0}
.plan-price{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap}
.plan-price strong{font-size:2rem;line-height:1}
.plan-price span{font-size:13px;color:var(--muted)}
.plan ul{margin:4px 0 0;padding-left:18px;line-height:1.6;flex:1}
.plan .pill{align-self:flex-start}
.fee-example>div{display:flex;justify-content:space-between;gap:16px;padding:9px 0}
@media(max-width:760px){.plan-grid{grid-template-columns:1fr}}
.pro-badge{margin-left:6px;vertical-align:middle}
/* V2.7 : profils publics et évaluations */
.who-link{display:inline-flex;align-items:center;gap:0;border:0;background:none;padding:0;color:inherit;font:inherit;cursor:pointer;text-align:left}
.who-link strong{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px;text-decoration-color:var(--line)}
.who-link:hover strong,.who-link:focus-visible strong{text-decoration-color:currentColor}
.posted-by{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:6px 0 2px}
.rating-tag{font-weight:800;white-space:nowrap}.rating-tag.new{font-weight:700;color:var(--muted)}
.stars{color:#E8A317;letter-spacing:1px;white-space:nowrap}.stars-off{color:var(--line)}
.star-pick{display:flex;gap:6px;margin:8px 0 2px}
.star-btn{width:46px;height:46px;border-radius:50%;border:2px solid var(--line);background:var(--surface);color:var(--line);font-size:24px;line-height:1;cursor:pointer}
.star-btn.on{color:#E8A317;border-color:#E8A317}
.star-btn:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
body.modal-open{overflow:hidden}
.pf-modal{position:fixed;inset:0;z-index:50;background:rgba(20,12,6,.55);display:flex;align-items:flex-end;justify-content:center;padding:0}
.pf-card{position:relative;background:var(--surface);color:var(--ink);width:min(100%,560px);max-height:88dvh;overflow:auto;border-radius:22px 22px 0 0;padding:22px 20px 28px}
@media(min-width:620px){.pf-modal{align-items:center;padding:20px}.pf-card{border-radius:22px}}
.pf-close{position:absolute;top:12px;right:12px;width:40px;height:40px;border-radius:50%;border:0;background:var(--soft);color:var(--ink);font-size:18px;cursor:pointer}
.pf-card .profile-head{padding-right:40px}
.pf-stats{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:16px 0}
.pf-stat{background:var(--soft);border-radius:16px;padding:12px 14px;display:flex;flex-direction:column;gap:2px}
.pf-stat strong{font-size:22px}
.pf-bio{white-space:pre-line;line-height:1.5}
.pf-reviews{list-style:none;margin:0;padding:0}
.pf-review{border-top:1px solid var(--line);padding:12px 0}
.pf-review-head{display:flex;align-items:center;gap:10px}
.pf-review p{margin:8px 0 0;line-height:1.5}
.review-box .stars{font-size:18px}
.who-link .avatar{margin-right:8px}
.push-nudge{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.push-nudge .linkbtn{padding:0;text-decoration:underline}
