/* ============================================================
   The Luna Dao — optimization layer v130
   Single source for post-v120 fixes: valid card structure,
   homepage IA, readability, reading tiers, responsive, popup.
   Loaded LAST so it intentionally wins the cascade.
   ============================================================ */

/* --- Valid product-card structure: the link fills the image frame --- */
.product-image-link{ display:block; width:100%; height:100%; }
.product-image .product-image-link img{ display:block; }

/* --- Homepage grid: default to 6 curated; expand on filter / view-all --- */
.is-home #intentGrid.is-limited .intent-card:nth-child(n+7){ display:none !important; }

/* --- De-duplicate collection entries on the homepage.
   The mood grid already maps feelings -> collections, so the two
   later duplicate blocks are hidden on home (pages themselves remain). --- */
.is-home .intention-section,
.is-home #featured-collections{ display:none; }

/* --- Show-all + feedback (homepage grid) --- */
#showAllWrap{ text-align:center; margin:26px 0 6px; }
.intent-feedback{ text-align:center; color:var(--muted,#a9987a); font-size:13px; margin:6px 0 14px; min-height:18px; }

/* --- Reading tiers: save-reading soft capture --- */
.save-reading{ margin:16px 0; padding:18px 20px; border:1px solid rgba(201,168,76,.25);
  border-radius:14px; background:linear-gradient(180deg,rgba(201,168,76,.08),rgba(201,168,76,.02)); text-align:center; }
.save-reading h4{ font-family:var(--serif,"Cormorant Garamond",Georgia,serif); color:var(--gold2,#e8c87a);
  font-size:22px; font-weight:600; margin-bottom:5px; }
.save-reading p{ font-size:13.5px; color:var(--muted,#a9987a); margin-bottom:12px; }
.sr-form{ display:flex; gap:8px; max-width:440px; margin:0 auto; }
.sr-form input{ flex:1; padding:10px 13px; border-radius:10px; border:1px solid rgba(201,168,76,.3);
  background:rgba(0,0,0,.3); color:#efe6d2; font-size:14px; }
.sr-form .btn-sm{ padding:10px 16px; white-space:nowrap; }
@media(max-width:560px){ .sr-form{ flex-direction:column; } }

/* neutral "more comes with the deep reading" note */
.ct-more{ font-size:13px; color:var(--muted,#a9987a); text-align:center; margin-top:8px; font-style:italic; }

/* plans compare extras */
.plans-other{ text-align:center; font-size:12.5px; color:var(--muted,#a9987a); margin-top:14px; line-height:1.6; }
.plans-other a{ color:var(--gold,#c9a84c); text-decoration:none; }
.plans-other a:hover{ text-decoration:underline; }
.dp-one{ display:block; font-size:13px; color:var(--muted,#a9987a); margin-top:4px; font-weight:400; }

/* --- Product detail: fulfillment facts strip --- */
.fulfill-strip{ display:flex; gap:14px; flex-wrap:wrap; margin:14px 0 4px;
  padding:14px 16px; border:1px solid rgba(201,168,76,.2); border-radius:13px; background:rgba(255,255,255,.02); }
.ff-item{ display:flex; gap:10px; align-items:flex-start; flex:1; min-width:230px; }
.ff-ico{ color:var(--gold,#c9a84c); font-size:22px; line-height:1.15; margin-top:2px; }
.ff-item strong{ display:block; font-size:13.5px; color:#efe6d2; font-weight:600; }
.ff-item small{ display:block; font-size:12px; color:var(--muted,#a9987a); margin-top:2px; line-height:1.45; }
.ff-item small a{ color:var(--gold,#c9a84c); text-decoration:none; }
.ff-item small a:hover{ text-decoration:underline; }

/* --- Widgets showcase page --- */
.wp-hero{ text-align:center; max-width:720px; margin:18px auto 34px; }
.wp-hero h1{ font-family:"Cormorant Garamond",Georgia,serif; font-size:clamp(34px,5vw,52px);
  font-weight:600; color:#efe6d2; line-height:1.1; }
.wp-lead{ font-size:16px; line-height:1.6; color:#b7a888; margin-top:14px; }
.wp-block{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:30px; align-items:center;
  padding:30px; border:1px solid rgba(201,168,76,.2); border-radius:18px;
  background:linear-gradient(180deg,rgba(255,255,255,.025),rgba(255,255,255,.005)); margin-bottom:28px; }
.wp-preview{ display:flex; justify-content:center; }
.wp-code h2{ font-family:"Cormorant Garamond",Georgia,serif; font-size:28px; font-weight:600; color:#e8c87a; margin-bottom:12px; }
.wp-points{ list-style:none; margin:0 0 16px; }
.wp-points li{ position:relative; padding-left:22px; font-size:14px; color:#d8ccb2; line-height:1.55; margin-bottom:8px; }
.wp-points li::before{ content:""; position:absolute; left:2px; top:9px; width:7px; height:7px; border-radius:50%; background:#c9a84c; }
.wp-clabel{ display:block; font-size:12px; letter-spacing:.08em; text-transform:uppercase; color:#c9a84c; margin-bottom:6px; font-weight:600; }
.wp-textarea{ width:100%; resize:vertical; padding:11px 13px; border-radius:10px; border:1px solid rgba(201,168,76,.3);
  background:rgba(0,0,0,.35); color:#d8ccb2; font-family:ui-monospace,Menlo,Consolas,monospace;
  font-size:12px; line-height:1.5; margin-bottom:12px; }
.wp-copied{ margin-left:12px; font-size:13px; color:#8fc78f; }
.wp-faq{ max-width:820px; margin:10px auto; }
.wp-faq h2{ font-family:"Cormorant Garamond",Georgia,serif; font-size:30px; color:#efe6d2; text-align:center; margin-bottom:20px; }
.wp-q{ border:1px solid rgba(201,168,76,.18); border-radius:13px; padding:16px 20px; margin-bottom:12px; background:rgba(255,255,255,.02); }
.wp-q h3{ font-size:16px; color:#e8c87a; margin-bottom:6px; font-weight:600; }
.wp-q p{ font-size:14px; color:#c3b69a; line-height:1.55; }
@media(max-width:860px){ .wp-block{ grid-template-columns:1fr; gap:22px; padding:22px; } }

/* --- Support panel: guarantee the open state in every cascade/env --- */
.support-dock.is-open .support-panel{
  opacity:1 !important; transform:translateY(0) scale(1) !important;
  pointer-events:auto !important; visibility:visible !important;
}
