/* EBCS Document Upload — scoped styles (all rules prefixed .ebcs- to avoid clashing with the theme) */
.ebcs-upload { max-width:540px; margin:0 auto; color:#1a1a1a;
  font-family:'Raleway',-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif; }
.ebcs-upload *, .ebcs-upload *::before, .ebcs-upload *::after { box-sizing:border-box; }

.ebcs-upload label { display:block; font-weight:600; font-size:.85rem; margin:16px 0 6px; }
.ebcs-upload .ebcs-req { color:#c0392b; }
.ebcs-upload input[type=text] { width:100%; padding:11px 12px; border:1px solid #dcdcdc;
  border-radius:8px; font-size:1rem; background:#fff; color:#1a1a1a; }

.ebcs-dropzone { border:2px dashed #dcdcdc; border-radius:10px; padding:24px 16px; text-align:center;
  cursor:pointer; transition:border-color .15s, background .15s; }
.ebcs-dropzone:hover, .ebcs-dropzone:focus-visible, .ebcs-dropzone.ebcs-drag { border-color:#0b6b3a; background:#f3faf6; outline:none; }
.ebcs-dz-icon { font-size:1.7rem; display:block; margin-bottom:6px; }
.ebcs-dz-text { font-size:.97rem; }
.ebcs-dz-text strong { color:#0b6b3a; }
.ebcs-dz-sub { display:block; font-size:.78rem; color:#888; margin-top:4px; }

.ebcs-filelist { list-style:none; margin:12px 0 0; padding:0; display:grid; gap:6px; }
.ebcs-frow { position:relative; overflow:hidden; display:flex; align-items:center; gap:10px;
  background:#f5f6f7; border:1px solid #dcdcdc; border-radius:8px; padding:9px 11px; font-size:.83rem; }
.ebcs-fname { flex:1 1 auto; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.ebcs-fsize { flex:none; color:#888; font-size:.74rem; white-space:nowrap; }
.ebcs-remove { flex:none; width:auto; border:0; background:none; color:#c0392b; cursor:pointer;
  font-size:1.05rem; line-height:1; padding:2px 6px; margin:0; }
.ebcs-track { position:absolute; left:0; bottom:0; height:3px; width:100%; background:transparent; }
.ebcs-fill { height:100%; width:0; background:#0b6b3a; transition:width .2s ease; }

.ebcs-btn { margin-top:22px; width:100%; padding:13px; border:0; border-radius:8px;
  background:#0b6b3a; color:#fff; font-size:1rem; font-weight:600; cursor:pointer; }
.ebcs-btn:hover { background:#095a31; }
.ebcs-btn:disabled { opacity:.55; cursor:default; }

.ebcs-status { margin-top:16px; font-size:.92rem; min-height:1.2em; }
.ebcs-status.ebcs-ok { color:#0b6b3a; }
.ebcs-status.ebcs-err { color:#c0392b; }
