.fbc-wrap{max-width:980px;margin:0 auto;padding:16px;border:1px solid rgba(0,0,0,.08);border-radius:14px}
.fbc-header{margin-bottom:14px}.fbc-title{margin:0 0 6px}.fbc-subtitle{margin:0;opacity:.85}.fbc-subnote{margin:8px 0 0;opacity:.8;font-size:12px}
.fbc-req{color:#b00020}.fbc-hr{border:none;border-top:1px solid rgba(0,0,0,.1);margin:18px 0}
.fbc-steps{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0 18px}
.fbc-step{border:1px solid rgba(0,0,0,.14);background:transparent;padding:8px 10px;border-radius:999px;cursor:pointer;font-size:13px}
.fbc-step.is-active{font-weight:700}
.fbc-panel{display:none}.fbc-panel.is-active{display:block}
.fbc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}
.fbc-card{border:1px solid rgba(0,0,0,.14);border-radius:14px;padding:12px;display:block;cursor:pointer}
.fbc-card input{margin-right:8px}.fbc-card-title{display:block;font-weight:700;margin-top:6px}.fbc-card-desc{display:block;opacity:.85;margin-top:6px;font-size:13px}
.fbc-row{margin:12px 0}.fbc-label{display:block;font-weight:600;margin-bottom:6px}.fbc-help{margin:6px 0 0;opacity:.8;font-size:12px}
.fbc-inline{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.fbc-wraplines label{white-space:nowrap}
.fbc-row input[type=text],.fbc-row input[type=email],.fbc-row input[type=number],.fbc-row input[type=file],.fbc-row select,.fbc-row textarea{width:100%;max-width:560px;padding:9px 10px;border:1px solid rgba(0,0,0,.18);border-radius:10px;box-sizing:border-box}
.fbc-actions{display:flex;gap:10px;justify-content:space-between;margin-top:14px}
.fbc-btn{padding:10px 14px;border-radius:12px;border:1px solid rgba(0,0,0,.18);background:transparent;cursor:pointer}
.fbc-btn-primary{font-weight:700}
.is-hidden{display:none!important}
.fbc-reco{margin-top:14px;padding:12px;border-radius:14px;border:1px dashed rgba(0,0,0,.25)}
.fbc-reco-title{font-weight:700;margin-bottom:6px}
.fbc-warnings{margin:8px 0 0;padding-left:16px}
.fbc-summary{white-space:pre-wrap;border:1px solid rgba(0,0,0,.14);padding:12px;border-radius:14px;background:rgba(0,0,0,.02)}
.fbc-errors{border:1px solid rgba(176,0,32,.35);background:rgba(176,0,32,.06);padding:10px 12px;border-radius:12px;margin-bottom:12px}
.fbc-status{margin-top:12px}.fbc-status.is-error{color:#b00020}
.fbc-table{width:100%;border-collapse:collapse}
.fbc-table th,.fbc-table td{border-bottom:1px solid rgba(0,0,0,.1);padding:10px;text-align:left;vertical-align:top}
.fbc-pre{white-space:pre-wrap;margin:0}

.fbc-ref{padding:12px;border:1px solid rgba(0,0,0,.12);border-radius:14px;background:rgba(0,0,0,.01)}
.fbc-ref-title{font-weight:700;margin-bottom:10px}
.fbc-ref-wrap{display:flex;gap:14px;align-items:flex-start;flex-wrap:wrap}
.fbc-ref-figure{width:240px;min-height:150px;display:flex;align-items:center;justify-content:center;border:1px dashed rgba(0,0,0,.22);border-radius:14px;background:rgba(0,0,0,.02);padding:10px;color:rgba(0,0,0,.8)}
.fbc-ref-figure svg{max-width:100%;height:auto}
.fbc-ref-notes{flex:1;min-width:240px}


/* v0.4.0 Step 2 two-column layout */
.fbc-step2-grid{
  display:flex;
  gap:16px;
  align-items:flex-start;
}
.fbc-step2-left{ flex: 1 1 520px; min-width:0; }
.fbc-step2-right{ flex: 0 0 360px; max-width: 420px; }
@media (max-width: 900px){
  .fbc-step2-grid{ flex-direction:column; }
  .fbc-step2-right{ flex: 1 1 auto; max-width: none; width:100%; }
}

.fbc-ref{
  border:1px solid rgba(0,0,0,0.08);
  border-radius:12px;
  padding:12px;
  background:#fff;
}
.fbc-ref-title{
  font-weight:600;
  margin-bottom:8px;
}
.fbc-ref-wrap{
  display:flex;
  gap:12px;
  align-items:flex-start;
}
.fbc-ref-figure{
  width:340px;
  max-width:100%;
  border:1px dashed rgba(0,0,0,0.15);
  border-radius:10px;
  padding:8px;
  min-height:210px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.fbc-ref-figure svg{ max-width:100%; height:auto; }
@media (max-width: 900px){
  .fbc-ref-wrap{ flex-direction:column; }
  .fbc-ref-figure{ width:100%; }
}
