/*
 * AddMy.Link shared card system
 * Visual baseline derived from the Top 100 profile cards.
 * Keep public profile theme surfaces separate; this file targets app/discovery/card families.
 */
:root{
  --aml-card-bg:#fff;
  --aml-card-border:#dce3ee;
  --aml-card-radius:18px;
  --aml-card-shadow:0 10px 30px rgba(20,30,55,.07);
  --aml-card-shadow-hover:0 16px 38px rgba(20,30,55,.11);
  --aml-card-ink:#172033;
  --aml-card-muted:#687086;
  --aml-card-soft:#f7f8fc;
  --aml-card-chip:#eef0f5;
  --aml-card-blue-bg:#e8f4ff;
  --aml-card-blue-border:#c9e7fb;
  --aml-card-blue:#045b8b;
  --aml-card-dark:#111827;
  --aml-card-indigo:#312e81;
  --aml-card-featured-bg:#fff0c4;
  --aml-card-featured:#7b5900;
  --aml-card-live:#0aa85f;
}

/* Full reusable Top-100-style card component for profile/creator surfaces. */
.aml-card{
  overflow:hidden;
  min-width:0;
  border:1px solid var(--aml-card-border);
  border-radius:var(--aml-card-radius);
  background:var(--aml-card-bg);
  box-shadow:var(--aml-card-shadow);
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
.aml-card:hover{transform:translateY(-2px);box-shadow:var(--aml-card-shadow-hover)}
.aml-card-cover{
  position:relative;
  height:88px;
  background:radial-gradient(circle at 82% 16%,rgba(255,255,255,.22),transparent 22%),linear-gradient(135deg,#090b13 0%,#252344 62%,#5b50e7 100%);
}
.aml-card-cover.is-featured{background:radial-gradient(circle at 82% 16%,rgba(255,255,255,.26),transparent 22%),linear-gradient(135deg,#17110a 0%,#5f4212 58%,#b68824 100%)}
.aml-card-cover.is-live{background:radial-gradient(circle at 82% 16%,rgba(255,255,255,.24),transparent 22%),linear-gradient(135deg,#07150e 0%,#0c4a2b 60%,#12a866 100%)}
.aml-card-body{position:relative;display:flex;flex-direction:column;min-height:210px;padding:15px 16px 16px}
.aml-card-head{position:relative;min-height:50px;padding-left:70px}
.aml-card-avatar{position:absolute;left:0;top:-44px;width:58px;height:58px;border:4px solid #fff;border-radius:50%;object-fit:cover;background:#e8ecf4;box-shadow:0 8px 22px rgba(20,30,55,.22)}
.aml-card-name{overflow:hidden;color:var(--aml-card-ink);font-size:.98rem;font-weight:950;text-overflow:ellipsis;white-space:nowrap}
.aml-card-user{overflow:hidden;margin-top:3px;color:var(--aml-card-muted);font-size:.70rem;text-overflow:ellipsis;white-space:nowrap}
.aml-card-copy{display:-webkit-box;min-height:39px;margin:10px 0;overflow:hidden;color:#536074;font-size:.76rem;line-height:1.5;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.aml-card-meta{display:flex;gap:6px;flex-wrap:wrap;margin-top:auto;margin-bottom:10px}
.aml-card-chip{display:inline-flex;align-items:center;gap:5px;padding:6px 8px;border:1px solid #dce2eb;border-radius:999px;background:var(--aml-card-chip);color:#2b3445;font-size:.63rem;font-weight:900}
.aml-card-chip.views,.aml-card-chip.info{border-color:var(--aml-card-blue-border);background:var(--aml-card-blue-bg);color:var(--aml-card-blue)}
.aml-card-chip.featured{border-color:#f1d88d;background:var(--aml-card-featured-bg);color:var(--aml-card-featured)}
.aml-card-chip.live{border-color:#bfead3;background:#e9f9f0;color:#087942}
.aml-card-actions{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:8px}
.aml-card-actions>a,.aml-card-actions>button{display:flex;align-items:center;justify-content:center;gap:6px;min-height:42px;padding:9px;border-radius:11px;font-size:.71rem;font-weight:900;text-decoration:none!important}
.aml-card-primary{border:0!important;background:linear-gradient(135deg,var(--aml-card-dark),var(--aml-card-indigo))!important;color:#fff!important}
.aml-card-secondary{border:1px solid var(--aml-card-dark)!important;background:#fff!important;color:var(--aml-card-dark)!important}

/* Site-wide surface bridge: same border/radius/shadow language without forcing profile-card markup. */
.aml-app .card:not(.modal-content),
.aml-discovery-app .card:not(.modal-content),
body.aml-feed-page .feed-card,
body.aml-feed-page .composer-card,
body.aml-feed-page .feed-sponsored-card,
.app-panel,
.rail-panel,
.aml-dashboard-v2-card,
.aml-dashboard-v2-hero,
.gc-card,
.rr-card,
.rr-panel,
.spot-card,
.q-card,
.cat-card,
.fresh-card,
.drop-card,
.drop-side,
.result-card,
.lift-card,
.lift-rail-panel,
.lift-dir-rail,
.lift-featured,
.feed-sidebar-spotlight{
  border:1px solid var(--aml-card-border)!important;
  border-radius:var(--aml-card-radius)!important;
  background-color:var(--aml-card-bg)!important;
  box-shadow:var(--aml-card-shadow)!important;
}

/* Preserve intentionally branded/hero surfaces. */
.aml-dashboard-v2-hero,
.lift-dir-hero,
.rr-hero,
.spot-hero,
.drop-head,
.result-head,
.gc-hero,
.feed-intro{
  background-color:initial!important;
}

/* Interactive card families get the same subtle Top 100 lift. */
.aml-app .card:not(.modal-content):not(.composer-card),
.aml-discovery-app .card:not(.modal-content),
.feed-card,
.aml-dashboard-v2-card,
.gc-card,
.spot-card,
.q-card,
.cat-card,
.fresh-card,
.lift-card,
.lift-dir-rail{
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
@media (hover:hover){
  .aml-app .card:not(.modal-content):not(.composer-card):hover,
  .aml-discovery-app .card:not(.modal-content):hover,
  .feed-card:hover,
  .aml-dashboard-v2-card:hover,
  .gc-card:hover,
  .spot-card:hover,
  .q-card:hover,
  .cat-card:hover,
  .fresh-card:hover,
  .lift-card:hover,
  .lift-dir-rail:hover{
    transform:translateY(-2px);
    box-shadow:var(--aml-card-shadow-hover)!important;
  }
}

/* Consistent card headings/copy. */
.aml-dashboard-v2-card h2,
.gc-card h2,.gc-card h3,
.rr-panel h2,
.spot-card h2,.spot-card h3,
.q-card h2,.q-card h3,
.cat-card h2,.cat-card h3,
.fresh-card h2,.fresh-card h3,
.drop-card h1,.drop-card h2,.drop-side h3,
.result-card h1,.result-card h2,.result-card h3,
.lift-card h2,.lift-card h3,
.lift-dir-rail h3{
  color:var(--aml-card-ink);
  font-weight:950;
  letter-spacing:-.018em;
}

/* Shared pill treatment, inspired by Top 100 chips. */
.lift-tag,
.featured-badge,
.q-badge,
.fresh-tag,
.feed-reason-pill,
.feed-audience-chip,
.aml-top100-chip{
  border-radius:999px!important;
  font-weight:900!important;
}
.lift-tag,.q-badge,.fresh-tag{border:1px solid #dce2eb!important;background:var(--aml-card-chip)!important;color:#2b3445!important}
.featured-badge{border:1px solid #f1d88d!important;background:var(--aml-card-featured-bg)!important;color:var(--aml-card-featured)!important}

/* Primary and secondary actions now use the Top 100 dark-indigo language. */
.lift-btn.primary,
.cat-btn,
.fresh-btn.primary,
.drop-btn.primary,
.result-btn.primary,
.spot-actions .btn-primary,
.q-btn.primary,
.aml-dashboard-v2-actions-row .btn-primary,
.aml-dashboard-v2-primary{
  border-color:transparent!important;
  background:linear-gradient(135deg,var(--aml-card-dark),var(--aml-card-indigo))!important;
  color:#fff!important;
  box-shadow:none!important;
}
.lift-btn:not(.primary):not(.success),
.fresh-btn:not(.primary),
.drop-btn:not(.primary):not(.dark),
.result-btn:not(.primary),
.q-btn:not(.primary){
  border:1px solid var(--aml-card-dark)!important;
  background:#fff!important;
  color:var(--aml-card-dark)!important;
}

/* Free-user ads can sit in the same layout while staying unmistakably advertising. */
.feed-sponsored-card,.aml-sponsored-card{
  position:relative;
  border-color:#cfd8e8!important;
  background:#fbfcfe!important;
}
.feed-sponsored-card::before,.aml-sponsored-card::before{
  content:"Sponsored";
  display:inline-flex;
  align-items:center;
  margin:12px 14px 0;
  padding:5px 8px;
  border:1px solid #dce2eb;
  border-radius:999px;
  background:#eef0f5;
  color:#596579;
  font-size:.61rem;
  font-weight:900;
  letter-spacing:.03em;
  text-transform:uppercase;
}

/* Utility cover/avatar treatment for existing creator-card families that opt in later. */
.aml-card-cover-badge{position:absolute;top:11px;right:11px;display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border-radius:999px;background:rgba(255,255,255,.94);color:#3e365f;font-size:.66rem;font-weight:950}

@media(max-width:700px){
  .aml-card-actions{grid-template-columns:1fr}
  .aml-card-body{min-height:0}
}
@media(prefers-reduced-motion:reduce){
  .aml-card,
  .aml-app .card,
  .aml-discovery-app .card,
  .feed-card,
  .aml-dashboard-v2-card,
  .gc-card,
  .spot-card,
  .q-card,
  .cat-card,
  .fresh-card,
  .lift-card,
  .lift-dir-rail{transition:none!important;transform:none!important}
}


/* ==========================================================
   AddMy.Link shared card system V1.1
   Compatibility pass: make legacy/public card families match
   the Top 100 visual language and protect text contrast.
   ========================================================== */

/* More card families used across discovery, Creator Lift and dashboard. */
.aml-profile-card,
.aml-side-card,
.aml-drop,
.aml-empty,
.aml-discovery-search,
.lift-how>div,
.lift-goal,
.lift-drop,
.lift-priority,
.lift-data-wait,
.lift-flow-card,
.lift-checklist-item,
.lift-destination-card,
.lift-destination-preview,
.lift-connect-box,
.lift-drop-row,
.feed-skeleton-card,
.feed-empty-state,
.rr-wallet-option,
.rr-verification-gate,
.spot-stat,
.q-card,
.cat-card,
.fresh-card,
.drop-related a,
.drop-ref,
.result-stat{
  border:1px solid var(--aml-card-border)!important;
  border-radius:var(--aml-card-radius)!important;
  background:#fff!important;
  box-shadow:var(--aml-card-shadow)!important;
  color:var(--aml-card-ink)!important;
}

/* Compact nested cards keep the same language without becoming visually heavy. */
.lift-goal,
.lift-drop,
.lift-flow-card,
.lift-checklist-item,
.lift-destination-card,
.lift-destination-preview,
.lift-connect-box,
.lift-drop-row,
.drop-related a,
.drop-ref,
.result-stat,
.spot-stat{
  border-radius:14px!important;
  box-shadow:0 6px 18px rgba(20,30,55,.055)!important;
}

/* Ensure normal card text is readable even when older page CSS leaks theme colours. */
.aml-card,
.aml-profile-card,
.aml-side-card,
.aml-drop,
.lift-card,
.lift-rail-panel,
.lift-dir-rail,
.lift-featured,
.drop-card,
.drop-side,
.result-card,
.cat-card,
.fresh-card,
.q-card,
.rr-card,
.rr-panel,
.spot-card,
.gc-card{
  color:var(--aml-card-ink)!important;
}

.aml-card h1,.aml-card h2,.aml-card h3,
.aml-profile-card h1,.aml-profile-card h2,.aml-profile-card h3,
.aml-side-card h1,.aml-side-card h2,.aml-side-card h3,
.aml-drop h1,.aml-drop h2,.aml-drop h3,
.lift-card h1,.lift-card h2,.lift-card h3,
.lift-rail-panel h1,.lift-rail-panel h2,.lift-rail-panel h3,
.lift-dir-rail h1,.lift-dir-rail h2,.lift-dir-rail h3,
.drop-card h1,.drop-card h2,.drop-card h3,
.drop-side h1,.drop-side h2,.drop-side h3,
.result-card h1,.result-card h2,.result-card h3,
.cat-card h1,.cat-card h2,.cat-card h3,
.fresh-card h1,.fresh-card h2,.fresh-card h3,
.q-card h1,.q-card h2,.q-card h3,
.rr-card h1,.rr-card h2,.rr-card h3,
.rr-panel h1,.rr-panel h2,.rr-panel h3,
.spot-card h1,.spot-card h2,.spot-card h3,
.gc-card h1,.gc-card h2,.gc-card h3{
  color:var(--aml-card-ink)!important;
}

.aml-card p,.aml-profile-card p,.aml-side-card p,.aml-drop p,
.lift-card p,.lift-rail-panel p,.lift-dir-rail p,
.drop-card p,.drop-side p,.result-card p,.cat-card p,.fresh-card p,
.q-card p,.rr-card p,.rr-panel p,.spot-card p,.gc-card p{
  color:var(--aml-card-muted)!important;
}

/* Branded / dark hero areas are intentionally dark and must always use light text.
   This fixes dark headings leaking into Creator Lift Post Drop headers. */
.aml-top100-hero,
.aml-discovery-hero,
.lift-dir-hero,
.drop-head,
.result-head,
.rr-hero,
.spot-hero,
.gc-hero,
.feed-intro,
.aml-dashboard-v2-hero{
  color:#fff!important;
}
.aml-top100-hero h1,.aml-top100-hero h2,.aml-top100-hero h3,
.aml-discovery-hero h1,.aml-discovery-hero h2,.aml-discovery-hero h3,
.lift-dir-hero h1,.lift-dir-hero h2,.lift-dir-hero h3,
.drop-head h1,.drop-head h2,.drop-head h3,
.result-head h1,.result-head h2,.result-head h3,
.rr-hero h1,.rr-hero h2,.rr-hero h3,
.spot-hero h1,.spot-hero h2,.spot-hero h3,
.gc-hero h1,.gc-hero h2,.gc-hero h3,
.feed-intro h1,.feed-intro h2,.feed-intro h3,
.aml-dashboard-v2-hero h1,.aml-dashboard-v2-hero h2,.aml-dashboard-v2-hero h3{
  color:#fff!important;
}
.aml-top100-hero p,.aml-discovery-hero p,.lift-dir-hero p,.drop-head p,
.result-head p,.rr-hero p,.spot-hero p,.gc-hero p,.feed-intro p,.aml-dashboard-v2-hero p{
  color:rgba(255,255,255,.82)!important;
}
.drop-head .drop-kicker,.drop-head .drop-creator,
.result-head small,.result-head div,
.lift-dir-hero .lift-tag{
  color:rgba(255,255,255,.88)!important;
}

/* Exact Top 100 style creator/profile cards. */
.aml-profile-t100{
  overflow:hidden;
  min-width:0;
  border:1px solid var(--aml-card-border)!important;
  border-radius:var(--aml-card-radius)!important;
  background:#fff!important;
  box-shadow:var(--aml-card-shadow)!important;
  transition:transform .18s ease,box-shadow .18s ease;
}
@media (hover:hover){.aml-profile-t100:hover{transform:translateY(-2px);box-shadow:var(--aml-card-shadow-hover)!important}}
.aml-profile-t100 .aml-card-cover{height:88px}
.aml-profile-t100 .aml-card-body{min-height:210px}
.aml-profile-t100 .aml-card-copy{color:#536074!important}
.aml-profile-t100 .aml-card-actions{margin-top:auto}

/* Live profile card keeps the familiar green signal while preserving Top 100 geometry. */
.aml-profile-t100.is-live .aml-card-avatar{
  border-color:#16b86a;
  box-shadow:0 0 0 4px rgba(22,184,106,.15),0 8px 22px rgba(20,30,55,.22);
}
.aml-profile-t100.is-live .aml-card-cover{
  background:radial-gradient(circle at 82% 16%,rgba(255,255,255,.23),transparent 22%),linear-gradient(135deg,#07150e 0%,#0c4a2b 58%,#12a866 100%);
}

/* Mini side cards use the same top accent as Top 100 without needing an avatar. */
.aml-side-card,
.drop-side,
.lift-dir-rail,
.lift-rail-panel{
  position:relative;
  overflow:hidden;
}
.aml-side-card::before,
.drop-side::before,
.lift-dir-rail::before,
.lift-rail-panel::before{
  content:"";
  display:block;
  height:4px;
  margin:-1px -1px 13px;
  background:linear-gradient(90deg,#111827,#312e81,#5b50e7);
}

/* Buttons on legacy card families mirror Top 100 actions. */
.aml-d-btn,
.lift-btn,
.cat-btn,
.fresh-btn,
.drop-btn,
.result-btn,
.q-btn{
  border-radius:11px!important;
  font-weight:900!important;
}
.aml-d-btn:not(.outline):not(.secondary),
.lift-btn.primary,
.cat-btn,
.fresh-btn.primary,
.drop-btn.primary,
.result-btn.primary,
.q-btn.primary{
  border-color:transparent!important;
  background:linear-gradient(135deg,var(--aml-card-dark),var(--aml-card-indigo))!important;
  color:#fff!important;
}
.aml-d-btn.outline,.aml-d-btn.secondary,
.lift-btn:not(.primary):not(.success),
.fresh-btn:not(.primary),
.drop-btn:not(.primary):not(.dark),
.result-btn:not(.primary),
.q-btn:not(.primary){
  border:1px solid var(--aml-card-dark)!important;
  background:#fff!important;
  color:var(--aml-card-dark)!important;
}

/* Never allow Top-100 hover motion on touch-only devices. */
@media (hover:none){
  .aml-profile-t100:hover,.aml-card:hover{transform:none!important}
}


/* === Site-wide Google AdSense presentation === */
.aml-google-ad-card{
  width:100%;
  margin:16px 0;
  overflow:hidden;
  border:1px solid #dce3ee!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 10px 30px rgba(20,30,55,.07)!important;
}
.aml-google-ad-card::before{display:none!important}
.aml-google-ad-label{
  display:inline-flex;
  align-items:center;
  margin:12px 14px 0;
  padding:5px 8px;
  border:1px solid #dce2eb;
  border-radius:999px;
  background:#eef0f5;
  color:#596579;
  font-size:.61rem;
  font-weight:900;
  letter-spacing:.03em;
  text-transform:uppercase;
}
.aml-google-ad-unit{min-height:90px;padding:8px 12px 12px}
.aml-google-ad-upgrade{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:10px 14px;
  border-top:1px solid #edf0f5;
  background:#fbfcfe;
  color:#647083;
  font-size:.72rem;
}
.aml-google-ad-upgrade a{color:#312e81!important;font-weight:900;text-decoration:none!important}
.aml-google-ad-card--grid{grid-column:1/-1;margin:2px 0 4px}
.aml-google-ad-card--sidebar{margin:12px 0 0}
.aml-google-ad-card--compact .aml-google-ad-unit{min-height:60px;padding-top:4px}
.aml-google-ad-card--workspace{margin:0 0 16px}
@media(max-width:700px){
  .aml-google-ad-card{margin:12px 0}
  .aml-google-ad-upgrade{align-items:flex-start;flex-direction:column;gap:4px}
}
