/* AIDE Asset Maps - styles */
:root{
  --aide-purple:#5236b8;
  --aide-purple-dark:#452fa1;
  --aide-border:#d7d7e0;
  --aide-text:#1d1d1f;
  --aide-muted:#6b6b76;
  --aide-bg:#ffffff;
  --aide-surface:#f7f7fb;
}

.aide-am-wrap{font-family:inherit;color:var(--aide-text);}

.aide-am-hero{max-width:1200px;margin:0 auto;padding:28px 18px 14px;text-align:center;}
.aide-am-title{color:var(--aide-purple);font-size:56px;line-height:1.05;margin:0 0 10px;font-weight:800;letter-spacing:-0.02em;}
.aide-am-subtitle{color:var(--aide-muted);max-width:820px;margin:0 auto;font-size:16px;line-height:1.6;}

/*
  Layout notes:
  - Use auto-fit so the shortcode works inside narrow theme containers (not just full-width pages).
  - This prevents horizontal overflow where the map can be pushed off-screen on desktop.
*/
.aide-am-grid{max-width:1200px;margin:0 auto;padding:14px 18px 28px;display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px;align-items:stretch;}

@media (max-width:1100px){
  .aide-am-grid{grid-template-columns:1fr;}
  .aide-am-title{font-size:42px;}
}

.aide-am-filters,.aide-am-results,.aide-am-map{background:var(--aide-bg);border:1px solid var(--aide-border);border-radius:10px;overflow:hidden;}

/* Filters */
.aide-am-filters{padding:14px;}
.aide-am-help{font-size:14px;color:var(--aide-text);margin-bottom:12px;font-weight:600;}

.aide-am-field{margin-bottom:12px;}
.aide-am-sr{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden;}

.aide-am-input{display:flex;align-items:center;border:1px solid var(--aide-purple);border-radius:6px;padding:8px 10px;gap:8px;}
.aide-am-input input{border:0;outline:none;background:transparent;flex:1;font-size:14px;}
.aide-am-icon,.aide-am-marker{opacity:.85;}

.aide-am-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:6px;}

