/* NEWLIFE_UNIFIED_SETTINGS_V1 */
.nl-us { margin-bottom: 18px; }
.nl-us-head, .nl-us-box-title, .nl-us-actions, .nl-us-runtime, .nl-us-runtime-form, .nl-us-head-actions {
    display: flex; align-items: center; gap: 12px;
}
.nl-us-head, .nl-us-box-title { justify-content: space-between; }
.nl-us-head > div:first-child, .nl-us-box-title > div:first-child { min-width: 0; }
.nl-us-head h3, .nl-us-box h4, .nl-us-runtime h4 { margin: 4px 0; }
.nl-us-head p, .nl-us-runtime p { margin: 4px 0 0; opacity: .72; }
.nl-us-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 14px; margin-top: 14px; }
.nl-us-box { border: 1px solid rgba(255,255,255,.08); border-radius: 12px; padding: 14px; background: rgba(0,0,0,.08); }
.nl-us-box label { display: grid; grid-template-columns: minmax(150px, .9fr) minmax(160px, 1.2fr); align-items: center; gap: 12px; margin-top: 10px; }
.nl-us-box input, .nl-us-box select, .nl-us-runtime input { width: 100%; box-sizing: border-box; }
.nl-us-locked, .nl-us-note, .nl-us-message { margin-top: 12px; border-radius: 10px; padding: 10px 12px; background: rgba(255,255,255,.045); }
.nl-us-locked { font-size: 12px; opacity: .8; }
.nl-us-note { font-size: 12px; opacity: .72; }
.nl-us-message.bad { outline: 1px solid currentColor; }
.nl-us-badge, .nl-us-mini { display: inline-flex; align-items: center; border: 1px solid rgba(255,255,255,.1); border-radius: 999px; padding: 5px 9px; font-size: 11px; white-space: nowrap; }
.nl-us-badge.warn { font-weight: 700; }
.nl-us-actions { justify-content: space-between; margin-top: 14px; }
.nl-us-access { font-size: 12px; opacity: .72; }
.nl-us-runtime { justify-content: space-between; align-items: end; margin-top: 16px; padding-top: 14px; border-top: 1px solid rgba(255,255,255,.08); }
.nl-us-runtime > div:first-child { max-width: 520px; }
.nl-us-runtime-form { min-width: min(100%, 520px); }
.nl-us-runtime-form input { min-width: 0; }
@media (max-width: 900px) {
    .nl-us-grid { grid-template-columns: 1fr; }
    .nl-us-head, .nl-us-runtime { align-items: stretch; flex-direction: column; }
    .nl-us-head-actions { justify-content: space-between; }
    .nl-us-runtime-form { width: 100%; min-width: 0; flex-wrap: wrap; }
    .nl-us-runtime-form input { flex: 1 1 180px; }
}
@media (max-width: 560px) {
    .nl-us-box label { grid-template-columns: 1fr; gap: 5px; }
    .nl-us-actions { align-items: stretch; flex-direction: column; }
    .nl-us-head-actions { flex-wrap: wrap; }
}
