/* Shared account navigation and Authenticator page, matching the store theme. */
.acct-twofactor-row { width:100%; color:#fff; background:linear-gradient(115deg,rgba(var(--mk-accent-rgb), 0.09),rgba(255,255,255,.025)); border-color:rgba(var(--mk-accent-rgb), 0.28); }
.acct-twofactor-row .acct-action-icon-wrap { flex:0 0 36px; }
.acct-twofactor-copy { flex:1; min-width:0; }
.acct-twofactor-copy .acct-action-btn-title,.acct-twofactor-copy .acct-action-btn-sub { display:block; line-height:1.6; }
.acct-twofactor-arrow { flex:0 0 auto; font-size:.8rem; color:#94a3b8; margin-left:auto; }
.acct-twofactor-row:focus-visible { outline:2px solid var(--mk-accent-hi); outline-offset:4px; }
.mk-security-page { width:calc(100% - 32px); max-width:560px; margin:32px auto 48px; color:#f8fafc; font-family:var(--font-main,sans-serif); }
.mk-security-page * { box-sizing:border-box; }
.mk-security-page [hidden] { display:none!important; }
.mk-security-panel { position:relative; padding:28px; border:1px solid rgba(255,255,255,.09); border-radius:24px; background:#090a0f; box-shadow:0 24px 70px rgba(0,0,0,.5),0 0 32px rgba(var(--mk-accent-rgb), 0.08); }
.mk-security-back { display:inline-flex; align-items:center; gap:8px; color:#94a3b8!important; font-size:.8rem; text-decoration:none!important; margin-bottom:24px; }
.mk-security-back:hover { color:#fff!important; }
.mk-security-heading { text-align:center; margin-bottom:24px; }
.mk-security-emblem { display:flex; align-items:center; justify-content:center; width:52px; height:52px; margin:0 auto 16px; border:1px solid rgba(var(--mk-accent-rgb), 0.4); border-radius:16px; background:rgba(var(--mk-accent-rgb), 0.12); color:var(--mk-accent-hi); font-size:1.3rem; box-shadow:0 0 24px rgba(var(--mk-accent-rgb), 0.14); }
.mk-security-eyebrow { margin-bottom:7px; color:var(--mk-accent-hi)!important; font-size:.76rem; font-weight:700; }
.mk-security-heading h1 { margin:0 0 10px; font:800 clamp(1.2rem,4.5vw,1.5rem)/1.5 var(--font-main,sans-serif); color:#fff!important; }
.mk-security-description { margin:0; color:#94a3b8!important; font-size:.84rem; line-height:1.8; }
.mk-security-status { display:inline-flex; align-items:center; gap:7px; margin-top:16px; padding:6px 12px; border:1px solid rgba(251,191,36,.2); border-radius:99px; background:rgba(251,191,36,.06); color:#fcd34d!important; font-size:.75rem; font-weight:700; }
.mk-security-status::before { content:''; width:6px; height:6px; border-radius:50%; background:currentColor; }
.mk-security-status.is-enabled { border-color:rgba(74,222,128,.22); background:rgba(74,222,128,.06); color:#86efac!important; }
.mk-security-form { display:grid; gap:16px; padding:20px; border:1px solid rgba(255,255,255,.07); border-radius:16px; background:rgba(255,255,255,.025); }
.mk-security-field { display:grid; gap:8px; margin:0; color:#e2e8f0!important; font-size:.82rem; font-weight:600; line-height:1.6; }
.mk-security-input { width:100%; min-width:0; height:48px; padding:11px 13px; border:1px solid rgba(148,163,184,.2); border-radius:10px; background:#080b13; color:#fff!important; font:400 16px/1.5 var(--font-main,sans-serif); transition:border-color .15s,box-shadow .15s; }
.mk-security-input::placeholder { color:#64748b; }
.mk-security-input:focus { outline:none; border-color:var(--mk-accent-hi); box-shadow:0 0 0 3px rgba(var(--mk-accent-hi-rgb), 0.15); }
.mk-security-button { display:inline-flex; justify-content:center; align-items:center; gap:9px; width:100%; min-height:46px; padding:11px 14px; border:1px solid rgba(var(--mk-accent-hi-rgb), 0.4); border-radius:11px; background:linear-gradient(135deg,var(--mk-accent),var(--mk-accent-lo)); color:var(--mk-on-accent)!important; font:700 .86rem/1.5 var(--font-main,sans-serif); text-decoration:none!important; cursor:pointer; transition:filter .15s,border-color .15s; }
.mk-security-button:hover { filter:brightness(1.15); }
.mk-security-button:focus-visible { outline:2px solid var(--mk-accent-soft); outline-offset:3px; }
.mk-security-button:disabled { opacity:.55; cursor:wait; }
.mk-security-button.is-secondary { background:rgba(var(--mk-accent-rgb), 0.08); border-color:rgba(var(--mk-accent-hi-rgb), 0.3); color:var(--mk-accent-pale)!important; }
.mk-security-button.is-danger { background:rgba(239,68,68,.07); border-color:rgba(239,68,68,.22); color:#fca5a5!important; }
.mk-security-note { display:flex; align-items:flex-start; gap:9px; margin:18px 0 0; color:#94a3b8!important; font-size:.75rem; line-height:1.8; }
.mk-security-note>i { flex:0 0 auto; margin-top:5px; color:var(--mk-accent-hi); }
.mk-security-setup { border-top:1px solid rgba(255,255,255,.08); padding-top:20px; }
.mk-security-step { margin:0 0 10px; font-size:.85rem; font-weight:700; line-height:1.7; color:#fff!important; }
.mk-security-qr { display:grid; place-items:center; width:min(100%,260px); aspect-ratio:1; margin:16px auto; padding:14px; border-radius:14px; background:#fff; overflow:hidden; }
.mk-security-qr svg { display:block!important; width:100%!important; height:100%!important; aspect-ratio:1; max-width:100%; overflow:visible; background:#fff; shape-rendering:crispEdges; }
.mk-security-qr svg rect { fill:#fff!important; }
.mk-security-qr svg path { fill:#000!important; stroke:none!important; }
.mk-security-secret-label { margin:12px 0 8px; color:#94a3b8!important; font-size:.75rem; line-height:1.7; }
.mk-security-secret { display:flex; align-items:center; gap:10px; padding:11px 12px; border:1px solid rgba(var(--mk-accent-hi-rgb), 0.2); border-radius:10px; background:#080b13; margin-bottom:18px; }
.mk-security-secret code { display:block; flex:1; min-width:0; max-width:100%; white-space:nowrap!important; overflow-x:auto; overflow-y:hidden; overflow-wrap:normal!important; word-break:normal!important; color:var(--mk-accent-pale)!important; font:clamp(10px,2.8vw,13px)/1.8 ui-monospace,SFMono-Regular,monospace; scrollbar-width:thin; -webkit-overflow-scrolling:touch; }
.mk-security-copy { flex:0 0 auto; padding:7px; border:0; border-radius:6px; background:transparent; color:#94a3b8!important; cursor:pointer; }
.mk-security-copy:hover,.mk-security-copy:focus-visible { color:#fff!important; outline:1px solid var(--mk-accent-hi); }
.mk-security-setup .mk-security-button { margin-top:16px; }
.mk-security-message { margin:16px 0 0; min-height:1em; color:#94a3b8!important; font-size:.8rem; line-height:1.8; overflow-wrap:break-word; }
.mk-security-message:empty { display:none; }
.mk-security-message.is-error { color:#fca5a5!important; }
.mk-security-message.is-success { color:#86efac!important; }
.mk-security-recovery { margin-top:20px; padding:20px; border:1px solid rgba(var(--mk-accent-hi-rgb), 0.28); border-radius:16px; background:linear-gradient(140deg,rgba(var(--mk-accent-rgb), 0.08),#0b0f18); }
.mk-security-recovery h2 { font:800 1rem/1.6 var(--font-main,sans-serif); color:#fff!important; margin:0 0 8px; }
.mk-security-recovery p { font-size:.8rem; line-height:1.8; color:#94a3b8!important; margin:0 0 14px; }
.mk-security-codes { padding:16px; border:1px solid rgba(255,255,255,.08); border-radius:10px; background:#060911; color:#e2e8f0!important; font:14px/1.9 ui-monospace,SFMono-Regular,monospace; white-space:pre-wrap; overflow-wrap:anywhere; margin:0 0 14px; }
.mk-security-recovery .mk-security-button+.mk-security-button { margin-top:10px; }
@media(max-width:480px) { .mk-security-page { margin-top:20px; } .mk-security-panel { padding:22px 18px; border-radius:20px; } .mk-security-form,.mk-security-recovery { padding:16px; } }
@media(prefers-reduced-motion:reduce) { .mk-security-page *,.acct-twofactor-row { transition:none!important; } }

/* Account recovery (email + secret code), forgot password, Turnstile slot. */
.mk-turnstile-slot { display:flex; justify-content:center; min-height:65px; }
.mk-turnstile-slot iframe { max-width:100%; }
.mk-auth-forgot { display:flex; justify-content:flex-end; margin:-4px 0 14px; }
.mk-auth-forgot a { color:var(--mk-accent-hi)!important; font-size:.8rem; font-weight:700; text-decoration:none!important; }
.mk-auth-forgot a:hover { color:#fff!important; text-decoration:underline!important; }
.acct-recovery-badge { flex:0 0 auto; margin-left:auto; padding:3px 9px; border-radius:99px; font-size:.68rem; font-weight:700; white-space:nowrap; border:1px solid rgba(251,191,36,.3); background:rgba(251,191,36,.08); color:#fcd34d; }
.acct-recovery-badge.is-ok { border-color:rgba(74,222,128,.3); background:rgba(74,222,128,.08); color:#86efac; }
.mk-security-section-title { margin:0; color:#fff!important; font:800 .92rem/1.6 var(--font-main,sans-serif); display:flex; align-items:center; gap:8px; }
.mk-security-section-title i { color:var(--mk-accent-hi); }
.mk-security-hint { margin:-6px 0 0; color:#94a3b8!important; font-size:.76rem; line-height:1.7; }
.mk-security-form + .mk-security-form { margin-top:16px; }
.mk-rc-box { text-align:left; display:grid; gap:12px; font-size:.86rem; }
.mk-rc-lead,.mk-rc-steps { color:#cbd5e1; line-height:1.7; }
.mk-rc-steps { font-size:.78rem; color:#94a3b8; }
.mk-rc-code { display:block; padding:14px 10px; border:1px solid rgba(var(--mk-accent-hi-rgb), 0.35); border-radius:12px; background:#060911; color:var(--mk-accent-pale); text-align:center; font:700 clamp(13px,3.9vw,18px)/1.6 ui-monospace,SFMono-Regular,monospace; letter-spacing:.04em; white-space:nowrap; overflow-x:auto; user-select:all; }
.mk-rc-copy { border:1px solid rgba(var(--mk-accent-hi-rgb), 0.35); border-radius:10px; background:rgba(var(--mk-accent-rgb), 0.12); color:var(--mk-accent-pale); padding:9px 12px; font-weight:700; cursor:pointer; }
.mk-rc-ack { display:flex; align-items:center; gap:9px; color:#fff; font-weight:700; cursor:pointer; margin:0; }
.mk-rc-ack input { width:18px; height:18px; accent-color:var(--mk-accent-hi); }
