/* Yusr V8.4 — dashboard icon containment + modern service cards */

/* Desktop safety: mobile shell must stay hidden unless the viewport is actually mobile. */
body.dashboard-mode .v8-mobile-dash-header,
body.dashboard-mode .v8-dashboard-bottom,
body.dashboard-mode .v8-sheet-backdrop,
body.dashboard-mode .v8-mobile-sheet{display:none!important}

/* Universal containment for dashboard-generated inline icons. */
body.dashboard-mode .v8-bottom-item svg[aria-hidden="true"],
body.dashboard-mode .v8-sheet-link svg[aria-hidden="true"],
body.dashboard-mode .v8-service-icon svg[aria-hidden="true"],
body.dashboard-mode .v8-analysis-row .v8-service-icon svg[aria-hidden="true"],
body.dashboard-mode .metric-icon svg[aria-hidden="true"],
body.dashboard-mode .quick-action-icon svg[aria-hidden="true"],
body.dashboard-mode .dash-panel-head svg[aria-hidden="true"],
body.dashboard-mode .eyebrow svg[aria-hidden="true"],
body.dashboard-mode .btn svg[aria-hidden="true"],
body.dashboard-mode .badge svg[aria-hidden="true"]{
  width:20px!important;height:20px!important;min-width:20px!important;min-height:20px!important;
  max-width:20px!important;max-height:20px!important;display:block!important;flex:0 0 20px!important
}

