/* Portal RH 73.2 — hierarchy, profile activation and responsive consolidation */
:root{
  --v74-content:1320px;
  --v74-focus:#f2a900;
  --v74-success:#0f8d74;
  --v74-warning:#a96200;
}

/* One deliberate action surface: keep quick actions in the header, never over content. */
.floating-rail{display:none!important}

/* Stable desktop header without accidental orphan rows. */
.topbar{
  display:grid!important;
  grid-template-columns:minmax(320px,1fr) auto!important;
  align-items:center!important;
  gap:14px!important;
  padding:12px 16px!important;
  border-radius:0 0 22px 22px!important;
}
.topbar .left{display:flex!important;min-width:0!important;width:100%!important}
.search{width:min(100%,520px)!important;min-width:280px!important;max-width:520px!important}
.top-actions{
  display:grid!important;
  grid-template-columns:auto auto!important;
  align-items:center!important;
  justify-content:end!important;
  gap:10px!important;
  width:auto!important;
  min-width:0!important;
  flex-wrap:nowrap!important;
}
.top-action-cluster{
  display:flex!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  gap:8px!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.company-switch,.notif-bell,.top-quick-action,.user-chip{height:48px!important;min-height:48px!important}
.company-switch{max-width:286px!important;border-radius:16px!important}
.company-switch select{max-width:170px!important}
.notif-bell,.top-quick-action{border-radius:16px!important}
.user-chip{min-width:214px!important;max-width:250px!important;border-radius:18px!important}
.user-chip strong,.user-chip small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.user-chip>div{min-width:0}

/* Profile: compact hierarchy and one consistent reading width. */
.page-perfil .container{width:min(calc(100% - 24px),var(--v74-content))!important;padding-top:16px!important}
.page-perfil .page-header{
  min-height:0!important;
  margin-bottom:12px!important;
  padding:18px 20px!important;
  border:1px solid var(--line)!important;
  border-radius:24px!important;
  background:linear-gradient(135deg,#fbfdfd 0%,#f2f8f7 100%)!important;
  box-shadow:0 10px 26px rgba(11,34,56,.045)!important;
}
.page-perfil .page-header::after{width:160px;height:160px;right:-60px;top:-92px}
.page-perfil .page-header .section-kicker{margin-bottom:7px!important;padding:5px 10px!important;font-size:9px!important}
.page-perfil .page-header h1{font-size:clamp(34px,3vw,44px)!important;line-height:1!important}
.page-perfil .page-header p{margin-top:7px!important;font-size:14px!important;line-height:1.55!important}
.page-perfil .quick-company,.page-perfil .workspace-bar{display:none!important}
.page-perfil .context-bar{
  align-items:center!important;
  margin:0 0 14px!important;
  padding:9px 12px!important;
  border:1px solid var(--line)!important;
  border-radius:16px!important;
  background:rgba(255,255,255,.72)!important;
}
.page-perfil .context-path,.page-perfil .context-tag{font-size:12px!important}
.page-perfil .context-tags .context-tag:last-child{display:none!important}
.page-perfil .grid-2-1{grid-template-columns:minmax(0,1.12fr) minmax(390px,.88fr)!important;gap:18px!important;margin-top:0!important}
.page-perfil .grid-2-1>.panel{border-radius:24px!important;box-shadow:0 12px 28px rgba(11,34,56,.05)!important}
.page-perfil .grid-2-1>.panel:last-child{position:sticky!important;top:86px!important;align-self:start!important}
.page-perfil .employee-detail-head{padding-bottom:18px;border-bottom:1px solid var(--line)}
.page-perfil .employee-detail-head h2{margin:0 0 7px;font-size:28px;letter-spacing:-.03em;color:var(--ink)}
.page-perfil .profile-security-grid{grid-template-columns:1fr 1fr!important;gap:12px!important}
.page-perfil .profile-security-grid .security-chip:nth-child(n+3){display:none!important}
.page-perfil .entity-overview{grid-template-columns:1fr 1fr!important}
.page-perfil .entity-overview .entity-card:nth-child(-n+2){display:none!important}
.page-perfil .entity-card strong{font-size:22px!important;line-height:1.25!important}
.page-perfil .grid-2-1>.panel:first-child>.notice{display:none!important}
.page-perfil .grid-2-1>.panel:last-child>.notice{display:none!important}
.page-perfil .list-item{padding:13px 14px!important;border-radius:16px!important}
.page-perfil .section-head h2{font-size:26px!important}
.page-perfil .profile-recovery-box{margin-top:18px!important;padding:14px 16px!important}

/* Password controls used by activation, recovery and profile editing. */
.password-control{position:relative;display:flex;align-items:center}
.password-control .input{padding-right:94px!important}
.password-reveal{
  position:absolute;right:7px;top:50%;transform:translateY(-50%);
  min-width:72px;height:36px;padding:0 10px;border:1px solid var(--line);border-radius:11px;
  background:#f3f8f6;color:var(--primary-dark);font-size:12px;font-weight:800;cursor:pointer;
}
.password-reveal:hover{background:#eaf4f1;border-color:#aac8c3}
.password-reveal:focus-visible{outline:3px solid var(--v74-focus);outline-offset:2px}
.caps-lock-warning{display:block;margin-top:7px;color:var(--v74-warning);font-weight:750}
.password-match{display:block;margin-top:7px;color:var(--muted)}
.password-match.is-ok{color:#08765f;font-weight:750}
.password-match.is-error{color:#a33c31;font-weight:750}
.password-strength{display:grid;gap:8px;padding:12px 14px;border:1px solid var(--line);border-radius:15px;background:#f8fbfa}
.password-strength-track{height:8px;overflow:hidden;border-radius:99px;background:#dde9e6}
.password-strength-track span{display:block;width:0;height:100%;border-radius:inherit;background:#b85a45;transition:width .18s ease,background .18s ease}
.password-strength[data-score="2"] .password-strength-track span{background:#c68100}
.password-strength[data-score="3"] .password-strength-track span{background:#2b8c78}
.password-strength[data-score="4"] .password-strength-track span{background:#08765f}
.password-strength strong{font-size:13px;color:var(--ink)}
.password-rules{display:grid;grid-template-columns:1fr 1fr;gap:8px 14px;margin:0;padding:0;list-style:none}
.password-rules li{position:relative;padding-left:21px;color:var(--muted);font-size:13px;line-height:1.4}
.password-rules li::before{content:'○';position:absolute;left:0;color:#8da4a0;font-weight:900}
.password-rules li.is-valid{color:#08765f;font-weight:750}
.password-rules li.is-valid::before{content:'✓';color:#08765f}
.password-change-panel{border:1px solid var(--line);border-radius:18px;background:#f8fbfa;overflow:hidden}
.password-change-panel summary{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px 16px;cursor:pointer;color:var(--ink);font-weight:850;list-style:none}
.password-change-panel summary::-webkit-details-marker{display:none}
.password-change-panel summary::after{content:'+';display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:#e9f4f1;color:var(--primary-dark);font-size:18px}
.password-change-panel[open] summary::after{content:'−'}
.password-change-content{display:grid;gap:14px;padding:0 16px 16px;border-top:1px solid var(--line)}
.password-change-content>.field-help{margin-top:14px}

/* Focused first-access activation. */
body:has(.access-activation-shell) .sidebar-nav-group:not(.sidebar-nav-group-account),
body:has(.access-activation-shell) .sidebar-nav-group-utility,
body:has(.access-activation-shell) .top-action-cluster{opacity:.38;pointer-events:none;filter:saturate(.35)}
body:has(.access-activation-shell) .workspace-bar,
body:has(.access-activation-shell) .context-bar{display:none!important}
body:has(.access-activation-shell) .page-header{display:none!important}
body:has(.access-activation-shell) .container{width:min(calc(100% - 24px),1180px)!important;padding-top:24px!important}
.access-activation-shell{display:grid;grid-template-columns:minmax(0,.92fr) minmax(420px,1.08fr);gap:24px;align-items:stretch}
.activation-copy{padding:34px;border-radius:28px;color:#fff;background:radial-gradient(circle at 90% 10%,rgba(91,230,190,.22),transparent 26%),linear-gradient(145deg,#062f42,#0e716b);box-shadow:0 28px 64px rgba(7,38,52,.18)}
.activation-copy .section-kicker{color:#c9fff0;background:rgba(255,255,255,.09);border-color:rgba(255,255,255,.14)}
.activation-copy h2{margin:10px 0 12px;color:#fff;font-size:clamp(34px,4vw,50px);line-height:1;letter-spacing:-.045em}
.activation-copy>p{margin:0;color:rgba(255,255,255,.84);font-size:16px;line-height:1.7}
.activation-mark{width:54px;height:54px;display:grid;place-items:center;margin-bottom:22px;border-radius:18px;background:rgba(255,255,255,.13);box-shadow:inset 0 0 0 1px rgba(255,255,255,.16);font-size:25px;font-weight:900}
.activation-identity{display:flex;align-items:center;gap:14px;margin:24px 0;padding:14px;border:1px solid rgba(255,255,255,.14);border-radius:20px;background:rgba(255,255,255,.08)}
.activation-identity img{width:52px;height:52px;border-radius:16px;object-fit:cover}
.activation-identity strong,.activation-identity span{display:block}.activation-identity strong{color:#fff}.activation-identity span{margin-top:4px;color:rgba(255,255,255,.72);font-size:13px}
.activation-steps{display:grid;gap:12px;margin:0;padding:0;list-style:none}
.activation-steps li{display:grid;grid-template-columns:36px minmax(0,1fr);gap:12px;align-items:start;padding:12px;border-radius:16px;background:rgba(255,255,255,.055)}
.activation-steps li>span{display:grid;place-items:center;width:36px;height:36px;border-radius:12px;background:rgba(255,255,255,.1);font-weight:900}
.activation-steps strong,.activation-steps small{display:block}.activation-steps strong{color:#fff}.activation-steps small{margin-top:3px;color:rgba(255,255,255,.68);line-height:1.45}
.activation-steps li.current{background:rgba(255,255,255,.12);box-shadow:inset 3px 0 #72ebc7}.activation-steps li.done>span{background:#117d69}
.activation-card{padding:30px!important;border-radius:28px!important;align-self:stretch}
.activation-card .section-head{margin-bottom:22px}
.activation-card .btn-block{width:100%;justify-content:center;min-height:50px}
.activation-help{display:grid;gap:5px;margin-top:18px;padding:14px 16px;border-radius:16px;background:#f3f8f6;border:1px solid var(--line)}
.activation-help strong{color:var(--ink)}.activation-help span{color:var(--muted);font-size:13px;line-height:1.5}

/* Reset page inherits the same password experience. */
.page-reset .reset-card{width:min(620px,100%)}

/* Legibility and visible navigation affordances. */
.muted,.section-head p,.page-header p{color:#526b7d!important}
.sidebar-scroll{scrollbar-width:thin!important;scrollbar-color:rgba(255,255,255,.28) transparent!important}
.sidebar-scroll::-webkit-scrollbar{display:block!important;width:7px!important}
.sidebar-scroll::-webkit-scrollbar-thumb{background:rgba(255,255,255,.24)!important;border-radius:99px!important}
.sidebar .sidebar-nav-icon{font-size:15px!important;letter-spacing:0!important}
.sidebar-utility-card-mini span{font-size:10px!important;letter-spacing:.1em!important}
.sidebar-utility-card-mini strong{font-size:18px!important}
.sidebar-utility-card-mini small{font-size:10.5px!important;line-height:1.35!important}

@media (max-width:1600px) and (min-width:1025px){
  .top-quick-action{display:none!important}
  .search{max-width:440px!important}
}
@media (max-width:1360px){
  .page-perfil .grid-2-1{grid-template-columns:1fr!important}
  .page-perfil .grid-2-1>.panel:last-child{position:static!important}
  .access-activation-shell{grid-template-columns:1fr}
}
@media (max-width:1024px){
  .topbar{grid-template-columns:1fr!important;align-items:stretch!important}
  .search{width:100%!important;max-width:none!important;min-width:0!important}
  .top-actions{grid-template-columns:minmax(0,1fr) auto!important;width:100%!important;justify-content:stretch!important}
  .top-action-cluster{justify-content:flex-start!important;min-width:0!important}
  .page-perfil .container{width:calc(100% - 18px)!important}
}
@media (max-width:760px){
  .topbar{padding:10px!important;border-radius:0 0 18px 18px!important}
  .top-actions{grid-template-columns:1fr!important}
  .top-action-cluster{display:grid!important;grid-template-columns:1fr 1fr!important;width:100%!important}
  .company-switch,.notif-bell,.user-chip{width:100%!important;max-width:none!important}
  .user-chip{grid-row:1!important}
  .page-perfil .container{width:100%!important;padding-inline:12px!important}
  .page-perfil .page-header{padding:16px!important}
  .page-perfil .context-tags{display:none!important}
  .page-perfil .profile-security-grid,.page-perfil .entity-overview{grid-template-columns:1fr!important}
  .password-rules{grid-template-columns:1fr}
  .access-activation-shell{gap:14px}
  .activation-copy,.activation-card{padding:22px!important;border-radius:22px!important}
  .activation-copy h2{font-size:34px}
}
@media (prefers-reduced-motion:reduce){
  .password-strength-track span{transition:none}
}
