/* v2.6.0 Full Form Rehaul — "Mint Craft" Theme */
:root{
  --pf-ink:#1f2328;
  --pf-ink-soft:#4f5560;
  --pf-mint:#c9f1e2;
  --pf-mint-deep:#9be6cf;
  --pf-rose:#ffc2d9;
  --pf-sky:#bfe3ff;
  --pf-sun:#ffe6a8;
  --pf-border:#e8e2d9;
  --pf-white:#ffffff;
  --pf-panel:#fffaf2; /* lighter craft-paper */
  --pf-shadow: 0 16px 32px rgba(16,24,40,.08);
  --pf-focus: 0 0 0 3px rgba(0,153,255,.25);
}

/* Island container: highest specificity to beat theme backgrounds */
#tcl-pf-island{
  position: relative !important;
  z-index: 3 !important;
  background: transparent !important;
  isolation: isolate;
}
#tcl-pf-island *{ box-sizing: border-box; }

/* Panel */
#tcl-pf-island .tcl-pf-wrapper{
  background: var(--pf-panel) !important;
  border: 2px solid var(--pf-border) !important;
  border-radius: 24px !important;
  padding: 18px !important;
  box-shadow: var(--pf-shadow) !important;
  opacity: 1 !important;
  filter: none !important;
}

/* Scalloped header strip */
#tcl-pf-island .tcl-pf-header{
  position: relative;
  padding-bottom: 8px;
  margin-bottom: 12px;
}
#tcl-pf-island .tcl-pf-header::after{
  content:""; position:absolute; left:-18px; right:-18px; bottom:-6px; height:16px;
  background:
    radial-gradient(circle at 8px 8px, var(--pf-mint) 8px, transparent 9px) left/16px 16px repeat-x;
}
/* Titles always transparent (avoid dark halos) */
#tcl-pf-island .tcl-pf-title,
#tcl-pf-island .tcl-pf-subtitle{ background: transparent !important; }

/* Typography */
#tcl-pf-island .tcl-pf-title{
  font-family:'Amatic SC', system-ui, sans-serif;
  font-size: 2.6rem; line-height: 1; margin:0;
  color: var(--pf-ink);
}
#tcl-pf-island .tcl-pf-subtitle{
  font-family:'Nunito', system-ui, sans-serif; margin:6px 0 0;
  color: var(--pf-ink-soft);
}

/* Form card with mint tint */
#tcl_pf_form{
  background: var(--pf-white) !important;
  border: 2px solid var(--pf-border) !important;
  border-radius: 20px !important;
  padding: 14px !important;
  box-shadow: 0 10px 24px rgba(0,0,0,.06) !important;
}

/* Grid */
.tcl-pf-grid{ display:grid; grid-template-columns: repeat(auto-fit, minmax(230px,1fr)); gap: 14px; }
.tcl-span-2{ grid-column: span 2; }

/* Field: labels transparent + pill inputs */
.tcl-pf-field label{
  font: 700 .95rem/1 'Nunito', system-ui, sans-serif;
  color: var(--pf-ink);
  margin-bottom: 6px;
  background: transparent !important;
}
#tcl_pf_form input, #tcl_pf_form select{
  background: #fff !important;
  color: var(--pf-ink) !important;
  border: 2px solid var(--pf-border) !important;
  border-radius: 999px !important;
  padding: 12px 16px !important;
  min-height: 50px !important;
  outline: none;
}
#tcl_pf_form input:focus, #tcl_pf_form select:focus{ box-shadow: var(--pf-focus); border-color:#9dd6ff !important; }
#tcl_pf_form select[multiple]{
  border-radius: 16px !important;
  min-height: 200px !important;
  padding: 10px 12px !important;
}

/* Help text chip */
.tcl-help{
  display:inline-block; margin-top:6px;
  background: linear-gradient(90deg, var(--pf-mint), var(--pf-sky));
  color:#0b3b2f; font:700 .8rem/1 'Nunito', system-ui, sans-serif;
  padding:6px 10px; border-radius: 999px;
}

