/* Scoped styles to avoid interfering with theme/plugins */
.f230g-wrap { max-width: 860px; }
.f230g-form { box-sizing: border-box; }

/* Sections */
.f230g-section{
  margin: 0 0 18px 0;
  padding: 14px 14px 16px;
  border: 1px solid rgba(0,0,0,0.08);
  border-radius: 14px;
  background: rgba(255,255,255,0.85);
}

.f230g-section-title{
  font-weight: 800;
  font-size: 16px;
  margin: 0 0 12px 0;
  line-height: 1.2;
}

/* Grid base */
.f230g-grid { 
  display: grid; 
  gap: 12px; 
}

/* 4 columns layout */
.f230g-grid-4{
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

/* Column span helpers */
.f230g-col-1 { grid-column: span 1; }
.f230g-col-2 { grid-column: span 2; }
.f230g-col-3 { grid-column: span 3; }
.f230g-wide  { grid-column: 1 / -1; } /* full width */

/* Inputs */
.f230g-wrap label { display:block; font-weight:600; margin-bottom:6px; }
.f230g-wrap input, 
.f230g-wrap select { 
  width:100%; 
  padding:10px; 
  border:1px solid #ddd; 
  border-radius:10px; 
  box-sizing:border-box; 
}

/* Signature */
.f230g-sign { margin-top:16px; padding:12px; border:1px solid #eee; border-radius:14px; }
.f230g-sign-head { display:flex; justify-content:space-between; align-items:center; margin-bottom:10px; gap:10px; }
.f230g-clear { border:1px solid #ddd; background:#fff; padding:8px 10px; border-radius:10px; cursor:pointer; }
#f230g-canvas { width:100%; border:1px dashed #bbb; border-radius:12px;height: 150px; background:#fff; touch-action:none; display:block; }

/* Buttons + msg */
.f230g-submit { margin-top:14px; padding:12px 16px; border:0; border-radius:12px; cursor:pointer; width:100%; }
.f230g-msg { margin-top:10px; }
.f230g-msg.ok { color: #1a7f37; }
.f230g-msg.err { color: #b42318; }

/* GDPR checkbox */
.f230g-check { display:flex; gap:10px; align-items:flex-start; }
.f230g-check input { width:auto; margin-top:3px; }
.f230g-gdpr { margin-top:12px; padding:10px; border:1px solid #eee; border-radius:12px; }
.f230g-gdpr-link { display:block; font-weight:400; margin-top:6px; }

/* Honeypot */
.f230g-hp { position:absolute; left:-10000px; top:auto; width:1px; height:1px; overflow:hidden; }

/* Responsive */
@media (max-width: 980px){
  .f230g-grid-4{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .f230g-col-2,
  .f230g-col-3 { grid-column: span 2; }
}

@media (max-width: 520px){
  .f230g-grid-4{
    grid-template-columns: 1fr;
  }
  .f230g-col-2,
  .f230g-col-3,
  .f230g-wide { grid-column: 1 / -1; }
}
.f230g-wrap select {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background-color: #fff;
}
.f230g-section .f230g-grid:only-child,
.f230g-section .f230g-grid {
  margin-bottom: 0;
}
/* Nume / Prenume / Inițiala tatălui: 2fr / 2fr / 1fr */
.f230g-grid-3id{
  grid-template-columns: 2fr 2fr 1fr;
}

/* pe ecrane mici, să cadă frumos */
@media (max-width: 980px){
  .f230g-grid-3id{
    grid-template-columns: 1fr 1fr;
  }
  .f230g-grid-3id > div:last-child{
    grid-column: 1 / -1; /* inițiala pe rând separat */
  }
}

@media (max-width: 520px){
  .f230g-grid-3id{
    grid-template-columns: 1fr;
  }
}

/* 1) Stil simplu, în ton cu butoanele */
#f230g-form input[type="checkbox"]{
    width: 20px;
    height: 20px;
    accent-color: #f4c73d;
    cursor: pointer;
    margin-top: -2px;
}

/* 2) Aliniere frumoasă cu textul */
#f230g-form label{
  cursor: pointer;
}

/* 3) Opțional: un pic de spațiu între checkbox și text (dacă lipsește) */
#f230g-form input[type="checkbox"]{
  margin-right: 10px;
}