/* ED Nexus 4.7 unified card system — clean, centered, consistent */
:root{--ed-card-radius:14px;--ed-card-gap:16px;--ed-card-pad:20px;--ed-card-shadow:0 7px 20px rgba(15,23,42,.09);--ed-card-shadow-hover:0 14px 30px rgba(15,23,42,.14)}

/* Shared card surface */
:where(.item-card,.client-card,.card,.stat-card,.asset-card,.ticket-card,.mr-card,.wpb-card,.ops-panel,.ops-kpi,.ops-area,.ops-action,.ops-module,.ai-provider-card,.api-credential-card,.folder-card,.download-card){
  background:var(--surface)!important;
  border:1px solid color-mix(in srgb,var(--border) 84%,transparent)!important;
  border-radius:var(--ed-card-radius)!important;
  box-shadow:var(--ed-card-shadow)!important;
  background-image:none!important;
  backdrop-filter:none!important;
}
.download-card{background:var(--surface)!important;background-image:none!important}
:where(.item-card,.client-card,.asset-card,.ticket-card,.mr-card,.ops-kpi,.ops-action,.ops-module,.folder-card){transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease!important}
:where(.item-card,.client-card,.asset-card,.ticket-card,.mr-card,.ops-kpi,.ops-action,.ops-module,.folder-card):hover{transform:translateY(-3px)!important;border-color:color-mix(in srgb,var(--accent) 34%,var(--border))!important;box-shadow:var(--ed-card-shadow-hover)!important}
:where(.item-card,.client-card,.stat-card,.asset-card,.ticket-card,.mr-card,.wpb-card,.ops-panel,.ops-kpi,.ops-area,.ops-action,.ops-module)::before{box-shadow:none!important}

/* Every grouped grid gets breathing room and remains visually centered */
.asset-group>.item-grid,.asset-group>.cards-grid{padding:20px 18px 22px!important;gap:var(--ed-card-gap)!important;align-items:stretch;background:var(--bg)!important}
.item-grid,.client-grid,.cards-grid,.mr-grid{gap:var(--ed-card-gap)!important}
.asset-group{border-radius:var(--ed-card-radius)!important;overflow:hidden}
.asset-group>summary{min-height:52px;padding:0 20px!important}

/* One header language for data cards */
.item-card{min-height:250px;overflow:hidden;cursor:default}
.item-card::before{display:none!important}
.item-card-banner{min-height:82px!important;padding:20px 19px 12px!important;gap:12px!important;background:var(--surface)!important;background-image:none!important;border-bottom:0!important;align-items:flex-start!important}
.item-card-type-ico{width:40px!important;height:40px!important;border-radius:10px!important;background:color-mix(in srgb,var(--card-accent,var(--accent)) 12%,var(--surface2))!important;border:1px solid color-mix(in srgb,var(--card-accent,var(--accent)) 25%,var(--border))!important;color:var(--card-accent,var(--accent))!important;box-shadow:none!important}
.item-card-type-ico .material-symbols-rounded{color:var(--card-accent,var(--accent))!important;font-size:20px!important}
.item-card-body{padding:8px 19px 18px!important;gap:12px!important}
.card-actions{margin-top:auto!important;padding-top:13px!important;border-top:1px solid var(--border)!important;gap:7px!important}
.card-btn-primary{min-height:36px!important;background:var(--accent)!important;border-color:var(--accent)!important;color:#fff!important;border-radius:8px!important;font-weight:750!important}
.card-btn-icon,.card-btn-danger{min-width:36px!important;width:36px!important;height:36px!important;border-radius:8px!important;box-shadow:none!important}

/* Password cards: same hierarchy as the supplied project-card reference */
.password-card{min-height:300px!important;border-color:color-mix(in srgb,var(--border) 84%,transparent)!important}
.password-card-head{min-height:88px!important}
.password-card-title{font-size:15px!important;line-height:1.3!important;white-space:normal!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.password-card-user{margin-top:7px!important;color:var(--text3)!important}
.password-card-status{padding:5px 11px!important;border-radius:999px!important;background:var(--green-l)!important;border:0!important;color:var(--green)!important;font-size:9px!important}
.password-card.is-risky .password-card-status{background:var(--red-l)!important;color:var(--red)!important}.password-card.is-aging .password-card-status{background:var(--yellow-l)!important;color:var(--yellow)!important}
.password-card-meta{padding:0!important;background:transparent!important;border:0!important;color:var(--card-accent,var(--accent))!important}
.password-url,.pwd-row{border-radius:9px!important;box-shadow:none!important}
.password-actions{padding-top:14px!important}

/* Summary, dashboard and module cards */
.stat-card,.ops-kpi{min-height:112px;padding:18px!important}
.ops-panel,.ops-area,.wpb-card,.card{overflow:hidden}
.card-head,.ops-panel-head{padding:17px 20px!important;background:var(--surface)!important;border-bottom:1px solid var(--border)!important}
.card-body{padding:20px!important}
.ops-module,.ops-action{box-shadow:none!important;min-height:46px}

@media(max-width:640px){
  :root{--ed-card-gap:12px;--ed-card-pad:16px}
  .asset-group>.item-grid,.asset-group>.cards-grid{padding:16px 12px 18px!important}
  .item-grid,.client-grid,.cards-grid,.mr-grid{grid-template-columns:1fr!important}
  .item-card,.password-card{min-height:0!important}
  .item-card-banner{padding:17px 16px 10px!important}.item-card-body{padding:8px 16px 16px!important}
}
