
/* VF_ACCOUNT_SECURITY_UI_V1 */
.vf-as-loading{padding:28px;text-align:center}
.vf-as-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.vf-as-grid.g3{grid-template-columns:repeat(3,minmax(0,1fr))}
.vf-as-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.vf-as-field{display:flex;flex-direction:column;gap:7px}
.vf-as-field.full{grid-column:1/-1}
.vf-as-field label{font-size:12px;font-weight:700;color:#7f8faa}
.vf-as-input,.vf-as-select{
  width:100%;border:1px solid rgba(110,135,170,.22);background:rgba(255,255,255,.72);
  border-radius:13px;padding:12px 13px;color:#18243a;outline:none
}
.vf-as-input:focus,.vf-as-select:focus{border-color:rgba(89,108,255,.55);box-shadow:0 0 0 3px rgba(89,108,255,.08)}
.vf-as-meta{display:grid;gap:12px}
.vf-as-meta-row{display:flex;justify-content:space-between;gap:20px;padding:11px 0;border-bottom:1px solid rgba(130,150,180,.12)}
.vf-as-meta-row:last-child{border-bottom:0}
.vf-as-meta-row span{color:#7f8faa;font-size:13px}
.vf-as-meta-row strong{color:#17213a;font-size:13px;text-align:right;word-break:break-word}
.vf-as-toggle-list{display:grid;gap:11px}
.vf-as-toggle{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:13px;border:1px solid rgba(120,140,170,.14);border-radius:14px;background:rgba(255,255,255,.45)}
.vf-as-toggle strong{display:block;font-size:13px}
.vf-as-toggle small{display:block;color:#8391a8;margin-top:3px;line-height:1.45}
.vf-as-toggle input{width:20px;height:20px;margin-top:2px}
.vf-as-activity-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.vf-as-activity{padding:14px;border-radius:14px;border:1px solid rgba(120,140,170,.14);background:rgba(255,255,255,.48)}
.vf-as-activity span,.vf-as-activity small{display:block;color:#8491a8;font-size:11px}
.vf-as-activity strong{display:block;margin:7px 0 5px;color:#17213a;font-size:14px}
.vf-as-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:14px}
.vf-as-note{font-size:12px;color:#7c8aa2;line-height:1.55;margin-top:12px}
.vf-as-warning,.vf-as-error{padding:14px 15px;border-radius:14px;line-height:1.5}
.vf-as-warning{background:rgba(255,183,77,.11);border:1px solid rgba(255,183,77,.28);color:#7d5414}
.vf-as-error{background:rgba(255,75,105,.08);border:1px solid rgba(255,75,105,.22);color:#b52d4c}
.vf-as-session-list{display:grid}
.vf-as-session-row{
  display:grid;grid-template-columns:minmax(220px,1.6fr) minmax(180px,1fr) minmax(170px,.9fr) auto;
  gap:16px;align-items:center;padding:14px 0;border-bottom:1px solid rgba(120,140,170,.13)
}
.vf-as-session-row:last-child{border-bottom:0}
.vf-as-session-row strong,.vf-as-session-row small{display:block}
.vf-as-session-row strong{font-size:13px;color:#17213a}
.vf-as-session-row small{font-size:11px;color:#8491a8;margin-top:4px;line-height:1.4}
.vf-as-session-action{text-align:right}
.vf-as-toast-host{position:fixed;right:18px;bottom:18px;z-index:99999;display:grid;gap:9px;max-width:min(380px,calc(100vw - 36px))}
.vf-as-toast{padding:13px 15px;border-radius:13px;background:#18243a;color:#fff;box-shadow:0 15px 45px rgba(14,24,44,.25);transition:.2s}
.vf-as-toast.error{background:#b83250}.vf-as-toast.hide{opacity:0;transform:translateY(8px)}
.vf-as-security-stack{display:grid;gap:18px}
.vf-as-capability{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;padding:13px 0;border-bottom:1px solid rgba(120,140,170,.13)}
.vf-as-capability:last-child{border-bottom:0}
.vf-as-capability strong{display:block;color:#17213a;font-size:13px}
.vf-as-capability small{display:block;color:#8491a8;margin-top:4px;line-height:1.45}
@media(max-width:1100px){
  .vf-as-activity-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .vf-as-session-row{grid-template-columns:1fr 1fr}
  .vf-as-session-action{text-align:left}
}
@media(max-width:760px){
  .vf-as-grid,.vf-as-grid.g3,.vf-as-form-grid,.vf-as-activity-grid{grid-template-columns:1fr}
  .vf-as-field.full{grid-column:auto}
  .vf-as-session-row{grid-template-columns:1fr}
  .vf-as-meta-row{display:block}
  .vf-as-meta-row strong{display:block;text-align:left;margin-top:4px}
}


/* VF_SECURITY_FINAL_UI_V2 */
.vf-sec-final-grow{flex:1;min-width:0}
.vf-sec-final-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.vf-sec-final-passkeys{display:grid;gap:8px;margin-top:10px;max-width:760px}
.vf-sec-final-passkey{
  display:flex;align-items:center;justify-content:space-between;gap:14px;
  padding:9px 11px;border:1px solid rgba(120,140,170,.14);
  border-radius:12px;background:rgba(255,255,255,.52)
}
.vf-sec-final-passkey b,.vf-sec-final-passkey small{display:block}
.vf-sec-final-passkey small{margin-top:3px}
.vf-sec-final-modal{
  position:fixed;inset:0;z-index:100000;
  display:flex;align-items:center;justify-content:center;
  padding:20px;background:rgba(19,29,50,.48);backdrop-filter:blur(7px)
}
.vf-sec-final-dialog{
  position:relative;width:min(620px,100%);max-height:min(88vh,820px);
  overflow:auto;padding:24px;border-radius:22px;background:#fff;
  box-shadow:0 30px 90px rgba(10,20,40,.32)
}
.vf-sec-final-dialog h3{margin:0 34px 13px 0;color:#17213a;font-size:20px}
.vf-sec-final-close{
  position:absolute;right:15px;top:12px;border:0;background:transparent;
  font-size:28px;line-height:1;cursor:pointer;color:#718099
}
.vf-sec-final-note{font-size:12px;color:#718099;line-height:1.55;margin:10px 0}
.vf-sec-final-secret{
  font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:16px;
  letter-spacing:1.5px;word-break:break-all;padding:13px;margin:10px 0;
  border-radius:13px;background:#f4f6fb;border:1px solid rgba(110,135,170,.18)
}
.vf-sec-final-label{display:block;font-size:12px;font-weight:700;color:#64738e;margin:16px 0 7px}
.vf-sec-final-details{font-size:12px;color:#6f7d95;margin:12px 0}
.vf-sec-final-details code{display:block;margin-top:8px;padding:10px;word-break:break-all;background:#f7f8fc;border-radius:10px}
.vf-sec-final-codes{
  white-space:pre-wrap;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;
  font-size:15px;line-height:1.8;letter-spacing:1px;padding:15px;border-radius:14px;
  background:#f4f6fb;border:1px solid rgba(110,135,170,.18)
}
.vf-sec-final-error{font-size:12px;color:#b83250;margin-top:10px;min-height:18px}
.vf-turnkey-export-container{min-height:130px;margin-top:12px}
.vf-turnkey-export-container iframe{
  width:100%;min-height:300px;border:1px solid rgba(110,135,170,.18);
  border-radius:14px;background:#fff
}
@media(max-width:760px){
  .vf-sec-final-dialog{padding:19px;border-radius:18px}
  .vf-sec-final-passkey{align-items:flex-start;flex-direction:column}
}

