/* Extraído de prototipo.html — mismos tokens, mismas clases.
   Cuando llegue el child theme (Fase 03) esto se reemplaza por su hoja global. */
:root{
  --green:#2D6A4F;--green-light:#D8F3DC;--green-dark:#1B4332;
  --terra:#C1694F;--terra-light:#FCEEE8;--terra-border:#D4956A;
  --gold:#B68D40;--gold-light:#FFF3D6;
  --cream:#FAF8F4;--cream-dark:#F0ECE3;
  --text:#1A1A1A;--text-mid:#4A4A4A;--text-light:#7A7A7A;--text-muted:#A0A0A0;
  --border:#E5E0D8;--card-bg:#FFFFFF;
  --radius:8px;--radius-lg:12px;--radius-pill:50px;
}
.serif{font-family:'Source Serif 4','Georgia',serif}

.btn-cta{display:inline-flex;align-items:center;gap:8px;padding:14px 28px;border-radius:var(--radius-pill);font-size:15px;font-weight:600;color:#fff;background:var(--green);transition:all .15s;white-space:nowrap;text-decoration:none;border:none;cursor:pointer}
.btn-cta:hover{background:var(--green-dark);transform:translateY(-1px)}

.filters{display:flex;gap:12px;max-width:960px;margin:0 auto 24px;padding:0 24px;flex-wrap:wrap}
.filter-group{display:flex;flex-direction:column;gap:4px;flex:1;min-width:150px}
.filter-group label{font-size:12px;font-weight:600;color:var(--text-light);text-transform:uppercase;letter-spacing:.3px}
.filter-group input,.filter-group select{padding:10px 14px;border-radius:var(--radius);border:1px solid var(--border);font-size:14px;background:var(--card-bg);color:var(--text);outline:none}
.filter-group input:focus,.filter-group select:focus{border-color:var(--green)}

.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;max-width:960px;margin:0 auto;padding:0 24px}
.profile-card{background:var(--card-bg);border-radius:var(--radius-lg);padding:22px 22px 18px;border:1px solid var(--border);border-left:4px solid var(--terra-border)}
.pc-title{font-size:17px;font-weight:700;margin-bottom:6px;line-height:1.3}
.pc-meta{font-size:13px;color:var(--text-light);margin-bottom:10px;display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.pc-tags{display:flex;gap:8px;margin-bottom:10px;flex-wrap:wrap}
.pc-tag{padding:4px 12px;border-radius:var(--radius-pill);font-size:12px;font-weight:600;background:var(--cream-dark);color:var(--text-mid);border:1px solid var(--border)}
.pc-desc{font-size:14px;color:var(--text-mid);line-height:1.6}
.pc-share-row{display:flex;gap:8px;margin-top:14px;padding-top:12px;border-top:1px solid var(--border);flex-wrap:wrap}
.btn-share{display:inline-flex;align-items:center;gap:5px;padding:7px 16px;border-radius:var(--radius-pill);font-size:13px;font-weight:600;background:var(--green-light);color:var(--green-dark);border:none;cursor:pointer;text-decoration:none}
.btn-share-li{background:#E8F4FD;color:#0A66C2}

.demo-chip{display:inline-flex;padding:3px 9px;border-radius:50px;background:#FFF3D6;color:#755819;border:1px solid #E8D5A0;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;margin-bottom:8px}

.empty{text-align:center;padding:48px 20px;color:var(--text-muted);grid-column:1/-1}
.empty .icon{font-size:40px;margin-bottom:8px}

.form-panel{max-width:620px;margin:0 auto;padding:32px 24px}
.form-panel h2{font-size:24px;font-weight:700;margin-bottom:6px}
.form-panel .sub{color:var(--text-light);margin-bottom:28px;font-size:14px}
.fg{margin-bottom:16px}
.fg-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.fg label{display:block;margin-bottom:5px;font-weight:600;font-size:13px;color:var(--text-mid)}
.fg input,.fg select,.fg textarea{width:100%;padding:11px 14px;border-radius:var(--radius);border:1px solid var(--border);font-size:14px;outline:none;background:var(--card-bg)}
.fg input:focus,.fg select:focus,.fg textarea:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(45,106,79,.1)}
.fg textarea{min-height:90px;resize:vertical}
.fg small{display:block;margin-top:6px;color:var(--text-light);font-size:12px}
.form-error{color:#C1694F;font-size:13px;margin:0 0 16px;background:var(--terra-light);padding:12px 16px;border-radius:var(--radius)}
.form-note{font-size:12px;color:var(--text-muted);margin-top:14px;text-align:center}

.success-box{background:var(--green-light);border:1px solid #95D5B2;border-radius:var(--radius-lg);padding:32px;text-align:center;color:var(--green-dark)}
.success-box .icon{font-size:44px;margin-bottom:8px}
.success-box h3{font-size:20px;margin-bottom:6px}

.consent-box{border:1px solid var(--border);border-radius:var(--radius-lg);padding:16px;margin:18px 0;background:#fff}
.consent-box legend{padding:0 8px;font-weight:700;font-size:14px;color:var(--green-dark)}
.check-row{display:flex;align-items:flex-start;gap:9px;font-size:13px;color:var(--text-mid);margin:10px 0;line-height:1.45}
.check-row input{width:17px;height:17px;margin-top:2px;flex:0 0 auto;accent-color:var(--green)}

@media(max-width:640px){
  .fg-row{grid-template-columns:1fr}
  .filters{padding:0 16px}
  .cards{padding:0 16px;grid-template-columns:1fr}
}
