.op-banner{background:#0e0d0c;color:#eddfc0;border-bottom:1px solid #2a2620;font-size:13px;padding:6px 16px;text-align:center;letter-spacing:.02em}
.op-banner strong{letter-spacing:.14em}
.formgrid{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));align-items:end}
.formgrid label,.stack label{display:grid;gap:4px;font-size:13px;color:#d8d4cb}
.stack{display:grid;gap:10px;max-width:420px}
input,select,textarea{font:inherit;font-size:15px;color:#f2f2f2;background:#0e0d0c;border:1px solid #2a2620;border-radius:12px;padding:8px 12px;min-width:0}
textarea{min-height:64px}
.secret{font-family:ui-monospace,Menlo,monospace;background:#1a1712;border:1px dashed #b5a165;padding:10px;border-radius:10px;word-break:break-all}
.empty{color:#a8a297;font-style:italic;padding:8px 0}
.denied{border-left:3px solid #e8a39a;padding-left:12px}
.kv{display:grid;grid-template-columns:auto 1fr;gap:4px 14px;font-size:14px}
.kv dt{color:#a8a297}.kv dd{margin:0}
.op-table{width:100%;border-collapse:collapse;font-size:14px}
.op-table th,.op-table td{text-align:left;padding:6px 8px;border-bottom:1px solid #2a2620;vertical-align:top}
.inline{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.inline input{max-width:200px}
@media (max-width:640px){.op-table .hide-sm{display:none}.formgrid{grid-template-columns:1fr}}
.center{margin:24px auto}
.full{grid-column:1/-1}
