/* TiKamp — refonte graphique 2026-10 : styles d'ORIGINE de la page « devenir-hote ».
   FICHIER PRODUIT par scripts/refonte-feuille-origine.js — NE PAS MODIFIER À LA MAIN.
   Il reprend, sous la garde html[data-refonte], les règles de la page d'origine et
   celles que ses scripts posent eux-mêmes. L'habillage refondu est écrit à la main
   dans tk-refonte-public.css (chargée après). */

/* ── devenir-hote.html — <style> n° 1 ── */
html[data-refonte] body.page-devenir-hote { --paper:#FAFAF7; --surface-2:#F4F3EE; --border-strong:#D4D8D1; --vert:#0F7C3C; --vert-d:#0A5F2D; --vert-l:#E6F4EB; --err:#E84747; --shadow:0 4px 14px rgba(10,31,20,.08), 0 1px 3px rgba(10,31,20,.05) }
html[data-refonte] main.origine * { box-sizing:border-box; }
html[data-refonte] body.page-devenir-hote { margin:0; font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif; background:var(--paper); color:var(--ink); line-height:1.5; }
html[data-refonte] main.origine .o-entete { padding:1.2rem 1.2rem .4rem; max-width:640px; margin:0 auto; }
html[data-refonte] main.origine { max-width:640px; margin:0 auto; padding:0 1.2rem 3rem; }
html[data-refonte] main.origine h1 { font-size:1.5rem; margin:1.2rem 0 .3rem; letter-spacing:-.02em; }
html[data-refonte] main.origine .sub { color:var(--ink-2); margin:0 0 .4rem; font-size:.96rem; }
html[data-refonte] main.origine .narrative { color:var(--ink-2); margin:0 0 1.4rem; font-size:.92rem; min-height:1.3em; }
html[data-refonte] main.origine .steps { display:flex; gap:.4rem; margin-bottom:.9rem; }
html[data-refonte] main.origine .step-dot { flex:1; height:5px; border-radius:99px; background:var(--border-strong); transition:background .2s; }
html[data-refonte] main.origine .step-dot.done,
html[data-refonte] main.origine .step-dot.active { background:var(--vert); }
html[data-refonte] main.origine .step-label { font-size:.78rem; color:var(--ink-3); margin-bottom:.5rem; font-weight:600; letter-spacing:.01em; }
html[data-refonte] main.origine .card { background:var(--surface); border:1px solid var(--border); border-radius:16px; padding:1.4rem; box-shadow:var(--shadow); }
html[data-refonte] main.origine .field { margin-bottom:1.2rem; }
html[data-refonte] main.origine .field:last-child { margin-bottom:0; }
html[data-refonte] main.origine label.flabel { display:block; font-weight:600; font-size:.9rem; margin-bottom:.5rem; }
html[data-refonte] main.origine .field .hint { font-size:.82rem; color:var(--ink-3); margin-top:.35rem; }
html[data-refonte] main.origine input[type=text],
html[data-refonte] main.origine input[type=email],
html[data-refonte] main.origine input[type=number],
html[data-refonte] main.origine textarea { width:100%; padding:.75rem .9rem; border:1.5px solid var(--border-strong); border-radius:10px; font-family:inherit; font-size:.95rem; background:var(--surface); color:var(--ink); min-height:46px; }
html[data-refonte] main.origine input:focus,
html[data-refonte] main.origine textarea:focus { outline:none; border-color:var(--vert); }
html[data-refonte] main.origine textarea { min-height:80px; resize:vertical; }
html[data-refonte] main.origine input.err { border-color:var(--err); }
html[data-refonte] main.origine .field .hint.err { color:var(--err); font-weight:600; }
html[data-refonte] main.origine .choice-grid { display:grid; grid-template-columns:1fr 1fr; gap:.7rem; }
@media (max-width:520px) {
  html[data-refonte] main.origine .choice-grid { grid-template-columns:1fr; }
}
html[data-refonte] main.origine .choice-card { position:relative; border:1.5px solid var(--border-strong); border-radius:12px; padding:1rem 1.1rem; cursor:pointer; transition:border-color .15s, background .15s; display:block; }
html[data-refonte] main.origine .choice-card input { position:absolute; opacity:0; width:0; height:0; }
html[data-refonte] main.origine .choice-card b { display:block; font-size:.96rem; margin-bottom:.15rem; }
html[data-refonte] main.origine .choice-card span.d { font-size:.83rem; color:var(--ink-3); }
html[data-refonte] main.origine .choice-card.checked { border-color:var(--vert); background:var(--vert-l); }
html[data-refonte] main.origine .choice-card.checked b { color:var(--vert-d); }
html[data-refonte] main.origine .orient-gestion { margin:1rem 0 0; padding:.8rem 1rem; background:var(--vert-l); border-radius:12px; font-size:.86rem; line-height:1.55; color:var(--ink-2); }
html[data-refonte] main.origine .orient-gestion strong { color:var(--ink); font-weight:600; }
html[data-refonte] main.origine .orient-gestion a { color:var(--vert-d); font-weight:600; text-decoration:underline; text-underline-offset:3px; }
html[data-refonte] main.origine .orient-gestion a:focus-visible { outline:3px solid var(--vert-d); outline-offset:2px; border-radius:4px; }
html[data-refonte] main.origine .chip-row { display:flex; flex-wrap:wrap; gap:.5rem; }
html[data-refonte] main.origine .chip { border:1.5px solid var(--border-strong); border-radius:999px; padding:.5rem 1rem; font-size:.88rem; cursor:pointer; user-select:none; transition:border-color .15s, background .15s; display:inline-flex; align-items:center; gap:.35rem; }
html[data-refonte] main.origine .chip input { position:absolute; opacity:0; width:0; height:0; }
html[data-refonte] main.origine .chip.checked { border-color:var(--vert); background:var(--vert-l); color:var(--vert-d); font-weight:600; }
html[data-refonte] main.origine .chip:has(input:focus-visible) { outline:2px solid var(--vert); outline-offset:2px; }
html[data-refonte] main.origine .chip .ck { width:14px; height:14px; border-radius:50%; border:1.5px solid var(--border-strong); flex:none; display:inline-block; }
html[data-refonte] main.origine .chip.checked .ck { border-color:var(--vert); background:var(--vert); position:relative; }
html[data-refonte] main.origine .chip.checked .ck::after { content:''; position:absolute; left:3px; top:0; width:4px; height:8px; border:solid #fff; border-width:0 2px 2px 0; transform:rotate(45deg); }
html[data-refonte] main.origine .type-lieu-desc { font-size:.82rem; color:var(--ink-3); margin-top:.55rem; min-height:1.2em; }
html[data-refonte] main.origine .toggle-row { display:flex; align-items:center; justify-content:space-between; padding:.7rem 0; border-bottom:1px solid var(--border); }
html[data-refonte] main.origine .toggle-row:last-child { border-bottom:none; }
html[data-refonte] main.origine .toggle-row span { font-size:.92rem; }
html[data-refonte] main.origine .switch { position:relative; width:42px; height:24px; flex:none; }
html[data-refonte] main.origine .switch input { position:absolute; opacity:0; width:0; height:0; }
html[data-refonte] main.origine .switch .track { position:absolute; inset:0; background:var(--border-strong); border-radius:99px; transition:background .15s; }
html[data-refonte] main.origine .switch .knob { position:absolute; top:3px; left:3px; width:18px; height:18px; border-radius:50%; background:#fff; transition:transform .15s; box-shadow:0 1px 2px rgba(0,0,0,.2); }
html[data-refonte] main.origine .switch input:checked + .track { background:var(--vert); }
html[data-refonte] main.origine .switch input:checked + .track .knob { transform:translateX(18px); }
html[data-refonte] main.origine .switch input:focus-visible + .track { outline:2px solid var(--vert); outline-offset:2px; }
html[data-refonte] main.origine .dispo-count { display:flex; gap:.5rem; margin-top:.8rem; }
html[data-refonte] main.origine .dispo-btn { flex:1; text-align:center; padding:.7rem .3rem; border:1.5px solid var(--border-strong); border-radius:10px; cursor:pointer; font-weight:700; font-size:.95rem; }
html[data-refonte] main.origine .dispo-btn.checked { border-color:var(--vert); background:var(--vert-l); color:var(--vert-d); }
html[data-refonte] main.origine .nav-row { display:flex; gap:.7rem; margin-top:1.6rem; }
html[data-refonte] main.origine button.primary,
html[data-refonte] main.origine button.ghost { border:none; border-radius:10px; padding:.85rem 1.4rem; font-weight:600; font-size:.95rem; cursor:pointer; font-family:inherit; min-height:46px; }
html[data-refonte] main.origine button.primary { background:var(--vert); color:#fff; flex:1; }
html[data-refonte] main.origine button.primary:hover:not([disabled]) { background:var(--vert-d); }
html[data-refonte] main.origine button.primary[disabled] { opacity:.55; cursor:default; }
html[data-refonte] main.origine button.ghost { background:var(--surface-2); color:var(--ink-2); }
html[data-refonte] main.origine .outline { background:transparent; border:1.5px solid var(--vert); color:var(--vert-d); border-radius:10px; padding:.85rem 1.4rem; font-weight:600; font-size:.95rem; cursor:pointer; font-family:inherit; min-height:46px; text-decoration:none; display:inline-flex; align-items:center; justify-content:center; box-sizing:border-box; }
html[data-refonte] main.origine .outline:hover { background:var(--vert-l); }
html[data-refonte] main.origine .msg { margin-top:.8rem; font-size:.88rem; min-height:1.2em; }
html[data-refonte] main.origine .msg.err { color:var(--err); }
html[data-refonte] main.origine .photo-drop { position:relative; aspect-ratio:16/9; border:1.5px dashed var(--border-strong); border-radius:14px; background:var(--surface-2); display:flex; flex-direction:column; align-items:center; justify-content:center; gap:.4rem; cursor:pointer; color:var(--ink-3); text-align:center; overflow:hidden; }
html[data-refonte] main.origine .photo-drop:hover { border-color:var(--vert); color:var(--vert-d); }
html[data-refonte] main.origine .photo-drop svg { width:28px; height:28px; }
html[data-refonte] main.origine .photo-drop .lbl { font-size:.88rem; font-weight:600; }
html[data-refonte] main.origine .photo-drop .aide { font-size:.78rem; }
html[data-refonte] main.origine .photo-drop input[type=file] { position:absolute; inset:0; opacity:0; cursor:pointer; }
html[data-refonte] main.origine .photo-preview { position:relative; aspect-ratio:16/9; border-radius:14px; overflow:hidden; background:var(--surface-2); }
html[data-refonte] main.origine .photo-preview img { width:100%; height:100%; object-fit:cover; display:block; }
html[data-refonte] main.origine .photo-preview .scrim { position:absolute; left:0; right:0; bottom:0; padding:.6rem; display:flex; gap:.5rem; justify-content:flex-end; background:linear-gradient(0deg,rgba(10,15,10,.55),transparent); }
html[data-refonte] main.origine .photo-preview .pbtn { width:38px; height:38px; border-radius:50%; border:none; background:rgba(255,255,255,.92); color:var(--ink); display:flex; align-items:center; justify-content:center; cursor:pointer; }
html[data-refonte] main.origine .photo-preview .pbtn:hover { background:#fff; }
html[data-refonte] main.origine .photo-preview .pbtn svg { width:18px; height:18px; }
html[data-refonte] main.origine .photo-bar { height:3px; background:var(--border); border-radius:99px; overflow:hidden; margin-top:.5rem; display:none; }
html[data-refonte] main.origine .photo-bar.active { display:block; }
html[data-refonte] main.origine .photo-bar span { display:block; height:100%; background:var(--vert); width:30%; animation:tkbar 1.1s ease-in-out infinite; }
@keyframes tkbar { 0%{ margin-left:-30%; } 100%{ margin-left:100%; } }
html[data-refonte] main.origine #done-card { display:none; }
html[data-refonte] main.origine #done-card .mark { width:56px; height:56px; margin:0 auto 1rem; border-radius:50%; background:var(--vert-l); color:var(--vert-d); display:flex; align-items:center; justify-content:center; font-size:1.6rem; }
html[data-refonte] main.origine #done-card h2 { margin:0 0 .4rem; text-align:center; }
html[data-refonte] main.origine #done-card > p { color:var(--ink-2); text-align:center; }
html[data-refonte] main.origine .fiche-preview { background:var(--surface); border:1px solid var(--border); border-radius:16px; overflow:hidden; box-shadow:var(--shadow); margin:1.2rem 0; }
html[data-refonte] main.origine .fiche-preview .fp-photo { aspect-ratio:16/9; max-height:140px; background:var(--vert-l); display:flex; align-items:center; justify-content:center; color:var(--vert-d); }
html[data-refonte] main.origine .fiche-preview .fp-photo img { width:100%; height:100%; object-fit:cover; }
html[data-refonte] main.origine .fiche-preview .fp-photo svg { width:34px; height:34px; }
html[data-refonte] main.origine .fiche-preview .fp-body { padding:1rem 1.1rem; }
html[data-refonte] main.origine .fiche-preview .fp-nom { font-weight:700; font-size:1.05rem; margin:0 0 .2rem; }
html[data-refonte] main.origine .fiche-preview .fp-type { color:var(--ink-3); font-size:.85rem; margin:0 0 .6rem; }
html[data-refonte] main.origine .fiche-preview .fp-pill { display:inline-flex; align-items:center; gap:.35rem; font-size:.8rem; font-weight:600; padding:.3rem .7rem; border-radius:99px; background:var(--vert-l); color:var(--vert-d); margin-right:.4rem; margin-bottom:.3rem; }
html[data-refonte] main.origine .done-actions { display:flex; flex-direction:column; gap:.7rem; }
html[data-refonte] main.origine .tk-ac { position:absolute;top:100%;z-index:5;left:0;right:0;margin:4px 0 0;padding:4px;list-style:none;background:var(--surface);border:1px solid var(--border-strong);border-radius:12px;box-shadow:var(--shadow);max-height:280px;overflow:auto }
html[data-refonte] main.origine .tk-ac-opt { display:flex;align-items:center;gap:8px;padding:9px 10px;border-radius:8px;cursor:pointer;font-size:.92rem;color:var(--ink) }
html[data-refonte] main.origine .tk-ac-opt.active,
html[data-refonte] main.origine .tk-ac-opt:hover { background:var(--vert-l) }
html[data-refonte] main.origine .tk-ac-ic { width:18px;text-align:center;flex:none }
html[data-refonte] main.origine .tk-ac-empty { padding:10px;color:var(--ink-3);font-size:.9rem }
html[data-refonte] main.origine .field-rel { position:relative; }
html[data-refonte] main.origine .grille-hote { margin:0 0 1.2rem; padding:.8rem 1rem; background:var(--surface); border:1px solid var(--border); border-radius:12px; font-size:.88rem; color:var(--ink-2); line-height:1.55; }
html[data-refonte] main.origine .grille-hote summary { cursor:pointer; font-weight:600; color:var(--vert-d); min-height:24px; }
html[data-refonte] main.origine .grille-hote summary:focus-visible { outline:2px solid var(--vert); outline-offset:2px; border-radius:4px; }
html[data-refonte] main.origine .grille-hote ul { margin:.5rem 0; padding-left:1.1rem; }
html[data-refonte] main.origine .grille-hote li { margin-bottom:.35rem; }
html[data-refonte] main.origine .grille-hote strong { color:var(--ink); }
html[data-refonte] main.origine .grille-hote table { width:100%; border-collapse:collapse; margin:.6rem 0 .3rem; font-size:.86rem; }
html[data-refonte] main.origine .grille-hote caption { text-align:left; font-size:.8rem; color:var(--ink-3); padding-bottom:.3rem; }
html[data-refonte] main.origine .grille-hote th,
html[data-refonte] main.origine .grille-hote td { text-align:right; padding:.4rem .5rem; border-bottom:1px solid var(--border); }
html[data-refonte] main.origine .grille-hote th:first-child,
html[data-refonte] main.origine .grille-hote td:first-child { text-align:left; }
html[data-refonte] main.origine .grille-hote th { font-weight:600; color:var(--ink); }

/* ── css/qualite-loueur.css ── */
html[data-refonte] main.origine .tkq { border:0; padding:0; margin:0; min-width:0; }
html[data-refonte] main.origine .tkq-legend { padding:0; font-weight:600; font-size:.9rem; margin-bottom:.55rem; color:var(--ink,#0A0F0A); }
html[data-refonte] main.origine .tkq-opts { display:flex; flex-direction:column; gap:.5rem; }
html[data-refonte] main.origine .tkq-opt { display:flex; gap:.65rem; align-items:flex-start; border:1.5px solid var(--border-strong,#D4D8D1); border-radius:10px; padding:.7rem .85rem; cursor:pointer; font-size:.92rem; min-height:44px; transition:border-color .15s, background-color .15s; }
html[data-refonte] main.origine .tkq-opt input { margin:.2rem 0 0; width:18px; height:18px; flex:none; accent-color:var(--vert,#0F7C3C); }
html[data-refonte] main.origine .tkq-opt.checked { border-color:var(--vert,#0F7C3C); background:var(--vert-l,#E6F4EB); }
html[data-refonte] main.origine .tkq-opt:has(input:focus-visible) { outline:2px solid var(--vert,#0F7C3C); outline-offset:2px; }
html[data-refonte] main.origine .tkq-opt-txt { display:flex; flex-direction:column; gap:.15rem; min-width:0; overflow-wrap:anywhere; }
html[data-refonte] main.origine .tkq-opt-txt small { color:var(--ink-3,#6B7670); font-size:.82rem; }
html[data-refonte] main.origine .tkq-aide { margin:.7rem 0 0; font-size:.86rem; color:var(--ink-2,#3A453F); }
html[data-refonte] main.origine .tkq-aide summary { cursor:pointer; font-weight:600; color:var(--vert-d,#0A5F2D); min-height:32px; display:flex; align-items:center; }
html[data-refonte] main.origine .tkq-aide summary:focus-visible { outline:2px solid var(--vert,#0F7C3C); outline-offset:2px; border-radius:4px; }
html[data-refonte] main.origine .tkq-aide p { margin:.4rem 0 0; max-width:68ch; }
html[data-refonte] main.origine .tkq-siret { margin-top:.8rem; }
html[data-refonte] main.origine .tkq-siret label { display:block; font-weight:600; font-size:.86rem; margin-bottom:.35rem; }
html[data-refonte] main.origine .tkq-siret input { max-width:260px; }
html[data-refonte] main.origine .tkq-hint { font-size:.8rem; color:var(--ink-3,#6B7670); margin:.3rem 0 0; }
html[data-refonte] main.origine .tkq-attest { display:flex; gap:.55rem; align-items:flex-start; margin-top:.8rem; font-size:.86rem; color:var(--ink-2,#3A453F); cursor:pointer; }
html[data-refonte] main.origine .tkq-attest input { margin:.15rem 0 0; width:18px; height:18px; flex:none; accent-color:var(--vert,#0F7C3C); }
html[data-refonte] main.origine .tkq-attest input:focus-visible { outline:2px solid var(--vert,#0F7C3C); outline-offset:2px; }
html[data-refonte] main.origine .tkq-info { font-size:.8rem; color:var(--ink-3,#6B7670); margin:.8rem 0 0; max-width:68ch; }
html[data-refonte] main.origine .tkq-info a { color:var(--vert-d,#0A5F2D); font-weight:600; }
html[data-refonte] main.origine [hidden].tkq-siret,
html[data-refonte] main.origine [hidden].tkq-attest { display:none; }
html[data-refonte] main.origine .tkq-resume { display:grid; grid-template-columns:repeat(auto-fit, minmax(190px, 1fr)); gap:.8rem; margin:0 0 .8rem; }
@media (max-width:480px) {
  html[data-refonte] main.origine .tkq-resume { grid-template-columns:1fr; }
}
html[data-refonte] main.origine .tkq-resume dt { font-size:.74rem; font-weight:700; letter-spacing:.03em; text-transform:uppercase; color:var(--ink-3,#6B7670); margin:0 0 .2rem; }
html[data-refonte] main.origine .tkq-resume dd { margin:0; font-size:.92rem; font-weight:600; overflow-wrap:anywhere; }
html[data-refonte] main.origine .tkq-resume dd small { display:block; font-weight:400; font-size:.82rem; color:var(--ink-2,#3A453F); margin-top:.2rem; }
html[data-refonte] main.origine .tkq-histo { margin-top:.6rem; font-size:.86rem; }
html[data-refonte] main.origine .tkq-histo summary { cursor:pointer; font-weight:600; color:var(--vert-d,#0A5F2D); min-height:32px; display:flex; align-items:center; }
html[data-refonte] main.origine .tkq-histo ul { list-style:none; padding:0; margin:.4rem 0 0; }
html[data-refonte] main.origine .tkq-histo li { padding:.45rem 0; border-bottom:1px solid var(--border,#E8EBE6); color:var(--ink-2,#3A453F); overflow-wrap:anywhere; }
html[data-refonte] main.origine .tkq-histo li:last-child { border-bottom:0; }
html[data-refonte] main.origine .tkq-actions { display:flex; gap:.6rem; flex-wrap:wrap; margin-top:.9rem; }
html[data-refonte] main.origine .tkq-intro { margin:0 0 .9rem; font-size:.9rem; color:var(--ink-2,#3A453F); max-width:68ch; }
html[data-refonte] main.origine .tkq-groupe { border:0; padding:0; margin:0 0 1rem; min-width:0; }
html[data-refonte] main.origine .tkq-groupe > .tkq-hint { margin:-.3rem 0 .55rem; }
html[data-refonte] main.origine .tkq-opts.tkq-ligne { flex-direction:row; flex-wrap:wrap; }
html[data-refonte] main.origine .tkq-opts.tkq-ligne .tkq-opt { flex:1 1 6.5rem; align-items:center; }
html[data-refonte] main.origine .tkq-opts.tkq-ligne .tkq-opt input { margin:0; }
html[data-refonte] main.origine .tkq-prop { margin:1.1rem 0 0; padding:1rem; border-radius:12px; background:var(--surface-2,#F4F3EE); border:1px solid var(--border,#E8EBE6); }
html[data-refonte] main.origine .tkq-prop-titre { margin:0 0 .6rem; font-size:.95rem; font-weight:700; color:var(--ink,#0A0F0A); }
html[data-refonte] main.origine .tkq-proposition { margin:0 0 .6rem; font-size:.86rem; color:var(--vert-d,#0A5F2D); font-weight:600; max-width:68ch; }
html[data-refonte] main.origine .tkq-confirmation .tkq-groupe { margin-bottom:.9rem; }
html[data-refonte] main.origine .tkq-confirmation .tkq-opt { background:var(--surface,#FFFFFF); }
html[data-refonte] main.origine .tkq-confirmation .tkq-opt.checked { background:var(--vert-l,#E6F4EB); }
html[data-refonte] main.origine .tkq-avert { margin:-.3rem 0 1rem; padding:.65rem .8rem; border-radius:8px; background:#FDF3E1; border-left:3px solid #F3A724; font-size:.82rem; color:#5C3D06; max-width:68ch; }
html[data-refonte] main.origine .tkq [hidden],
html[data-refonte] main.origine .tkq-groupe[hidden],
html[data-refonte] main.origine .tkq-confirmation[hidden],
html[data-refonte] main.origine .tkq-avert[hidden],
html[data-refonte] main.origine .tkq-prop .tkq-hint[hidden] { display:none; }
html[data-refonte] main.origine .tkq-invitation { padding:.9rem 1rem; border-radius:10px; background:var(--vert-l,#E6F4EB); border-left:3px solid var(--vert,#0F7C3C); margin:0 0 .9rem; }
html[data-refonte] main.origine .tkq-invitation strong { display:block; margin-bottom:.2rem; color:var(--vert-d,#0A5F2D); }
html[data-refonte] main.origine .tkq-invitation p { margin:0; font-size:.88rem; color:var(--ink-2,#3A453F); }

/* ── devenir-hote.html — attributs style="…" du <body>, repris en classes ── */
html[data-refonte] main.origine .rs-1 { margin:.8rem 0 0 }
html[data-refonte] main.origine .rs-2 { font-weight:400; color:var(--ink-3) }
html[data-refonte] main.origine .rs-3 { color:var(--vert-d) }
html[data-refonte] main.origine .rs-4 { max-width:120px }
html[data-refonte] main.origine .rs-5 { margin-bottom:0 }
html[data-refonte] main.origine .rs-6 { display:block; margin-bottom:.7rem }
html[data-refonte] main.origine .rs-7 { display:block }
html[data-refonte] main.origine .rs-8 { margin-top:1rem }
html[data-refonte] main.origine .rs-9 { text-align:center; margin-top:1rem }
