/* ALTEK V14.17 / Complaints S11. Presentation-only; no business state changes.
   All active registry styling is structural to resist the 10 s background DOM patch. */
.workspace > .wrap:has(> .complaint-registry-card) {
  --ac-bg:#F2F8F9;--ac-card:#F9FCFD;--ac-raised:#F5FAFB;--ac-feature:#F9FCFD;--ac-hover:#D6E6E1;
  --ac-line:#D6E4E7;--ac-ink:#293741;--ac-muted:#54666C;--ac-accent:#518D80;
  --ac-shadow:0 2px 6px rgba(24,44,56,.025),0 16px 38px rgba(24,44,56,.065);
  min-height:100%;padding:16px!important;border-radius:18px;
  background:var(--ac-bg);color:var(--ac-ink);
  font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
}
html[data-theme="dark"] .workspace > .wrap:has(> .complaint-registry-card) {
  --ac-bg:#142833;--ac-card:#1B2E38;--ac-raised:#2A4350;--ac-hover:#36545D;--ac-feature:var(--ac-raised);
  --ac-line:#43606D;--ac-ink:#EAF4F5;--ac-muted:#BCD0D7;--ac-accent:#87BDB3;
  --ac-shadow:0 2px 6px rgba(0,0,0,.12),0 16px 38px rgba(0,0,0,.20);
}
.workspace > .wrap:has(> .complaint-registry-card) .page-title{color:var(--ac-ink)!important;letter-spacing:-.03em}
.workspace > .wrap:has(> .complaint-registry-card) .page-subtitle,
.workspace > .wrap:has(> .complaint-registry-card) .muted{color:var(--ac-muted)!important}
.workspace > .wrap:has(> .complaint-registry-card) > .card {
  background:var(--ac-card)!important;border:1px solid var(--ac-line)!important;
  box-shadow:var(--ac-shadow)!important;border-radius:18px!important;
  padding:18px 20px!important;margin-bottom:15px!important;color:var(--ac-ink)!important;
}
.workspace > .wrap:has(> .complaint-registry-card) > .card :is(h2,h3){color:var(--ac-ink)!important;letter-spacing:-.02em}
.workspace > .wrap:has(> .complaint-registry-card) .input {
  background:var(--ac-feature)!important;color:var(--ac-ink)!important;
  border:1px solid var(--ac-line)!important;border-radius:11px!important;
  min-height:44px;transition:border-color .22s,box-shadow .22s;
}
.workspace > .wrap:has(> .complaint-registry-card) .input::placeholder{color:var(--ac-muted);opacity:.85}
.workspace > .wrap:has(> .complaint-registry-card) .input:focus{
  outline:2px solid var(--ac-accent);outline-offset:1px;border-color:var(--ac-accent)!important;
}
.workspace > .wrap:has(> .complaint-registry-card) .btn {
  border:1px solid var(--ac-line)!important;border-radius:11px!important;
  background:var(--ac-raised)!important;color:var(--ac-ink)!important;
  min-height:38px;box-shadow:0 2px 5px rgba(0,0,0,.035)!important;
  transition:background .22s,border-color .22s,transform .22s,box-shadow .22s!important;
}
.workspace > .wrap:has(> .complaint-registry-card) .btn:not(:disabled):hover {
  background:var(--ac-hover)!important;border-color:var(--ac-accent)!important;
  transform:translateY(-2px);box-shadow:0 8px 20px rgba(15,43,54,.12)!important;
}
.workspace > .wrap:has(> .complaint-registry-card) .btn:active {transform:translateY(0)}
.workspace > .wrap:has(> .complaint-registry-card) .btn:focus-visible{outline:2px solid var(--ac-accent);outline-offset:2px}
.workspace > .wrap:has(> .complaint-registry-card) .complaint-create-btn {
  background:#355E60!important;color:#F4F9F8!important;border-color:#355E60!important;
  padding-inline:17px!important;font-weight:750;
}
html[data-theme="dark"] .workspace > .wrap:has(> .complaint-registry-card) .complaint-create-btn {
  background:#2B625F!important;color:#EFFBF8!important;border-color:#3C8882!important;
}
.workspace > .wrap:has(> .complaint-registry-card) .complaint-create-btn:hover {
  filter:none!important;background:#477B77!important;color:#fff!important;
}
/* Live KPI: hover only (not clickable; values remain sourced from complaintsView()). */
.workspace > .wrap:has(> .complaint-registry-card) > .card:not(.complaint-registry-card) .summary{
  display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px!important;
  padding:0!important;margin-top:16px!important;background:transparent!important;border:0!important;
}
.workspace > .wrap:has(> .complaint-registry-card) > .card:not(.complaint-registry-card) .summary > .metric {
  min-width:0;min-height:105px;display:flex;flex-direction:column;justify-content:center;align-items:center;
  background:var(--ac-feature)!important;color:var(--ac-ink)!important;
  border:1px solid var(--ac-line)!important;border-radius:15px!important;
  box-shadow:0 2px 8px rgba(12,35,48,.035)!important;
  padding:15px 12px!important;transition:transform .25s cubic-bezier(.22,.78,.17,1),background .22s,border-color .22s,box-shadow .22s!important;
}
.workspace > .wrap:has(> .complaint-registry-card) > .card:not(.complaint-registry-card) .summary > .metric:hover {
  background:var(--ac-hover)!important;border-color:var(--ac-accent)!important;
  transform:translateY(-3px);box-shadow:0 12px 24px rgba(13,43,55,.105)!important;
}
.workspace > .wrap:has(> .complaint-registry-card) .summary > .metric > b {
  font-size:29px!important;font-weight:780;letter-spacing:-.04em;color:var(--ac-ink)!important;
  font-variant-numeric:tabular-nums;
}
.workspace > .wrap:has(> .complaint-registry-card) .summary > .metric > .muted {font-size:12px!important;margin-top:8px!important}
/* Registry rows use native .complaint-registry-row; no fragile visual JS class. */
.workspace > .wrap:has(> .complaint-registry-card) .complaint-registry-list {gap:10px!important}
.workspace > .wrap:has(> .complaint-registry-card) .complaint-registry-list > .complaint-registry-row {
  background:var(--ac-feature)!important;color:var(--ac-ink)!important;
  border:1px solid var(--ac-line)!important;border-radius:14px!important;
  min-width:0;min-height:82px!important;cursor:pointer;
  box-shadow:0 2px 8px rgba(10,35,48,.035)!important;
  transition:background .22s,border-color .22s,box-shadow .22s,transform .22s!important;
}
.workspace > .wrap:has(> .complaint-registry-card) .complaint-registry-list > .complaint-registry-row.is-open {
  background:linear-gradient(90deg,rgba(192,132,114,.095),var(--ac-feature) 31%)!important;
}
.workspace > .wrap:has(> .complaint-registry-card) .complaint-registry-list > .complaint-registry-row.is-closed {
  background:linear-gradient(90deg,rgba(93,161,129,.09),var(--ac-feature) 31%)!important;
}
.workspace > .wrap:has(> .complaint-registry-card) .complaint-registry-list > .complaint-registry-row:hover,
.workspace > .wrap:has(> .complaint-registry-card) .complaint-registry-list > .complaint-registry-row:focus-visible {
  background:var(--ac-hover)!important;border-color:var(--ac-accent)!important;
  box-shadow:inset 3px 0 0 var(--ac-accent),0 10px 22px rgba(11,38,51,.14)!important;
  transform:translateY(-2px);outline:none;
}
.workspace > .wrap:has(> .complaint-registry-card) .complaint-registry-list > .complaint-registry-row:active {transform:translateY(0)}
.workspace > .wrap:has(> .complaint-registry-card) .complaint-registry-number b{color:var(--ac-ink)!important}
.workspace > .wrap:has(> .complaint-registry-card) .complaint-registry-number span {color:var(--ac-muted)!important}
.workspace > .wrap:has(> .complaint-registry-card) .complaint-registry-line {color:var(--ac-ink)!important}
.workspace > .wrap:has(> .complaint-registry-card) .complaint-registry-line > span {min-width:0}
.workspace > .wrap:has(> .complaint-registry-card) .complaint-registry-status.open b {
  border:1px solid #996D67!important;background:rgba(128,65,62,.15)!important;color:#A14F48!important;border-radius:999px!important;
}
html[data-theme="dark"] .workspace > .wrap:has(> .complaint-registry-card) .complaint-registry-status.open b {color:#F4B7AF!important;border-color:#8B6163!important}
.workspace > .wrap:has(> .complaint-registry-card) .complaint-registry-status.closed b {
  border:1px solid #6B9A83!important;background:rgba(61,142,95,.12)!important;color:#286C4C!important;border-radius:999px!important;
}
html[data-theme="dark"] .workspace > .wrap:has(> .complaint-registry-card) .complaint-registry-status.closed b {color:#B5E6C9!important;border-color:#55836C!important}
/* Preserve the original native button/onclick for delegation; only its presentation is hidden. */
.workspace > .wrap:has(> .complaint-registry-card) .complaint-registry-list > .complaint-registry-row > .complaint-registry-action:has(button[onclick^="openComplaint("]){display:none!important}
/* No visual dependence on .altek-complaint-clickable: background updates may strip data attrs. */
.workspace > .wrap.altek-complaints-enter:has(> .complaint-registry-card) .page-head {animation:altek-complaint-arrive .86s cubic-bezier(.22,.78,.17,1) both}
.workspace > .wrap.altek-complaints-enter:has(> .complaint-registry-card) > .card {animation:altek-complaint-arrive .78s cubic-bezier(.22,.78,.17,1) .13s both}
.workspace > .wrap.altek-complaints-enter:has(> .complaint-registry-card) > .complaint-registry-card {animation-delay:.27s}
.workspace > .wrap.altek-complaints-enter:has(> .complaint-registry-card) .complaint-registry-row {animation:altek-complaint-row .7s cubic-bezier(.22,.78,.17,1) .36s both}
.workspace > .wrap.altek-complaints-enter:has(> .complaint-registry-card) .complaint-registry-row:nth-child(2){animation-delay:.44s}
.workspace > .wrap.altek-complaints-enter:has(> .complaint-registry-card) .complaint-registry-row:nth-child(3){animation-delay:.52s}
.workspace > .wrap.altek-complaints-enter:has(> .complaint-registry-card) .complaint-registry-row:nth-child(n+4){animation-delay:.58s}
@keyframes altek-complaint-arrive{from{opacity:0;filter:blur(5px);transform:translateY(8px) scale(.99)}to{opacity:1;filter:blur(0);transform:none}}
@keyframes altek-complaint-row{from{opacity:0;filter:blur(3px);transform:translateY(7px)}to{opacity:1;filter:blur(0);transform:none}}
/* Complaint modals have unique IDs, outside Dashboard's #modal animation observer.
   First frame has final dimensions and radius; no resize while contents are loaded. */
:is(#complaintModal,#complaintFormModal).modal{
  --ac-card:#E9EBEA;--ac-raised:#DFE3E2;--ac-line:#C3CBCA;--ac-ink:#293741;
  --ac-muted:#54666C;--ac-hover:#D6E6E1;--ac-accent:#518D80;
  align-items:center!important;justify-content:center;
  background:rgba(7,23,32,.68)!important;backdrop-filter:blur(4px);padding:16px!important;
  animation:altek-complaint-backdrop-in .46s cubic-bezier(.22,.78,.17,1) both;
}
html[data-theme="dark"] :is(#complaintModal,#complaintFormModal).modal{
  --ac-card:#1B2E38;--ac-raised:#2A4350;--ac-line:#43606D;--ac-ink:#EAF4F5;
  --ac-muted:#BCD0D7;--ac-hover:#36545D;--ac-accent:#87BDB3;
}
:is(#complaintModal,#complaintFormModal).modal > .sheet{
  box-sizing:border-box!important;flex:0 1 auto;
  width:min(970px,calc(100vw - 32px))!important;
  height:min(780px,calc(100dvh - 32px))!important;
  min-height:0!important;max-height:calc(100dvh - 32px)!important;
  background:var(--ac-card)!important;color:var(--ac-ink)!important;
  border:1px solid var(--ac-line)!important;border-radius:20px!important;
  box-shadow:0 24px 80px rgba(0,0,0,.32)!important;
  scrollbar-gutter:stable;overscroll-behavior:contain;
  animation:altek-complaint-sheet-in .46s cubic-bezier(.22,.78,.17,1) both;
}
#complaintModal.modal > .complaint-detail-sheet {overflow:auto!important;padding:0!important}
#complaintFormModal.modal > .complaint-sheet {
  display:flex!important;flex-direction:column!important;overflow:hidden!important;
}
:is(#complaintModal,#complaintFormModal).modal .complaint-detail-head,
:is(#complaintModal,#complaintFormModal).modal .modal-head{
  background:var(--ac-card)!important;color:var(--ac-ink)!important;
  border-bottom:1px solid var(--ac-line)!important;
}
:is(#complaintModal,#complaintFormModal).modal :is(.card,.complaint-summary-grid > div,.complaint-form-note,.complaint-form-participants,.complaint-resp-table,.complaint-loss-total) {
  background:var(--ac-raised)!important;color:var(--ac-ink)!important;
  border:1px solid var(--ac-line)!important;border-radius:14px!important;
}
:is(#complaintModal,#complaintFormModal).modal :is(.muted,.complaint-eyebrow,.complaint-summary-grid span,.complaint-product-row span,.complaint-resp-row span,.complaint-loss-total span){color:var(--ac-muted)!important}
:is(#complaintModal,#complaintFormModal).modal :is(.input,input,select,textarea):not([type="checkbox"]):not([type="hidden"]){
  box-sizing:border-box;background:var(--ac-raised)!important;color:var(--ac-ink)!important;
  border:1px solid var(--ac-line)!important;border-radius:11px!important;max-width:100%;
}
:is(#complaintModal,#complaintFormModal).modal :is(.input,input,select,textarea):focus{
  outline:2px solid var(--ac-accent);outline-offset:1px;border-color:var(--ac-accent)!important;
}
:is(#complaintModal,#complaintFormModal).modal .btn{
  border:1px solid var(--ac-line)!important;border-radius:11px!important;
  background:var(--ac-raised)!important;color:var(--ac-ink)!important;
  transition:background .22s,transform .22s,border-color .22s,box-shadow .22s!important;
}
:is(#complaintModal,#complaintFormModal).modal .btn:not(:disabled):hover{
  background:var(--ac-hover)!important;border-color:var(--ac-accent)!important;
  transform:translateY(-2px);box-shadow:0 8px 18px rgba(9,35,47,.12)!important;
}
:is(#complaintModal,#complaintFormModal).modal .btn:active{transform:translateY(0)}
:is(#complaintModal,#complaintFormModal).modal .btn:focus-visible{outline:2px solid var(--ac-accent);outline-offset:2px}
:is(#complaintModal,#complaintFormModal).modal .btn:not(.secondary):not(.danger):not(.warn):not(.soft-link){
  background:#355E60!important;color:#fff!important;border-color:#355E60!important;
}
html[data-theme="dark"] :is(#complaintModal,#complaintFormModal).modal .btn:not(.secondary):not(.danger):not(.warn):not(.soft-link){
  background:#2B625F!important;border-color:#3C8882!important;
}
:is(#complaintModal,#complaintFormModal).modal .complaint-form-note {line-height:1.55}
:is(#complaintModal,#complaintFormModal).modal .complaint-product-row,
:is(#complaintModal,#complaintFormModal).modal .complaint-resp-row {border-color:var(--ac-line)!important}
:is(#complaintModal,#complaintFormModal).modal .complaint-detail-head h2 {color:var(--ac-ink)!important}
:is(#complaintModal,#complaintFormModal).modal.altek-complaint-exiting {animation:altek-complaint-backdrop-out .21s ease-in both!important}
:is(#complaintModal,#complaintFormModal).modal.altek-complaint-exiting > .sheet {animation:altek-complaint-sheet-out .21s ease-in both!important}
@keyframes altek-complaint-backdrop-in{from{opacity:0}to{opacity:1}}
@keyframes altek-complaint-sheet-in{from{opacity:0;filter:blur(3px);transform:translateY(12px) scale(.985)}to{opacity:1;filter:blur(0);transform:none}}
@keyframes altek-complaint-backdrop-out{to{opacity:0}}
@keyframes altek-complaint-sheet-out{to{opacity:0;transform:translateY(7px) scale(.99)}}
@media(max-width:900px){
  .workspace > .wrap:has(> .complaint-registry-card) > .card:not(.complaint-registry-card) .summary{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:820px){
  :is(#complaintModal,#complaintFormModal).modal{padding:8px!important}
  :is(#complaintModal,#complaintFormModal).modal > .sheet {
    width:calc(100vw - 16px)!important;height:calc(100dvh - 16px)!important;
    max-height:calc(100dvh - 16px)!important;border-radius:18px 18px 9px 9px!important;
  }
}
@media(max-width:600px){
  .workspace > .wrap:has(> .complaint-registry-card){padding:12px!important}
  .workspace > .wrap:has(> .complaint-registry-card) > .card{padding:14px!important}
  .workspace > .wrap:has(> .complaint-registry-card) > .card:not(.complaint-registry-card) .summary{gap:8px!important}
  .workspace > .wrap:has(> .complaint-registry-card) > .card:not(.complaint-registry-card) .summary > .metric{min-height:85px;padding:11px 8px!important}
  .workspace > .wrap:has(> .complaint-registry-card) .summary > .metric > b{font-size:25px!important}
}
@media(prefers-reduced-motion:reduce){
  .workspace > .wrap:has(> .complaint-registry-card) *,
  :is(#complaintModal,#complaintFormModal).modal,
  :is(#complaintModal,#complaintFormModal).modal > .sheet {animation:none!important;transition:none!important}
  .workspace > .wrap:has(> .complaint-registry-card) :is(.complaint-registry-row,.metric):hover{transform:none!important}
}