/* Candidate CV analysis cards — modern visual system */
body.dashboard-mode .v8-cv-upload{overflow:hidden!important}
body.dashboard-mode .v8-service-grid{
  display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important;margin-top:18px!important
}
body.dashboard-mode .v8-service-card{
  position:relative!important;overflow:hidden!important;isolation:isolate!important;
  border:1px solid #e1e8ef!important;border-radius:24px!important;
  background:linear-gradient(180deg,#ffffff 0%,#fbfdff 100%)!important;
  box-shadow:0 16px 40px rgba(11,31,58,.06)!important;
  padding:20px 18px!important;
  display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;gap:14px!important;align-items:center!important;
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease!important;
}
body.dashboard-mode .v8-service-card:before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(circle at top left,rgba(20,122,126,.08),transparent 34%),
             radial-gradient(circle at bottom right,rgba(11,31,58,.06),transparent 30%);
}
body.dashboard-mode .v8-service-card:hover{
  transform:translateY(-2px)!important;border-color:#b9dedd!important;box-shadow:0 18px 44px rgba(11,31,58,.10)!important
}
body.dashboard-mode .v8-service-card.ai{
  background:linear-gradient(135deg,#f8fffe 0%,#ffffff 55%,#f4f8ff 100%)!important
}
body.dashboard-mode .v8-service-card.ai:before{
  background:radial-gradient(circle at top left,rgba(20,122,126,.10),transparent 35%),
             radial-gradient(circle at bottom right,rgba(79,135,255,.10),transparent 28%)
}
body.dashboard-mode .v8-service-icon{
  width:54px!important;height:54px!important;min-width:54px!important;min-height:54px!important;max-width:54px!important;max-height:54px!important;
  border-radius:18px!important;display:grid!important;place-items:center!important;overflow:hidden!important;
  background:linear-gradient(135deg,#0b1f3a,#178b88)!important;color:#fff!important;
  box-shadow:0 14px 28px rgba(12,54,88,.18)!important;border:1px solid rgba(255,255,255,.18)!important;position:relative!important;z-index:1!important
}
body.dashboard-mode .v8-service-card.ai .v8-service-icon{
  background:linear-gradient(135deg,#147a7e,#31b8c8)!important
}
body.dashboard-mode .v8-service-icon svg[aria-hidden="true"]{
  width:24px!important;height:24px!important;min-width:24px!important;min-height:24px!important;max-width:24px!important;max-height:24px!important
}
body.dashboard-mode .v8-service-card>div,
body.dashboard-mode .v8-analysis-row>div{min-width:0!important;position:relative!important;z-index:1!important}
body.dashboard-mode .v8-service-card strong{
  display:block!important;color:#0b1f3a!important;font-size:17px!important;font-weight:900!important;letter-spacing:-.2px!important
}
body.dashboard-mode .v8-service-card p{
  margin:6px 0 0!important;color:#66758a!important;font-size:12.5px!important;line-height:1.8!important
}
body.dashboard-mode .v8-service-card>b{
  position:relative!important;z-index:1!important;white-space:nowrap!important;
  padding:9px 12px!important;border-radius:999px!important;border:1px solid #d9efe9!important;
  background:linear-gradient(180deg,#f5fcfb,#edf9f7)!important;color:#0a716f!important;font-size:12px!important;font-weight:900!important
}
body.dashboard-mode .v8-service-card:disabled{
  opacity:.6!important;filter:saturate(.72)!important;box-shadow:none!important;transform:none!important
}

/* Previous analyses rows */
body.dashboard-mode .v8-analysis-list{display:grid!important;gap:10px!important}
body.dashboard-mode .v8-analysis-row{
  display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;gap:12px!important;align-items:center!important;
  padding:13px 14px!important;border:1px solid #e5ebf0!important;border-radius:18px!important;background:#fff!important;
  box-shadow:0 8px 22px rgba(11,31,58,.04)!important
}
body.dashboard-mode .v8-analysis-row strong{font-size:13px!important;font-weight:900!important;color:#0b1f3a!important}
body.dashboard-mode .v8-analysis-row small{font-size:11px!important;color:#718096!important;line-height:1.65!important}
body.dashboard-mode .v8-analysis-row .v8-service-icon{
  width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important;max-width:42px!important;max-height:42px!important;border-radius:14px!important
}
body.dashboard-mode .v8-analysis-row .v8-service-icon svg[aria-hidden="true"]{width:20px!important;height:20px!important;min-width:20px!important;min-height:20px!important;max-width:20px!important;max-height:20px!important}

/* Dashboard bottom bar and sheet icon discipline on mobile only. */
@media (max-width:820px){
  body.dashboard-mode .v8-mobile-dash-header{display:flex!important}
  body.dashboard-mode .v8-dashboard-bottom{display:grid!important}
  body.dashboard-mode .v8-sheet-backdrop{display:block!important}
  body.dashboard-mode .v8-mobile-sheet{display:block!important}

  body.dashboard-mode .v8-dashboard-bottom .v8-bottom-item,
  body.dashboard-mode .v8-dashboard-bottom .v8-more-trigger{
    min-width:0!important;max-width:100%!important;height:60px!important;padding:0 2px!important;overflow:hidden!important
  }
  body.dashboard-mode .v8-dashboard-bottom .v8-bottom-item svg[aria-hidden="true"],
  body.dashboard-mode .v8-dashboard-bottom .v8-more-trigger svg[aria-hidden="true"]{
    width:20px!important;height:20px!important;min-width:20px!important;min-height:20px!important;max-width:20px!important;max-height:20px!important
  }
  body.dashboard-mode .v8-sheet-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important}
  body.dashboard-mode .v8-sheet-link{
    min-height:92px!important;padding:11px 7px!important;border-radius:18px!important;font-size:10.5px!important;line-height:1.35!important
  }
  body.dashboard-mode .v8-sheet-link svg[aria-hidden="true"]{
    width:21px!important;height:21px!important;min-width:21px!important;min-height:21px!important;max-width:21px!important;max-height:21px!important
  }

  body.dashboard-mode .v8-service-grid{grid-template-columns:1fr!important;gap:12px!important}
  body.dashboard-mode .v8-service-card{
    grid-template-columns:auto minmax(0,1fr)!important;align-items:flex-start!important;padding:18px 16px!important
  }
  body.dashboard-mode .v8-service-card>b{grid-column:2!important;justify-self:start!important;margin-top:4px!important}
  body.dashboard-mode .v8-service-card strong{font-size:15px!important}
  body.dashboard-mode .v8-service-card p{font-size:12px!important;line-height:1.75!important}
  body.dashboard-mode .v8-service-icon{width:48px!important;height:48px!important;min-width:48px!important;min-height:48px!important;max-width:48px!important;max-height:48px!important;border-radius:16px!important}
  body.dashboard-mode .v8-service-icon svg[aria-hidden="true"]{width:22px!important;height:22px!important;min-width:22px!important;min-height:22px!important;max-width:22px!important;max-height:22px!important}
}

@media (max-width:390px){
  body.dashboard-mode .v8-sheet-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body.dashboard-mode .v8-service-card{padding:16px 14px!important}
}

/* Runtime rescue class if any cached CSS still lets icons escape. */
.v84-tight-icon{width:20px!important;height:20px!important;min-width:20px!important;min-height:20px!important;max-width:20px!important;max-height:20px!important;display:block!important;flex:0 0 20px!important}
