/* AloAutos Reservation Wizard (AAW) */
.aaw, .aaw * { box-sizing: border-box; }
.aaw { width: 100%; font-family: system-ui, -apple-system, "Segoe UI", Roboto, Arial, "Noto Sans Arabic", "Noto Naskh Arabic", Tahoma, sans-serif; }
.aaw-hero{
	min-height: 520px;
	background-size: cover;
	background-position: center;
	position: relative;
	padding: 48px 16px;
}
.aaw-hero::before{
	content:"";
	position:absolute; inset:0;
	background: rgba(42,167,201,.82);
}
.aaw-shell{ position:relative; max-width: 980px; margin: 0 auto; }
.aaw-card{
	background:#fff;
	border-radius: 18px;
	box-shadow: 0 20px 60px rgba(0,0,0,.18);
	padding: 22px 22px 18px;
}

.aaw-top{ display:flex; align-items:center; justify-content:center; margin-bottom: 10px; }
.aaw-progress{
	display:flex; gap:10px; padding:8px 10px;
	background: rgba(255,255,255,.55);
	border-radius: 999px;
	backdrop-filter: blur(8px);
}
.aaw-stepdot{
	width: 34px; height: 34px; border-radius: 999px;
	display:flex; align-items:center; justify-content:center;
	background: rgba(255,255,255,.7);
	border: 1px solid rgba(0,0,0,.08);
	color:#111;
	font-weight: 700;
}
.aaw-stepdot.is-active{
	background: #2aa7c9;
	border-color: rgba(0,0,0,.0);
	color:#fff;
}

