:root{--ink:#17221d;--muted:#66736c;--cream:#f7f4ee;--paper:#fff;--green:#1f5b46;--green2:#2d765c;--line:#dfe6e1;--gold:#d9a94e;--danger:#a43b3b;--shadow:0 18px 50px rgba(24,48,38,.08);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--ink);background:var(--cream)}
*{box-sizing:border-box}body{margin:0;min-height:100vh;display:flex;flex-direction:column}a{color:var(--green);text-decoration:none}a:hover{text-decoration:underline}button,input,select{font:inherit}.container{width:min(1160px,calc(100% - 32px));margin:auto}.skip{position:absolute;left:-9999px}.skip:focus{left:12px;top:12px;z-index:20;background:white;padding:12px}.site-header{position:sticky;top:0;z-index:10;background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.nav-wrap{width:min(1240px,calc(100% - 28px));margin:auto;min-height:72px;display:flex;align-items:center;gap:20px}.brand{display:flex;align-items:center;gap:9px;color:var(--ink);font-weight:800;font-size:1.3rem}.brand:hover{text-decoration:none}.brand span,.logo-mark{display:grid;place-items:center;background:var(--green);color:white;border-radius:14px;font-family:Georgia,serif}.brand span{width:38px;height:38px}.logo-mark{width:72px;height:72px;font-size:2.3rem;margin-bottom:24px;box-shadow:var(--shadow)}.main-nav{display:flex;align-items:center;gap:18px;margin-left:auto;font-size:.92rem}.main-nav a{color:var(--ink);padding:12px 2px}.main-nav a.active{color:var(--green);font-weight:700}.main-nav em{font-style:normal;background:var(--green);color:white;border-radius:999px;padding:2px 7px}.main-nav form{margin:0}.nav-cta{border:1px solid var(--green);border-radius:10px;padding:10px 14px!important}.menu-button{display:none;margin-left:auto;border:0;background:none;padding:10px}.menu-button i{display:block;width:24px;height:2px;background:var(--ink);margin:5px;transition:.2s}.bell{margin-left:auto;position:relative;font-size:1.6rem}.bell b{position:absolute;right:-8px;top:-3px;background:var(--gold);color:var(--ink);font-size:.68rem;border-radius:99px;padding:2px 6px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}main.container{flex:1;padding-top:48px;padding-bottom:72px}.home-grid{min-height:68vh;display:grid;grid-template-columns:1.15fr .85fr;gap:80px;align-items:center}.home-copy h1{font-family:Georgia,serif;font-size:clamp(3.5rem,8vw,7rem);line-height:.85;margin:0;color:var(--green)}.home-copy h2{font-size:clamp(1.5rem,3vw,2.5rem);margin:24px 0 12px}.lead{font-size:1.2rem;line-height:1.7;color:var(--muted)}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.74rem;font-weight:800;color:var(--green)}.benefits{display:flex;gap:22px;margin-top:28px;font-weight:650}.card,.auth-card,.notification{background:var(--paper);border:1px solid var(--line);border-radius:20px;padding:28px;box-shadow:var(--shadow)}.auth-card{padding:36px}.auth-card h2,.card h2{margin-top:0}.auth-card hr{border:0;border-top:1px solid var(--line);margin:24px 0}.narrow{width:min(720px,100%);margin:auto}.page-head{margin-bottom:32px}.page-head h1{font-family:Georgia,serif;font-size:clamp(2.4rem,5vw,4.6rem);line-height:1;margin:8px 0 16px}.page-head p:not(.eyebrow){color:var(--muted);font-size:1.05rem}.welcome{padding:70px 0}.welcome h1{font-family:Georgia,serif;font-size:4rem;margin:.2em 0}label{display:block;font-weight:650;margin:16px 0}input:not([type=checkbox]),select{display:block;width:100%;margin-top:8px;padding:13px 14px;border:1px solid #bdc9c2;border-radius:10px;background:white;color:var(--ink)}input:focus,select:focus,button:focus,a:focus{outline:3px solid rgba(45,118,92,.25);outline-offset:2px}.check,.switch{display:flex;align-items:flex-start;gap:10px;font-weight:500}.check input,.switch input{width:20px;height:20px;flex:0 0 auto}.button{display:inline-flex;justify-content:center;align-items:center;border:1px solid var(--green);background:var(--green);color:white;border-radius:11px;padding:13px 20px;font-weight:750;cursor:pointer}.button:hover{background:var(--green2);text-decoration:none}.button.secondary{background:white;color:var(--green)}.button.danger{background:var(--danger);border-color:var(--danger)}.wide{width:100%}.link-button{border:0;background:none;color:var(--green);padding:0;cursor:pointer}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.span-2{grid-column:1/-1}.field-error{display:block;color:var(--danger);margin-top:6px}.flash{padding:14px 18px;border-radius:10px;margin-bottom:20px;background:#e8f2ee;color:var(--green);border-left:4px solid var(--green)}.flash.error{background:#faeaea;color:var(--danger);border-color:var(--danger)}.flash.info{background:#eef1f7;color:#3f5879;border-color:#607aa0}.dashboard-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.dashboard-grid .card{display:flex;flex-direction:column}.dashboard-grid .button{margin-top:auto}.card-icon,.empty-icon,.success-icon{width:46px;height:46px;display:grid;place-items:center;background:#e9f1ed;color:var(--green);border-radius:13px;font-size:1.35rem;margin-bottom:20px}.success-icon{margin-inline:auto;background:#dff2e7}.stats{display:flex;gap:12px;margin:4px 0 24px}.stats span{font-size:.75rem;color:var(--muted)}.stats b{display:block;font-size:1.6rem;color:var(--ink)}.accent-card{background:var(--green);color:white}.accent-card .eyebrow,.accent-card a{color:#d7f0e5}.avatar{width:56px;height:56px;border-radius:50%;background:var(--green);color:white;display:grid;place-items:center;font-weight:800;overflow:hidden}.avatar.large{width:92px;height:92px;font-size:1.5rem}.avatar img{width:100%;height:100%;object-fit:cover}.profile-photo{display:flex;gap:20px;align-items:center}.empty{text-align:center;padding:60px 28px}.empty-icon{margin-inline:auto}.tabs{display:flex;gap:8px;overflow-x:auto;margin-bottom:22px;padding-bottom:4px}.tabs a,.tabs button{white-space:nowrap;border:1px solid var(--line);background:white;color:var(--ink);border-radius:99px;padding:9px 15px}.tabs .active{background:var(--green);color:white;border-color:var(--green)}.two-col{display:grid;grid-template-columns:1.2fr .8fr;gap:22px}.two-col .card{margin-bottom:22px}.danger-zone{border-color:#e8caca}.switch{padding:10px 0;border-bottom:1px solid var(--line)}.actions-head{display:flex;justify-content:space-between;align-items:end;gap:20px}.notification-list{display:grid;gap:12px}.notification{display:grid;grid-template-columns:10px 1fr;gap:18px;padding:22px;box-shadow:none}.notification.unread{border-color:#8cb7a6;background:#fbfffd}.dot{width:9px;height:9px;border-radius:50%;background:transparent;margin-top:10px}.unread .dot{background:var(--green)}.notification h2{font-size:1.1rem;margin:2px 0}.notification p{margin:5px 0;color:var(--muted)}.notification time{font-size:.8rem;color:var(--muted)}.notification-actions{display:flex;gap:18px;margin-top:12px}.notification-actions form{margin:0}footer{border-top:1px solid var(--line);background:white;padding:24px 0;color:var(--muted)}footer .container{display:flex;justify-content:space-between}
@media(max-width:900px){.menu-button{display:block}.bell+.menu-button{margin-left:0}.main-nav{display:none;position:absolute;left:0;right:0;top:72px;background:white;border-bottom:1px solid var(--line);padding:18px 24px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch}.main-nav.open{display:flex}.main-nav a{padding:10px}.menu-button.open i:nth-child(1){transform:translateY(7px) rotate(45deg)}.menu-button.open i:nth-child(2){opacity:0}.menu-button.open i:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.home-grid{grid-template-columns:1fr;gap:40px}.dashboard-grid{grid-template-columns:1fr 1fr}.two-col{grid-template-columns:1fr}}
textarea{display:block;width:100%;margin-top:8px;padding:13px 14px;border:1px solid #bdc9c2;border-radius:10px;background:white;color:var(--ink);font:inherit}.flash.warning{background:#fff4d8;color:#765817;border-color:#d9a94e}.stats.compact{flex-wrap:wrap}.stats.compact span{min-width:52px}.list-tools{display:flex;gap:10px;max-width:620px;margin-bottom:18px}.list-tools input{margin:0}.establishment-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.establishment-card{padding:0;overflow:hidden;display:flex;flex-direction:column}.establishment-card>div:not(.establishment-cover){padding:0 22px}.establishment-card>div:nth-child(2){padding-top:22px}.establishment-cover{height:150px;background:linear-gradient(140deg,#dfece6,#c5d7cf);display:grid;place-items:center;position:relative}.establishment-cover>span,.public-cover>span{font:bold 4rem Georgia;color:var(--green);opacity:.55}.status{display:inline-flex;border-radius:99px;padding:6px 10px;font-size:.75rem;font-weight:800;background:#edf0ee;color:#4c5953}.establishment-cover .status{position:absolute;top:12px;right:12px}.status-brouillon{background:#eef1f7;color:#435d82}.status-en_attente{background:#fff4d8;color:#765817}.status-publie{background:#dff2e7;color:#155a3d}.status-desactive,.status-refuse,.status-suspendu{background:#faeaea;color:#8d3030}.mini-facts{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}.mini-facts span{background:var(--cream);border-radius:8px;padding:7px 9px;font-size:.75rem}.card-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:auto;padding-top:20px!important;padding-bottom:22px!important}.card-actions .button{padding:9px 13px}.pagination{display:flex;justify-content:center;gap:8px;margin-top:28px}.pagination a{background:white;border:1px solid var(--line);padding:9px 13px;border-radius:8px}.pagination .active{background:var(--green);color:white}.long-form{display:grid;gap:22px}.long-form fieldset{margin:0}.long-form legend{font-family:Georgia,serif;font-size:1.45rem;font-weight:700;padding:0 8px}.label-title{display:block;font-weight:650;margin:16px 0 8px}.sticky-actions{position:sticky;bottom:12px;display:flex;justify-content:flex-end;gap:10px;background:rgba(247,244,238,.94);border:1px solid var(--line);padding:12px;border-radius:14px;backdrop-filter:blur(8px)}.manage-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px}.manage-head h1{font:clamp(2.3rem,5vw,4.5rem)/1 Georgia;margin:8px 0}.management-tabs{display:flex;gap:10px;overflow-x:auto;margin-bottom:24px;padding-bottom:6px}.management-tabs a,.management-tabs span{white-space:nowrap;padding:10px 14px;border-radius:9px;background:white;border:1px solid var(--line)}.management-tabs span{color:#9aa39f}.manage-layout{grid-template-columns:1.4fr .8fr}.progress{width:150px;height:9px;background:var(--line);border-radius:99px;overflow:hidden}.progress i{display:block;height:100%;background:var(--green)}.checklist{list-style:none;padding:0;margin:24px 0}.checklist li{display:flex;gap:10px;padding:11px 0;border-bottom:1px solid var(--line);color:var(--muted)}.checklist li.done{color:var(--ink)}.checklist span{color:var(--green);font-weight:900}.details div{display:grid;grid-template-columns:140px 1fr;padding:10px 0;border-bottom:1px solid var(--line)}.details dt{color:var(--muted)}.details dd{margin:0}.stack-actions{display:grid;gap:10px}.whatsapp{background:#197b4d;border-color:#197b4d}.preview-banner{background:#fff4d8;border:1px solid #ead28e;padding:13px 18px;border-radius:10px;margin-bottom:20px}.public-establishment{width:min(1040px,100%);margin:auto}.public-cover{height:360px;border-radius:24px;background:linear-gradient(135deg,#dfece6,#b9d0c5);display:grid;place-items:center;align-content:center}.public-cover p{color:var(--green)}.public-main{width:min(880px,calc(100% - 32px));margin:-48px auto 0;background:var(--cream);position:relative;border-radius:24px 24px 0 0;padding:42px}.public-main h1{font:clamp(2.6rem,6vw,5.5rem)/.95 Georgia;margin:8px 0 14px}.public-address{color:var(--muted)}.public-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:28px 0}.public-description{padding:24px 0}.public-description p{line-height:1.8}.future-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.future-grid .card{box-shadow:none}button:disabled{opacity:.48;cursor:not-allowed}
@media(max-width:1000px){.establishment-grid{grid-template-columns:1fr 1fr}.future-grid{grid-template-columns:1fr}}
@media(max-width:600px){.container{width:min(100% - 24px,1160px)}main.container{padding-top:32px}.dashboard-grid,.establishment-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.auth-card,.card{padding:22px}.establishment-card{padding:0}.home-copy h1{font-size:4.5rem}.benefits{flex-wrap:wrap;gap:12px}.actions-head,.manage-head{align-items:flex-start;flex-direction:column}.actions-head .button{width:100%}.stats{justify-content:space-between}.profile-photo{align-items:flex-start}.welcome h1{font-size:3rem}.list-tools{display:grid}.sticky-actions{bottom:6px}.sticky-actions .button{flex:1}.details div{grid-template-columns:1fr;gap:3px}.public-cover{height:240px}.public-main{width:100%;margin:-24px auto 0;padding:28px 12px}.public-actions{display:grid}.public-actions .button{text-align:center}footer .container{flex-direction:column;gap:8px}}
.summary-strip{display:flex;align-items:center;gap:14px;flex-wrap:wrap;background:white;border:1px solid var(--line);border-radius:16px;padding:16px 20px;margin-bottom:22px}.summary-strip span:not(.status){color:var(--muted);font-size:.8rem}.summary-strip b{display:block;color:var(--ink);font-size:1.35rem}.summary-strip .button{margin-left:auto}.space-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.space-card{padding:0;overflow:hidden;display:flex;flex-direction:column}.space-cover{height:130px;background:linear-gradient(140deg,#e8eee8,#cfddd6);display:grid;place-items:center;position:relative;font-size:2.7rem;color:var(--green)}.space-cover .status{position:absolute;top:12px;right:12px}.space-body{padding:22px}.space-body h2{margin-bottom:8px}.space-facts,.rate-chips,.amenity-tags{display:flex;gap:7px;flex-wrap:wrap;margin:13px 0}.space-facts span,.amenity-tags span{background:var(--cream);border-radius:8px;padding:6px 8px;font-size:.75rem}.rate-chips span{background:#e4f1eb;color:var(--green);border-radius:99px;padding:6px 9px;font-size:.74rem;font-weight:700}.amenity-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0 16px}.rate-mode{border:1px solid var(--line);border-radius:15px;padding:18px;margin:18px 0;background:#fbfcfb}.mode-toggle{display:flex;align-items:flex-start;gap:12px;margin:0 0 16px}.mode-toggle input{width:22px;height:22px}.mode-toggle span{display:grid;gap:3px}.mode-toggle small{color:var(--muted);font-weight:400}.rate-fields{display:grid;grid-template-columns:repeat(3,1fr);gap:0 14px}.rate-detail{display:grid;gap:4px;border-bottom:1px solid var(--line);padding:14px 0}.rate-detail span{color:var(--muted);font-size:.86rem}.public-spaces{padding:28px 0}.space-preview-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.space-preview{box-shadow:none}.space-preview-image{height:120px;background:linear-gradient(135deg,#e1ebe6,#c9d9d1);border-radius:12px;display:grid;place-items:center;color:var(--green);font-size:2.5rem;margin-bottom:18px}
@media(max-width:1000px){.space-grid{grid-template-columns:1fr 1fr}.amenity-grid{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.space-grid,.space-preview-grid{grid-template-columns:1fr}.rate-fields{grid-template-columns:1fr}.amenity-grid{grid-template-columns:1fr}.summary-strip .button{width:100%;margin-left:0}}
.establishment-cover img,.space-cover img,.space-preview-image img,.public-cover img{width:100%;height:100%;object-fit:cover}.photo-counter{display:grid;place-items:center;min-width:72px;height:72px;border-radius:50%;background:#fff4d8;color:#765817;font-weight:800}.photo-counter.complete{background:#dff2e7;color:#155a3d}.upload-panel{margin-bottom:24px}.file-drop{border:2px dashed #9ab3a7;border-radius:16px;padding:28px;text-align:center;background:#f8fbf9}.upload-previews{display:grid;gap:12px;margin:18px 0}.upload-meta-row{display:grid;grid-template-columns:150px 1fr 1fr;gap:14px;align-items:center;border-top:1px solid var(--line);padding-top:12px}.upload-meta-row img,.preview-placeholder{width:150px;height:112px;object-fit:cover;border-radius:10px;background:var(--cream);display:grid;place-items:center;color:var(--muted)}.photo-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.photo-card{padding:0;overflow:hidden}.photo-frame{aspect-ratio:4/3;position:relative;background:var(--cream)}.photo-frame img{width:100%;height:100%;object-fit:cover}.photo-frame b{position:absolute;top:12px;left:12px;background:var(--green);color:white;border-radius:99px;padding:7px 10px;font-size:.75rem}.photo-card>form,.photo-actions{padding:18px}.photo-actions{border-top:1px solid var(--line);display:grid;gap:12px}.photo-actions form{display:flex;gap:12px;flex-wrap:wrap;margin:0}.photo-actions details{border-top:1px solid var(--line);padding-top:12px}.danger-text{color:var(--danger)}.mini-gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.mini-gallery img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:8px}.public-gallery{display:grid;grid-template-columns:2fr 1fr 1fr;gap:10px;margin:30px 0}.public-gallery figure{margin:0}.public-gallery img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:12px}.public-gallery figcaption{font-size:.78rem;color:var(--muted);padding:5px}.public-cover{overflow:hidden}
.cover-mini{width:82px;height:62px;object-fit:cover;border-radius:9px}
@media(max-width:700px){.photo-grid{grid-template-columns:1fr}.upload-meta-row{grid-template-columns:1fr}.upload-meta-row img,.preview-placeholder{width:100%;height:auto;aspect-ratio:4/3}.public-gallery{grid-template-columns:1fr 1fr}.public-gallery figure:first-child{grid-column:1/-1}}
.weekly-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.weekday-card{border:1px solid var(--line);border-radius:13px;padding:14px;background:#fbfcfb}.weekday-card h3{margin:0}.block-list{display:grid;gap:12px}.block-list>article{border:1px solid var(--line);border-radius:12px;padding:14px}.result-card.available{border-color:#79ad96;background:#f5fcf8}.result-card.unavailable{border-color:#d8a4a4;background:#fff8f8}.public-availability form{display:grid;grid-template-columns:repeat(2,1fr);gap:0 14px}.public-availability button{align-self:end;margin-bottom:16px}
@media(max-width:1000px){.weekly-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.weekly-grid,.public-availability form{grid-template-columns:1fr}.weekday-card{padding:12px}}
.map-search{min-height:56px;margin:14px 0}.map-search gmp-place-autocomplete{width:100%}.location-map,.readonly-location-map,.public-location-map{height:420px;border:1px solid var(--line);border-radius:16px;background:linear-gradient(135deg,#e5eee9,#cedbd4);margin:14px 0;overflow:hidden}.location-module>#manual-location-toggle{margin:6px 0 18px}.location-module .flash{margin-top:12px}.public-location{padding:28px 0}.geolocation-status{color:var(--muted)}
@media(max-width:600px){.location-map,.readonly-location-map,.public-location-map{height:320px}}
.public-search-form{display:grid;grid-template-columns:2fr repeat(4,1fr) auto;gap:12px;align-items:end;margin-bottom:30px;padding:18px}.public-search-form label{margin:0}.public-search-form input{margin-top:6px}.search-destination{min-width:0}.destination-autocomplete{margin-top:6px;min-height:48px}.destination-autocomplete gmp-place-autocomplete{width:100%}.search-location-status{display:block;color:var(--muted);min-height:1.2em}.search-shell{display:grid;grid-template-columns:250px minmax(360px,1fr) minmax(320px,.8fr);gap:18px;align-items:start}.search-filters{padding:20px;max-height:calc(100vh - 100px);overflow:auto;position:sticky;top:90px}.search-filters fieldset{border:0;padding:0;margin:22px 0}.search-filters legend{font-weight:800;margin-bottom:8px}.search-filters .check{margin:8px 0}.filter-pair{display:grid;grid-template-columns:1fr 1fr;gap:8px}.search-result-tools{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.search-result-tools label{display:flex;align-items:center;gap:8px;margin:0}.search-result-tools select{width:auto;margin:0}.search-result-list{display:grid;gap:14px}.search-result-card{display:grid;grid-template-columns:210px 1fr;padding:0;overflow:hidden;box-shadow:none;transition:.2s}.search-result-card.highlighted{border-color:var(--green);box-shadow:0 0 0 3px rgba(31,91,70,.12)}.result-cover{background:linear-gradient(135deg,#e0ebe5,#c6d8cf);min-height:230px;display:grid;place-items:center}.result-cover img{width:100%;height:100%;object-fit:cover}.result-cover span{font:4rem Georgia;color:var(--green)}.result-body{padding:20px}.result-title{display:flex;justify-content:space-between;gap:10px}.result-title h2{margin:7px 0 3px;font-size:1.35rem}.result-title p{margin:0;color:var(--muted)}.favorite-future{border:0;background:none;font-size:1.6rem}.result-facts{display:flex;gap:7px;flex-wrap:wrap}.result-facts span{background:var(--cream);padding:6px 8px;border-radius:8px;font-size:.78rem}.result-price{display:flex;align-items:center;gap:7px;margin-top:16px}.result-price strong{font-size:1.25rem}.result-price .button{margin-left:auto;padding:9px 12px}.search-map-panel{position:sticky;top:90px}.search-results-map{height:calc(100vh - 115px);min-height:520px;border:1px solid var(--line);border-radius:18px;background:#dfe9e4;overflow:hidden}.search-mobile-toggle{display:none}.marker-highlighted{filter:drop-shadow(0 0 5px #d9a94e);transform:scale(1.18)}.search-empty{margin-top:20px}
@media(max-width:1100px){.public-search-form{grid-template-columns:2fr repeat(2,1fr)}.public-search-form .button{align-self:end}.search-shell{grid-template-columns:220px 1fr}.search-map-panel{grid-column:2}.search-results-map{height:520px}.search-filters{grid-row:1/3}}
@media(max-width:760px){.public-search-form{grid-template-columns:1fr 1fr}.search-destination{grid-column:1/-1}.public-search-form>.button{grid-column:1/-1}.search-mobile-toggle{display:flex;gap:8px;margin-bottom:14px}.search-shell{display:block}.search-filters{position:static;max-height:none;margin-bottom:14px}.search-map-panel{display:none;position:static}.search-shell[data-mobile-view=map] .search-results-panel{display:none}.search-shell[data-mobile-view=map] .search-filters{display:none}.search-shell[data-mobile-view=map] .search-map-panel{display:block}.search-results-map{height:calc(100vh - 190px);min-height:420px}.search-result-card{grid-template-columns:1fr}.result-cover{min-height:210px}.filter-pair{grid-template-columns:1fr}.search-result-tools{align-items:flex-start;flex-direction:column}.search-result-tools label{width:100%}.search-result-tools select{width:100%}}
.reservation-list{display:grid;gap:18px}.reservation-card{box-shadow:none}.status-pending{background:#fff4d8;color:#765817}.status-accepted,.status-confirmed,.status-completed{background:#dff2e7;color:#155a3d}.status-declined,.status-cancelled,.status-expired{background:#faeaea;color:#8d3030}.host-decision-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:end;margin-top:18px}.host-decision-grid form{margin:0}.reservation-form .hourly-field[hidden]{display:none}
@media(max-width:600px){.host-decision-grid{grid-template-columns:1fr}}
.payment-grid,.admin-provider-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;margin:1rem 0 2rem}.payment-method{display:flex;align-items:center;justify-content:space-between;gap:1rem;border:1px solid var(--line);border-radius:12px;padding:1rem;margin-top:1rem}.payment-method small{display:block;color:var(--muted)}.payment-document{max-width:760px;margin:2rem auto}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:.75rem;border-bottom:1px solid var(--line);vertical-align:top}.muted{color:var(--muted)}@media print{header,footer,.no-print{display:none!important}.container{max-width:none}.payment-document{box-shadow:none;border:0}}
.reservation-section{margin:2rem 0}.reservation-section .count,.operation-group .count{display:inline-grid;place-items:center;min-width:28px;height:28px;border-radius:50%;background:var(--cream);font-size:.8rem}.reservation-card{display:grid;grid-template-columns:160px 1fr;overflow:hidden;padding:0}.reservation-card>div:last-child{padding:20px}.reservation-cover{background:var(--cream);min-height:150px}.reservation-cover img{width:100%;height:100%;object-fit:cover}.operation-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.8fr);gap:20px;align-items:start}.operation-layout aside{position:sticky;top:90px}.operation-layout details{border-top:1px solid var(--line);padding:14px 0}.operation-layout summary{cursor:pointer;font-weight:800}.safe-instructions{white-space:normal;background:var(--cream);padding:14px;border-radius:10px}.timeline{list-style:none;padding:0;border-left:2px solid var(--line);margin-left:8px}.timeline li{position:relative;padding:0 0 22px 24px}.timeline li:before{content:"";position:absolute;left:-7px;top:5px;width:12px;height:12px;border-radius:50%;background:var(--green)}.timeline time{display:block;color:var(--muted);font-size:.8rem}.operation-cards{display:grid;gap:10px}.operation-cards .card{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px}.status-awaiting_checkin{background:#fff4d8;color:#765817}.status-checked_in{background:#dff2e7;color:#155a3d}.status-checked_out,.status-completed{background:#e6edf7;color:#284d78}.status-no_show,.status-cancelled_by_client,.status-cancelled_by_host,.status-payment_failed{background:#faeaea;color:#8d3030}@media(max-width:760px){.reservation-card,.operation-layout{grid-template-columns:1fr}.reservation-cover{min-height:190px}.operation-layout aside{position:static}.operation-cards .card{align-items:flex-start;flex-direction:column}}
.review-list{display:grid;gap:16px}.review-form fieldset{border:1px solid var(--line);border-radius:12px;padding:16px;margin:0 0 18px}.rating-options{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.rating-options label{border:1px solid var(--line);border-radius:10px;padding:10px;text-align:center;cursor:pointer}.rating-options input{display:block;margin:auto}.rating-options span{display:block;color:#b47b12;font-size:1.15rem}.rating-options small{display:block}.category-rating-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.rating{font-size:1.5rem;color:#765817}.verified-badge{display:inline-block;background:#dff2e7;color:#155a3d;border-radius:99px;padding:4px 8px;font-size:.78rem;font-weight:800}.host-response{margin:18px 0 0;border-left:4px solid var(--green);background:var(--cream);padding:14px}.private-feedback{border:1px dashed var(--line);padding:14px;border-radius:10px;background:#fffdf5}.category-summary{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.category-summary div{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:6px}.rating-summary{display:grid;grid-template-columns:1fr 1fr;gap:24px}.rating-distribution>div{display:grid;grid-template-columns:45px 1fr 30px;gap:8px;align-items:center}.review-filters{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin:20px 0}.review-filters label{margin:0}@media(max-width:700px){.rating-options{grid-template-columns:1fr}.category-rating-grid,.category-summary,.rating-summary{grid-template-columns:1fr}}
.finance-wallet-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px;margin:22px 0}.finance-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:14px}.finance-kpis>div{background:var(--cream);border-radius:12px;padding:14px}.finance-kpis small{display:block;color:var(--muted)}.finance-kpis strong{display:block;font-size:1.35rem;margin-top:5px}.finance-two{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start}.finance-filters{display:flex;gap:12px;align-items:end;flex-wrap:wrap}.finance-filters label{margin:0;min-width:130px}.finance-chart{display:grid;gap:12px}.finance-chart>div{display:grid;grid-template-columns:130px 1fr 130px;gap:12px;align-items:center}.finance-chart progress{width:100%}@media(max-width:700px){.finance-two{grid-template-columns:1fr}.finance-filters{display:grid}.finance-chart>div{grid-template-columns:1fr}.finance-kpis{grid-template-columns:1fr 1fr}}
.admin-nav{display:flex;gap:8px;align-items:center;overflow-x:auto;padding:10px;background:#14271f;border-radius:14px;margin-bottom:28px;position:sticky;top:78px;z-index:8}.admin-nav>a{white-space:nowrap;color:#fff;padding:9px 11px;border-radius:8px}.admin-nav>a:hover{background:#29483b;text-decoration:none}.admin-nav form{display:flex;gap:6px;margin-left:auto;min-width:280px}.admin-nav input{margin:0;background:white}.admin-nav button{padding:8px}.admin-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:24px}.admin-kpis .card{padding:17px;box-shadow:none}.admin-kpis small{color:var(--muted);display:block;text-transform:capitalize}.admin-kpis strong{display:block;font-size:1.6rem;margin-top:6px}.admin-filters{display:flex;align-items:end;gap:12px;flex-wrap:wrap}.admin-filters label{margin:0;min-width:150px}.settings-group{max-width:760px;margin:18px auto}.settings-group label{display:grid;grid-template-columns:minmax(200px,1fr) 2fr;align-items:center;gap:16px}.settings-group input{margin:0}code{white-space:pre-wrap;overflow-wrap:anywhere}.photo-grid .card>img{width:100%;height:180px;object-fit:cover}.photo-grid .card>form{padding:14px}@media(max-width:760px){.admin-nav{position:static;align-items:stretch;flex-wrap:nowrap}.admin-nav form{min-width:240px}.admin-filters{display:grid}.settings-group label{grid-template-columns:1fr}.admin-kpis{grid-template-columns:1fr 1fr}}
/* Prompt 16 — messagerie */
.message-inbox{display:grid;gap:1rem}.message-preview{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1rem;text-decoration:none;color:inherit}.message-preview.unread{border-inline-start:4px solid var(--primary,#176b5b)}.conversation-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);gap:1rem;align-items:start}.messages{display:grid;gap:1rem;max-height:70vh;overflow:auto}.message{max-width:82%;padding:.85rem 1rem;border-radius:1rem;background:#f1f4f3}.message.mine{margin-inline-start:auto;background:#dff3ed}.message.system-message{max-width:100%;text-align:center;background:#f7f3df;border:1px dashed #9b8b46}.message header{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}.message blockquote{margin:.5rem 0;padding:.5rem;border-inline-start:3px solid #789;background:#fff}.message-composer{margin-top:1rem}.status-badge{display:inline-block;padding:.2rem .5rem;border-radius:999px;background:#e8efed}@media(max-width:760px){.conversation-layout,.message-preview{grid-template-columns:1fr}.message{max-width:95%}.messages{max-height:none}}
.onboarding-steps{display:grid;grid-template-columns:repeat(5,1fr);gap:.75rem;list-style:none;padding:0}.onboarding-steps li{padding:1rem;border:1px solid var(--border,#ddd);border-radius:.75rem;text-align:center}.onboarding-steps li span{display:block;font-size:1.35rem}.onboarding-steps .done{background:#effaf4;border-color:#98d9b3}.progress{height:.7rem;background:#e9ecef;border-radius:1rem;overflow:hidden}.progress i{display:block;height:100%;background:#16875b}.trust-badges{display:flex;gap:.5rem;flex-wrap:wrap}.badge.verified{background:#e5f7ee;color:#12643f}.risk-high,.risk-critical{background:#ffe4e4;color:#8c1d1d}.check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;margin:1rem 0}.alert-card{border-left:4px solid #d58b00}.timeline article{border-left:2px solid #d5ddd9;padding:0 0 1rem 1rem;margin-left:.4rem}@media(max-width:720px){.onboarding-steps{grid-template-columns:1fr}.check-grid{grid-template-columns:1fr}}
.breadcrumbs{display:flex;gap:.45rem;align-items:center;flex-wrap:wrap;margin:1rem 0;color:#5d6b65;font-size:.92rem}.breadcrumbs a{color:inherit}.not-found{max-width:680px;margin:4rem auto;text-align:center}.result-card img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:.7rem}.settings-group textarea{min-height:6rem}
.legal-content{max-width:900px;margin:1rem auto;line-height:1.75}.legal-content img{max-width:100%;height:auto}.legal-editor{min-height:420px;font-family:ui-monospace,monospace}.honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.footer-content{display:grid;gap:1rem}.footer-content nav,.social-links{display:flex;gap:1rem;flex-wrap:wrap}.footer-content a{color:inherit}.brand img{object-fit:contain}.home-logo{display:block;width:132px;height:132px;object-fit:contain;margin-bottom:24px}
