/* QORE Profile UI — Sprint 4-E */

.profile-grid { display: grid; grid-template-columns: 140px 1fr; gap: 6px 14px; margin: 0; }
.profile-grid dt { color: #8aa0c0; font-weight: 500; }
.profile-grid dd { margin: 0; color: #fff; }

.role-badge {
    display: inline-block; background: #1d2a48; color: #aac0e8; border-radius: 10px;
    font-size: 11px; padding: 2px 8px; margin: 1px 3px;
}

.margin-pct-row { display: flex; align-items: center; gap: 14px; margin-top: 12px; }
.margin-pct-row input[type=range] { flex: 1; max-width: 400px; }
.margin-pct-row #margin-val { font-size: 16px; font-weight: 600; color: #4a86e8; min-width: 50px; }

.pwd-form { display: flex; flex-direction: column; gap: 10px; max-width: 380px; }
.pwd-form label { display: flex; flex-direction: column; gap: 3px; font-size: 12px; color: #aac0e8; }
.pwd-form label input {
    background: #0c1428; border: 1px solid #2a3a5a; color: #fff; border-radius: 3px;
    padding: 6px 8px; font-size: 13px;
}

.msg { padding: 8px 12px; border-radius: 4px; font-size: 13px; margin-top: 8px; }
.msg-ok { background: #1d3a1d; color: #6ec76e; border: 1px solid #6ec76e; }
.msg-err { background: #3a1d1d; color: #ff8888; border: 1px solid #c76e6e; }

.card-warn { border-left: 4px solid #c7916e; }

/* Status badges */
.status-running       { color: #6ec76e; font-weight: 600; }
.status-pending_build { color: #c7916e; }
.status-building      { color: #c7c76e; }
.status-stopped       { color: #6f7c95; }
.status-failed        { color: #ff6e6e; font-weight: 600; }

/* ---- Shares dialog ---- */
#dlg-shares { min-width: 480px; max-width: 640px; }
#dlg-shares h4 { color: #8aa0c0; text-transform: uppercase; font-size: 11px; letter-spacing: 0.5px; margin: 14px 0 6px; }
#dlg-shares fieldset { border: 1px solid #2a3a5a; border-radius: 4px; padding: 8px 12px; margin: 8px 0; }
#dlg-shares fieldset legend { color: #aac0e8; font-size: 11px; padding: 0 6px; text-transform: uppercase; }
#dlg-shares fieldset label { display: block; margin: 4px 0; font-size: 12px; color: #aac0e8; cursor: pointer; }
#dlg-shares fieldset label input[type=radio],
#dlg-shares fieldset label input[type=checkbox] { margin-right: 6px; }
#dlg-shares select {
    background: #0c1428; border: 1px solid #2a3a5a; color: #fff; padding: 4px 6px;
    border-radius: 3px; margin-left: 6px; font-size: 12px;
}
#shares-list li small { color: #8aa0c0; font-style: italic; margin-left: 4px; }

/* ---- 2FA setup wizard ---- */
#dlg-setup-2fa { min-width: 480px; max-width: 580px; }
#dlg-setup-2fa .setup-steps { padding-left: 18px; font-size: 13px; color: #aac0e8; line-height: 1.6; }
#dlg-setup-2fa .setup-steps li { margin-bottom: 6px; }
.qr-wrap { display: flex; flex-direction: column; align-items: center; padding: 14px 0; gap: 8px; }
.qr-wrap img { width: 220px; height: 220px; background: #fff; padding: 8px; border-radius: 6px; }
.secret-row code {
    background: #0c1428; padding: 4px 8px; border-radius: 3px;
    font-family: monospace; font-size: 12px; color: #aac0e8; user-select: all;
}
#recovery-codes-wrap pre, #regen-result pre {
    background: #0c1428; color: #6ec76e; font-family: monospace; font-size: 13px;
    padding: 10px 14px; border-radius: 4px; line-height: 1.6; user-select: all;
    border: 1px solid #2a3a5a;
}
.totp-hint { color: #aac0e8; font-size: 12px; margin: 4px 0 12px; }
.totp-hint code { background: #0c1428; padding: 1px 5px; border-radius: 2px; font-size: 11px; }
