/* v51: scoped to application settings; no public template or admin restyling. */
#extended-settings .security-enable{background:#eaf7f1;border:1px solid #d5ebe1;border-radius:12px;padding:18px 20px;margin-bottom:18px}
#extended-settings .security-enable label{display:flex;gap:10px;align-items:center;font-size:17px;font-weight:700}
#extended-settings .security-enable p{margin:10px 0 0;font-size:14px;line-height:1.7;color:#55736a}
#extended-settings .security-rules{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
#extended-settings .security-rules .setting-box{display:flex;flex-direction:column;gap:14px;min-width:0;padding:18px}
#extended-settings .security-rules h3{font-size:17px;line-height:1.4;margin:0}
#extended-settings .security-rules label{font-size:14px;display:block}
#extended-settings .security-rules .input{margin-top:8px;width:100%;min-height:42px}
#extended-settings .security-rules small{font-size:13px;line-height:1.7}
#extended-settings .security-caution{margin:14px 0 20px;color:#6c7c75;font-size:13px;line-height:1.7}
#extended-settings .security-ip-panel{padding:18px;border:1px solid #deebe5;border-radius:12px;background:#fff}
#extended-settings .security-list-title{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:10px}
#extended-settings .security-list-title h3{margin:0;font-size:17px}
#extended-settings [data-ip-policy-state]{font-size:12px;color:#537869;flex:1}
#extended-settings [data-security-client]{overflow-wrap:anywhere;line-height:1.6;margin:10px 0 14px}
#extended-settings .security-ip-filters,#extended-settings .security-manual-ban{display:grid;grid-template-columns:minmax(140px,1fr) 180px auto;gap:10px;margin-bottom:12px}
#extended-settings .security-ip-filters .input,#extended-settings .security-manual-ban .input{width:100%;margin:0;min-height:40px;font-size:14px}
#extended-settings .security-table-wrap{overflow:auto;max-height:360px;border:1px solid #e5eeea;border-radius:8px}
#extended-settings .security-ip-table{width:100%;min-width:790px;border-collapse:collapse;table-layout:auto;font-size:13px;text-align:left}
#extended-settings .security-ip-table th{position:sticky;top:0;background:#eff8f4;color:#527968;z-index:1;font-size:12px}
#extended-settings .security-ip-table td,#extended-settings .security-ip-table th{padding:12px 10px;line-height:1.55;border-bottom:1px solid #e7efeb;vertical-align:middle;white-space:nowrap}
#extended-settings .security-ip-table small{display:block;max-width:180px;white-space:normal;overflow-wrap:anywhere;font-size:12px;margin:5px 0 0}
#extended-settings .security-ip-address{max-width:220px;overflow:hidden;text-overflow:ellipsis;font-family:ui-monospace,monospace}
#extended-settings .security-state{display:inline-block;border-radius:5px;padding:2px 7px;color:#08754f;background:#e6f6ee}
#extended-settings .security-state.is-banned{background:#fff0ed;color:#ae4230}
#extended-settings .security-empty{text-align:center;padding:28px;color:#678174}
#extended-settings .security-ip-pager{display:flex;align-items:center;gap:8px;margin-top:14px;font-size:13px}
#extended-settings [data-ip-total]{flex:1}
#extended-settings .security-ip-error{color:#b63d34;font-size:13px;line-height:1.7;margin:10px 0}
#extended-settings #settings-error{flex:1;line-height:1.7;font-size:14px;overflow-wrap:anywhere}
#extended-settings #settings-error.settings-saved{color:#087955}
#extended-settings .settings-tabs{overflow-x:auto;flex-wrap:nowrap}
#extended-settings .settings-tabs button{white-space:nowrap;flex-shrink:0}
@media(max-width:900px){#extended-settings .security-rules{grid-template-columns:1fr}#extended-settings .security-ip-filters,#extended-settings .security-manual-ban{grid-template-columns:minmax(80px,1fr) 140px}#extended-settings .security-ip-filters button,#extended-settings .security-manual-ban button{grid-column:1/-1}#extended-settings .security-ip-panel{padding:12px}#extended-settings .settings-tabs button{padding:12px;font-size:14px}}

/* v52-settings-feedback: one clear, persistent message INSIDE the native dialog. */
#extended-settings .settings-save{gap:12px;flex-wrap:wrap;align-items:center}
#extended-settings .settings-save #settings-error{display:flex;align-items:flex-start;gap:10px;flex:1 1 220px;min-width:0;margin:0 auto 0 0;padding:12px 14px;border:1px solid transparent;border-radius:10px;font-size:14px;font-weight:600;line-height:1.65;white-space:normal}
#extended-settings .settings-save #settings-error:empty{display:none}
#extended-settings .settings-save #settings-error.settings-saved{background:#e4f6ee;color:#096346;border-color:#b5dfcc}
#extended-settings .settings-save #settings-error.settings-failed{background:#fff0ef;color:#a22b34;border-color:#efc5c9}
#extended-settings .settings-feedback-icon{display:flex;align-items:center;flex:0 0 20px;margin-top:2px}
#extended-settings .settings-feedback-icon .ui-icon{width:20px;height:20px;stroke-width:2}
#extended-settings .settings-feedback-text{min-width:0;white-space:pre-line;overflow-wrap:anywhere}
#extended-settings .settings-save>.btn{flex:0 0 auto;min-height:44px;white-space:nowrap}
@media(max-width:650px){
 #extended-settings .settings-save{bottom:0;padding:12px 0;gap:10px}
 #extended-settings .settings-save #settings-error:not(:empty){flex-basis:100%;font-size:14px;padding:10px 12px}
}
