/* EFCA styles */
.efca-container {max-width: 860px; margin: 1.5rem auto; padding: 1rem; background: #fff; border-radius: 1rem; box-shadow: 0 10px 20px rgba(0,0,0,.06); font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, "Helvetica Neue", "Noto Sans", "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";}
.efca-title {font-size: 1.5rem; margin: 0 0 0.25rem;}
.efca-intro {color: #444; margin-bottom: 1rem;}
.efca-form {display: grid; gap: 1rem;}
.efca-question {padding: .75rem; border: 1px solid #eee; border-radius: .75rem; background: #fafafa;}
.efca-qtext {font-weight: 600; margin-bottom: .5rem;}
.efca-options {display: grid; grid-template-columns: repeat(5, minmax(0,1fr)); gap: .5rem;}
.efca-opt {padding: .6rem .5rem; border: 1px solid #e5e5e5; background: #fff; border-radius: .65rem; cursor: pointer; text-align: center;}
.efca-opt:hover {border-color: #b7c3d7; box-shadow: 0 0 0 3px rgba(100,120,200,.08);}
.efca-opt.selected {outline: 3px solid rgba(80,110,255,.25); border-color: #506eff; font-weight: 700;}
.efca-opt .efca-opt-value {display:block; font-size: .9rem;}
.efca-opt .efca-opt-text {display:block; font-size: .85rem; color:#444;}
.efca-actions {display: flex; gap: .5rem; align-items: center; margin-top: .5rem; flex-wrap: wrap;}
.efca-actions button {padding: .7rem 1rem; border-radius: .65rem; border: none; cursor: pointer;}
.efca-submit {background: #1e90ff; color: #fff;}
.efca-clear {background: #f0f0f0;}
.efca-print {background: #f0f0f0;}

.efca-result {margin-top: 1rem; padding: 1rem; border: 1px solid #eee; border-radius: .75rem; background:#fbfeff;}
.efca-scores {display:grid; gap:.5rem;}
.efca-score-row {display:grid; grid-template-columns: 1.5fr .8fr .7fr; align-items:center; padding:.5rem .6rem; border:1px dashed #e7eef8; border-radius:.6rem; background:#fff;}
.efca-score-scale {font-weight:600;}
.efca-badge {display:inline-block; padding:.25rem .6rem; border-radius:999px; font-size:.8rem; border:1px solid transparent;}
.efca-badge-baixo {background:#eef6ff; color:#1e4fa8;}
.efca-badge-médio, .efca-badge-medio {background:#fff7e6; color:#8a5b00;}
.efca-badge-alto {background:#ffecec; color:#a11b1b;}
.efca-dominant-box {margin-top:.75rem; padding:.8rem 1rem; border-left:4px solid #1e90ff; background:#eef6ff; border-radius:.4rem;}
.efca-refs {margin-top: .75rem;}
.efca-disclaimer {font-size:.9rem; color:#444;}
@media (max-width: 640px){
  .efca-options {grid-template-columns: repeat(2, minmax(0,1fr));}
  .efca-score-row {grid-template-columns: 1fr;}
}

.efca-footer {margin-top:1rem; padding: .75rem 1rem; display:flex; justify-content:space-between; align-items:center; background:#f9f8f7; border:1px solid #959A9322; border-radius:.75rem;}
.efca-brand {font-weight:600; color:#2b2b2b;}
.efca-wa {text-decoration:none; padding:.45rem .75rem; border-radius:.6rem; background:#959A93; color:#fff;}
