/* EQ v15.328 — premium progressive-disclosure privacy UX + alias-safe origin */

/* ---------- Shared privacy disclosure ---------- */
.privacy-compact,
.candidate-privacy-compact{
  grid-column:1/-1;
  margin:2px 0 0;
  border:1px solid rgba(142,220,255,.14);
  border-radius:14px;
  background:rgba(255,255,255,.025);
  overflow:hidden;
}
.privacy-compact summary,
.candidate-privacy-compact summary{
  min-height:44px;
  padding:10px 12px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  cursor:pointer;
  list-style:none;
  user-select:none;
}
.privacy-compact summary::-webkit-details-marker,
.candidate-privacy-compact summary::-webkit-details-marker{display:none}
.privacy-compact-title{
  display:inline-flex;
  align-items:center;
  gap:9px;
  color:#dce7fb;
  font-size:12px;
  font-weight:720;
  letter-spacing:.01em;
}
.privacy-compact-title i{
  width:8px;
  height:8px;
  border-radius:50%;
  background:#77dfbd;
  box-shadow:0 0 0 4px rgba(119,223,189,.09),0 0 18px rgba(119,223,189,.23);
  flex:0 0 auto;
}
.privacy-compact-more{
  color:#8edcff;
  font-size:10.5px;
  white-space:nowrap;
}
.privacy-compact[open] .privacy-compact-more::after,
.candidate-privacy-compact[open] .privacy-compact-more::after{content:'  ↑'}
.privacy-compact:not([open]) .privacy-compact-more::after,
.candidate-privacy-compact:not([open]) .privacy-compact-more::after{content:'  ↓'}
.privacy-compact-body{
  padding:0 12px 12px 29px;
  display:grid;
  gap:6px;
  border-top:1px solid rgba(255,255,255,.055);
}
.privacy-compact-body p{
  margin:9px 0 0;
  color:#aebbd7;
  font-size:11px;
  line-height:1.5;
}
.privacy-compact-body strong{color:#eef4ff}
.privacy-links{display:flex;gap:12px;flex-wrap:wrap;margin-top:3px}
.privacy-links a{color:#8edcff;text-decoration:none;font-size:11px}
.privacy-links a:hover{text-decoration:underline}

/* ---------- HR / customer access ---------- */
#accountForm{margin-top:22px;gap:14px}
#accountForm .consent-stack{
  grid-column:1/-1;
  display:grid;
  gap:7px;
  margin-top:1px;
}
#accountForm .consent-line{
  min-height:42px;
  padding:8px 2px;
  border:0;
  border-radius:0;
  background:transparent;
  align-items:flex-start;
}
#accountForm .consent-line + .consent-line{
  border-top:1px solid rgba(255,255,255,.055);
  padding-top:10px;
}
#accountForm .consent-line input{
  width:16px;
  height:16px;
  margin:1px 0 0;
  accent-color:#65c9b0;
  flex:0 0 auto;
}
#accountForm .consent-line span{
  color:#c7d1e8;
  font-size:11.6px;
  line-height:1.52;
}
#accountForm .consent-line a,
.privacy-meta a{color:#8edcff;text-decoration:none}
#accountForm .consent-line a:hover,
.privacy-meta a:hover{text-decoration:underline}
#accountForm button{
  margin-top:7px;
  min-height:52px;
  border-radius:15px;
  box-shadow:0 12px 30px rgba(57,168,219,.12);
}
.privacy-meta{
  grid-column:1/-1;
  margin:-5px 2px 0;
  color:#7784a3;
  font-size:10.2px;
  line-height:1.55;
  text-align:center;
}
.account-card .lead{margin-bottom:0}
.account-card .trust-grid{margin-top:20px}

/* Retire v321 large notice/cards if an older cached markup appears. */
.privacy-notice{display:none!important}
#accountForm .consent-card{padding:8px 2px;border:0;background:transparent}

/* ---------- Candidate gateway ---------- */
.candidate-privacy-compact{margin:0}
.candidate-privacy-compact .privacy-compact-body{padding-left:29px}
.candidate-consent-stack{
  display:grid;
  gap:4px;
  padding:2px 0 0;
}
.candidate-consent-line{
  padding:8px 1px;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:rgba(235,238,249,.72);
  font-size:11px;
  line-height:1.45;
}
.candidate-consent-line + .candidate-consent-line{
  border-top:1px solid rgba(255,255,255,.055)!important;
}
.candidate-consent-line input{
  width:16px!important;
  height:16px!important;
  margin-top:1px!important;
  accent-color:#7b6df5;
}
.candidate-consent-line a,
.candidate-privacy-meta a{color:#8edcff;text-decoration:none}
.candidate-consent-line a:hover,
.candidate-privacy-meta a:hover{text-decoration:underline}
.candidate-consent-note span{color:rgba(222,226,243,.62)}
.candidate-submit{order:20;margin-top:2px}
.candidate-privacy-meta{
  order:21;
  margin:-7px 4px 0;
  color:rgba(220,224,244,.44);
  font-size:9.5px;
  line-height:1.45;
  text-align:center;
}
.candidate-error{order:22}
.candidate-privacy-notice{display:none!important}
.candidate-consent-card{padding:8px 1px;border:0;background:transparent}

@media(min-width:651px){
  .account-card{padding-top:42px;padding-bottom:38px}
}
@media(max-width:650px){
  .privacy-compact,.candidate-privacy-compact{grid-column:auto}
  .privacy-compact-body{padding-left:12px}
  #accountForm .consent-stack,.privacy-meta{grid-column:auto}
  .privacy-meta{font-size:9.4px}
  .privacy-links{gap:7px 12px}
}

/* Candidate desktop density: keep focus on the action, not the legal layer. */
@media(min-width:621px){
  .candidate-dialog{width:min(640px,100%);padding:30px 30px 26px}
  .candidate-form{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:13px 14px}
  .candidate-privacy-compact,
  .candidate-consent-stack,
  .candidate-submit,
  .candidate-privacy-meta,
  .candidate-error{grid-column:1/-1}
  .candidate-dialog-lead{margin-bottom:20px}
}
@media(max-width:620px){
  .candidate-form{grid-template-columns:1fr}
}