/* Buttons: big pills */
.tcl-pf-actions{ display:flex; gap:10px; flex-wrap:wrap; }
.tcl-btn{
  border:none; cursor:pointer;
  font: 800 .95rem/1 'Nunito', system-ui, sans-serif;
  padding: 12px 18px; min-height: 48px;
  border-radius: 999px;
}
.tcl-btn-primary{ background: linear-gradient(135deg, var(--pf-mint-deep), var(--pf-sky)); color:#05302a; }
.tcl-btn-ghost{ background: linear-gradient(135deg, var(--pf-rose), var(--pf-sun)); color:#5a1033; border: 0; }

/* Results cards — uniform */
.tcl-results{ margin-top: 16px; }
.tcl-grid{ display:grid; grid-template-columns: repeat(auto-fill, minmax(260px,1fr)); gap:14px; }
.tcl-card{
  background:#fff; border:2px solid var(--pf-border); border-radius:20px; overflow:hidden;
  text-decoration:none; color:var(--pf-ink);
  box-shadow: 0 8px 20px rgba(0,0,0,.06);
}
.tcl-card-thumb{ aspect-ratio:4/3; background: var(--pf-mint); }
.tcl-card-thumb img{ width:100%; height:100%; object-fit:cover; display:block; }
.tcl-card-body{ padding: 12px; }
.tcl-card-title{
  font-family:'Amatic SC', system-ui, sans-serif;
  font-size: 1.7rem; margin:0 0 6px;
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient: vertical; overflow:hidden; min-height:2.3em;
}
.tcl-card-excerpt{
  font-family:'Nunito', system-ui, sans-serif; color: var(--pf-ink-soft);
  display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient: vertical; overflow:hidden; min-height:3.3em; margin:0;
}

/* Pagination */
.tcl-pagination{ display:flex; justify-content:center; margin-top: 14px; }
.tcl-pagebar{ display:flex; gap:8px; flex-wrap:wrap; }
.tcl-pagebtn{
  background:#fff; border:2px solid var(--pf-border); color:var(--pf-ink);
  padding:10px 14px; border-radius:999px; min-height:44px; font-weight:800; cursor:pointer;
}
.tcl-pagebtn.is-current{ background:var(--pf-mint); border-color:transparent; }
.tcl-pagebtn.is-disabled{ opacity:.5; cursor:not-allowed; }

/* Skeleton/empty */
.tcl-skel{ display:grid; grid-template-columns: repeat(3,1fr); gap:14px; }
.tcl-skel span{ height:180px; border-radius:18px; background:linear-gradient(90deg,#eee,#f7f7f7,#eee); background-size:300% 100%; animation:pfShim 1.2s infinite; border:2px solid var(--pf-border); }
@keyframes pfShim{ 0%{background-position:0% 0} 100%{background-position:100% 0} }
.tcl-empty{ padding:16px; text-align:center; border:2px dashed var(--pf-border); border-radius:16px; background:#fffef9; font-weight:800; }

/* Aggressive dark/overlay neutralization for Shortcode/Group/Cover on Go theme */
body.theme-go .wp-block-shortcode:has(#tcl-pf-island),
body.theme-go .wp-block-group:has(#tcl-pf-island),
body.theme-go .wp-block-cover:has(#tcl-pf-island){
  background: transparent !important;
}
body.theme-go .wp-block-cover:has(#tcl-pf-island) .wp-block-cover__background{ opacity: 0 !important; }
body.theme-go .wp-block-cover .wp-block-cover__background{ z-index: 1; }
body.theme-go .wp-block-cover #tcl-pf-island{ position: relative; z-index: 2; }

/* Ensure labels/headings never pick up dark bg */
#tcl-pf-island .tcl-pf-field label,
#tcl-pf-island .tcl-pf-title,
#tcl-pf-island .tcl-pf-subtitle{
  background: transparent !important;
  background-image: none !important;
  mix-blend-mode: normal !important;
}

/* Inputs stay white & crisp even inside dark sections */
#tcl-pf-island #tcl_pf_form input,
#tcl-pf-island #tcl_pf_form select{
  background-color:#ffffff !important; color: var(--pf-ink) !important;
}

/* Mobile */
@media (max-width: 640px){
  .tcl-pf-grid{ grid-template-columns: 1fr; }
  #tcl_pf_form select[multiple]{ min-height: 160px; }
  .tcl-pf-actions .tcl-btn{ width:100%; }
  .tcl-grid{ grid-template-columns: 1fr; }
  #tcl-pf-island .tcl-pf-title{ font-size: 2.2rem; }
}

/* v2.6.1 web card domain meta */
.tcl-card-meta{ display:block; margin-top:6px; color:#667085; font-size:.78rem; }
