#securityPanel { padding: 24px; }
.security-head, .security-summary { display: flex; gap: 18px; align-items: center; justify-content: space-between; flex-wrap: wrap; }
.security-head h2 { margin: 0; font-size: 26px; }
.security-head p { color: var(--muted); }
.security-summary { justify-content: flex-start; padding: 16px; background: #e8f2fc; border: 1px solid #bfd6eb; border-radius: 8px; }
.security-columns { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 20px; }
.security-card { min-width: 0; background: var(--panel); padding: 22px; border: 1px solid var(--line); border-radius: 10px; margin: 18px 0; }
.security-card h3 { margin-top: 0; }
.security-card h3:not(:first-child) { margin-top: 26px; }
.security-note { line-height: 1.55; color: #526477; font-size: 13px; }
.security-warning { padding: 12px; border: 1px solid #e1bb73; background: #fff6df; color: #654912; line-height: 1.5; border-radius: 6px; }
.security-form, .security-form fieldset { display: grid; gap: 16px; min-width: 0; }
.security-form fieldset { border: 1px solid var(--line); border-radius: 8px; padding: 16px; margin: 0; }
.security-form legend { font-weight: 700; padding: 0 5px; }
.security-form button { justify-self: start; }
.security-grid { align-items: start; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.security-grid[hidden] { display: none; }
.security-form label { text-transform: none; }
.security-check { display: flex; align-items: center; }
.security-check input { width: 18px; height: 18px; }
.security-table-wrap { overflow-x: auto; max-height: 440px; }
.security-table-wrap table { width: 100%; border-collapse: collapse; font-size: 13px; }
.security-table-wrap td, .security-table-wrap th { padding: 12px 9px; border-bottom: 1px solid var(--line); text-align: left; vertical-align: top; overflow-wrap: anywhere; }
.security-table-wrap th { background: #f4f7fa; }
.security-table-wrap pre { white-space: pre-wrap; }
.security-inventory details { padding: 15px 0; border-top: 1px solid var(--line); line-height: 1.6; }
.security-inventory summary { cursor: pointer; font-weight: 700; }
.security-inventory small { display: inline-block; font-weight: 400; color: #526477; margin-left: 8px; }
.security-source { font-family: monospace; overflow-wrap: anywhere; color: var(--muted); }
#securityPanel button:disabled { opacity: .6; cursor: wait; }
#securityNotice:not(:empty) { padding: 12px; background: #edf5f3; border-radius: 6px; }
@media (max-width: 1000px) { .security-columns { grid-template-columns: 1fr; gap: 0; } }
@media (max-width: 600px) { #securityPanel { padding: 14px; } .security-card { padding: 15px; } .security-grid { grid-template-columns: 1fr; } }
