.btn { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:.7rem 1rem; border:1px solid transparent; border-radius:var(--radius-md); font-weight:700; text-decoration:none; transition:background var(--transition), border-color var(--transition), transform var(--transition); }
.btn:hover { transform: translateY(-1px); }
.btn-primary { background:var(--abb-green); color:#fff; }
.btn-primary:hover { background:var(--abb-green-dark); }
.btn-dark { background:var(--abb-black); color:#fff; }
.btn-dark:hover { background:var(--abb-anthracite); }
.btn-outline { border-color:var(--abb-border); background:#fff; color:var(--abb-text); }
.alert { padding:.8rem 1rem; border-radius:var(--radius-md); margin-bottom:1rem; }
.alert-error { color:var(--danger); background:var(--danger-soft); border:1px solid #F1BFBF; }
.user-chip { display:inline-flex; align-items:center; border-radius:999px; padding:.45rem .75rem; background:var(--abb-green-soft); color:var(--abb-green-deep); font-weight:700; }
.welcome-card { background:#fff; border:1px solid var(--abb-border); border-radius:var(--radius-lg); padding:1.5rem; box-shadow:var(--shadow-sm); }

/* F8.7.3 - Documentos COA: lista / grid */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.coa-search-form{display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:.55rem;align-items:center;margin-bottom:1rem}
.coa-search-form input{width:100%;min-height:42px}
.coa-search-btn{width:44px;height:42px;padding:0;display:grid;place-items:center}
.coa-browser-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:.25rem 0 1rem}
.coa-view-switch{display:inline-flex;gap:.35rem}
.coa-view-btn{display:grid;place-items:center;width:40px;height:40px;padding:0;border:1px solid var(--abb-border);border-radius:8px;background:#fff;color:var(--abb-text);cursor:pointer;font-size:1.05rem}
.coa-view-btn:hover{background:#f1f4f1}
.coa-view-btn.is-active{background:var(--abb-green);border-color:var(--abb-green);color:#fff}
.coa-view-panel[hidden]{display:none!important}
.coa-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:1rem}
.coa-file-card{position:relative;display:flex;flex-direction:column;min-width:0;min-height:230px;padding:1rem;border:1px solid #e0e5e0;border-radius:12px;background:#fff;box-shadow:0 2px 8px rgba(0,0,0,.035);transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}
.coa-file-card:hover{transform:translateY(-2px);box-shadow:0 7px 20px rgba(0,0,0,.08);border-color:#c9d7c9}
.coa-file-main{display:flex;flex:1;flex-direction:column;align-items:center;text-align:center;text-decoration:none;color:inherit;min-width:0}
.coa-file-icon{font-size:3.4rem;line-height:1;color:#b3261e;margin:.25rem 0 .7rem}
.coa-file-lot{font-size:1rem;max-width:100%;overflow-wrap:anywhere}
.coa-file-name{margin-top:.3rem;color:#626a62;font-size:.82rem;max-width:100%;overflow-wrap:anywhere}
.coa-file-meta{display:flex;align-items:center;justify-content:center;gap:.45rem;margin-top:.75rem;font-size:.8rem}
.coa-file-date{text-align:center;color:#737a73;font-size:.76rem;margin-top:.55rem}
.coa-file-download{position:absolute;right:.65rem;top:.65rem;display:grid;place-items:center;width:32px;height:32px;border-radius:7px;color:var(--abb-text);text-decoration:none}
.coa-file-download:hover{background:#edf4ed;color:var(--abb-green-deep)}
@media(max-width:650px){.coa-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.coa-file-card{min-height:210px;padding:.8rem}.coa-browser-head{align-items:center}}
@media(max-width:420px){.coa-grid{grid-template-columns:1fr}}

/* F8.7.3.1 - Carpetas logicas y Drag & Drop */
.coa-native-file{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}
#coaUploadForm{display:flex;align-items:center;gap:.8rem;flex-wrap:wrap}
.coa-upload-hint{color:#687068;font-size:.9rem}
.coa-breadcrumb{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap;margin-bottom:1rem;font-size:.9rem}
.coa-breadcrumb a{text-decoration:none;color:var(--abb-text);font-weight:700}
.coa-breadcrumb .bi-chevron-right{font-size:.7rem;color:#8a918a}
.coa-browser-actions{display:flex;align-items:center;gap:.6rem}
.coa-list-folders{display:flex;gap:.6rem;flex-wrap:wrap;margin-bottom:1rem}
.coa-list-folder{display:inline-flex;align-items:center;gap:.4rem;padding:.55rem .7rem;border:1px solid #e0e5e0;border-radius:8px;text-decoration:none;color:inherit;font-weight:700}
.coa-list-folder i,.coa-folder-main>i{color:#d6a100}
.coa-folder-card{position:relative;min-height:190px;border:1px solid #e0e5e0;border-radius:12px;background:#fff;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:1rem;transition:.15s ease}
.coa-folder-card.is-drop-target{border-color:var(--abb-green);background:#eef8f0;transform:scale(1.02)}
.coa-folder-main{display:flex;flex:1;width:100%;flex-direction:column;align-items:center;justify-content:center;gap:.7rem;text-decoration:none;color:inherit;text-align:center}
.coa-folder-main>i{font-size:4rem;line-height:1}
.coa-folder-main strong{max-width:100%;overflow-wrap:anywhere}
.coa-folder-actions{display:flex;gap:.3rem;position:absolute;right:.55rem;top:.55rem}
.coa-inline-folder-form{margin:0}
.coa-folder-action{display:grid;place-items:center;width:30px;height:30px;padding:0;border:0;border-radius:6px;background:transparent;cursor:pointer}
.coa-folder-action:hover{background:#eef1ee}
.coa-drop-overlay{position:fixed;z-index:20000;inset:0;background:rgba(20,28,22,.72);backdrop-filter:blur(2px);display:grid;place-items:center;padding:2rem}
.coa-drop-overlay[hidden]{display:none!important}
.coa-drop-overlay-box{width:min(620px,90vw);min-height:300px;border:3px dashed #54c46b;border-radius:20px;background:rgba(255,255,255,.96);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:.75rem;color:#173a20;box-shadow:0 20px 70px rgba(0,0,0,.3)}
.coa-drop-overlay-box i{font-size:4.5rem;color:var(--abb-green)}
.coa-drop-overlay-box strong{font-size:1.55rem}
.coa-drop-overlay-box span{color:#5f685f}
.coa-file-card[draggable=true]{cursor:grab}
.coa-file-card.is-dragging{opacity:.45}
@media(max-width:650px){.coa-browser-head{align-items:flex-start;flex-direction:column}.coa-browser-actions{width:100%;justify-content:space-between}.coa-new-folder{flex:1}}

/* =========================================================
   F8.7.3.2 - Resultado de importacion / notificaciones
   ========================================================= */
.coa-summary-cards{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  margin:18px 0 24px;
}
.coa-summary-card{
  display:grid;
  grid-template-columns:42px 1fr;
  grid-template-rows:auto auto;
  column-gap:12px;
  align-items:center;
  min-width:0;
  padding:16px 18px;
  border:1px solid var(--border,#dfe3e6);
  border-radius:12px;
  background:#fff;
  box-shadow:0 1px 2px rgba(0,0,0,.03);
}
.coa-summary-icon{
  grid-row:1 / span 2;
  display:inline-flex;
  width:40px;
  height:40px;
  align-items:center;
  justify-content:center;
  border-radius:10px;
  background:#f3f6f4;
  font-size:1.2rem;
}
.coa-summary-card strong{
  display:block;
  font-size:1.35rem;
  line-height:1.15;
}
.coa-summary-card span:not(.coa-summary-icon){
  display:block;
  margin-top:3px;
  color:#667085;
  font-size:.88rem;
  line-height:1.25;
}
.postnotify-wrap{margin-top:8px}
.postnotify-muted{color:#667085;font-size:.92rem}
.postnotify-toolbar{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:10px;
  margin:16px 0 12px;
}
.postnotify-icon-btn{
  display:inline-flex;
  width:36px;
  height:36px;
  align-items:center;
  justify-content:center;
  border:1px solid #cfd6d2;
  border-radius:8px;
  background:#fff;
  cursor:pointer;
}
.postnotify-icon-btn:hover{background:#f3f6f4}
.postnotify-selected{
  margin-left:2px;
  font-weight:600;
  white-space:nowrap;
}
.postnotify-send-btn{
  display:inline-flex !important;
  align-items:center;
  gap:7px;
  white-space:nowrap;
}
.postnotify-table{
  width:100%;
  border-collapse:separate;
  border-spacing:0;
  margin-top:8px;
}
.postnotify-table th,
.postnotify-table td{
  padding:11px 12px;
  text-align:left;
  vertical-align:middle;
  border-bottom:1px solid #e7e9e8;
}
.postnotify-table th{
  background:#f7f8f7;
  font-size:.86rem;
  font-weight:700;
}
.postnotify-table tbody tr:hover{background:#fafcfb}
.postnotify-table td:first-child,
.postnotify-table th:first-child{width:42px;text-align:center}
.postnotify-lots{white-space:normal}
.postnotify-pagination{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-top:18px;
}
.postnotify-pagination a{
  display:inline-flex;
  min-width:34px;
  height:34px;
  align-items:center;
  justify-content:center;
  padding:0 9px;
  border:1px solid #d7dcda;
  border-radius:7px;
  background:#fff;
  color:inherit;
  text-decoration:none;
}
.postnotify-pagination a.active{
  background:#2ca24c;
  border-color:#2ca24c;
  color:#fff;
  font-weight:700;
}
@media (max-width:900px){
  .coa-summary-cards{grid-template-columns:1fr}
  .postnotify-table{display:block;overflow-x:auto}
}

