/* purpose: Promo Finder portal layout
   author: MD Hub
   date: 2026-10-15 */
#mdp_root{
	--mdp-accent:var(--bo-accent,#059669);
	--mdp-ink:var(--bo-text,#0f172a);
	--mdp-muted:var(--bo-text-muted,#64748b);
	--mdp-card:var(--bo-bg-elevated,#fff);
	--mdp-line:var(--bo-border,#e2e8f0);
	--mdp-page:var(--bo-bg,#fff);
	max-width:820px;
	margin:0 auto;
	color:var(--mdp-ink);
	padding-bottom:1.5rem;
}
#mdp_root.is-portal{padding:0 0 2rem}
.mdp-lead{margin:0 0 .9rem;font-size:.95rem;line-height:1.45;color:var(--mdp-muted)}
.mdp-tabs{display:flex;gap:.4rem;margin:0 0 .85rem;flex-wrap:wrap}
.mdp-tab{
	border:1px solid var(--mdp-line);background:var(--mdp-card);color:var(--mdp-ink);
	border-radius:999px;padding:.45rem .85rem;font-weight:700;cursor:pointer;font-size:.85rem
}
.mdp-tab.is-on{
	background:var(--mdp-accent);color:#fff;border-color:var(--mdp-accent)
}
.mdp-form{display:flex;flex-direction:column;gap:.65rem;margin:0 0 .85rem}
.mdp-field{display:flex;flex-direction:column;gap:.25rem;min-width:0}
.mdp-field span,.mdp-kicker{
	font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--mdp-muted)
}
.mdp-field input,.mdp-field select{
	width:100%;box-sizing:border-box;border:1px solid var(--mdp-line);border-radius:.75rem;
	background:var(--mdp-page);color:var(--mdp-ink);font:inherit;font-size:1rem;padding:.7rem .8rem
}
.mdp-field input.has-code{
	border-color:color-mix(in srgb,var(--mdp-accent) 45%,var(--mdp-line));
	font-weight:600
}
.mdp-row{display:grid;grid-template-columns:1fr 1fr;gap:.55rem}
.mdp-row-3{grid-template-columns:1fr 1fr 1fr}
.mdp-airport-wrap{position:relative}
.mdp-airport-hint{
	display:block;min-height:1rem;margin-top:.2rem;font-size:.72rem;color:var(--mdp-muted);line-height:1.3
}
.mdp-opt{font-style:normal;font-weight:600;text-transform:none;letter-spacing:0;color:var(--mdp-muted);opacity:.9}
.mdp-airport-list{
	position:absolute;z-index:40;left:0;right:0;top:calc(100% + .25rem);
	max-height:16rem;overflow:auto;border:1px solid var(--mdp-line);border-radius:.8rem;
	background:var(--mdp-card);box-shadow:0 10px 28px rgba(15,23,42,.12);padding:.25rem
}
.mdp-ap-item{
	display:flex;align-items:flex-start;gap:.65rem;width:100%;text-align:left;
	border:0;background:transparent;color:inherit;cursor:pointer;border-radius:.6rem;
	padding:.5rem .55rem;font:inherit
}
.mdp-ap-item:hover,.mdp-ap-item.is-active{background:color-mix(in srgb,var(--mdp-accent) 12%,var(--mdp-page))}
.mdp-ap-code{
	flex:0 0 auto;min-width:2.6rem;font-weight:800;letter-spacing:.04em;font-size:.92rem;
	color:var(--mdp-accent)
}
.mdp-ap-text{display:flex;flex-direction:column;gap:.1rem;min-width:0}
.mdp-ap-city{font-weight:650;font-size:.88rem;line-height:1.25}
.mdp-ap-name{font-size:.75rem;color:var(--mdp-muted);line-height:1.25}
.mdp-toolbar{
	display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:.55rem;
	margin:.15rem 0 .55rem;padding:.55rem .65rem;border:1px solid var(--mdp-line);
	border-radius:.85rem;background:var(--mdp-card)
}
.mdp-sort-field{display:flex;flex-direction:column;gap:.2rem;min-width:min(100%,14rem)}
.mdp-sort-field span{
	font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--mdp-muted)
}
.mdp-sort-field select{
	width:100%;box-sizing:border-box;border:1px solid var(--mdp-line);border-radius:.7rem;
	background:var(--mdp-page);color:var(--mdp-ink);font:inherit;font-size:.9rem;padding:.55rem .7rem
}
.mdp-sort-count{font-size:.8rem;color:var(--mdp-muted);padding-bottom:.35rem}
.mdp-go{
	border:0;border-radius:.8rem;padding:.8rem 1rem;font-weight:700;cursor:pointer;font-size:.95rem;
	background:var(--mdp-accent);color:#fff
}
.mdp-go:disabled{opacity:.55;cursor:wait}
.mdp-status{min-height:1.2rem;margin:.55rem 0;font-size:.85rem;color:var(--mdp-muted)}
.mdp-status.is-error{color:#b91c1c}
.mdp-status.is-ok{color:#047857}
.mdp-result{margin-top:.35rem;display:flex;flex-direction:column;gap:.65rem}
.mdp-note,.mdp-disclaimer{
	margin:0;font-size:.85rem;line-height:1.4;color:var(--mdp-muted);
	border:1px solid var(--mdp-line);border-radius:.85rem;padding:.7rem .8rem;background:var(--mdp-card)
}
.mdp-disclaimer{font-size:.8rem}
.mdp-card{
	border:1px solid var(--mdp-line);border-radius:.95rem;padding:.85rem .9rem;background:var(--mdp-card);
	display:flex;flex-direction:column;gap:.45rem
}
.mdp-card-top{display:flex;flex-wrap:wrap;align-items:flex-start;gap:.45rem;justify-content:space-between}
.mdp-title{font-weight:800;font-size:1.02rem;line-height:1.3;margin:0}
.mdp-price{
	font-weight:800;font-size:1.15rem;letter-spacing:.01em;color:var(--mdp-accent);
	white-space:nowrap
}
.mdp-badge{
	font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;
	border-radius:999px;padding:.2rem .5rem;border:1px solid var(--mdp-line);color:var(--mdp-muted)
}
.mdp-badge.is-high,.mdp-badge.is-great{color:#047857;border-color:#a7f3d0;background:#ecfdf5}
.mdp-badge.is-medium,.mdp-badge.is-good{color:#b45309;border-color:#fde68a;background:#fffbeb}
.mdp-badge.is-low,.mdp-badge.is-fair{color:#b91c1c;border-color:#fecaca;background:#fef2f2}
.mdp-desc{margin:0;font-size:.9rem;line-height:1.4;color:var(--mdp-ink)}
.mdp-meta{display:flex;flex-wrap:wrap;gap:.55rem;font-size:.8rem;color:var(--mdp-muted)}
.mdp-meta a{color:var(--mdp-accent);text-decoration:underline}
.mdp-actions{display:flex;flex-wrap:wrap;gap:.4rem}
.mdp-alt{
	border:1px solid var(--mdp-line);background:var(--mdp-page);color:var(--mdp-ink);
	border-radius:.7rem;padding:.45rem .7rem;font-weight:700;cursor:pointer;font-size:.82rem;text-decoration:none;display:inline-flex;align-items:center
}
a.mdp-alt.primary{
	background:var(--mdp-accent);color:#fff;border-color:var(--mdp-accent)
}
.mdp-tips{margin:0;padding-left:1.1rem;font-size:.88rem;line-height:1.45;color:var(--mdp-muted)}
.mdp-empty{text-align:center;padding:1.2rem .8rem;color:var(--mdp-muted);border:1px dashed var(--mdp-line);border-radius:.9rem}
.mdp-recent{margin-top:1rem}
.mdp-recent-item{
	display:block;width:100%;text-align:left;margin:.4rem 0 0;padding:.55rem .7rem;
	border:1px solid var(--mdp-line);border-radius:.75rem;background:var(--mdp-card);color:inherit;cursor:pointer
}
.mdp-recent-item small{display:block;color:var(--mdp-muted);margin-top:.15rem}
/* Please-wait search modal */
.mdp-wait{
	position:fixed;inset:0;z-index:12000;display:flex;align-items:center;justify-content:center;
	padding:1rem;background:rgba(15,23,42,.48);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)
}
.mdp-wait[hidden]{display:none!important}
.mdp-wait-card{
	width:min(100%,22rem);border-radius:1.1rem;padding:1.35rem 1.25rem 1.2rem;text-align:center;
	background:var(--mdp-card);color:var(--mdp-ink);border:1px solid var(--mdp-line);
	box-shadow:0 22px 48px rgba(15,23,42,.28),0 0 0 1px rgba(255,255,255,.04) inset
}
.mdp-wait-spin{
	width:2.75rem;height:2.75rem;margin:0 auto .85rem;border-radius:999px;
	border:3px solid color-mix(in srgb,var(--mdp-accent) 22%,var(--mdp-line));
	border-top-color:var(--mdp-accent);
	animation:mdp-spin .75s linear infinite
}
.mdp-wait-title{margin:0;font-size:1.05rem;font-weight:800;letter-spacing:.01em}
.mdp-wait-sub{margin:.4rem 0 0;font-size:.88rem;line-height:1.4;color:var(--mdp-muted)}
@keyframes mdp-spin{to{transform:rotate(360deg)}}
@media (max-width:640px){
	.mdp-row,.mdp-row-3{grid-template-columns:1fr}
}

/* Promo code cards (absorbed Deal Scout + original Promo Finder) */
.mdp-code{
	font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-weight:800;font-size:1.05rem;
	letter-spacing:.02em;background:color-mix(in srgb,var(--mdp-accent) 12%,var(--mdp-card));
	border:1px dashed color-mix(in srgb,var(--mdp-accent) 40%,var(--mdp-line));
	border-radius:.55rem;padding:.35rem .55rem
}
.mdp-discount{font-weight:700;font-size:.98rem}
