/* Security and quota controls share WABI's existing colour tokens. */
#security-settings-root{max-width:1180px;margin-inline:auto}
#security-settings-root .security-heading h2{margin:0 0 8px;font-size:clamp(22px,3vw,30px);letter-spacing:-.02em}
#security-settings-root .security-heading p{max-width:760px;line-height:1.65}
#security-settings-root .security-access{padding:12px 16px;border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:6px;font-size:13px;background:var(--surface)}
#security-settings-root .security-usage-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin:16px 0}
#security-settings-root .security-message{font-size:13px;line-height:1.6;overflow-wrap:anywhere;margin:0}
#security-settings-root .security-section{margin:28px 0}
#security-settings-root .security-section>h3{font-size:18px;margin:0 0 8px}
#security-settings-root .security-budget-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:16px}
#security-settings-root .security-budget-card{border:1px solid var(--line);border-radius:10px;background:var(--surface);padding:20px;min-width:0}
#security-settings-root .security-budget-card[data-budget-scope="interactive"]{border-top:3px solid var(--accent);padding-top:18px}
#security-settings-root .security-budget-card h4{font-size:15px;line-height:1.4;margin:0 0 8px}
#security-settings-root .security-budget-card p{line-height:1.6;overflow-wrap:anywhere}
#security-settings-root .security-budget-usage{padding:8px 0 12px;border-bottom:1px solid var(--line);margin-bottom:16px}
#security-settings-root .security-usage-line{display:grid;gap:4px;margin:12px 0;font-size:12px;overflow-wrap:anywhere}
#security-settings-root .security-usage-line strong{font-size:13px}
#security-settings-root .security-usage-line small{color:var(--muted)}
#security-settings-root progress{width:100%;height:8px;accent-color:var(--accent);margin-top:4px}
#security-settings-root .security-cap-fields{display:grid;gap:16px}
#security-settings-root .security-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 24px;padding:16px 0}
#security-settings-root .security-field{display:grid;align-content:start;gap:8px;font-size:13px;font-weight:500;min-width:0}
#security-settings-root .security-field input{width:100%;min-width:0;min-height:44px;box-sizing:border-box;font-variant-numeric:tabular-nums;margin:0}
#security-settings-root .security-field small{font-size:11px;line-height:1.5;color:var(--muted);font-weight:400}
#security-settings-root .security-rate-group{border-top:1px solid var(--line);padding:4px 0}
#security-settings-root summary{cursor:pointer;min-height:44px;padding:12px 0;box-sizing:border-box;font-size:14px;font-weight:500;color:var(--accent)}
#security-settings-root .security-save-controls{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:20px 0;border-top:1px solid var(--line)}
#security-settings-root .security-save-controls .security-message{flex-basis:100%}
#security-settings-root button{min-height:44px;white-space:normal}
#security-settings-root button:disabled{cursor:not-allowed}
#security-settings-root .security-counter-details{margin:20px 0;border-top:1px solid var(--line)}
#security-settings-root .security-counter-scroll{overflow:auto;max-width:100%;max-height:460px}
#security-settings-root table{width:100%;border-collapse:collapse;font-size:12px;text-align:left}
#security-settings-root caption{text-align:left;padding:12px 0;font-weight:500}
#security-settings-root th,#security-settings-root td{padding:10px 12px;border-bottom:1px solid var(--line);white-space:nowrap}
#security-settings-root :is(button,input,summary):focus-visible{outline:2px solid var(--accent);outline-offset:3px}
@media(max-width:1000px){#security-settings-root .security-budget-grid{grid-template-columns:repeat(2,minmax(0,1fr))}#security-settings-root .security-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){#security-settings-root .security-budget-grid,#security-settings-root .security-fields{grid-template-columns:minmax(0,1fr)}#security-settings-root .security-budget-card{padding:16px}#security-settings-root .security-budget-card[data-budget-scope="interactive"]{padding-top:14px}#security-settings-root .security-save-controls button{flex:1 1 180px}#security-settings-root .security-usage-toolbar{align-items:flex-start;flex-direction:column}}

/* Compact when embedded in the dedicated Settings page; retain the legacy heading. */
#platform-security-host .security-heading{display:none}
#security-settings-root .security-budget-help>summary{padding:4px 0;min-height:32px;font-size:12px}
#security-settings-root .security-budget-help>p{max-width:820px;margin:8px 0}
#security-settings-root .security-save-controls{position:sticky;bottom:0;z-index:12;background:var(--surface);padding:12px 16px;border:1px solid var(--line);border-radius:8px;box-shadow:0 -4px 16px rgb(0 0 0 / .04)}
#security-settings-root .security-save-controls .security-message:empty{display:none}
#security-settings-root .security-section:first-child{margin-top:16px}
#security-settings-root .security-save-controls{max-height:40dvh;overflow:auto}
#security-settings-root .security-field input{scroll-margin-bottom:220px}
@media(max-width:600px){#security-settings-root .security-save-controls button{flex:1 1 0;min-width:0;padding:8px;font-size:12px}#security-settings-root .security-save-controls{gap:8px;padding:12px}#security-settings-root .security-save-controls .security-message{font-size:12px}}
