:root{
	--account-bg:#f4f6f9;
	--account-card:#fff;
	--account-text:#14213d;
	--account-muted:#687386;
	--account-border:#dde4ee;
	--account-blue:#1457d9;
	--account-blue-dark:#0f43aa;
	--account-orange:#ff7a14;
	--account-red:#d83b3b;
	--account-green:#15915b;
}
.account-page{
	max-width:1100px;
	margin:0 auto 80px;
	padding:34px 18px 0;
	color:var(--account-text);
}
body:has(.account-page), body:has(.account-deposit-wizard){background:var(--account-bg);}
.account-page-head{margin-bottom:22px;}
.account-kicker{
	display:inline-flex;
	align-items:center;
	gap:8px;
	color:var(--account-blue);
	font-weight:800;
	text-transform:uppercase;
	font-size:12px;
	letter-spacing:0;
}
.account-page h1,.account-auth-card h1{font-size:32px;font-weight:800;margin:8px 0 10px;color:var(--account-text);}
.account-page p,.account-auth-card p{color:var(--account-muted);font-size:16px;line-height:1.55;}
.account-auth-page{display:flex;justify-content:center;}
.account-auth-card{
	width:min(720px,100%);
	background:var(--account-card);
	border:1px solid var(--account-border);
	border-radius:8px;
	box-shadow:0 18px 55px rgba(20,33,61,.08);
	padding:30px;
}
.account-register-card{width:min(820px,100%);}
.account-form label{display:block;margin:14px 0 7px;font-weight:800;color:var(--account-text);}
.account-form .inputbox,.account-form .textbox,.account-form select,.account-form textarea,
.account-page .inputbox,.account-page .textbox,.account-page select,.account-page textarea{
	width:100%;
	border:1px solid var(--account-border)!important;
	border-radius:8px;
	padding:13px 14px;
	background:#fff;
	color:var(--account-text);
	box-shadow:none;
	min-height:46px;
}
.account-form textarea,.account-page textarea{min-height:150px;resize:vertical;}
.account-input-icon{position:relative;}
.account-input-icon i{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--account-muted);}
.account-input-icon input{padding-left:42px!important;}
.account-btn,.btnPayments,.btnConfirm,.blueBtn{
	display:inline-flex!important;
	align-items:center;
	justify-content:center;
	gap:8px;
	border:1px solid var(--account-border)!important;
	border-radius:8px!important;
	background:#fff!important;
	color:var(--account-text)!important;
	font-weight:800!important;
	min-height:44px;
	padding:11px 16px!important;
	text-decoration:none!important;
	transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease;
}
.account-btn:hover,.btnPayments:hover,.btnConfirm:hover,.blueBtn:hover{transform:translateY(-1px);border-color:#b9c6d8!important;}
.account-btn-primary,.account-page .btnConfirm,.account-auth-card input[type=submit],.account-options-shell input[type=submit]{
	background:var(--account-blue)!important;
	border-color:var(--account-blue)!important;
	color:#fff!important;
}
.account-btn-primary:hover,.account-page .btnConfirm:hover{background:var(--account-blue-dark)!important;}
.account-btn-danger{color:var(--account-red)!important;}
.account-btn-wide{width:100%;margin-top:14px;}
.account-auth-links{display:flex;justify-content:space-between;gap:12px;margin-top:20px;padding-top:18px;border-top:1px solid var(--account-border);}
.account-auth-links a{font-weight:800;color:var(--account-blue);text-decoration:none;}
.account-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0;}
.account-choice-card{
	text-align:left;
	background:#fff;
	border:1px solid var(--account-border);
	border-radius:8px;
	padding:16px;
	display:grid;
	gap:6px;
	color:var(--account-text);
}
.account-choice-card i{color:var(--account-orange);font-size:22px;}
.account-choice-card span{color:var(--account-muted);line-height:1.4;}
.account-choice-card.active{border-color:var(--account-blue);box-shadow:0 0 0 3px rgba(20,87,217,.12);}
.account-checklist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:18px 0;color:var(--account-text);font-weight:700;}
.account-checklist i{color:var(--account-green);}
.account-checkbox{display:flex!important;align-items:center;gap:10px;font-weight:600!important;color:var(--account-muted)!important;}
.account-field-error{border-color:var(--account-red)!important;box-shadow:0 0 0 3px rgba(216,59,59,.12)!important;}
.account-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start;}
.account-card,.account-total-card,.account-confirm-card{
	background:var(--account-card);
	border:1px solid var(--account-border);
	border-radius:8px;
	padding:22px;
	box-shadow:0 14px 36px rgba(20,33,61,.06);
}
.account-card-title{display:flex;align-items:center;gap:10px;margin-bottom:14px;}
.account-card-title i{color:var(--account-orange);font-size:20px;}
.account-card-title h2{font-size:20px;margin:0;font-weight:800;}
.account-readonly-row{display:flex;justify-content:space-between;gap:14px;margin-top:16px;padding:13px;border-radius:8px;background:#f6f8fb;color:var(--account-muted);}
.account-readonly-row strong{color:var(--account-text);}
.account-security-card p{margin-bottom:18px;}
.validmsg,.errormsg{
	border-radius:8px!important;
	border:1px solid transparent!important;
	padding:14px 16px!important;
	margin:0 0 18px!important;
	font-weight:700;
}
.validmsg{background:#eaf8f1!important;color:#116742!important;border-color:#bfe7d1!important;}
.errormsg{background:#fff0f0!important;color:#a92727!important;border-color:#ffd1d1!important;}
.account-list-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:18px;flex-wrap:wrap;}
.account-segmented{display:flex;gap:8px;flex-wrap:wrap;}
.account-segmented button,.account-sort select{
	border:1px solid var(--account-border);
	background:#fff;
	border-radius:8px;
	padding:10px 13px;
	font-weight:800;
	color:var(--account-text);
}
.account-segmented button.active{background:var(--account-blue);border-color:var(--account-blue);color:#fff;}
.account-sort{display:flex;align-items:center;gap:8px;font-weight:800;color:var(--account-muted);}
.account-annonce-grid{display:grid;gap:16px;}
.account-annonce-card{
	display:grid;
	grid-template-columns:220px 1fr;
	gap:18px;
	background:#fff;
	border:1px solid var(--account-border);
	border-radius:8px;
	padding:14px;
	box-shadow:0 12px 32px rgba(20,33,61,.06);
}
.account-annonce-photo{aspect-ratio:4/3;border-radius:8px;overflow:hidden;background:#eef2f6;}
.account-annonce-photo img{width:100%;height:100%;object-fit:cover;display:block;}
.account-annonce-photo-empty{display:grid;place-items:center;text-align:center;color:var(--account-muted);font-weight:800;}
.account-annonce-photo-empty i{font-size:28px;color:#9aa8ba;}
.account-annonce-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;}
.account-annonce-head h2{font-size:20px;line-height:1.35;margin:0;font-weight:800;color:var(--account-text);}
.account-status{white-space:nowrap;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:900;}
.account-status-published{background:#e8f8ef;color:var(--account-green);}
.account-status-pending{background:#fff6e8;color:#a75b00;}
.account-status-expired{background:#fff0f0;color:var(--account-red);}
.account-annonce-meta{display:flex;flex-wrap:wrap;gap:10px 16px;margin:12px 0;color:var(--account-muted);}
.account-annonce-price{font-size:20px;font-weight:900;color:var(--account-blue);margin-bottom:14px;}
.account-card-actions{display:flex;gap:8px;flex-wrap:wrap;}
.account-empty-state{text-align:center;background:#fff;border:1px solid var(--account-border);border-radius:8px;padding:36px;}
.account-empty-state i{font-size:34px;color:var(--account-orange);}
.account-options-shell,.account-payment-layout{display:grid;grid-template-columns:1fr 290px;gap:18px;align-items:start;}
.account-options-grid{display:grid;gap:12px;}
.account-options-grid > div[style],.account-option-row,.account-option-card{
	background:#fff!important;
	border:1px solid var(--account-border)!important;
	border-radius:8px!important;
	padding:18px!important;
	margin:0!important;
	box-shadow:0 12px 30px rgba(20,33,61,.05);
}
.account-option-empty{text-align:center;color:var(--account-muted);}
.account-option-empty i{font-size:28px;color:var(--account-blue);}
.account-total-card{position:sticky;top:18px;}
.account-total-card span{display:block;color:var(--account-muted);font-weight:800;text-transform:uppercase;font-size:12px;}
.account-total-card strong{display:block;font-size:28px;margin:8px 0 18px;color:var(--account-text);}
.account-back-link{display:inline-flex;align-items:center;gap:8px;color:var(--account-blue);font-weight:800;text-decoration:none;margin-bottom:14px;}
.account-payment-methods{margin-top:18px;}
.account-payment-methods .btnPaymentsLink{display:block;margin:10px 0;text-decoration:none;}
.account-confirm-card{text-align:center;max-width:760px;margin:34px auto;}
.account-success-icon{width:72px;height:72px;display:grid;place-items:center;margin:0 auto 18px;border-radius:50%;background:#eaf8f1;color:var(--account-green);font-size:30px;}
.account-confirm-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin-top:22px;}
.account-deposit-form{max-width:1100px;margin:0 auto;}
.account-deposit-wizard{
	display:grid;
	grid-template-columns:minmax(0,1fr) 380px;
	gap:18px;
	margin-top:18px;
}
.account-progress{grid-column:1/-1;display:grid;grid-template-columns:repeat(6,1fr);gap:8px;}
.account-progress button{height:10px;border:0;border-radius:999px;background:#d9e2ef;padding:0;}
.account-progress button span{display:none;}
.account-progress button.active{background:var(--account-blue);}
.account-wizard-panels{min-width:0;}
.account-step-panel{display:none;background:#fff;border:1px solid var(--account-border);border-radius:8px;padding:22px;box-shadow:0 14px 36px rgba(20,33,61,.06);}
.account-step-panel.active{display:block;}
.account-step-head h2{font-size:24px;margin:0 0 6px;font-weight:900;}
.account-step-head p{color:var(--account-muted);margin-bottom:18px;}
.account-counter{display:block;text-align:right;color:var(--account-muted);font-weight:700;margin-top:5px;}
.account-live-preview{background:#fff;border:1px solid var(--account-border);border-radius:8px;padding:20px;height:max-content;position:sticky;top:18px;}
.account-live-preview span{font-size:12px;text-transform:uppercase;color:var(--account-muted);font-weight:900;}
.account-preview-photo{
	aspect-ratio:4/3;
	background-size:cover;
	background-position:center;
	border-radius:8px;
	margin:10px 0 14px;
	border:1px solid var(--account-border);
}
.account-live-preview h3{font-size:20px;font-weight:900;line-height:1.35;margin:8px 0;color:var(--account-text);}
.account-live-preview p{color:var(--account-muted);line-height:1.5;max-height:160px;overflow:auto;}
.account-live-preview strong{display:block;color:var(--account-blue);font-size:22px;margin-top:12px;}
.account-live-preview small{display:block;color:var(--account-muted);margin-top:8px;}
.account-preview-meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px;}
.account-preview-meta span{
	text-transform:none;
	font-size:12px;
	background:#eef5ff;
	color:#315d91;
	border-radius:999px;
	padding:5px 8px;
}
.account-wizard-nav{grid-column:1/-1;display:flex;justify-content:space-between;gap:12px;background:#fff;border:1px solid var(--account-border);border-radius:8px;padding:12px;}
.account-publish-btn{
	min-height:54px!important;
	padding:14px 24px!important;
	background:var(--account-blue)!important;
	color:#fff!important;
	box-shadow:0 14px 28px rgba(20,87,217,.22);
}
.account-validation-summary h3{
	font-size:20px;
	margin:0 0 14px;
	color:var(--account-text);
}
.account-summary-photo{
	display:grid;
	grid-template-columns:180px 1fr;
	gap:14px;
	align-items:center;
	margin-bottom:14px;
	background:#f8fafc;
	border:1px solid var(--account-border);
	border-radius:8px;
	padding:12px;
}
.account-summary-photo div{
	aspect-ratio:4/3;
	background-size:cover;
	background-position:center;
	border-radius:8px;
	border:1px solid var(--account-border);
}
.account-summary-photo .is-empty{
	display:grid;
	place-items:center;
	text-align:center;
	color:var(--account-muted);
	background:#eef2f6;
	font-weight:800;
}
.account-summary-photo strong{
	color:var(--account-text);
	font-size:18px;
}
.account-summary-grid{
	display:grid;
	grid-template-columns:repeat(3,minmax(0,1fr));
	gap:10px;
}
.account-summary-grid div,.account-summary-description{
	background:#f8fafc;
	border:1px solid var(--account-border);
	border-radius:8px;
	padding:12px;
}
.account-summary-grid span,.account-summary-description span{
	display:block;
	color:var(--account-muted);
	font-size:12px;
	font-weight:900;
	text-transform:uppercase;
	margin-bottom:6px;
}
.account-summary-grid strong{
	display:block;
	color:var(--account-text);
	font-size:15px;
	line-height:1.35;
}
.account-summary-description{margin-top:10px;}
.account-summary-description p{margin:0;color:var(--account-text);line-height:1.55;}
.account-step-panel .location-info-card .account-card-title{display:none;}
.account-step-panel .location-info-card{box-shadow:none;}
.account-form-errors{
	background:#fff0f0;
	border:1px solid #ffd1d1;
	color:#a92727;
	border-radius:8px;
	padding:13px;
	margin-bottom:14px;
}
.account-form-errors strong,.account-form-errors span{display:block;}
.account-simple-footer{
	background:#0f1828;
	color:#fff;
	margin-top:40px;
	padding:22px 16px;
}
.account-simple-footer-inner{
	max-width:1100px;
	margin:0 auto;
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:16px;
	flex-wrap:wrap;
	font-weight:800;
}
.account-simple-footer nav{display:flex;gap:14px;flex-wrap:wrap;}
.account-simple-footer a{color:#fff;text-decoration:none;}
.account-original-submit,
.account-deposit-form.account-wizard-ready .account-wizard-panels input[type="submit"],
.account-deposit-form.account-wizard-ready .account-wizard-panels button[type="submit"]{
	display:none!important;
}
.image-uploader{
	border:1px dashed #b9c6d8!important;
	border-radius:8px!important;
	background:#f8fafc!important;
	margin:6px!important;
	transition:border-color .18s ease,background .18s ease;
}
.image-uploader:hover{border-color:var(--account-blue)!important;background:#eef5ff!important;}
.image-uploader img{object-fit:cover;}
.image-uploader.account-photo-uploaded .image-uploader-info,
.image-uploader.account-photo-uploaded .image-uploader-text{
	display:none!important;
}
.image-uploader.account-photo-uploaded img[src*="default.gif"],
.image-uploader.account-photo-uploaded img[src*="loader.gif"]{
	display:none!important;
}
.image-uploader-text img{width:54px!important;height:auto!important;object-fit:contain;}
.image-uploader:first-of-type:after{
	content:"Photo principale";
	position:absolute;
	left:10px;
	bottom:10px;
	background:var(--account-blue);
	color:#fff;
	border-radius:999px;
	padding:5px 9px;
	font-size:11px;
	font-weight:900;
}
.image-uploader{position:relative;}
.account-step-panel:has(.image-uploader):before{
	content:"Format conseille : paysage, lumineux, sans flou.";
	display:block;
	background:#f0f7ff;
	border:1px solid #d5e8ff;
	border-radius:8px;
	padding:12px;
	margin-bottom:14px;
	color:#315d91;
	font-weight:800;
}
.property-info-card{
	margin:18px 0;
	padding:20px;
}
.property-info-help{
	margin:0 0 16px;
	color:var(--account-muted);
	line-height:1.5;
}
.property-grid{
	display:grid;
	grid-template-columns:repeat(3,minmax(0,1fr));
	gap:12px;
}
.property-field{
	margin:0!important;
	display:grid!important;
	gap:7px;
	font-weight:800!important;
}
.property-field span{
	display:flex;
	align-items:center;
	gap:8px;
	color:var(--account-text);
}
.property-field i{
	color:var(--account-blue);
	width:18px;
	text-align:center;
}
.property-subgrid{
	display:grid;
	grid-template-columns:repeat(2,minmax(0,1fr));
	gap:14px;
	margin-top:16px;
	padding-top:16px;
	border-top:1px solid var(--account-border);
}
.property-subgrid h3{
	font-size:16px;
	margin:0 0 10px;
	color:var(--account-text);
}
.property-radio{
	display:flex!important;
	align-items:center;
	gap:8px;
	margin:8px 0!important;
	font-weight:700!important;
	color:var(--account-muted)!important;
}
.property-date{
	margin-top:10px;
}
@media (max-width:900px){
	.account-grid,.account-options-shell,.account-payment-layout,.account-deposit-wizard,.account-annonce-card,.property-grid,.property-subgrid,.account-summary-grid{grid-template-columns:1fr;}
	.account-live-preview,.account-total-card{position:static;}
	.account-progress{grid-template-columns:repeat(3,1fr);}
	.account-summary-photo{grid-template-columns:1fr;}
}
@media (max-width:640px){
	.account-page{padding:22px 12px 0;}
	.account-auth-card,.account-card,.account-total-card,.account-step-panel{padding:18px;}
	.account-choice-grid,.account-checklist{grid-template-columns:1fr;}
	.account-page h1,.account-auth-card h1{font-size:26px;}
	.account-auth-links,.account-list-toolbar,.account-annonce-head{display:grid;}
	.account-card-actions .account-btn{width:100%;}
}