.aaw-head{ padding: 6px 4px 10px; }
.aaw-title{ margin: 0 0 6px; font-size: 40px; line-height: 1.15; font-weight: 900; letter-spacing: -0.5px; color:#111; }
.aaw-sub{ margin:0; color:#3d4b57; font-size: 14px; }

.aaw-body{ margin-top: 6px; }
.aaw-step{ display:none; opacity:0; transform: translateY(10px); }
.aaw-step.is-active{ display:block; opacity:1; transform:none; animation: aawFade .24s ease-out; }
@keyframes aawFade{ from{opacity:0; transform: translateY(10px);} to{opacity:1; transform:none;} }

.aaw-grid{ display:grid; gap:14px; padding: 10px 4px 6px; }
.aaw-grid-1{ grid-template-columns: 1fr; }

.aaw-row-2{ display:grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.aaw-field{ width: 100%; }
.aaw-field-full{ width:100%; }
.aaw-label{ display:block; font-size: 13px; margin: 0 0 6px; color:#1a2a36; font-weight: 700; }
.aaw-req{ color:#E0312E; }
.aaw-input{
	width: 100%;
	min-height: 46px;
	border: 1px solid rgba(0,0,0,.12);
	border-radius: 12px;
	padding: 10px 12px;
	background:#fff;
	outline: none;
	font-size: 15px;
	color:#111;
}
.aaw-input:focus{
	border-color: rgba(42,167,201,.9);
	box-shadow: 0 0 0 4px rgba(42,167,201,.15);
}
select.aaw-input{ padding-left: 38px; padding-right: 12px; line-height: 1.2; }
.aaw-hint{ margin-top: 6px; color:#617586; font-size: 12px; }

.aaw-bottomline{
	display:flex; align-items:center; justify-content:space-between;
	gap: 12px;
	padding-top: 6px;
	border-top: 1px solid rgba(0,0,0,.06);
	margin-top: 4px;
}
.aaw-days{ color:#1a2a36; font-weight: 700; }
#aaw_days{ font-size: 18px; margin: 0 6px; }

.aaw-btn{
	border: 0;
	background: rgba(0,0,0,.05);
	color:#111;
	padding: 12px 16px;
	border-radius: 12px;
	cursor: pointer;
	font-weight: 800;
	min-width: 140px;
}
.aaw-btn:hover{ filter: brightness(.98); }
.aaw-btn-primary{
	background: #E0312E;
	color:#fff;
	box-shadow: 0 12px 26px rgba(224,49,46,.22);
}
.aaw-nav{ display:flex; align-items:center; justify-content:space-between; gap: 10px; padding: 12px 4px 0; }
.aaw-nav-end{ padding-top: 10px; }

.aaw-summarybar{
	display:flex; flex-wrap: wrap;
	gap: 10px;
	padding: 10px 4px 0;
}
.aaw-chip{
	background: rgba(42,167,201,.10);
	border: 1px solid rgba(42,167,201,.22);
	color:#123;
	padding: 8px 10px;
	border-radius: 999px;
	font-size: 13px;
	display:flex; gap: 6px; align-items:center;
}

/* Cars */
.aaw-cars{ display:grid; gap: 12px; padding: 12px 4px 0; }
.aaw-car{
	border: 1px solid rgba(0,0,0,.10);
	border-radius: 16px;
	padding: 12px;
	display:flex;
	gap: 12px;
	align-items: stretch;
	background:#fff;
	position: relative;
}
.aaw-car.is-selected{
	border-color: rgba(42,167,201,.9);
	box-shadow: 0 0 0 4px rgba(42,167,201,.14);
}
.aaw-car-media{
	width: 160px; min-width:160px;
	border-radius: 14px;
	overflow:hidden;
	background: #f3f5f7;
}
.aaw-car-media img{ width:100%; height:100%; object-fit: cover; display:block; }
.aaw-car-body{ flex:1; display:flex; flex-direction: column; justify-content: space-between; }
.aaw-car-head{ display:flex; align-items:flex-start; justify-content: space-between; gap: 10px; }
.aaw-car-title{ margin:0; font-size: 18px; font-weight: 900; color:#121b22; }
.aaw-car-deposit{ color:#5b6a76; font-size: 13px; margin-top: 4px; }
.aaw-car-rates{ margin: 10px 0 0; padding:0; list-style:none; color:#22303a; font-size: 14px; }
.aaw-car-rates li{ padding: 6px 0; border-top: 1px dashed rgba(0,0,0,.08); }
.aaw-car-rates li:first-child{ border-top: 0; }
.aaw-car-cta{
	display:flex; align-items:center; justify-content: flex-end; gap: 10px; margin-top: 10px;
}
.aaw-pill{
	background: rgba(0,0,0,.06);
	border-radius: 999px;
	padding: 8px 10px;
	font-weight: 800;
	font-size: 13px;
}
.aaw-selectbtn{
	background:#2aa7c9;
	color:#fff;
	border:0;
	border-radius: 12px;
	padding: 10px 14px;
	cursor:pointer;
	font-weight: 900;
}
.aaw-selectbtn:hover{ filter: brightness(.98); }

/* Insurance */
.aaw-insurance{ display:grid; gap: 12px; padding: 12px 4px 0; }
.aaw-inscard{
	border: 1px solid rgba(0,0,0,.10);
	border-radius: 16px;
	padding: 12px;
	background:#fff;
}
.aaw-inscard.is-selected{
	border-color: rgba(42,167,201,.9);
	box-shadow: 0 0 0 4px rgba(42,167,201,.14);
}
.aaw-inshead{ display:flex; align-items:flex-start; justify-content: space-between; gap: 12px; }
.aaw-institle{ margin:0; font-size: 18px; font-weight: 900; }
.aaw-insprice{ font-weight: 900; color:#E0312E; }
.aaw-insdesc{ margin: 6px 0 10px; color:#415363; font-size: 13px; line-height: 1.7; }
.aaw-feats{ display:grid; grid-template-columns: 1fr 1fr; gap: 8px 14px; padding:0; margin:0; list-style:none; }
.aaw-feats li{ display:flex; align-items:flex-start; gap: 8px; font-size: 13px; color:#24323c; }
.aaw-ico{ width: 18px; height: 18px; display:inline-flex; align-items:center; justify-content:center; border-radius: 999px; font-weight: 900; }
.aaw-ico.ok{ background: rgba(17,165,88,.12); color: #11a558; }
.aaw-ico.no{ background: rgba(224,49,46,.12); color: #E0312E; }
.aaw-radio{ display:flex; align-items:center; gap: 8px; margin-top: 10px; font-weight: 800; }
.aaw-radio input{ transform: scale(1.05); }

/* Extras */
.aaw-extras{ margin-top: 12px; padding: 12px 4px 0; border-top: 1px solid rgba(0,0,0,.06); }
.aaw-extras h3{ margin: 0 0 10px; font-size: 16px; font-weight: 900; color:#121b22; }
.aaw-toggle{
	display:flex; align-items:center; justify-content: space-between;
	border: 1px solid rgba(0,0,0,.10);
	border-radius: 14px;
	padding: 10px 12px;
	background:#fff;
	margin-bottom: 10px;
}
.aaw-toggle strong{ font-weight: 900; }
.aaw-switch{
	display:flex; align-items:center; gap: 10px;
}
.aaw-switch input{ width: 42px; height: 22px; accent-color: #2aa7c9; }

/* Checkout */
.aaw-checkout{ padding: 12px 4px 0; }
.aaw-checkout-top{ display:grid; grid-template-columns: 1.1fr .9fr; gap: 14px; }
.aaw-rescard{
	border: 1px solid rgba(0,0,0,.10);
	border-radius: 16px;
	background:#fff;
	overflow:hidden;
	display:grid;
	grid-template-columns: 220px 1fr;
}
.aaw-rescard-media{ background:#f3f5f7; }
.aaw-rescard-media img{ width:100%; height:100%; object-fit: cover; display:block; }
.aaw-rescard-body{ padding: 12px; }
.aaw-rescard-title{ margin:0 0 8px; font-size: 18px; font-weight: 1000; }
.aaw-resmeta{ margin:0; padding:0; list-style:none; display:grid; gap: 6px; font-size: 13px; color:#32424f; }
.aaw-resmeta li{ display:flex; justify-content: space-between; gap: 10px; border-top: 1px dashed rgba(0,0,0,.08); padding-top: 6px; }
.aaw-resmeta li:first-child{ border-top:0; padding-top:0; }

.aaw-invoice{
	border: 1px solid rgba(0,0,0,.10);
	border-radius: 16px;
	background:#fff;
	padding: 12px;
}
.aaw-cardtitle{ margin:0 0 10px; font-size: 16px; font-weight: 1000; }
.aaw-invrows{ display:grid; gap: 8px; }
.aaw-invrow{
	display:flex; align-items:center; justify-content: space-between;
	padding: 8px 10px;
	background: rgba(0,0,0,.03);
	border-radius: 12px;
	font-size: 13px;
}
.aaw-invrow-total{ background: rgba(224,49,46,.08); color:#8d1412; font-weight: 1000; }
.aaw-invrow-deposit{ background: rgba(42,167,201,.10); }
.aaw-note{ margin-top: 10px; font-size: 12px; color:#5b6a76; }

.aaw-checkout-bottom{
	margin-top: 14px;
	border: 1px solid rgba(0,0,0,.10);
	border-radius: 16px;
	background:#fff;
	padding: 12px;
}
.aaw-form{ margin-top: 8px; }
.aaw-paybox{
	margin-top: 10px;
	border: 1px solid rgba(0,0,0,.08);
	border-radius: 14px;
	padding: 12px;
	background: rgba(0,0,0,.02);
}
.aaw-paytitle{ font-weight: 1000; margin-bottom: 6px; }
.aaw-paylist{ margin:0; padding-right: 18px; color:#3b4c58; font-size: 13px; display:grid; gap: 4px; }
.aaw-checkbox{ display:flex; align-items:center; gap: 10px; margin-top: 10px; font-weight: 800; }
.aaw-checkbox input{ accent-color: #E0312E; }

.aaw-alert{
	margin-top: 10px;
	display:none;
	padding: 10px 12px;
	border-radius: 12px;
	font-weight: 800;
}
.aaw-alert.is-ok{ display:block; background: rgba(17,165,88,.10); color:#0d6b3a; }
.aaw-alert.is-bad{ display:block; background: rgba(224,49,46,.10); color:#8d1412; }

/* Responsive */
@media (max-width: 880px){
	.aaw-title{ font-size: 32px; }
	.aaw-checkout-top{ grid-template-columns: 1fr; }
	.aaw-rescard{ grid-template-columns: 1fr; }
	.aaw-car{ flex-direction: column; }
	.aaw-car-media{ width:100%; min-width: 100%; height: 180px; }
	.aaw-feats{ grid-template-columns: 1fr; }
	.aaw-row-2{ grid-template-columns: 1fr; }
	.aaw-bottomline{ flex-direction: column; align-items: stretch; }
	.aaw-btn{ width: 100%; }
	.aaw-nav{ flex-direction: column; }
}