.aide-am-btn{border:1px solid var(--aide-border);border-radius:6px;padding:10px 12px;font-weight:700;cursor:pointer;background:#fff;font-size:14px;}
.aide-am-btn-primary{background:var(--aide-purple);border-color:var(--aide-purple);color:#fff;}
.aide-am-btn-primary:disabled{opacity:.55;cursor:not-allowed;}
.aide-am-btn-primary:hover:not(:disabled){background:var(--aide-purple-dark);border-color:var(--aide-purple-dark);}
.aide-am-btn-secondary{color:var(--aide-purple);border-color:var(--aide-purple);background:#fff;}
.aide-am-btn-secondary:hover{background:rgba(82,54,184,.06);}

/* Multi-select */
.aide-am-form select{display:none;}

.aide-am-ms{position:relative;}
.aide-am-ms-btn{width:100%;display:flex;align-items:center;justify-content:space-between;border:1px solid var(--aide-purple);border-radius:6px;padding:10px 12px;font-size:14px;font-weight:700;background:#fff;color:var(--aide-purple);cursor:pointer;}
.aide-am-ms-btn .aide-am-ms-label{display:flex;align-items:center;gap:6px;}
.aide-am-ms-btn .aide-am-ms-star{color:#c13038;font-weight:900;}
.aide-am-ms-btn .aide-am-ms-chevron{opacity:.8;}

.aide-am-ms-menu{position:absolute;z-index:40;left:0;right:0;margin-top:6px;background:#fff;border:1px solid var(--aide-border);border-radius:10px;box-shadow:0 10px 30px rgba(0,0,0,.10);max-height:280px;overflow:auto;display:none;padding:6px;}
.aide-am-ms.open .aide-am-ms-menu{display:block;}

.aide-am-ms-item{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:8px;cursor:pointer;font-size:14px;}
.aide-am-ms-item:hover{background:rgba(82,54,184,.06);}
.aide-am-ms-item input{width:16px;height:16px;}

/* Results */
.aide-am-results{display:flex;flex-direction:column;}
.aide-am-results-header{padding:10px 12px;border-bottom:1px solid var(--aide-border);}
.aide-am-results-title{font-weight:800;color:var(--aide-purple);font-size:14px;}
.aide-am-results-meta{margin-top:4px;color:var(--aide-muted);font-size:12px;}

.aide-am-results-list{overflow:auto;max-height:680px;}

.aide-am-card{padding:12px;border-bottom:1px solid var(--aide-border);cursor:pointer;}
.aide-am-card:hover{background:rgba(82,54,184,.04);}
.aide-am-card.active{background:rgba(82,54,184,.07);}

.aide-am-card-title{color:var(--aide-purple);font-weight:900;font-size:18px;line-height:1.2;margin:0 0 6px;}
.aide-am-card-row{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;}
.aide-am-card-loc{color:var(--aide-text);font-weight:800;letter-spacing:.02em;}
.aide-am-card-dist{color:var(--aide-text);font-weight:900;}
.aide-am-card-addr{margin-top:4px;color:var(--aide-muted);font-size:13px;line-height:1.35;}
.aide-am-card-actions{margin-top:10px;display:flex;gap:10px;align-items:center;}
.aide-am-link{color:var(--aide-purple);font-weight:800;text-decoration:none;border:1px solid var(--aide-purple);border-radius:6px;padding:8px 10px;font-size:13px;}
.aide-am-link:hover{background:rgba(82,54,184,.06);}

.aide-am-results-footer{padding:10px 12px;}

/* Map */
.aide-am-map-inner{position:relative;width:100%;height:100%;min-height:640px;min-width:0;}
#aide-am-map{width:100%;height:100%;min-height:640px;min-width:0;}

@media (max-width:1100px){
  .aide-am-map-inner{min-height:520px;}
  #aide-am-map{min-height:520px;}
  .aide-am-results-list{max-height:420px;}
}

.aide-am-map-missing{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:24px;background:var(--aide-surface);color:var(--aide-text);font-weight:700;text-align:center;}

/* Single asset page */
.aide-am-single-wrap{max-width:1200px;margin:0 auto;padding:0 18px 28px;}
.aide-am-single-hero{background:var(--aide-purple);color:#fff;border-radius:10px;margin:18px 0 18px;padding:18px 18px;}
.aide-am-single-hero h1{margin:0;font-size:32px;line-height:1.15;font-weight:900;}

.aide-am-single-top{display:grid;grid-template-columns:1.2fr .9fr;gap:18px;align-items:start;}
@media (max-width:900px){
  .aide-am-single-top{grid-template-columns:1fr;}
}

.aide-am-single-desc{background:#fff;border:1px solid var(--aide-border);border-radius:10px;padding:18px;}
.aide-am-single-desc p{margin:0 0 12px;color:var(--aide-text);line-height:1.6;}

.aide-am-single-side{background:#fff;border:1px solid var(--aide-border);border-radius:10px;padding:18px;}
.aide-am-logo{width:140px;height:auto;display:block;margin:0 auto 14px;}
.aide-am-kv{display:grid;gap:12px;}
.aide-am-kv h3{margin:0 0 4px;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--aide-text);font-weight:900;}
.aide-am-kv .aide-am-kv-val{color:var(--aide-muted);font-weight:800;font-size:13px;}

.aide-am-single-table{margin-top:16px;border-top:2px solid var(--aide-purple);padding-top:12px;display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px;}
@media (max-width:900px){
  .aide-am-single-table{grid-template-columns:1fr;}
}
.aide-am-single-table h4{margin:0 0 6px;color:var(--aide-text);font-size:12px;text-transform:uppercase;letter-spacing:.06em;font-weight:900;}
.aide-am-single-table .aide-am-single-cell{color:var(--aide-muted);font-weight:700;font-size:13px;line-height:1.4;}

.aide-am-single-mapwrap{margin-top:14px;background:#fff;border:1px solid var(--aide-border);border-radius:10px;overflow:hidden;}
#aide-am-single-map{width:100%;height:520px;}

/* Ensure WP theme styles don't break */
.aide-am-wrap *{box-sizing:border-box;}
.aide-am-single-wrap *{box-sizing:border-box;}

/* ------------------------------
   Single Asset Page (v2 layout)
   Matches template classes in templates/single-aide_asset.php
--------------------------------*/

.aide-am-single-hero{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;}
.aide-am-single-kicker{font-size:12px;letter-spacing:.10em;text-transform:uppercase;font-weight:900;opacity:.92;}
.aide-am-single-title{margin:6px 0 0;font-size:34px;line-height:1.12;font-weight:900;letter-spacing:-0.01em;}
.aide-am-single-sub{margin-top:10px;display:flex;flex-wrap:wrap;gap:8px;color:rgba(255,255,255,.92);font-weight:700;}
.aide-am-dot{opacity:.75;}

.aide-am-single-hero-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center;}
.aide-am-single-hero-actions .aide-am-btn{border-color:rgba(255,255,255,.40);background:rgba(255,255,255,.14);color:#fff;}
.aide-am-single-hero-actions .aide-am-btn:hover{background:rgba(255,255,255,.20);}
.aide-am-single-hero-actions .aide-am-btn-primary{background:#fff;border-color:#fff;color:var(--aide-purple);}
.aide-am-single-hero-actions .aide-am-btn-primary:hover{background:rgba(255,255,255,.92);}

.aide-am-single-grid{display:grid;grid-template-columns:1.35fr .9fr;gap:16px;align-items:start;}
@media (max-width:980px){
  .aide-am-single-grid{grid-template-columns:1fr;}
  .aide-am-single-title{font-size:28px;}
}

.aide-am-single-card{background:#fff;border:1px solid var(--aide-border);border-radius:10px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.04);}
.aide-am-single-main .aide-am-single-card{margin-bottom:16px;}
.aide-am-single-aside .aide-am-single-card{margin-bottom:16px;}

.aide-am-single-card-title{font-size:12px;text-transform:uppercase;letter-spacing:.10em;font-weight:900;color:var(--aide-text);margin:0 0 10px;}
.aide-am-single-card-body{color:var(--aide-text);line-height:1.65;font-size:14px;}
.aide-am-single-card-body p{margin:0 0 12px;}
.aide-am-single-card-body p:last-child{margin-bottom:0;}

.aide-am-single-map{border-radius:10px;overflow:hidden;border:1px solid var(--aide-border);}
#aide-am-single-map{width:100%;height:420px;}
@media (max-width:980px){
  #aide-am-single-map{height:360px;}
}
.aide-am-single-map-caption{margin-top:10px;color:var(--aide-muted);font-weight:800;font-size:13px;}

.aide-am-single-logo-wrap{display:flex;align-items:center;justify-content:center;padding:6px 0 14px;margin-bottom:12px;border-bottom:1px solid var(--aide-border);}
.aide-am-single-logo{max-width:160px;max-height:80px;width:auto;height:auto;object-fit:contain;}

.aide-am-kv{display:grid;gap:10px;}
.aide-am-kv-row{display:grid;grid-template-columns:130px 1fr;gap:10px;align-items:start;}
@media (max-width:980px){
  .aide-am-kv-row{grid-template-columns:120px 1fr;}
}
.aide-am-kv-k{font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:900;color:var(--aide-text);}
.aide-am-kv-v{color:var(--aide-muted);font-weight:800;font-size:13px;line-height:1.45;word-break:break-word;}

.aide-am-tags{display:grid;gap:10px;}
.aide-am-tag-row{display:grid;grid-template-columns:130px 1fr;gap:10px;align-items:start;}
.aide-am-tag-k{font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:900;color:var(--aide-text);}
.aide-am-tag-v{color:var(--aide-muted);font-weight:800;font-size:13px;line-height:1.45;word-break:break-word;}

.aide-am-muted{color:var(--aide-muted);font-weight:800;font-size:13px;}

