/* ============================================================================
   two-factor-authentication.css — page-specific styles for the 2FA page.
   Loaded AFTER malcare.css.
   ============================================================================ */

/* ---------- hero ---------- */
.hero{padding:110px 0 90px;overflow:hidden;border-bottom:1px solid var(--ink-08)}
.hero-inner{display:grid;grid-template-columns:1.02fr .98fr;gap:60px;align-items:center}
.hero h1{font-size:clamp(36px,4.4vw,56px);margin-bottom:24px;max-width:16ch}
.hero h1 em{font-style:normal;color:var(--acc)}
.hero .lede{font-size:17px;margin-bottom:36px;max-width:52ch}
.hero .lede em{color:var(--hi);font-style:normal;font-weight:500}
.hero-ctas{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:30px}
.trust-strip{display:flex;flex-wrap:wrap;border-top:1px solid var(--ink-08);padding-top:22px;font-family:var(--fm)}
.trust-strip .t{padding-right:24px;margin-right:24px;border-right:1px solid var(--ink-08)}
.trust-strip .t:last-child{border:0;margin:0;padding:0}
.trust-strip b{display:block;font-size:17px;color:var(--hi);font-weight:500;letter-spacing:-.01em}
.trust-strip span{font-size:10px;color:var(--mut);letter-spacing:.1em;text-transform:uppercase}
.hero-scene{position:relative;padding-bottom:118px}
.hero-scene > svg{width:100%}
.hero-log{position:absolute;right:0;bottom:0;width:min(310px,84%);font-family:var(--fm);font-size:10.5px}
.hero-log .rows{padding:8px 14px 10px;display:flex;flex-direction:column;gap:4px}
.hero-log .r{display:flex;justify-content:space-between;gap:12px;color:var(--mut);animation:rowIn .4s ease}
.hero-log .r b{font-weight:400;color:var(--body);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tag.keep{color:var(--body)}

/* ---------- figure helpers ---------- */
.fig-m{display:none}
@media(max-width:760px){.fig-d{display:none}.fig-m{display:block}}

/* ---------- users panel (FIG. 3) ---------- */
.u-row{display:grid;grid-template-columns:1fr auto auto;gap:14px;align-items:baseline;padding:13px 18px;border-bottom:1px solid var(--ink-04);font-family:var(--fm);font-size:11.5px}
.u-row .who{color:var(--body)}
.u-row .who i{font-style:normal;color:var(--mut)}
.u-row .st{font-size:10.5px;letter-spacing:.08em}
.u-row .st.on{color:var(--cy)}
.u-row .st.pend{color:var(--warn)}
.u-row .st.off{color:var(--mut);opacity:.75}
.u-row .act{font-size:10px;letter-spacing:.12em;color:var(--body);border:1px solid var(--ink-14);border-radius:2px;padding:4px 10px}
.resline{padding:14px 18px;border-top:1px solid var(--ink-08);font-family:var(--fm);font-size:11px;color:var(--cy)}

/* ---------- 3-step setup strip ---------- */
.steps3{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ink-08);border-bottom:1px solid var(--ink-08)}
.step3{padding:30px 26px 30px 0;margin-right:26px;border-right:1px solid var(--ink-08)}
.step3:last-child{border-right:0;margin-right:0;padding-right:0}
.step3 svg{width:100%;max-width:240px;border:1px solid var(--ink-08);border-radius:3px;background:var(--panel);margin-bottom:16px}
.step3 .sn{font-family:var(--fm);font-size:10px;letter-spacing:.22em;color:var(--cy);display:block;margin-bottom:10px}
.step3 h3{font-size:16px;margin-bottom:6px}
.step3 p{font-size:13px;color:var(--mut)}
@media(max-width:1060px){
  .steps3{grid-template-columns:1fr}
  .step3{border-right:0;margin-right:0;padding:26px 0;border-bottom:1px solid var(--ink-08)}
  .step3:last-child{border-bottom:0}
}

/* ---------- engineering expander ---------- */
details.eng{margin-top:22px;border-top:1px solid var(--ink-08)}
details.eng summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:12px;font-family:var(--fm);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--cy);padding:16px 2px;user-select:none}
details.eng summary::-webkit-details-marker{display:none}
details.eng summary::before{content:"+";font-size:13px;transition:transform .2s}
details.eng[open] summary::before{content:"−"}
details.eng .eng-body{padding:2px 2px 22px;font-size:14.5px;color:var(--mut)}
details.eng .eng-body p{margin-top:12px;max-width:76ch}
details.eng .eng-body em{color:var(--body);font-style:normal}

/* ---------- responsive ---------- */
@media(max-width:1060px){
  .hero-inner{grid-template-columns:1fr}
  .hero-log{position:relative;width:100%;margin-top:16px}
}
