/* Scoped design system: security workspace only. */
.sec-page {
  --sec-paper:#fff; --sec-ink:#19332e; --sec-muted:#566b65; --sec-line:#dce6e2;
  --sec-soft:#f4f8f6; --sec-brand:#087c6e; --sec-brand-soft:#e6f5ef;
  --sec-warn:#81520b; --sec-warn-soft:#fff5e5; --sec-danger:#b33232;
  max-width:1120px!important; margin:0 auto!important; padding:4px 0 80px!important; scroll-margin-top:90px;
  font-family:var(--font); color:var(--sec-ink); line-height:1.7;
}
.sec-page [hidden]{display:none!important}
.sec-page h1,.sec-page h2,.sec-page p,.sec-page dl {margin:0;letter-spacing:normal}
.sec-page h1{font:700 clamp(23px,3vw,30px)/1.6 var(--font);color:var(--sec-ink)}
.sec-page h2{font:700 16px/1.65 var(--font);color:var(--sec-ink)}
.sec-page p{font-size:14px;color:var(--sec-muted)}
.sec-page a{color:var(--sec-brand);text-decoration:none}
.sec-page a:hover{text-decoration:underline}
.sec-page button,.sec-page select{font:600 14px/1.6 var(--font)}
.sec-page button:disabled{cursor:not-allowed;opacity:.6}
.sec-page :is(button,a,select,summary):focus-visible{outline:3px solid #1ba58e;outline-offset:3px}
.sec-page h1[tabindex="-1"]:focus{outline:2px solid #1ba58e;outline-offset:5px;border-radius:3px}
@media(max-width:600px){.sec-page{scroll-margin-top:20px}}
.sec-breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-bottom:16px;color:var(--sec-muted);font-size:13px}
.sec-breadcrumb button{background:none;border:none;color:var(--sec-brand);padding:5px 0;min-height:36px}
.sec-breadcrumb [aria-current]{color:var(--sec-ink);font-weight:600}
.sec-page-header{margin-bottom:22px}
.sec-page-header p{margin-top:6px;max-width:760px}
.sec-eyebrow{font-size:11px;font-weight:700;letter-spacing:.1em;color:var(--sec-brand);display:block;margin-bottom:5px}
.sec-context{display:grid;grid-template-columns:1fr 1fr;gap:14px 20px;padding:20px;background:var(--sec-paper);border:1px solid var(--sec-line);border-radius:12px;margin-bottom:18px}
.sec-field{min-width:0;display:flex;flex-direction:column;gap:7px}
.sec-field label{color:var(--sec-muted);font-size:13px;font-weight:600}
.sec-field select{width:100%;min-width:0;min-height:46px;border:1px solid var(--sec-line);border-radius:8px;color:var(--sec-ink);background:var(--sec-paper);padding:9px 34px 9px 12px;text-overflow:ellipsis}
.sec-context-note{grid-column:1/-1;font-size:12px!important;line-height:1.6}
.sec-section-nav{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:18px;border-bottom:1px solid var(--sec-line);padding-bottom:10px}
.sec-section-nav a{padding:8px 12px;min-height:40px;border-radius:7px;font-size:13px;color:var(--sec-muted);white-space:nowrap}
.sec-section-nav a.is-active{background:var(--sec-brand-soft);color:var(--sec-brand);font-weight:700}
.sec-notice{border:1px solid var(--sec-line);border-left:3px solid #8ba29a;background:var(--sec-soft);padding:14px 16px;border-radius:8px;margin-bottom:22px}
.sec-notice b{font-size:14px;font-weight:700}
.sec-notice p{font-size:13px;margin-top:4px;overflow-wrap:anywhere}
.sec-notice[data-kind="offline"],.sec-notice[data-kind="stale"]{border-left-color:#c88620;background:var(--sec-warn-soft);color:var(--sec-warn)}
.sec-notice[data-kind="error"]{border-left-color:var(--sec-danger)}
.sec-notice[data-kind="verified"]{border-left-color:var(--sec-brand)}
.sec-notice[data-kind="loading"]{border-left-color:#487ba9}
.sec-tile-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.sec-tile{display:flex;flex-direction:column;padding:22px;background:var(--sec-paper);border:1px solid var(--sec-line);border-radius:12px;min-width:0;color:var(--sec-ink)!important;transition:border-color .15s,box-shadow .15s}
.sec-tile:hover{border-color:var(--sec-brand);box-shadow:0 4px 14px #19332e09;text-decoration:none!important}
.sec-tile-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}
.sec-icon{display:inline-grid;place-items:center;width:40px;height:40px;border-radius:9px;background:var(--sec-brand-soft);color:var(--sec-brand);flex-shrink:0}
.sec-icon svg{width:22px;height:22px}
.sec-tile h2{margin-bottom:7px}
.sec-tile p{font-size:13px;flex:1}
.sec-tile-action{display:flex;align-items:center;justify-content:space-between;font-size:13px;font-weight:700;color:var(--sec-brand);margin-top:22px}
.sec-tile-action svg,.sec-text-link svg{width:18px;height:18px}
.sec-badge{display:inline-flex;border:1px solid var(--sec-line);background:var(--sec-soft);color:var(--sec-muted);font-size:12px;font-weight:700;line-height:1.4;padding:5px 9px;border-radius:6px;white-space:nowrap}
.sec-badge[data-state="on"]{background:var(--sec-brand-soft);color:var(--sec-brand);border-color:transparent}
.sec-badge[data-state="off"]{background:var(--sec-soft);color:var(--sec-muted)}
.sec-hub-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}
.sec-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:9px 14px;border-radius:8px;border:1px solid var(--sec-line);font:600 13px/1.6 var(--font)!important;box-shadow:none}
.sec-button svg{width:17px;height:17px}
.sec-button-secondary{background:var(--sec-paper);color:var(--sec-ink)}
.sec-button-primary{background:var(--sec-brand);color:white;border-color:var(--sec-brand)}
.sec-button-danger{background:var(--sec-paper);color:var(--sec-danger);border-color:var(--sec-danger)}
.sec-button:hover:not(:disabled){filter:brightness(.95)}
.sec-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:22px;align-items:start}
.sec-detail-grid>div,.sec-detail-grid>aside{min-width:0}
.sec-panel{background:var(--sec-paper);border:1px solid var(--sec-line);border-radius:12px;padding:22px;margin-bottom:18px;color:var(--sec-ink)}
.sec-panel>h2{margin-bottom:12px}
.sec-panel-heading{display:flex;align-items:center;gap:12px}
.sec-panel-heading .sec-badge{margin-top:5px}
.sec-control-purpose{margin-top:18px!important}
.sec-switch-row{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:22px 0;padding:18px 0;border-top:1px solid var(--sec-line);border-bottom:1px solid var(--sec-line)}
.sec-switch-row b{display:block;font-size:14px}.sec-switch-row small{display:block;font-size:12px;color:var(--sec-muted);margin-top:4px}
.sec-page .native-defense-switch{min-width:96px;min-height:46px;padding:9px 15px;border:1px solid var(--sec-line);border-radius:8px;color:var(--sec-ink);background:var(--sec-soft);font:700 14px/1.6 var(--font);flex-shrink:0}
.sec-page .native-defense-switch[aria-checked="true"]{background:var(--sec-brand);border-color:var(--sec-brand);color:white}
.sec-control-status{font-size:13px!important;overflow-wrap:anywhere}
.sec-controls-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:22px}
.sec-controls-footer>span{font-size:12px;color:var(--sec-muted)}
.sec-behavior>div{display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px;padding:14px 0;border-bottom:1px solid var(--sec-line)}
.sec-behavior>div:last-child{border-bottom:0;padding-bottom:0}
.sec-behavior dt{font-size:12px;font-weight:700;color:var(--sec-brand)}
.sec-behavior dd{font-size:14px;color:var(--sec-muted);margin:0}
.sec-caution{background:var(--sec-warn-soft);border-color:transparent}
.sec-caution h2,.sec-caution p{color:var(--sec-warn)}
.sec-list{padding-left:20px;font-size:14px;color:var(--sec-muted);line-height:2}
.sec-text-link{display:inline-flex;align-items:center;gap:8px;margin-top:16px;font-size:13px;font-weight:600}
.sec-help summary{font-size:14px;font-weight:600;cursor:pointer;min-height:24px}
.sec-help p{margin:14px 0;font-size:13px}.sec-help a{font-size:13px}
.sec-footnote{padding:20px 0;margin-top:8px;max-width:860px}
.sec-footnote b{font-size:13px}.sec-footnote p{font-size:13px;margin-top:5px}
.sec-tech-line{padding:14px 0 0;font-size:13px!important;overflow-wrap:anywhere}
.sec-legacy-state{display:flex;align-items:center;gap:10px;padding:8px 0 18px}
.sec-legacy-state>div{flex:1;min-width:0}.sec-legacy-state b{display:block;font-size:14px}.sec-legacy-state small{display:block;color:var(--sec-muted);font-size:12px;overflow-wrap:anywhere}
.sec-legacy-state>span{width:8px;height:8px;border-radius:50%;background:#8ba29a;flex-shrink:0}
.sec-legacy-state>span.good{background:var(--sec-brand)}.sec-legacy-state>span.bad{background:var(--sec-danger)}
.sec-metrics{display:grid;grid-template-columns:1fr 1fr;gap:18px;border-top:1px solid var(--sec-line);padding-top:18px}
.sec-metrics dt{font-size:12px;color:var(--sec-muted);margin-bottom:6px}.sec-metrics dd{font-size:14px;overflow-wrap:anywhere;margin:0;font-weight:600}
.sec-subtext{font-size:13px!important;margin-bottom:14px!important;overflow-wrap:anywhere}
.sec-selection{display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding-top:18px;border-top:1px solid var(--sec-line);margin-top:10px}
.sec-selection small{color:var(--sec-muted);width:100%;font-size:13px}
.sec-infrastructure .gateway-infrastructure-row{grid-template-columns:44px minmax(0,1fr) auto;gap:10px;border-color:var(--sec-line);padding:16px 0}
.sec-device-select{display:grid;place-items:center;min-width:44px;min-height:44px;cursor:pointer}
.sec-infrastructure .gateway-infrastructure-row:has(input:checked){background:var(--sec-brand-soft);border-radius:8px}
.sec-infrastructure .gateway-infrastructure-row input{width:20px;height:20px;accent-color:var(--sec-brand)}
.sec-infrastructure .gateway-infrastructure-row b{color:var(--sec-ink);font-size:14px}.sec-infrastructure .gateway-infrastructure-row small{color:var(--sec-muted);font-size:12px}
.sec-infrastructure .gateway-infrastructure-row span{font-size:11px;white-space:normal;max-width:110px}
.sec-audit-list{margin-top:20px;overflow-wrap:anywhere}.sec-audit-list>div{display:grid;grid-template-columns:110px minmax(0,1fr) auto;gap:12px;padding:16px 0;border-bottom:1px solid var(--sec-line);font-size:13px}
.sec-audit-list time{color:var(--sec-muted);font-size:12px}
html[data-theme="dark"] .sec-page{--sec-paper:#14232a;--sec-ink:#e5f0ed;--sec-muted:#afc2bc;--sec-line:#30434a;--sec-soft:#1b2c33;--sec-brand:#82dfc6;--sec-brand-soft:#203c36;--sec-warn:#ffda9d;--sec-warn-soft:#332b1c;--sec-danger:#ff9e9e}
html[data-theme="dark"] .sec-button-primary,html[data-theme="dark"] .sec-page .native-defense-switch[aria-checked="true"]{color:#132b24}
@media(max-width:950px){.sec-tile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sec-detail-grid{grid-template-columns:minmax(0,1fr) 280px;gap:16px}.sec-panel{padding:18px}}
@media(max-width:720px){.sec-detail-grid{grid-template-columns:1fr}.sec-detail-grid>aside{display:grid;grid-template-columns:1fr 1fr;gap:14px}.sec-detail-grid>aside .sec-panel{margin-bottom:0}.sec-detail-grid>aside .sec-help{grid-column:1/-1}.sec-context{gap:12px;padding:16px}.sec-page-header{margin-bottom:18px}.sec-page p{font-size:13px}}
@media(max-width:480px){.sec-page{padding-top:0!important}.sec-tile-grid{grid-template-columns:1fr;gap:12px}.sec-tile{padding:18px}.sec-tile-top{margin-bottom:12px}.sec-tile-action{margin-top:16px}.sec-context{grid-template-columns:1fr}.sec-detail-grid>aside{display:block}.sec-detail-grid>aside .sec-panel{margin-bottom:14px}.sec-section-nav{flex-wrap:nowrap;overflow-x:auto;padding-bottom:10px;scrollbar-width:thin}.sec-section-nav a{min-height:44px}.sec-notice{padding:12px 14px}.sec-controls-footer{align-items:flex-start;flex-direction:column}.sec-controls-footer .sec-button{width:100%}.sec-selection .sec-button{flex:1;min-width:120px}.sec-audit-list>div{grid-template-columns:85px minmax(0,1fr)}.sec-audit-list time{grid-column:2}.sec-legacy-state{flex-wrap:wrap}.sec-legacy-state .sec-button{width:100%}.sec-metrics{grid-template-columns:1fr;gap:16px}}
@media(prefers-reduced-motion:reduce){.sec-page *{transition:none!important;scroll-behavior:auto!important}}
