.set{width:100%;max-width:1320px;margin-inline:auto;padding:42px clamp(24px,3vw,52px) 88px}
.set-head{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin-bottom:28px}
.set-eyebrow{font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-700)}
.set-h1{margin:7px 0 6px;font-family:var(--display);font-size:40px;font-weight:var(--fw-regular);letter-spacing:-.03em}
.set-lead{max-width:620px;margin:0;color:var(--ink-2);font-size:14px;line-height:1.55}
.set-identity{display:flex;align-items:center;gap:11px;min-width:220px;padding:11px 14px;border:1px solid var(--bd);border-radius:12px;background:var(--surface)}
.set-avatar{display:grid;place-items:center;width:36px;height:36px;flex:none;border-radius:10px;background:var(--accent);color:var(--on-accent);font-weight:var(--fw-bold)}
.set-identity div{display:flex;flex-direction:column;min-width:0}
.set-identity strong{overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap}
.set-identity div span{margin-top:1px;color:var(--ink-3);font-size:11.5px}
.set-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:22px;align-items:start}
.set-summary{position:sticky;top:22px;padding:20px;border:1px solid #27312c;border-radius:14px;background:var(--ink);color:#fff;box-shadow:0 10px 28px rgba(23,28,31,.12)}
.set-summary-label{color:#9eaaa4;font-family:var(--mono);font-size:9.5px;letter-spacing:.11em;text-transform:uppercase}
.set-email{margin-top:6px;font-size:13px;overflow-wrap:anywhere}
.set-rule{height:1px;margin:18px 0;background:rgba(255,255,255,.13)}
.set-mini{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0;color:#b9c1bd;font-size:12px}
.set-mini strong{color:#fff;font-size:13px}
.set-groups,.set-overview{display:flex;flex-direction:column;gap:18px;min-width:0}
.set-group{overflow:hidden;border:1px solid var(--bd);border-radius:14px;background:var(--surface)}
.set-group-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:13px 17px;border-bottom:1px solid var(--bd);background:var(--surface-2)}
.set-group-head span{font-size:12.5px;font-weight:var(--fw-bold)}
.set-group-head small{color:var(--ink-3);font-size:11px}
.set-row{display:grid;grid-template-columns:36px minmax(0,1fr) auto 18px;align-items:center;gap:12px;padding:15px 17px;border-bottom:1px solid var(--bd);color:inherit;text-decoration:none;transition:background .15s ease}
.set-row:last-child{border-bottom:0}
.set-row:hover{background:var(--accent-50)}
.set-row:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
.set-row[hidden]{display:none}
.set-icon{display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--bd);border-radius:9px;background:var(--surface)}
.set-icon svg{width:17px;height:17px;color:var(--accent-700)}
.set-row-copy{display:flex;flex-direction:column;gap:3px;min-width:0}
.set-row-copy strong{font-size:13.5px}
.set-row-copy small{color:var(--ink-3);font-size:12px;line-height:1.4}
.set-row-meta{color:var(--ink-3);font-size:11.5px;text-align:right}
.set-arrow{display:grid;place-items:center;color:var(--accent-700)}
.set-row-danger:hover{background:var(--danger-50)}
.set-row-danger .set-icon svg,.set-row-danger .set-arrow{color:var(--danger-700)}
.set-back{align-self:flex-start;display:inline-flex;align-items:center;gap:6px;padding:0;border:0;background:none;color:var(--accent-700);font-family:var(--sans);font-size:13px;font-weight:var(--fw-semibold);cursor:pointer}
.set-back:hover{text-decoration:underline;text-underline-offset:3px}
.set-back:focus-visible{outline:2px solid var(--accent);outline-offset:4px}

.st-panel{display:flex;flex-direction:column;gap:18px}
.st-card{overflow:hidden}
.st-body{font-size:13.5px;line-height:1.65;color:var(--ink-2);margin:0;padding:16px 20px 0}
.st-body + .st-body{padding-top:10px}
.st-card > .st-body:last-child{padding-bottom:18px}
.st-link{color:var(--accent-700);font-weight:600}
.st-static{font-size:14px;color:var(--ink);margin:0;text-transform:capitalize}

.st-form{padding:18px 20px 20px;display:flex;flex-direction:column;gap:16px;max-width:620px}
.st-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:14px 20px 18px}
/* A form already pads its own children. */
.st-form .st-actions{margin:0}
.st-inset{margin:14px 20px 18px}

.st-result{font-size:12.5px;font-weight:600;color:var(--ink-3)}
.st-result-ok{color:var(--accent-700)}
.st-result-bad{color:var(--danger-700)}
.st-result:empty{display:none}

.st-steps{margin:0;padding:16px 20px 4px 40px;display:flex;flex-direction:column;gap:20px}
.st-steps li{font-size:13.5px;line-height:1.6;color:var(--ink-2)}
.st-steps strong{display:block;color:var(--ink);font-size:14px;margin-bottom:10px}

.st-qr{display:inline-flex;padding:12px;background:#fff;border:1px solid var(--bd);border-radius:12px}
.st-qr svg{display:block}

.st-manual{margin-top:12px;font-size:13px}
.st-manual summary{cursor:pointer;font-weight:600;color:var(--accent-700);font-size:13px}
.st-manual summary::marker{color:var(--ink-4)}
.st-manual > *{margin-top:8px}
.st-key{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 12px;background:var(--surface-2);border:1px solid var(--bd);border-radius:9px}
.st-key code{font-size:14px;letter-spacing:.09em;word-break:break-all}

.st-verify{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.st-code{width:150px;font-family:var(--mono);font-size:19px;letter-spacing:.24em;text-align:center}

.st-recovery{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:14px 20px;padding:14px 16px;background:var(--surface-2);border:1px solid var(--bd);border-radius:11px;font-size:13.5px;color:var(--ink-2)}
.st-recovery strong{font-family:var(--mono);font-size:16px;color:var(--ink)}
.st-recovery-low{background:var(--warn-50);border-color:var(--warn-100)}
.st-recovery-warn{display:block;margin-top:5px;font-size:12.5px;line-height:1.5;color:var(--warn-700);max-width:52ch}

.st-codes{list-style:none;margin:18px 0 0;padding:16px;display:grid;grid-template-columns:1fr 1fr;gap:9px;background:var(--surface-2);border:1px solid var(--bd);border-radius:11px}
.st-codes code{font-size:14px;letter-spacing:.05em;color:var(--ink)}

.st-toggle-row{display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding:16px 20px 0}
.st-toggle{display:flex;align-items:center;gap:10px;cursor:pointer;font-size:13.5px;font-weight:600;color:var(--ink)}
.st-toggle input{width:17px;height:17px;accent-color:var(--accent);margin:0}

.st-prefs{display:flex;flex-direction:column;gap:18px;padding:16px 20px 0}
.st-pref-group{display:flex;flex-direction:column;gap:2px}
.st-pref-cat{font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-4);margin-bottom:4px}
.st-pref{display:flex;align-items:flex-start;gap:11px;padding:9px 0;cursor:pointer;font-size:13.5px;line-height:1.5;color:var(--ink-2)}
.st-pref input{width:17px;height:17px;accent-color:var(--accent);margin:1px 0 0;flex:none}

.st-pref-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px;padding:11px 0;border-bottom:1px solid var(--bd)}
.st-pref-group .st-pref-row:last-child{border-bottom:0}
.st-pref-desc{flex:1 1 200px;min-width:0;font-size:13px;line-height:1.5;color:var(--ink-2)}
.st-pref-chips{display:flex;flex-wrap:wrap;gap:4px 12px}
.st-pref-chip{display:inline-flex;align-items:center;gap:6px;cursor:pointer;font-size:12px;font-weight:600;color:var(--ink-3);white-space:nowrap}
.st-pref-chip input{width:15px;height:15px;accent-color:var(--accent);margin:0;flex:none}

.st-current td{background:var(--accent-50)}
.st-danger{border-color:var(--danger-100)}
.st-danger .dv-section-h{color:var(--danger-700)}

@media (max-width:640px){
  .set{padding:66px 16px 72px}
  .set-head{align-items:flex-start;flex-direction:column}
  .set-identity{width:100%}
  .set-layout{grid-template-columns:1fr}
  .set-summary{position:static}
  .set-row{grid-template-columns:36px minmax(0,1fr) 18px}
  .set-row-meta{display:none}
  .set-group-head small{display:none}
  .st-codes{grid-template-columns:1fr}
  .st-steps{padding-left:32px}
  .st-form{padding:16px}
}
