/*****************************************************************
 * AMCO Portal V5 — Relationship Builder V3
 * Ontology-aware reusable relationship engine
 *****************************************************************/
.amco-rb-v3{width:100%;margin-top:14px}
.amco-rb-v3-header{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:12px}
.amco-rb-v3-title{font-size:16px;font-weight:900;color:#115e59}
.amco-rb-v3-subtitle{color:#64748b;font-size:12px;line-height:1.7}
.amco-rb-v3-grid,.dual-list{display:grid;grid-template-columns:minmax(360px,1fr) 116px minmax(420px,1.25fr);gap:20px;align-items:stretch;width:100%}
.amco-rb-v3-box,.dual-list-box{display:flex;flex-direction:column;min-width:0;background:linear-gradient(180deg,#ffffff,#f8fafc);border:1px solid var(--line,#e2e8f0);border-radius:20px;padding:12px;box-shadow:0 8px 22px rgba(15,23,42,.05)}
.amco-rb-v3-box label,.dual-list-box label{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:14px;font-weight:900;color:#115e59;margin-bottom:8px}
.amco-rb-v3-search,#ideaSearchInput{width:100%;margin-bottom:12px;border-radius:999px}
.amco-rb-v3-box select,.dual-list-box select{width:100%;height:56vh;min-height:470px;max-height:740px;overflow:auto;font-size:13px;line-height:1.7;padding:10px;border-radius:16px;background:#fff;border:1px solid #cbd5e1}
.amco-rb-v3-box select option,.dual-list-box select option{padding:8px 10px;border-bottom:1px solid #eef2f7;white-space:normal}
.amco-rb-v3-actions,.dual-list-actions{display:flex;flex-direction:column;justify-content:center;gap:12px}
.amco-rb-v3-actions button,.dual-list-actions button{min-width:96px;border-radius:999px;white-space:nowrap}
.amco-rb-v3-count{display:inline-flex;align-items:center;justify-content:center;min-width:32px;padding:4px 9px;border-radius:999px;background:#ecfdf5;color:#115e59;font-size:12px;font-weight:900}
.amco-rb-v3-summary,.amco-rb-v3-stats{margin-top:12px;background:linear-gradient(90deg,#ecfdf5,#f8fafc);border:1px dashed #99f6e4;border-radius:16px;padding:12px;color:#475569;font-size:13px;line-height:1.8}
.amco-rb-v3-summary strong,.amco-rb-v3-stats strong{color:#115e59}
.amco-rb-v3-meta{margin-top:12px;border:1px solid var(--line,#e2e8f0);border-radius:18px;padding:12px;background:#fff}
.amco-rb-v3-meta-grid{display:grid;grid-template-columns:repeat(3,minmax(180px,1fr));gap:12px}
.amco-rb-v3-validation{margin-top:10px;border-radius:14px;padding:10px 12px;font-size:13px;font-weight:800;display:none}
.amco-rb-v3-validation.show{display:block}.amco-rb-v3-validation.ok{background:#ecfdf5;color:#166534;border:1px solid #bbf7d0}.amco-rb-v3-validation.error{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}
@media(max-width:1200px){.amco-rb-v3-grid,.dual-list{grid-template-columns:1fr}.amco-rb-v3-actions,.dual-list-actions{flex-direction:row;justify-content:center;flex-wrap:wrap}.amco-rb-v3-box select,.dual-list-box select{height:42vh;min-height:340px}.amco-rb-v3-meta-grid{grid-template-columns:repeat(2,minmax(180px,1fr))}}
@media(max-width:700px){.amco-rb-v3-box select,.dual-list-box select{height:36vh;min-height:280px;font-size:12px}.amco-rb-v3-actions button,.dual-list-actions button{width:100%}.amco-rb-v3-meta-grid{grid-template-columns:1fr}}
