:root {
  /* Text sizing is nudged up site-wide through the shared font declarations below. */
  --bg: #080d18;
  --surface: rgba(17, 26, 43, .82);
  --surface-solid: #111a2b;
  --surface-raised: #17243a;
  --line: rgba(151, 177, 211, .14);
  --text: #f1f5fb;
  --muted: #92a0b6;
  --cyan: #5ce1d2;
  --blue: #6d91ff;
  --shadow: 0 24px 70px rgba(0, 0, 0, .28);
}

* { box-sizing: border-box; }
html { min-height: 100%; scroll-behavior: smooth; }
body {
  min-height: 100vh;
  margin: 0;
  padding-top: 82px;
  color: var(--text);
  background:
    radial-gradient(ellipse at 15% 0%, rgba(57, 118, 177, .18), transparent 34rem),
    radial-gradient(ellipse at 95% 24%, rgba(38, 194, 179, .10), transparent 28rem),
    var(--bg);
  font-family: 'DM Sans', sans-serif;
  font-size: 16px;
  line-height: 1.7;
}
h1, h2, h3, h4, h5, h6, .navbar-brand { font-family: 'Space Grotesk', sans-serif; color: var(--text); }
a { color: var(--cyan); transition: color .2s ease, opacity .2s ease; }
a:hover { color: #a2fff4; text-decoration: none; }
::selection { color: #07111a; background: var(--cyan); }

.site-header { position: fixed; inset: 0 0 auto; z-index: 20; }
.site-header .navbar {
  min-height: 82px;
  padding: 12px 0;
  background: var(--bg);
  border-bottom: 1px solid rgba(151, 177, 211, .11);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
}
.nav-shell { width: calc(100% - 88px); max-width: none; }
.navbar-brand { display: inline-flex; align-items: center; gap: 11px; margin-right: 42px; color: var(--text) !important; font-size: 19px; font-weight: 700; letter-spacing: -.5px; line-height: 1.08; }
.navbar-brand small { display: block; padding-top: 5px; color: #7d8ca4; font: 600 9px 'DM Sans', sans-serif; letter-spacing: 1.6px; }
.brand-mark { display: grid; width: 38px; height: 38px; place-items: center; border-radius: 12px; color: #06131a; background: linear-gradient(140deg, var(--cyan), #79a9ff); box-shadow: 0 7px 24px rgba(92, 225, 210, .22); font: 700 22px 'Space Grotesk', sans-serif; }
.brand-accent { color: var(--cyan); }
.nav-links, .nav-account { align-items: center; gap: 5px; }
.site-header .navbar-nav .nav-link { padding: 9px 13px; border: 1px solid transparent; border-radius: 10px; color: #aab6c9; font-size: 14px; font-weight: 500; transition: color .2s ease, background .2s ease, border-color .2s ease; }
.site-header .navbar-nav .nav-link:hover { color: #fff; background: rgba(255, 255, 255, .04); }
/* Highlight a navigation button in green only while its page is open. */
.site-header .navbar-nav .nav-link.is-current { border-color: rgba(92, 225, 210, .3); color: var(--cyan); background: rgba(92, 225, 210, .08); }
.site-header .navbar-nav .nav-cta { margin-left: 8px; padding: 9px 15px; }
.site-header .navbar-nav .nav-cta:hover { color: #fff; background: rgba(255, 255, 255, .04); }
.account-menu { position: relative; }
.account-identity { display: grid; max-width: 210px; min-width: 0; margin-right: 4px; line-height: 1.25; text-align: right; }
.account-identity strong { overflow: hidden; color: #dce6f3; font-size: 12px; font-weight: 700; text-overflow: ellipsis; white-space: nowrap; }
.account-identity span { overflow: hidden; color: #8797ad; font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }
.notification-menu { position: relative; flex: 0 0 auto; }
.notification-toggle { position: relative; display: inline-grid; width: 40px; height: 40px; place-items: center; padding: 0; border: 1px solid transparent; border-radius: 10px; color: #aab6c9; background: transparent; cursor: pointer; transition: color .2s ease, background .2s ease, border-color .2s ease; }
.notification-toggle:hover, .notification-toggle:focus-visible, .notification-toggle[aria-expanded="true"] { border-color: rgba(92, 225, 210, .2); color: #e8f4f6; background: rgba(92, 225, 210, .06); outline: none; }
.notification-icon { width: 19px; height: 19px; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.7; }
.notification-count { position: absolute; top: 1px; right: 0; display: grid; min-width: 16px; height: 16px; place-items: center; padding: 0 4px; border: 1px solid #0c1422; border-radius: 999px; color: #fff; background: #e35d6a; font-size: 9px; font-weight: 700; line-height: 1; }
.notification-toggle.has-unread .notification-icon { animation: notification-blink 1.6s ease-in-out infinite; }
.notification-toggle.has-unread .notification-count { animation: notification-count-pulse 1.6s ease-in-out infinite; }
.notification-dropdown { position: absolute; top: calc(100% + 9px); right: -54px; z-index: 40; width: min(370px, calc(100vw - 28px)); overflow: hidden; border: 1px solid var(--line); border-radius: 13px; background: #111a2b; box-shadow: var(--shadow); }
.notification-dropdown[hidden] { display: none; }
.notification-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 13px 15px; border-bottom: 1px solid rgba(151, 177, 211, .12); }
.notification-heading strong { color: #e3ebf6; font: 600 13px 'Space Grotesk', sans-serif; }
.notification-heading form { margin: 0; }
.notification-heading button { padding: 0; border: 0; color: #76daca; background: transparent; font: 500 11px 'DM Sans', sans-serif; cursor: pointer; }
.notification-heading button:hover { color: #c2fff4; }
.notification-list { max-height: min(410px, calc(100vh - 180px)); overflow-y: auto; }
.notification-entry-form { margin: 0; border-bottom: 1px solid rgba(151, 177, 211, .08); }
.notification-entry-form:last-child { border-bottom: 0; }
.notification-entry { display: flex; width: 100%; align-items: flex-start; gap: 10px; padding: 12px 14px; border: 0; color: inherit; background: transparent; text-align: left; cursor: pointer; }
.notification-entry:hover, .notification-entry:focus-visible { background: rgba(92, 225, 210, .06); outline: none; }
.notification-entry-dot { width: 7px; height: 7px; flex: 0 0 7px; margin-top: 5px; border-radius: 50%; background: #56d7c5; box-shadow: 0 0 10px rgba(86, 215, 197, .4); }
.notification-entry-copy { display: grid; min-width: 0; gap: 3px; }
.notification-entry-copy strong { color: #dce6f3; font-size: 12px; font-weight: 600; }
.notification-entry-copy span { overflow: hidden; color: #aab7c9; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.notification-entry-copy small { color: #788aa3; font-size: 10px; }
.notification-empty { margin: 0; padding: 19px 15px; color: #9baac0; font-size: 12px; text-align: center; }
@keyframes notification-blink { 0%, 100% { opacity: 1; } 50% { opacity: .42; } }
@keyframes notification-count-pulse { 0%, 100% { transform: scale(1); } 50% { transform: scale(.88); } }
.account-menu-toggle { display: inline-flex; align-items: center; justify-content: center; gap: 7px; min-width: 44px; color: #aab6c9; background: transparent !important; cursor: pointer; font-family: inherit; }
.account-menu-toggle:hover, .account-menu-toggle:focus, .account-menu-toggle:active { color: #fff; background: transparent !important; box-shadow: none; }
.account-menu-icon { width: 17px; height: 17px; fill: none; stroke: currentColor; stroke-linecap: round; stroke-width: 1.8; }
.account-dropdown { position: absolute; top: calc(100% + 8px); right: 0; z-index: 30; min-width: 190px; padding: 6px; border: 1px solid var(--line); border-radius: 12px; background: #111a2b; box-shadow: var(--shadow); }
.account-dropdown[hidden] { display: none; }
.account-dropdown a { display: block; padding: 9px 11px; border-radius: 8px; color: #b8c4d5; font-size: 13px; }
.account-dropdown a:hover { color: var(--cyan); background: rgba(92, 225, 210, .07); }
.account-dropdown a.is-current { color: var(--cyan); background: rgba(92, 225, 210, .08); }
.account-dropdown form { margin: 0; }
.account-dropdown-logout { display: block; width: 100%; padding: 9px 11px; border: 0; border-radius: 8px; color: #b8c4d5; background: transparent; font: 400 13px 'DM Sans', sans-serif; text-align: left; cursor: pointer; }
.account-dropdown-logout:hover { color: var(--cyan); background: rgba(92, 225, 210, .07); }
.language-switcher { display: inline-flex; align-items: center; gap: 2px; margin-left: 12px; padding: 4px; border: 1px solid var(--line); border-radius: 10px; background: rgba(15, 24, 40, .65); }
.language-icon { width: 16px; height: 16px; margin: 0 4px 0 3px; fill: none; stroke: #91a1b7; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.5; }
.language-switcher button { min-width: 31px; padding: 5px 6px; border: 0; border-radius: 6px; color: #91a1b7; background: transparent; font: 700 11px 'DM Sans', sans-serif; cursor: pointer; transition: color .2s ease, background .2s ease; }
.language-switcher button:hover { color: var(--text); }
.language-switcher button.is-active { color: #07131c; background: var(--cyan); }
.language-switcher button:focus-visible { outline: 2px solid #a2fff4; outline-offset: 2px; }
.navbar-toggler { padding: 0; border: 1px solid var(--line); border-radius: 10px; }
.navbar-menu-icon { display: block; width: 21px; height: 21px; fill: none; stroke: var(--cyan); stroke-linecap: round; stroke-width: 2.2; }
.app-container { width: calc(100% - 128px); max-width: none; min-height: calc(100vh - 150px); padding-top: 42px; padding-bottom: 54px; }
.message-stack { display: grid; gap: 9px; margin-bottom: 20px; }
.message-stack .alert {
  position: relative;
  overflow: hidden;
  margin: 0;
  padding: 12px 16px 12px 43px;
  border: 1px solid var(--line);
  border-radius: 12px;
  color: #e7edf6;
  background: rgba(17, 26, 43, .96);
  box-shadow: 0 10px 28px rgba(0, 0, 0, .2);
  animation: message-enter .42s cubic-bezier(.2, .75, .25, 1) both;
}
/* Color Django feedback by outcome so success, warnings, and errors scan quickly. */
.message-stack .alert::before {
  position: absolute;
  top: 50%;
  left: 16px;
  display: grid;
  width: 16px;
  height: 16px;
  place-items: center;
  border: 1px solid currentColor;
  border-radius: 50%;
  font-size: 11px;
  font-weight: 800;
  line-height: 1;
  transform: translateY(-50%);
}
.message-stack .alert-success { border-color: rgba(65, 210, 155, .42); color: #9af0c9; background: linear-gradient(100deg, rgba(23, 116, 82, .23), rgba(17, 26, 43, .96) 62%); }
.message-stack .alert-success::before { content: "✓"; }
.message-stack .alert-info { border-color: rgba(92, 225, 210, .4); color: #a2fff4; background: linear-gradient(100deg, rgba(34, 135, 143, .22), rgba(17, 26, 43, .96) 62%); }
.message-stack .alert-info::before { content: "i"; }
.message-stack .alert-warning { border-color: rgba(255, 190, 90, .48); color: #ffd28c; background: linear-gradient(100deg, rgba(151, 96, 24, .24), rgba(17, 26, 43, .96) 62%); }
.message-stack .alert-warning::before { content: "!"; }
.message-stack .alert-error,
.message-stack .alert-danger { border-color: rgba(255, 102, 121, .5); color: #ffb0ba; background: linear-gradient(100deg, rgba(154, 42, 59, .27), rgba(17, 26, 43, .96) 62%); }
.message-stack .alert-error::before,
.message-stack .alert-danger::before { content: "!"; }
.message-stack .alert-debug { border-color: rgba(151, 177, 211, .26); color: #bdc9d9; }
@keyframes message-enter {
  from { opacity: 0; transform: translateY(-9px) scale(.99); }
  to { opacity: 1; transform: translateY(0) scale(1); }
}
@media (prefers-reduced-motion: reduce) {
  .message-stack .alert { animation: none; }
}
.site-footer { border-top: 1px solid rgba(151, 177, 211, .1); color: #75839a; font-size: 13px; }
.footer-inner { display: flex; justify-content: space-between; gap: 16px; padding-top: 19px; padding-bottom: 19px; }
.footer-sources-link { color: #75839a; font-size: 11px; }
.footer-sources-link:hover { color: var(--cyan); }
.status-dot { display: inline-block; width: 7px; height: 7px; margin-right: 7px; border-radius: 50%; background: var(--cyan); box-shadow: 0 0 12px rgba(92, 225, 210, .8); }

.content-section, article.content-section {
  margin-bottom: 18px;
  padding: 23px 25px;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: var(--surface);
  box-shadow: 0 8px 30px rgba(0, 0, 0, .12);
  backdrop-filter: blur(12px);
  transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease;
  animation: rise-in .55s both;
}
article.content-section:hover, .content-section.hover-card:hover { transform: translateY(-3px); border-color: rgba(92, 225, 210, .34); box-shadow: var(--shadow); }
.article-title { color: var(--text); }
a.article-title:hover { color: var(--cyan); }
.article-content { color: #afbbcc; white-space: pre-line; }
.blog-post-image { display: block; width: 100%; max-height: 520px; margin: 14px 0 17px; border: 1px solid var(--line); border-radius: 13px; object-fit: cover; }
.blog-article-hero-image { display: block; width: 100%; max-height: 680px; margin: 0 0 22px; border: 1px solid var(--line); border-radius: 14px; background: rgba(5, 10, 19, .55); object-fit: contain; }
.article-breadcrumb { margin-bottom: 15px; }
.article-page { max-width: 1080px; margin: 0 auto 28px; }
.article-page-header { max-width: 850px; margin: 0 auto; padding: 8px 0 22px; border-bottom: 1px solid var(--line); }
.article-kicker { color: var(--cyan); font-size: 11px; font-weight: 700; letter-spacing: 1.5px; }
.article-page-header h1 { margin: 12px 0 16px; font-size: clamp(35px, 4.5vw, 53px); font-weight: 600; letter-spacing: -1.8px; line-height: 1.12; }
.article-byline { display: flex; align-items: center; gap: 9px; color: #8f9eb3; font-size: 13px; }
.article-byline a { color: #d7e2f0; font-weight: 600; }
.article-byline-dot { color: #5c6b80; }
.article-translation-status { display: block; max-width: 850px; margin: 8px auto; color: var(--muted); font-size: 12px; }
.article-feature-image { max-width: 960px; margin: 24px auto 30px; overflow: hidden; border: 1px solid var(--line); border-radius: 14px; background: rgba(5, 10, 19, .55); text-align: center; }
.article-feature-image img { display: inline-block; width: 100%; max-height: 600px; object-fit: contain; vertical-align: middle; }
.article-page-grid { display: grid; grid-template-columns: minmax(0, 1fr) 270px; gap: 48px; max-width: 960px; margin: 0 auto; }
.article-main-column { min-width: 0; }
.article-page-content { color: #c2ccda; font-size: 17px; line-height: 1.9; white-space: pre-line; overflow-wrap: anywhere; }
.article-owner-actions { display: flex; gap: 9px; margin-top: 28px; padding-top: 16px; border-top: 1px solid var(--line); }
.article-sidebar { align-self: start; padding: 18px; border: 1px solid var(--line); border-radius: 13px; background: rgba(15, 24, 40, .62); }
.article-sidebar h2 { margin: 0 0 10px; font-size: 16px; }
.article-sidebar-item { padding: 12px 0; border-top: 1px solid var(--line); }
.article-sidebar-item a { display: block; color: #c4d0df; font-size: 13px; font-weight: 600; line-height: 1.5; }
.article-sidebar-item a:hover { color: var(--cyan); }
.article-sidebar-item time { display: block; margin-top: 5px; color: #718097; font-size: 11px; }
.article-sidebar-empty { margin: 0; color: var(--muted); font-size: 13px; }
.article-img { width: 58px; height: 58px; margin-right: 16px; border: 1px solid var(--line); object-fit: cover; }
.article-metadata { margin-bottom: 10px; padding-bottom: 9px; border-bottom: 1px solid var(--line); color: var(--muted); }
.article-metadata a { color: var(--cyan); }
.account-img { width: 116px; height: 116px; margin: 0 20px 16px 0; border: 2px solid rgba(92, 225, 210, .35); object-fit: cover; }
.account-heading { font-size: 2rem; }
.profile-page { max-width: 980px; margin: 14px auto 34px; }
.profile-page-heading { margin: 0 0 22px; }
.profile-page-heading h1 { margin: 5px 0 7px; color: var(--text); font-size: clamp(28px, 3vw, 38px); }
.profile-page-heading > p:last-child, .profile-edit-intro { margin: 0; color: var(--muted); }
.profile-kicker { margin: 0; color: var(--cyan); font-size: 11px; font-weight: 700; letter-spacing: 1.4px; }
.profile-summary-heading { display: flex; align-items: center; gap: 16px; padding-bottom: 20px; border-bottom: 1px solid var(--line); }
.profile-summary-heading h2 { margin: 0 0 4px; color: var(--text); font-size: 22px; }
.profile-summary-heading p { margin: 0; color: var(--muted); }
.profile-avatar { display: grid; width: 58px; height: 58px; flex: 0 0 58px; place-items: center; border: 1px solid rgba(92, 225, 210, .42); border-radius: 50%; color: var(--cyan); background: rgba(92, 225, 210, .1); font-size: 23px; font-weight: 700; }
.profile-details-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px 24px; margin: 20px 0 0; }
.profile-details-grid dt { margin-bottom: 5px; color: var(--muted); font-size: 12px; }
.profile-details-grid dd { margin: 0; color: var(--text); font-weight: 600; overflow-wrap: anywhere; }
.profile-role-badge { display: inline-block; padding: 4px 9px; border: 1px solid rgba(92, 225, 210, .35); border-radius: 999px; color: var(--cyan); background: rgba(92, 225, 210, .08); font-size: 12px; }
.profile-edit h2 { margin: 0 0 6px; color: var(--text); font-size: 20px; }
.profile-edit-intro { margin-bottom: 18px; }
.profile-edit .form-group { margin-bottom: 16px; }
@media (max-width: 700px) { .profile-details-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 440px) { .profile-details-grid { grid-template-columns: 1fr; gap: 14px; } }

.btn { border-radius: 10px; font-weight: 600; transition: transform .2s ease, box-shadow .2s ease, background .2s ease; }
.btn:hover { transform: translateY(-1px); }
.btn-info, .btn-outline-info:hover { border-color: var(--cyan); color: #07111a; background: var(--cyan); box-shadow: 0 8px 22px rgba(92, 225, 210, .18); }
.btn-outline-info { border-color: rgba(92, 225, 210, .55); color: var(--cyan); }
.form-control { min-height: 46px; border: 1px solid var(--line); border-radius: 10px; color: var(--text); background: rgba(5, 10, 19, .55); }
.form-control:focus { border-color: rgba(92, 225, 210, .7); color: var(--text); background: rgba(5, 10, 19, .72); box-shadow: 0 0 0 3px rgba(92, 225, 210, .1); }
label, .text-muted, small.text-muted { color: var(--muted) !important; }
.border-bottom, .border-top { border-color: var(--line) !important; }
.list-group-item { border-color: var(--line); color: #b8c4d6; background: rgba(15, 24, 40, .7); }
.table { color: var(--text); }
.table thead th, .table td, .table th { border-color: var(--line); }
.thead-light th { color: #c9d4e4 !important; background: var(--surface-raised) !important; }
.pagination a { margin-right: 5px; }

.hero-panel { position: relative; display: flex; min-height: 435px; align-items: center; overflow: hidden; padding: 62px 66px; border: 1px solid rgba(119, 160, 203, .17); border-radius: 24px; background: linear-gradient(112deg, rgba(17, 31, 51, .98), rgba(12, 24, 41, .94) 60%, rgba(14, 43, 56, .88)); box-shadow: var(--shadow); isolation: isolate; }
.hero-panel::before { display: none !important; content: none !important; }
.hero-visual::before, .hero-visual::after { display: none !important; content: none !important; }
.hero-stars { position: absolute; z-index: 0; inset: 0; overflow: hidden; border-radius: inherit; pointer-events: none; }
.hero-star { position: absolute; display: block; border-radius: 50%; background: #d6f5ff; box-shadow: 0 0 5px rgba(180, 235, 255, .48); opacity: 0; animation: hero-star-twinkle 12s ease-in-out infinite; will-change: opacity, transform; }
.hero-copy { position: relative; z-index: 2; width: min(620px, 70%); }
.eyebrow { display: flex; align-items: center; gap: 9px; color: var(--cyan); font-size: 11px; font-weight: 700; letter-spacing: 1.8px; }
.eyebrow-line { width: 20px; height: 1px; background: var(--cyan); box-shadow: 0 0 8px rgba(92, 225, 210, .6); }
.hero-panel h1 { margin: 19px 0 13px; font-size: clamp(37px, 4.1vw, 57px); font-weight: 600; letter-spacing: -2.6px; line-height: 1.08; }
.hero-panel h1 span { color: var(--cyan); }
.hero-description { max-width: 520px; margin-bottom: 24px; color: #a7b7cb; font-size: 15px; }
.hero-scan-prompt { margin-top: -12px; }
.no-breach-state .no-breach-curiosity { margin: 14px auto 16px; color: #c4d4e8; }
.no-breach-vulnerability-cta { display: inline-flex; align-items: center; gap: 8px; text-decoration: none; }
.hero-search { display: block; width: min(570px, 100%); padding: 0; border: 0; background: transparent; box-shadow: none; }
.hero-search-controls { display: flex; min-width: 0; align-items: center; gap: 11px; padding: 7px; border: 1px solid rgba(156, 183, 214, .2); border-radius: 13px; background: rgba(5, 11, 20, .66); box-shadow: 0 10px 30px rgba(0, 0, 0, .18); transition: border-color .2s ease, box-shadow .2s ease; }
.hero-search-controls:focus-within { border-color: rgba(92, 225, 210, .7); box-shadow: 0 0 0 4px rgba(92, 225, 210, .08); }
.hero-search-captcha { display: flex; min-width: 0; justify-content: flex-end; margin-top: 8px; }
.hero-search input { width: 100%; min-width: 0; border: 0; outline: 0; color: var(--text); background: transparent; font: 15px 'DM Sans', sans-serif; }
.hero-search input::placeholder { color: #78879e; }
.hero-search button { flex: 0 0 auto; padding: 12px 16px; border: 0; border-radius: 9px; color: #07131c; background: linear-gradient(110deg, var(--cyan), #8ce4c7); font: 700 13px 'DM Sans', sans-serif; cursor: pointer; transition: transform .2s ease, box-shadow .2s ease; }
.hero-search button:hover { transform: translateY(-1px); box-shadow: 0 6px 20px rgba(92, 225, 210, .25); }
.hero-search button span { margin-left: 7px; font-size: 17px; }
.privacy-note { display: flex; align-items: center; gap: 9px; margin-top: 13px; color: #7e8da3; font-size: 12px; }
.privacy-note i { width: 3px; height: 3px; border-radius: 50%; background: #526177; }
.lock-icon { color: var(--cyan); font-size: 15px; }
/* Keep the desktop animation visibly closer to the center; mobile uses a separate position. */
.hero-visual { position: absolute; z-index: 1; top: 50%; right: 21%; width: 300px; height: 300px; transform: translateY(-50%); }
.scan-ring { position: absolute; inset: 20px; border: 1px solid rgba(92, 225, 210, .13); border-radius: 50%; animation: orbit-pulse 5s ease-in-out infinite; }
.ring-b { inset: 0; border-color: rgba(111, 145, 255, .13); animation-delay: -2.5s; }
.sonar-wave { position: absolute; top: 50%; left: 50%; z-index: 1; width: 12px; height: 12px; border: 1px solid rgba(92, 225, 210, .13); border-radius: 50%; opacity: 0; pointer-events: none; transform: translate(-50%, -50%); }
.sonar-wave-source-outer { --sonar-start-diameter: 300px; border-color: rgba(111, 145, 255, .13); }
.sonar-wave.is-emitting { animation: sonar-expand 8s linear both; }
/* Grow the circle itself so its thin one-pixel outline does not scale with the wave. */
@keyframes sonar-expand { 0% { width: var(--sonar-start-diameter, 300px); height: var(--sonar-start-diameter, 300px); opacity: .72; } 72% { opacity: .3; } 100% { width: var(--sonar-diameter, 900px); height: var(--sonar-diameter, 900px); opacity: 0; } }
.scan-core { position: absolute; top: 50%; left: 50%; z-index: 2; display: grid; width: 128px; height: 128px; place-items: center; border: 1px solid rgba(92, 225, 210, .35); border-radius: 36px; background: linear-gradient(145deg, rgba(50, 95, 115, .62), rgba(20, 48, 68, .83)); box-shadow: 0 0 70px rgba(54, 199, 183, .16), inset 0 0 30px rgba(92, 225, 210, .08); transform: translate(-50%, -50%) rotate(45deg); animation: float 5s ease-in-out infinite; }
.core-shield { color: var(--cyan); font-size: 59px; line-height: 1; transform: rotate(-45deg); text-shadow: 0 0 28px rgba(92, 225, 210, .45); }
.core-pulse { position: absolute; top: 19px; right: 18px; width: 8px; height: 8px; border-radius: 50%; background: #8affdc; box-shadow: 0 0 12px #8affdc; }
.float-chip { position: absolute; z-index: 3; display: flex; align-items: center; gap: 8px; padding: 9px 12px; border: 1px solid rgba(143, 177, 211, .17); border-radius: 9px; color: #c2cfe0; background: rgba(11, 21, 36, .88); box-shadow: 0 10px 24px rgba(0, 0, 0, .2); font-size: 10px; font-weight: 700; letter-spacing: .8px; white-space: nowrap; animation: chip-fade 8s ease-in-out infinite; }
/* Stagger independent durations so two or three badges can overlap naturally. */
.chip-top { top: 0; right: -12px; animation-delay: 0s; animation-duration: 8s; }.chip-bottom { right: -16px; bottom: -1px; left: auto; animation-delay: -2.4s; animation-duration: 9s; }
.chip-side-left { top: 52%; left: -96px; transform: translateY(-50%); animation-delay: -4s; animation-duration: 7.5s; }.chip-side-right { top: 25%; right: -98px; bottom: auto; animation-delay: -1.6s; animation-duration: 8.7s; }
.keyword-email { top: -8px; left: 0; animation-delay: -3.3s; animation-duration: 9.2s; }.keyword-cve { top: 92%; left: 28px; animation-delay: -5.1s; animation-duration: 7.8s; }.keyword-breach { top: 79%; right: -86px; animation-delay: -2.8s; animation-duration: 8.4s; }
.keyword-kev { top: 4%; left: -120px; animation-delay: -1.9s; animation-duration: 8.3s; }.keyword-cert { top: 46%; right: -137px; animation-delay: -3.7s; animation-duration: 9.1s; }.keyword-assets { bottom: -3px; left: -148px; animation-delay: -5.4s; animation-duration: 7.6s; }
.keyword-cvss { top: -24px; right: -155px; animation-delay: -2.1s; animation-duration: 8.6s; }.keyword-cwe { top: 31%; left: -166px; animation-delay: -4.8s; animation-duration: 9.4s; }
.keyword-patch { right: -150px; bottom: -20px; animation-delay: -3.6s; animation-duration: 8.1s; }.keyword-ransomware { top: 68%; left: -168px; animation-delay: -1.2s; animation-duration: 9.7s; }
.keyword-versions { right: -160px; bottom: 25%; animation-delay: -5.7s; animation-duration: 8.9s; }
@keyframes chip-fade { 0%, 100% { opacity: .04; translate: 0 6px; } 22%, 68% { opacity: 1; translate: 0 -3px; } 88% { opacity: .04; translate: 0 3px; } }
/* Use long eased transitions so the badges fade in and out in slow motion. */
.hero-visual.has-random-chips .float-chip { opacity: 0; visibility: hidden; animation: none; translate: 0 6px; transition: opacity 2.2s ease-in-out, translate 2.2s ease-in-out, visibility 0s linear 2.2s; }
.hero-visual.has-random-chips .float-chip.is-visible { opacity: 1; visibility: visible; translate: 0 -3px; transition-delay: 0s; }
/* Use one small green status dot as the shared icon for every homepage badge. */
.chip-dot { width: 6px; height: 6px; flex: 0 0 6px; border-radius: 50%; background: #8affdc; box-shadow: 0 0 9px rgba(138, 255, 220, .8); }
.trust-row { display: grid; grid-template-columns: repeat(3, 1fr); gap: 15px; margin: 19px 0 55px; }
.trust-item { display: flex; align-items: center; gap: 13px; padding: 16px 19px; border: 1px solid var(--line); border-radius: 13px; background: rgba(15, 24, 40, .48); transition: border-color .25s ease, transform .25s ease; }
.trust-item:hover { transform: translateY(-2px); border-color: rgba(92, 225, 210, .28); }
.trust-icon { display: grid; width: 36px; height: 36px; flex: 0 0 36px; place-items: center; border: 1px solid rgba(92, 225, 210, .18); border-radius: 11px; color: var(--cyan); background: rgba(92, 225, 210, .07); font-size: 21px; }
.trust-item strong, .trust-item small { display: block; }.trust-item strong { color: #dfe8f3; font-size: 13px; font-weight: 600; }.trust-item small { margin-top: 2px; color: #8190a6; font-size: 11px; }
.section-heading { display: flex; justify-content: space-between; align-items: end; gap: 20px; margin-bottom: 17px; }
.section-heading h2 { margin: 10px 0 0; font-size: 26px; font-weight: 600; letter-spacing: -.7px; }
.section-heading > p { max-width: 360px; margin: 0 0 2px; color: var(--muted); font-size: 13px; }
.breach-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 15px; }
.breach-card { min-height: 205px; padding: 20px; border: 1px solid var(--line); border-radius: 15px; background: linear-gradient(145deg, rgba(18, 28, 46, .85), rgba(13, 21, 36, .76)); transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease; animation: rise-in .6s both; }
.breach-card:nth-child(2) { animation-delay: .08s; }.breach-card:nth-child(3) { animation-delay: .16s; }
.breach-card:hover { transform: translateY(-4px); border-color: rgba(109, 145, 255, .38); box-shadow: 0 18px 45px rgba(0, 0, 0, .2); }
.breach-top { display: flex; justify-content: space-between; align-items: center; margin-bottom: 17px; }
.breach-symbol { display: grid; width: 38px; height: 38px; place-items: center; border: 1px solid; border-radius: 11px; font: 700 14px 'Space Grotesk', sans-serif; }
.symbol-cyan { color: var(--cyan); border-color: rgba(92, 225, 210, .2); background: rgba(92, 225, 210, .08); }.symbol-blue { color: #8eacff; border-color: rgba(109, 145, 255, .22); background: rgba(109, 145, 255, .09); }.symbol-violet { color: #c09cff; border-color: rgba(176, 134, 255, .22); background: rgba(176, 134, 255, .09); }
.breach-date { color: #77869b; font-size: 10px; font-weight: 700; letter-spacing: 1px; }
.breach-card h3 { margin-bottom: 7px; font-size: 17px; font-weight: 600; }
.breach-card p { min-height: 52px; margin-bottom: 13px; color: #93a2b8; font-size: 12px; line-height: 1.6; }
.breach-tag { display: inline-flex; padding: 4px 7px; border: 1px solid rgba(144, 168, 197, .12); border-radius: 5px; color: #8797ad; font-size: 9px; font-weight: 700; letter-spacing: .8px; }
.breach-carousel-actions { display: flex; align-items: end; gap: 15px; }.breach-carousel-actions p { max-width: 300px; margin: 0 0 2px; color: var(--muted); font-size: 13px; }.all-breaches-link { flex: 0 0 auto; font-size: 12px; font-weight: 600; }
.breach-carousel { position: relative; overflow: hidden; padding: 2px 0 10px; mask-image: linear-gradient(90deg, transparent, #000 3%, #000 97%, transparent); }
.breach-carousel-track { display: flex; width: max-content; animation: breach-marquee 78s linear infinite; }
.breach-carousel-group { display: flex; flex: 0 0 auto; gap: 15px; padding-right: 15px; }
.breach-carousel .breach-card { position: relative; display: flex; width: 270px; min-height: 230px; flex: 0 0 270px; flex-direction: column; margin: 0; padding: 18px; }
.breach-carousel .breach-card:nth-child(3n + 1) .breach-symbol { color: var(--cyan); border-color: rgba(92, 225, 210, .2); background: rgba(92, 225, 210, .08); }
.breach-carousel .breach-card:nth-child(3n + 2) .breach-symbol { color: #8eacff; border-color: rgba(109, 145, 255, .22); background: rgba(109, 145, 255, .09); }
.breach-carousel .breach-card:nth-child(3n) .breach-symbol { color: #c09cff; border-color: rgba(176, 134, 255, .22); background: rgba(176, 134, 255, .09); }
.breach-carousel .breach-card h3 { overflow: hidden; margin-bottom: 6px; text-overflow: ellipsis; white-space: nowrap; }
.vuln-breach-card .breach-symbol { color: #f2bd7f; border-color: rgba(255, 183, 101, .24); background: rgba(255, 183, 101, .08); font: 700 19px 'Space Grotesk', sans-serif; }
.vuln-breach-card .breach-count { max-width: 155px; overflow: hidden; color: #b7c5d6; text-overflow: ellipsis; white-space: nowrap; }
.vuln-breach-card .breach-count small { color: #8392a7; }
.vulnerability-section { margin-top: 46px; }
.breach-carousel .breach-card p { display: -webkit-box; min-height: 52px; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }
.breach-card-footer { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-top: auto; }
.breach-count { color: #d2dceb; font: 600 12px 'Space Grotesk', sans-serif; white-space: nowrap; }.breach-count small { color: #8190a6; font: 400 10px 'DM Sans', sans-serif; }
.breach-card-link { display: inline-flex; align-items: center; gap: 6px; margin-top: 10px; color: var(--cyan); font-size: 11px; font-weight: 700; }.breach-card-link:hover { color: #a2fff4; }
.breach-carousel:hover .breach-carousel-track, .breach-carousel:focus-within .breach-carousel-track, .breach-carousel.is-paused .breach-carousel-track { animation-play-state: paused; }
.carousel-controls { display: flex; justify-content: space-between; align-items: center; margin-top: 7px; color: #8493a8; font-size: 11px; }.carousel-controls > span { display: inline-flex; align-items: center; }.carousel-controls .feed-live-dot { width: 6px; height: 6px; }.carousel-toggle { padding: 6px 9px; border: 1px solid var(--line); border-radius: 7px; color: #a8b8cb; background: rgba(14, 23, 38, .75); font: 500 11px 'DM Sans', sans-serif; cursor: pointer; transition: border-color .2s ease, color .2s ease; }.carousel-toggle:hover { border-color: rgba(92, 225, 210, .4); color: var(--cyan); }
.footer-sources-link { color: #64738a; font-size: 10px; letter-spacing: .7px; text-transform: lowercase; }.footer-sources-link:hover { color: #a5b4c8; text-decoration: underline; }
.sources-hero { margin-bottom: 20px; padding: 33px 36px; border: 1px solid var(--line); border-radius: 18px; background: linear-gradient(112deg, rgba(18, 32, 52, .97), rgba(12, 34, 45, .9)); }.sources-hero h1 { margin: 12px 0 7px; font-size: clamp(31px, 4vw, 43px); letter-spacing: -1.6px; }.sources-hero h1 span { color: var(--cyan); }.sources-hero p { max-width: 680px; margin: 0; color: var(--muted); font-size: 14px; }
.source-card { max-width: 850px; padding: 26px 28px; border: 1px solid var(--line); border-radius: 16px; background: rgba(15, 24, 40, .82); box-shadow: var(--shadow); }.source-card-heading { display: flex; align-items: center; gap: 13px; margin-bottom: 18px; }.source-logo-mark { display: grid; width: 43px; height: 43px; place-items: center; border: 1px solid rgba(92, 225, 210, .24); border-radius: 13px; color: var(--cyan); background: rgba(92, 225, 210, .08); font: 700 21px 'Space Grotesk', sans-serif; }.source-label { color: #8292a9; font-size: 10px; font-weight: 700; letter-spacing: 1.4px; }.source-card h2 { margin: 2px 0 0; font-size: 22px; }.source-card p { color: #a5b3c6; font-size: 14px; line-height: 1.75; }.source-external-link { display: inline-flex; align-items: center; gap: 7px; margin-top: 5px; font-size: 13px; font-weight: 600; }
.data-providers { padding: 10px 0; color: #8290a4; }
.data-providers-label { color: #8290a4; font-size: 10px; font-weight: 700; letter-spacing: 1.4px; }
.data-providers p { margin: 5px 0 0; color: #8290a4; font-size: 12px; }
.data-providers a { color: #9aa8bb; text-decoration: none; }
.data-providers a:hover { color: var(--cyan); }
.data-providers p span { padding: 0 5px; color: #58677c; }
.locked-result { position: relative; display: grid; min-height: 300px; place-items: center; overflow: hidden; margin-top: 18px; border: 1px solid rgba(92, 225, 210, .2); border-radius: 17px; background: linear-gradient(130deg, rgba(18, 31, 50, .98), rgba(12, 24, 39, .97)); }
.locked-table-wrap { position: absolute; inset: 0; padding: 26px 30px; opacity: .58; filter: blur(6px); transform: scale(1.025); }
.locked-result-label { color: var(--cyan); font-size: 11px; font-weight: 700; letter-spacing: 1.5px; }
.locked-table { margin-top: 13px; color: #c3cede; font-size: 13px; }
.locked-table thead th { padding: 10px 12px; border-top: 1px solid var(--line); border-bottom: 1px solid rgba(151, 177, 211, .18); color: #96a7bd; background: rgba(23, 36, 58, .72); font-size: 10px; letter-spacing: .7px; text-transform: uppercase; }
.locked-table tbody td { padding: 12px; border-top: 1px solid rgba(151, 177, 211, .1); background: rgba(9, 17, 30, .28); }
.preview-source { display: inline-flex; align-items: center; gap: 8px; color: #d5dfed; font-weight: 600; }
.preview-source i { width: 7px; height: 7px; border-radius: 3px; background: var(--blue); box-shadow: 0 0 10px rgba(109, 145, 255, .5); }
.preview-blur { color: #aebbd0; }
.preview-status { padding: 4px 7px; border: 1px solid rgba(255, 179, 98, .22); border-radius: 999px; color: #f3bd7f; background: rgba(255, 179, 98, .07); font-size: 10px; white-space: nowrap; }
.locked-result-message { position: relative; z-index: 2; width: min(470px, calc(100% - 34px)); margin: 22px; padding: 25px; border: 1px solid rgba(146, 175, 206, .18); border-radius: 15px; background: rgba(8, 14, 25, .88); box-shadow: 0 20px 60px rgba(0, 0, 0, .38); text-align: center; backdrop-filter: blur(18px); animation: rise-in .45s both; }
.lock-badge { display: grid; width: 40px; height: 40px; place-items: center; margin: 0 auto 12px; border: 1px solid rgba(92, 225, 210, .25); border-radius: 13px; color: var(--cyan); background: rgba(92, 225, 210, .08); font-size: 23px; }
.locked-result-message h2 { margin-bottom: 7px; font-size: 23px; }.locked-result-message p { margin: 0 auto 16px; color: #9eacc0; font-size: 13px; }.locked-result-message .btn { padding: 10px 15px; font-size: 13px; }.locked-result-message small { display: block; margin-top: 12px; color: #8291a6; font-size: 12px; }
.blog-hero { margin: 0 0 25px; padding: 34px 36px; border: 1px solid var(--line); border-radius: 18px; background: linear-gradient(110deg, rgba(18, 32, 52, .95), rgba(15, 33, 45, .85)); }
.blog-hero h1 { margin: 12px 0 7px; font-size: clamp(31px, 4vw, 43px); letter-spacing: -1.6px; }.blog-hero h1 span { color: var(--cyan); }.blog-hero p { margin: 0; color: var(--muted); font-size: 14px; }
.blog-post-card { align-items: stretch; }.blog-post-card > .article-img { width: 30px; height: 30px; flex: 0 0 30px; margin-right: 11px; }.blog-post-card h2 { margin: 0 0 8px; font-size: 23px; }.blog-post-card .article-content { font-size: 14px; }.blog-post-card .media-body { display: flex; min-width: 0; }.blog-post-layout { display: flex; width: 100%; min-height: 170px; align-items: stretch; gap: 22px; }.blog-post-copy { min-width: 0; flex: 1 1 auto; }
/* Show up to three lines of each article summary in the blog feed. */
.blog-post-excerpt { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 3; line-clamp: 3; }
/* Tighten the gap between the three-line excerpt and its article link. */
.blog-post-excerpt { margin-bottom: 4px; }
/* Keep the rounded card's top and bottom inset even around its content. */
.blog-post-card { padding: 14px 25px; }
/* Match the wide landscape thumbnails used in The Hacker News article feed. */
/* Keep blog thumbnails at a fixed landscape size even when summaries are long. */
.blog-post-thumb { display: block; width: 260px; height: 160px; flex: 0 0 260px; align-self: center; overflow: hidden; border: 1px solid var(--line); border-radius: 12px; }.blog-post-thumb img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .25s ease; }.blog-post-thumb:hover img { transform: scale(1.04); }.read-more { display: inline-flex; align-items: center; gap: 8px; font-size: 13px; font-weight: 600; }.empty-blog { padding: 48px 25px; text-align: center; }.empty-icon { color: var(--cyan); font-size: 28px; }.empty-blog h2 { margin: 10px 0 4px; font-size: 21px; }.empty-blog p { margin: 0; color: var(--muted); font-size: 14px; }
.breach-feed-hero { display: flex; align-items: end; justify-content: space-between; gap: 24px; margin-bottom: 22px; padding: 32px 35px; border: 1px solid var(--line); border-radius: 18px; background: linear-gradient(112deg, rgba(18, 32, 52, .97), rgba(12, 34, 45, .9)); }
.breach-feed-hero h1 { margin: 12px 0 7px; font-size: clamp(31px, 4vw, 43px); letter-spacing: -1.6px; }.breach-feed-hero h1 span { color: var(--cyan); }.breach-feed-hero p { max-width: 670px; margin: 0; color: var(--muted); font-size: 14px; }
.feed-refresh-note { flex: 0 0 auto; display: inline-flex; align-items: center; gap: 8px; padding: 10px 13px; border: 1px solid rgba(92, 225, 210, .18); border-radius: 9px; color: #9aacc1; background: rgba(92, 225, 210, .04); font-size: 12px; }
.breach-feed-panel { overflow: hidden; border: 1px solid var(--line); border-radius: 16px; background: rgba(13, 22, 37, .82); box-shadow: var(--shadow); }
.feed-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 15px; padding: 15px 20px; border-bottom: 1px solid var(--line); color: #bdc9da; font-size: 11px; font-weight: 700; letter-spacing: .9px; }.feed-toolbar small { color: #7f8da2; font-size: 11px; font-weight: 400; letter-spacing: 0; }.feed-live-dot { display: inline-block; width: 7px; height: 7px; margin-right: 8px; border-radius: 50%; background: var(--cyan); box-shadow: 0 0 10px rgba(92, 225, 210, .7); }.feed-count { padding: 5px 8px; border: 1px solid var(--line); border-radius: 7px; color: #91a1b7; font-size: 10px; letter-spacing: 0; }.breach-feed-heading-badges { display: flex; align-items: center; justify-content: flex-end; gap: 8px; flex-wrap: wrap; }.breach-feed-heading-badges .feed-count { display: inline-flex; align-items: center; white-space: nowrap; }.breach-feed-heading-badges .feed-live-dot { flex: 0 0 7px; }.breach-catalogue-eyebrow { text-transform: uppercase; }
.breach-name-search { display: flex; align-items: center; gap: 8px; margin: 15px 18px; padding: 5px; border: 1px solid rgba(156, 183, 214, .17); border-radius: 10px; background: rgba(5, 11, 20, .48); }.breach-name-search:focus-within { border-color: rgba(92, 225, 210, .6); box-shadow: 0 0 0 3px rgba(92, 225, 210, .07); }.breach-name-search input { width: 100%; min-width: 0; padding: 8px 10px; border: 0; outline: 0; color: var(--text); background: transparent; font: 13px 'DM Sans', sans-serif; }.breach-name-search input::placeholder { color: #78879e; }.breach-name-search button { flex: 0 0 auto; padding: 9px 13px; border: 0; border-radius: 7px; color: #07131c; background: var(--cyan); font: 700 11px 'DM Sans', sans-serif; cursor: pointer; }.breach-search-clear { flex: 0 0 auto; color: #8999ae; font-size: 11px; }
.breach-table-scroll { overflow-x: auto; }
.breach-pagination { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 14px 18px; border-top: 1px solid var(--line); color: #8594a9; font-size: 11px; }.breach-pagination > div { display: flex; gap: 8px; }.pagination-button { display: inline-flex; align-items: center; padding: 8px 12px; border: 1px solid rgba(92, 225, 210, .2); border-radius: 8px; color: var(--cyan); background: rgba(92, 225, 210, .05); font-size: 11px; font-weight: 700; }.pagination-button:hover { border-color: rgba(92, 225, 210, .48); background: rgba(92, 225, 210, .1); }
.breach-feed-table { width: 100%; border-collapse: collapse; color: #bac7d9; font-size: 13px; }
.breach-feed-table th { padding: 12px 15px; border-bottom: 1px solid var(--line); color: #77879d; background: rgba(20, 31, 49, .72); font-size: 10px; font-weight: 700; letter-spacing: .9px; text-align: left; text-transform: uppercase; white-space: nowrap; }
.breach-feed-table td { padding: 14px 15px; border-bottom: 1px solid rgba(151, 177, 211, .085); vertical-align: middle; }
.breach-catalogue-table td { padding-top: 8px; padding-bottom: 8px; }
.cert-feed-summary { display: -webkit-box; max-width: 620px; overflow: hidden; color: #aebbd0; font-size: 13px; line-height: 1.5; white-space: pre-line; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }
.cert-breach-card p { white-space: pre-line; }
.breach-feed-table tbody tr { transition: background .18s ease; }.breach-feed-table tbody tr:hover { background: rgba(92, 225, 210, .035); }.breach-feed-table tbody tr:last-child td { border-bottom: 0; }
.breach-feed-table td:first-child { min-width: 225px; }.feed-org-mark { display: inline-grid; width: 32px; height: 32px; margin-right: 10px; place-items: center; border: 1px solid rgba(92, 225, 210, .2); border-radius: 9px; color: var(--cyan); background: rgba(92, 225, 210, .07); font: 600 14px 'Space Grotesk', sans-serif; vertical-align: middle; }.feed-org-name { color: #e3eaf4; font-weight: 600; }.feed-count-cell { color: #cfdae8; font: 400 13px/1.5 'DM Sans', sans-serif; white-space: nowrap; }
.feed-date { min-width: 120px; color: #8e9db2; white-space: nowrap; }.feed-summary { min-width: 260px; max-width: 550px; color: #8f9eb3; font-size: 13px; line-height: 1.5; }.feed-detail-link { display: inline-flex; align-items: center; gap: 5px; color: var(--cyan); font-size: 13px; font-weight: 700; white-space: nowrap; }.feed-detail-link span { font-size: 14px; }
/* Use consistent severity colors to make sensitive exposed fields easy to scan. */
.exposed-data-chips { display: flex; flex-wrap: wrap; gap: 5px; min-width: 250px; }
.exposed-data-chip { display: inline-flex; align-items: center; padding: 3px 7px; border: 1px solid transparent; border-radius: 999px; font-size: 11px; line-height: 1.4; white-space: nowrap; }
.exposed-data-chip.severity-high { border-color: rgba(255, 112, 128, .32); color: #ff9aa8; background: rgba(255, 75, 99, .12); }
.exposed-data-chip.severity-medium { border-color: rgba(255, 190, 92, .3); color: #ffd08b; background: rgba(255, 177, 66, .11); }
.exposed-data-chip.severity-low { border-color: rgba(109, 145, 255, .28); color: #a9bcff; background: rgba(109, 145, 255, .1); }
.exposed-data-chip.severity-unknown, .exposed-data-unknown { border-color: var(--line); color: #aab6c9; background: rgba(151, 177, 211, .07); }
/* Mark breaches with no matching entry in the local metadata catalogue. */
.breach-unknown { display: inline-block; margin: 5px 0 0 42px; padding: 3px 7px; border: 1px solid rgba(255, 179, 98, .2); border-radius: 999px; color: #e7b77f; background: rgba(255, 179, 98, .06); font-size: 10px; }
.feed-attribution { padding: 13px 18px; border-top: 1px solid var(--line); color: #718097; background: rgba(7, 13, 23, .3); font-size: 11px; }.feed-attribution a { color: #9baec5; }
.feed-state { padding: 60px 20px; text-align: center; }.feed-state-icon { display: grid; width: 40px; height: 40px; margin: 0 auto 13px; place-items: center; border: 1px solid rgba(92, 225, 210, .22); border-radius: 13px; color: var(--cyan); background: rgba(92, 225, 210, .06); font-size: 20px; }.feed-state h2 { margin-bottom: 6px; font-size: 20px; }.feed-state p { color: var(--muted); font-size: 13px; }.feed-state a { font-size: 13px; font-weight: 600; }
.vuln-hero { margin-bottom: 26px; padding: 34px 36px; border: 1px solid var(--line); border-radius: 18px; background: linear-gradient(112deg, rgba(18, 32, 52, .97), rgba(12, 34, 45, .9)); }
.vuln-hero h1 { margin: 12px 0 7px; font-size: clamp(33px, 4vw, 45px); letter-spacing: -1.7px; }.vuln-hero > p { margin: 0 0 20px; color: var(--muted); font-size: 14px; }
.vuln-search { display: flex; max-width: 690px; gap: 9px; padding: 6px; border: 1px solid rgba(156, 183, 214, .2); border-radius: 12px; background: rgba(5, 11, 20, .62); }.vuln-search:focus-within { border-color: rgba(92, 225, 210, .65); box-shadow: 0 0 0 3px rgba(92, 225, 210, .08); }.vuln-search input { width: 100%; min-width: 0; padding: 8px 11px; border: 0; outline: 0; color: var(--text); background: transparent; font: 14px 'DM Sans', sans-serif; }.vuln-search input::placeholder { color: #78879e; }.vuln-search button { flex: 0 0 auto; padding: 10px 14px; border: 0; border-radius: 8px; color: #07131c; background: var(--cyan); font: 700 12px 'DM Sans', sans-serif; cursor: pointer; }
.vuln-section { margin: 0 0 34px; }.vuln-section .section-heading { margin-bottom: 15px; }.vuln-section .section-heading h2 { font-size: 24px; }.vuln-notice, .vuln-account-note { margin: 12px 0; padding: 11px 14px; border: 1px solid rgba(92, 225, 210, .18); border-radius: 9px; color: #9aacc1; background: rgba(92, 225, 210, .04); font-size: 12px; }.vuln-notice.is-error { border-color: rgba(255, 143, 143, .25); color: #f3a6a6; background: rgba(255, 90, 90, .05); }.vuln-help { color: var(--muted); font-size: 13px; }.vuln-product-list { display: grid; gap: 7px; margin: 12px 0; }.vuln-product-choice { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 12px 14px; border: 1px solid var(--line); border-radius: 10px; color: inherit; background: rgba(15, 24, 40, .7); text-decoration: none; transition: border-color .16s ease, background .16s ease; }.vuln-product-choice:hover, .vuln-product-choice:focus-visible { border-color: rgba(92, 225, 210, .55); background: rgba(15, 30, 45, .9); text-decoration: none; }.vuln-product-choice:focus-visible { outline: 2px solid rgba(92, 225, 210, .5); outline-offset: 2px; }.vuln-product-choice strong, .vuln-product-choice small { display: block; }.vuln-product-choice strong { color: #dce5f2; font-size: 13px; }.vuln-product-choice small { margin-top: 3px; color: #8291a6; font: 11px monospace; overflow-wrap: anywhere; }.vuln-product-choice-arrow { flex: 0 0 auto; color: var(--cyan); font-size: 16px; }
.vuln-deep-search-prompt { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 16px 18px; border-color: rgba(92, 225, 210, .24); color: #c1cede; background: rgba(20, 39, 57, .55); }.vuln-deep-search-prompt p { margin: 0; line-height: 1.55; }.vuln-deep-search-prompt form { flex: 0 0 auto; }.vuln-deep-search-prompt button { min-height: 38px; padding: 9px 13px; border: 1px solid rgba(92, 225, 210, .32); border-radius: 8px; color: #d5f8f4; background: rgba(92, 225, 210, .12); font: 700 12px 'DM Sans', sans-serif; cursor: pointer; }.vuln-deep-search-prompt button:hover { border-color: rgba(92, 225, 210, .6); background: rgba(92, 225, 210, .2); }
@media (max-width: 600px) { .vuln-deep-search-prompt { align-items: stretch; flex-direction: column; gap: 12px; }.vuln-deep-search-prompt button { width: 100%; } }
.vuln-preview-table-wrap { overflow: hidden; border: 1px solid var(--line); border-radius: 14px; background: rgba(13, 22, 37, .82); }.vuln-table td:first-child { min-width: 120px; }.vuln-table td:nth-child(2) { min-width: 180px; }.vuln-table td:nth-child(3) { min-width: 280px; color: #aebbd0; }.vuln-table .vuln-kev-tag { display: inline-block; margin-top: 4px; padding: 2px 6px; border: 1px solid rgba(255, 183, 101, .24); border-radius: 999px; color: #f2bd7f; font-size: 9px; }.vuln-account-note { display: flex; justify-content: space-between; gap: 10px; }.vuln-account-note a { white-space: nowrap; font-weight: 600; }
.vuln-kev-locked tbody td { filter: blur(7px); user-select: none; }.vuln-kev-locked tbody tr { pointer-events: none; }.vuln-unlock-overlay { position: absolute; inset: 165px 0 0; display: flex; align-items: center; justify-content: center; padding: 24px; background: linear-gradient(180deg, rgba(8, 13, 24, .08), rgba(8, 13, 24, .88) 26%, rgba(8, 13, 24, .97)); text-align: center; }.vuln-unlock-overlay > div { width: min(390px, 100%); padding: 20px; border: 1px solid rgba(146, 175, 206, .18); border-radius: 14px; background: rgba(8, 14, 25, .88); box-shadow: 0 20px 60px rgba(0, 0, 0, .32); backdrop-filter: blur(14px); }.vuln-unlock-overlay h3 { margin: 0 0 5px; font-size: 20px; }.vuln-unlock-overlay p { margin: 0 0 12px; color: #9eacc0; font-size: 12px; }.vuln-unlock-overlay .btn { padding: 9px 13px; font-size: 12px; }.vuln-unlock-overlay small { display: block; margin-top: 8px; font-size: 11px; }.vuln-top-unlock { min-height: 230px; margin: 15px 0; }
.vuln-search-locked tbody td { filter: blur(7px); user-select: none; }.vuln-search-locked tbody tr { pointer-events: none; }
.vuln-product-list-locked { filter: blur(6px); pointer-events: none; user-select: none; }
.vuln-page-lock-container { position: relative; isolation: isolate; }
.vuln-page-lock-content[inert] { filter: blur(7px); pointer-events: none; user-select: none; }
.vuln-page-lock-overlay { position: absolute; inset: 0; z-index: 30; display: flex; align-items: flex-start; justify-content: center; padding: 12px; background: rgba(8, 13, 24, .28); backdrop-filter: blur(5px); }
.vuln-page-lock-card { position: sticky; top: 12px; width: min(470px, calc(100% - 24px)); margin: 0; }
.breach-page-lock-container { position: relative; isolation: isolate; }
.breach-page-lock-content[inert] { filter: blur(7px); pointer-events: none; user-select: none; }
.breach-page-lock-overlay { position: absolute; inset: 0; z-index: 30; display: flex; align-items: flex-start; justify-content: center; padding: 12px; background: rgba(8, 13, 24, .28); backdrop-filter: blur(5px); }
.breach-page-lock-card { position: sticky; top: 12px; width: min(470px, calc(100% - 24px)); margin: 0; }
.breach-feed-panel { position: relative; }.breach-feed-table-locked tbody td { filter: blur(7px); user-select: none; }.breach-feed-table-locked tbody tr { pointer-events: none; }.breach-unlock-overlay { inset: 190px 0 0; z-index: 2; }
.feed-search-unlock { min-height: 230px; margin: 15px 18px; }.feed-search-unlock .locked-table-wrap { padding: 14px 20px; }
.vuln-locked { min-height: 235px; }.vuln-list { display: grid; gap: 12px; }.vuln-card { padding: 20px 22px; border: 1px solid var(--line); border-radius: 14px; background: rgba(15, 24, 40, .72); }.vuln-card-heading { display: flex; justify-content: space-between; gap: 15px; color: #8797ad; font-size: 11px; }.vuln-cve { margin-right: 8px; color: var(--cyan); font: 700 14px 'Space Grotesk', sans-serif; }.vuln-card h3 { margin: 7px 0; font-size: 18px; }.vuln-product { margin: 8px 0 0; color: #8797ad; font-size: 11px; }.vuln-description { margin: 8px 0 12px; color: #adbacb; font-size: 13px; overflow-wrap: anywhere; }.cert-alert-content { white-space: pre-line; line-height: 1.75; }.vuln-metrics { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 14px; }.vuln-score, .vuln-chip { padding: 4px 8px; border: 1px solid rgba(255, 112, 128, .25); border-radius: 999px; color: #ffabb5; background: rgba(255, 75, 99, .08); font-size: 10px; }.vuln-chip { border-color: var(--line); color: #aab6c9; background: rgba(151, 177, 211, .05); }.vuln-card h4 { margin: 15px 0 5px; color: #a6b5c9; font-size: 11px; font-weight: 700; letter-spacing: .6px; text-transform: uppercase; }.vuln-affected, .vuln-references { margin: 0; padding-left: 18px; color: #aab6c9; font-size: 11px; }.vuln-affected li, .vuln-references li { padding: 3px 0; overflow-wrap: anywhere; }.vuln-kev-action { margin-top: 12px; padding: 11px; border-left: 2px solid #f2bd7f; color: #bdc8d7; background: rgba(255, 183, 101, .05); font-size: 12px; }.vuln-kev-action span { display: block; margin-top: 5px; color: #9ba9bb; }.vuln-pagination { display: flex; align-items: center; justify-content: space-between; gap: 15px; padding: 14px 16px; color: #8594a9; font-size: 11px; }.vuln-pagination div { display: flex; gap: 12px; }.vuln-inline-details summary { color: var(--cyan); cursor: pointer; }.vuln-inline-details p { max-width: 360px; color: #aab6c9; font-size: 11px; }
.cert-article-sections { display: grid; gap: 12px; margin: 20px 0; }.cert-article-section { padding: 16px 18px; border: 1px solid var(--line); border-radius: 12px; background: rgba(8, 15, 27, .44); }.cert-article-subsection { padding: 11px 13px; border: 1px solid rgba(255, 101, 115, .16); border-radius: 10px; background: rgba(255, 75, 99, .035); }.cert-section-badge { display: inline-flex; align-items: center; margin: 0 0 10px; padding: 5px 10px; border: 1px solid rgba(159, 179, 205, .24); border-radius: 999px; color: #d5dfeb; background: rgba(159, 179, 205, .08); font-size: 11px; font-weight: 700; }.cert-section-risk { border-color: rgba(255, 101, 115, .34); color: #ff9ca7; background: rgba(255, 75, 99, .11); }.cert-section-affected { border-color: rgba(255, 183, 101, .34); color: #f2bd7f; background: rgba(255, 183, 101, .1); }.cert-section-summary { border-color: rgba(92, 225, 210, .3); color: #81e3d9; background: rgba(92, 225, 210, .08); }.cert-section-solution { border-color: rgba(91, 216, 159, .3); color: #80e2b2; background: rgba(91, 216, 159, .08); }.cert-section-documentation { border-color: rgba(184, 145, 255, .3); color: #c6aaff; background: rgba(184, 145, 255, .08); }.cert-article-content { color: #aebcd0; font-size: 13px; line-height: 1.75; overflow-wrap: anywhere; }.cert-alert-content { white-space: pre-line; }
.cert-documentation-links { display: grid; gap: 8px; margin: 2px 0 0; padding: 0; list-style: none; }.cert-documentation-links a { color: #aebcd0; font-size: 12px; line-height: 1.5; overflow-wrap: anywhere; text-decoration: underline; text-decoration-color: rgba(174, 188, 208, .38); text-underline-offset: 3px; }.cert-documentation-links a:hover { color: var(--cyan); }
.back-link { display: inline-flex; margin: 0 0 16px; color: #9eafc4; font-size: 13px; }.breach-detail-hero { padding: 30px 34px; border: 1px solid var(--line); border-radius: 17px; background: linear-gradient(115deg, rgba(17, 32, 51, .96), rgba(13, 35, 47, .9)); }.breach-detail-hero h1 { margin: 11px 0 14px; font-size: clamp(33px, 4vw, 47px); letter-spacing: -1.6px; }
/* Keep page-return links visually consistent and aligned to the right across the site. */
.page-back-row { display: flex; justify-content: flex-end; width: 100%; margin: 0 0 16px; }
.page-back-button { display: inline-flex; align-items: center; justify-content: center; align-self: flex-end; margin-left: auto; padding: 8px 11px; border: 1px solid rgba(92, 225, 210, .22); border-radius: 8px; color: var(--cyan); background: rgba(92, 225, 210, .04); font-size: 11px; font-weight: 700; line-height: 1.3; text-decoration: none; white-space: nowrap; }
.page-back-button:hover { color: var(--cyan); background: rgba(92, 225, 210, .1); text-decoration: none; }
.org-heading-row > .page-back-button { flex: 0 0 auto; }
.detail-badges { display: flex; flex-wrap: wrap; gap: 7px; }.detail-badge { padding: 5px 9px; border: 1px solid; border-radius: 999px; font-size: 10px; font-weight: 700; }.badge-cyan { border-color: rgba(92, 225, 210, .23); color: var(--cyan); background: rgba(92, 225, 210, .07); }.badge-violet { border-color: rgba(184, 145, 255, .23); color: #c6aaff; background: rgba(184, 145, 255, .07); }.badge-green { border-color: rgba(91, 216, 159, .23); color: #80e2b2; background: rgba(91, 216, 159, .07); }.badge-muted { border-color: rgba(160, 176, 199, .18); color: #9aa9bd; background: rgba(160, 176, 199, .05); }.badge-amber { border-color: rgba(255, 183, 101, .24); color: #f2bd7f; background: rgba(255, 183, 101, .07); }
.detail-stats { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; margin: 14px 0; }.detail-stats article { min-width: 0; padding: 16px; border: 1px solid var(--line); border-radius: 13px; background: rgba(15, 24, 40, .76); }.detail-stats small, .detail-stats strong { display: block; }.detail-stats small { margin-bottom: 7px; color: #8493a9; font-size: 10px; font-weight: 600; letter-spacing: .6px; text-transform: uppercase; }.detail-stats strong { overflow-wrap: anywhere; color: #e1eaf4; font: 600 16px 'Space Grotesk', sans-serif; }
.detail-content-grid { display: grid; grid-template-columns: 1.25fr 1fr; gap: 14px; }.detail-card { padding: 22px; border: 1px solid var(--line); border-radius: 14px; background: rgba(15, 24, 40, .76); }.detail-description { margin: 15px 0 0; color: #aab8ca; font-size: 14px; line-height: 1.75; }.data-class-list { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 16px; }.data-class-list .exposed-data-chip { padding: 7px 10px; border-radius: 8px; font-size: 11px; }
.detail-next-steps { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-top: 16px; padding: 22px 24px; border: 1px solid rgba(92, 225, 210, .2); border-radius: 14px; background: linear-gradient(110deg, rgba(16, 34, 49, .92), rgba(15, 24, 40, .82)); }
.detail-next-steps h2 { margin: 9px 0 5px; font-size: 21px; font-weight: 600; }
.detail-next-steps p { max-width: 760px; margin: 0; color: #9eacc0; font-size: 13px; line-height: 1.65; }
.detail-attribution { margin-top: 14px; color: #718097; font-size: 11px; text-align: right; }.detail-attribution a { color: #96a8c1; text-decoration: underline; }
.policy-hero { margin-bottom: 17px; padding: 38px 42px; border: 1px solid rgba(119, 160, 203, .17); border-radius: 19px; background: linear-gradient(112deg, rgba(17, 31, 51, .97), rgba(12, 31, 44, .9)); }
.policy-hero h1 { margin: 14px 0 10px; font-size: clamp(33px, 4vw, 48px); letter-spacing: -1.7px; }
.policy-hero h1 span { color: var(--cyan); }
.policy-hero p { max-width: 760px; margin: 0; color: #a7b7cb; }
.policy-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px; }
.policy-card { margin-bottom: 14px; padding: 24px; border: 1px solid var(--line); border-radius: 15px; background: var(--surface); }
.policy-card h2 { margin: 12px 0 8px; font-size: 19px; }
.policy-card p, .policy-card dd { color: #aab8ca; font-size: 14px; }
.policy-card p:last-child { margin-bottom: 0; }
.contact-card { max-width: 780px; }
.contact-form { display: grid; gap: 14px; margin-top: 18px; }
.contact-form label { margin: 0; }
.contact-form textarea { min-height: 150px; resize: vertical; }
.contact-form-actions { display: flex; align-items: center; justify-content: space-between; gap: 15px; }
.contact-form-actions p { margin: 0; font-size: 12px; }
.contact-captcha-wrap { display: flex; align-items: flex-start; justify-content: flex-end; width: 100%; min-height: 0; margin: 0; }
.contact-captcha-notice { margin: 0; padding: 11px 13px; border: 1px solid rgba(255, 183, 101, .24); border-radius: 9px; color: #f2bd7f; background: rgba(255, 183, 101, .06); font-size: 12px; }
.contact-form-actions button:disabled { cursor: not-allowed; opacity: .55; }
.contact-email-link { display: inline-flex; align-items: center; margin-top: 3px; padding: 10px 14px; border: 1px solid rgba(92, 225, 210, .25); border-radius: 9px; color: #9ce9df; background: rgba(92, 225, 210, .06); font-size: 14px; font-weight: 700; transition: border-color .18s ease, background .18s ease, color .18s ease; }
.contact-email-link:hover, .contact-email-link:focus-visible { border-color: rgba(92, 225, 210, .5); color: #c9fff7; background: rgba(92, 225, 210, .11); text-decoration: none; }
.legal-card h2:not(:first-child) { margin-top: 25px; }
.terms-accept-label { display: flex; align-items: flex-start; gap: 11px; margin: 0; color: #c2ccda !important; cursor: pointer; }
.terms-accept-label input { flex: 0 0 17px; width: 17px; height: 17px; margin-top: 6px; accent-color: var(--cyan); }
.terms-accept-label span { min-width: 0; }
.terms-accept-page { min-width: 0; }
.terms-accept-scroll { height: calc(100vh - 250px); height: calc(100dvh - 250px); min-height: 180px; overflow-y: auto; overscroll-behavior: contain; padding: 0 8px 150px 0; scrollbar-color: rgba(92, 225, 210, .45) rgba(151, 177, 211, .08); scrollbar-width: thin; }
.terms-accept-scroll:focus-visible { outline: 2px solid rgba(92, 225, 210, .55); outline-offset: 2px; }
.terms-accept-controls { position: fixed; right: 64px; bottom: 12px; left: 64px; z-index: 60; margin: 0; padding: 14px 20px; border-color: rgba(92, 225, 210, .3); background: rgba(12, 21, 35, .98); box-shadow: 0 -12px 32px rgba(0, 0, 0, .42); }
.terms-accept-controls form { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 6px 20px; }
.terms-accept-controls .terms-accept-label { grid-column: 1; grid-row: 1; }
.terms-accept-controls button { grid-column: 2; grid-row: 1 / span 2; min-height: 40px; white-space: nowrap; }
.terms-accept-controls .terms-version { grid-column: 1; grid-row: 2; margin: 0; color: var(--muted); font-size: 11px; }
.terms-accept-controls .alert { grid-column: 1 / -1; margin: 0 0 8px; }
.legal-card dl { display: grid; grid-template-columns: minmax(220px, .7fr) 1.3fr; gap: 8px 18px; margin: 14px 0 22px; }
.legal-card dt { color: #dfe8f3; font-size: 14px; }
.legal-card dd { margin: 0; }
.cookie-notice { position: fixed; z-index: 50; right: 22px; bottom: 20px; display: flex; width: min(560px, calc(100vw - 32px)); align-items: center; justify-content: space-between; gap: 20px; padding: 18px 20px; border: 1px solid rgba(92, 225, 210, .25); border-radius: 15px; background: rgba(12, 21, 35, .97); box-shadow: 0 18px 55px rgba(0, 0, 0, .42); backdrop-filter: blur(18px); }
.cookie-notice[hidden] { display: none; }
.cookie-notice-copy strong { color: var(--text); font: 600 15px 'Space Grotesk', sans-serif; }
.cookie-notice-copy p { margin: 5px 0 0; color: #9caec3; font-size: 12px; line-height: 1.55; }
.cookie-notice-copy a { color: var(--cyan); text-decoration: underline; }
.cookie-notice-dismiss { flex: 0 0 auto; padding: 9px 13px; border: 0; border-radius: 8px; color: #07131c; background: var(--cyan); font: 700 12px 'DM Sans', sans-serif; cursor: pointer; }
.cookie-notice-dismiss:focus-visible { outline: 2px solid #a2fff4; outline-offset: 3px; }
/* Temporary site-wide maintenance gate. */
body.site-access-locked { display: grid; min-height: 100vh; padding: 0; }
body.site-access-locked .site-header, body.site-access-locked .site-footer { display: none !important; }
body.site-access-locked .app-container { display: grid; width: 100%; min-height: 100vh; align-items: center; justify-items: center; padding: 28px; }
.site-access-page { width: min(700px, 100%); }
.site-access-card.locked-result { min-height: 460px; margin: 0; }
.site-access-message.locked-result-message { width: min(470px, calc(100% - 34px)); }
.site-access-message .locked-result-label { margin-bottom: 9px; }
.site-access-unlock-form { display: grid; gap: 8px; margin-top: 20px; text-align: left; }
.site-access-unlock-form label { margin: 0; color: #cbd7e7; font-size: 12px; font-weight: 600; }
.site-access-unlock-form input { width: 100%; min-height: 43px; padding: 10px 12px; border: 1px solid rgba(151, 177, 211, .2); border-radius: 9px; outline: none; color: #eaf1fa; background: rgba(5, 11, 20, .7); font: 400 14px 'DM Sans', sans-serif; }
.site-access-unlock-form input:focus { border-color: rgba(92, 225, 210, .58); box-shadow: 0 0 0 3px rgba(92, 225, 210, .1); }
.site-access-unlock-form .btn { display: inline-flex; min-height: 42px; align-items: center; justify-content: center; gap: 8px; margin-top: 7px; }
.site-access-error { display: block; margin: 0; color: #ff9da9; font-size: 12px; line-height: 1.5; }
.site-access-error ul { margin: 0; padding: 0; list-style: none; }
.site-access-error li { margin: 0; }
.platform-site-access-panel { display: grid; gap: 16px; }
.platform-site-access-description { max-width: 900px; margin: 0; }
.platform-site-access-warning { padding: 12px 15px; border: 1px solid rgba(255, 179, 98, .25); border-radius: 10px; color: #f1bd83; background: rgba(255, 179, 98, .07); font-size: 13px; }
.platform-site-access-warning strong { color: #ffd5a5; }
.platform-site-access-form { display: grid; gap: 17px; }
.platform-site-access-form > .org-primary-button { justify-self: end; min-height: 32px; padding: 6px 11px; font-size: 11px; }
.org-primary-button { display: inline-flex; min-height: 38px; align-items: center; justify-content: center; gap: 8px; padding: 9px 14px; border: 1px solid transparent; border-radius: 8px; color: #07131c; background: linear-gradient(110deg, var(--cyan), #8ce4c7); font: 700 12px 'DM Sans', sans-serif; cursor: pointer; transition: transform .18s ease, box-shadow .18s ease, background .18s ease; }
.org-primary-button:hover { transform: translateY(-1px); color: #07131c; background: linear-gradient(110deg, #79eee0, #a1efd0); box-shadow: 0 6px 18px rgba(92, 225, 210, .16); }
.org-primary-button:focus-visible { outline: 2px solid #a2fff4; outline-offset: 3px; }
.org-primary-button:disabled { opacity: .55; cursor: not-allowed; transform: none; }
.platform-site-access-toggle { display: flex; align-items: center; gap: 12px; width: fit-content; cursor: pointer; }
.platform-site-access-toggle input { width: 17px; height: 17px; margin: 0; accent-color: var(--cyan); }
.platform-site-access-toggle > span { display: grid; gap: 2px; }
.platform-site-access-toggle strong { color: #e3ebf6; font-size: 13px; }
.platform-site-access-toggle small, .platform-site-access-field > small { color: #8595ab; font-size: 11px; line-height: 1.5; }
.platform-site-access-code-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 15px; }
.platform-site-access-field { display: grid; min-width: 0; grid-template-rows: minmax(18px, auto) 40px auto 18px; align-content: start; gap: 7px; }
.platform-site-access-field label { margin: 0; color: #cbd7e7; font-size: 12px; font-weight: 600; line-height: 18px; }
.platform-site-access-field input { box-sizing: border-box; width: 100%; min-width: 0; height: 40px; padding: 9px 11px; border: 1px solid rgba(151, 177, 211, .17); border-radius: 8px; outline: none; color: #eaf1fa; background: rgba(5, 11, 20, .55); font: 400 13px 'DM Sans', sans-serif; }
.platform-site-access-field input:focus { border-color: rgba(92, 225, 210, .55); box-shadow: 0 0 0 3px rgba(92, 225, 210, .08); }
.platform-site-access-field .org-form-error { margin: 0; font-size: 11px; }
.platform-site-access-help-spacer { visibility: hidden; }
.site-access-unlock-form .org-primary-button { min-height: 42px; margin-top: 7px; }
.platform-site-access-panel .org-role.is-site-gate-on { border-color: rgba(92, 225, 210, .32); color: var(--cyan); background: rgba(92, 225, 210, .09); }
@media (max-width: 620px) {
  body.site-access-locked .app-container { padding: 16px; }
  .site-access-card.locked-result { min-height: 400px; }
  .site-access-message.locked-result-message { margin: 16px; padding: 22px 18px; }
  .platform-site-access-code-grid { grid-template-columns: 1fr; }
}
@keyframes float { 0%, 100% { translate: 0 0; } 50% { translate: 0 -9px; } }
@keyframes hero-star-twinkle { 0%, 100% { opacity: 0; transform: scale(.55); } 28%, 58% { opacity: var(--star-opacity, .6); transform: scale(1); } }
@keyframes orbit-pulse { 0%, 100% { opacity: .52; transform: scale(.96); } 50% { opacity: 1; transform: scale(1.035); } }
@keyframes breach-marquee { to { transform: translateX(-50%); } }

@keyframes rise-in { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: translateY(0); } }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; transition-duration: .01ms !important; } .hero-star { display: none; } }
@media (prefers-reduced-motion: reduce) { .breach-carousel-track { animation: none; transform: none; } .breach-carousel-group[aria-hidden="true"] { display: none; } }
@media (prefers-reduced-motion: reduce) { .float-chip { animation: none; opacity: 1; translate: none; } }
@media (prefers-reduced-motion: reduce) { .sonar-wave { display: none; } }
@media (max-width: 767.98px) {
  .app-container { width: calc(100% - 32px); }
  body { padding-top: 72px; }
  .site-header .navbar { min-height: 72px; }
  .navbar-brand { margin-right: 0; }
  .navbar-collapse { padding: 12px 0 8px; }
  .nav-links, .nav-account { align-items: stretch; }
  .language-switcher { width: max-content; margin: 10px 0 0; }
  .site-header .navbar-nav .nav-cta { margin: 5px 0 0; text-align: center; }
  .app-container { padding-top: 28px; }
  .content-section, article.content-section { padding: 19px; }
  .footer-inner { flex-direction: column; gap: 3px; }
  .hero-panel { min-height: 0; padding: 40px 23px; }
  .hero-copy { width: 100%; }
  .hero-panel h1 { font-size: 39px; letter-spacing: -1.8px; }
  .hero-visual { top: auto; right: -112px; bottom: -115px; opacity: .25; transform: scale(.75); }
  .float-chip { display: none; }
  .hero-search { position: relative; z-index: 2; }
  .hero-search-controls { gap: 6px; }
  .hero-search button { padding: 11px 10px; font-size: 11px; }
  .trust-row, .breach-grid { grid-template-columns: 1fr; }
  .trust-row { gap: 9px; margin-bottom: 38px; }
  .trust-item { padding: 12px 15px; }
  .section-heading { display: block; }
  .section-heading > p { margin-top: 8px; }
  .breach-carousel-actions { align-items: center; justify-content: space-between; margin-top: 10px; }
  .breach-carousel-actions p { font-size: 12px; }
  .breach-carousel .breach-card { width: 250px; flex-basis: 250px; }
  .locked-result { min-height: 330px; }
  .locked-table-wrap { padding: 18px 12px; opacity: .48; }
  .locked-table { font-size: 10px; }
  .locked-table thead th, .locked-table tbody td { padding: 9px 6px; }
  .preview-status { font-size: 9px; }
  .blog-hero { padding: 26px 21px; }
  .blog-post-layout { min-height: 110px; gap: 13px; }
  .blog-post-thumb { width: 170px; height: 110px; flex-basis: 170px; }
  .blog-post-card h2 { font-size: 19px; }
  .breach-feed-hero { display: block; padding: 26px 21px; }
  .feed-refresh-note { margin-top: 17px; }
  .feed-toolbar { align-items: flex-start; padding: 13px; font-size: 10px; }
  .feed-toolbar small { display: block; margin: 5px 0 0 15px; }
  .breach-feed-table { min-width: 760px; }
  .breach-detail-hero { padding: 24px 21px; }
  .detail-stats { grid-template-columns: repeat(2, 1fr); }
  .detail-content-grid { grid-template-columns: 1fr; }
  .detail-next-steps { padding: 19px; }
  .article-page-grid { grid-template-columns: 1fr; gap: 28px; }
  .article-page-header { padding: 6px 0 18px; }
  .article-page-header h1 { font-size: 35px; letter-spacing: -1px; }
  .article-feature-image { margin: 20px 0 23px; }
  .article-sidebar { order: 2; }
  .policy-hero { padding: 28px 22px; }
  .policy-grid { grid-template-columns: 1fr; }
  .terms-accept-scroll { height: calc(100vh - 230px); height: calc(100dvh - 230px); padding-right: 4px; }
  .terms-accept-controls { right: 16px; bottom: 8px; left: 16px; padding: 12px 14px; }
  .terms-accept-controls form { grid-template-columns: minmax(0, 1fr); gap: 9px; }
  .terms-accept-controls .terms-accept-label,
  .terms-accept-controls button,
  .terms-accept-controls .terms-version { grid-column: 1; grid-row: auto; }
  .terms-accept-controls button { justify-self: start; }
  .terms-accept-controls .terms-version { margin-top: 0; }
  .legal-card dl { grid-template-columns: 1fr; gap: 3px; }
  .legal-card dd { margin-bottom: 10px; }
  .cookie-notice { right: 12px; bottom: 12px; align-items: flex-start; gap: 12px; padding: 15px; }
}
@media (max-width: 991.98px) {
  .site-header .nav-shell { width: calc(100% - 32px); max-width: none; padding-right: 0; padding-left: 0; }
  .site-header .navbar .navbar-toggler { display: inline-flex; width: 46px; height: 46px; flex: 0 0 46px; align-items: center; justify-content: center; margin-left: auto; border: 1px solid rgba(92, 225, 210, .58); border-radius: 11px; color: var(--cyan); background: rgba(92, 225, 210, .13); box-shadow: 0 0 0 1px rgba(92, 225, 210, .08), 0 4px 14px rgba(0, 0, 0, .2); visibility: visible; opacity: 1; }
  .site-header .navbar .navbar-toggler:hover, .site-header .navbar .navbar-toggler:focus-visible, .site-header .navbar .navbar-toggler[aria-expanded="true"] { border-color: var(--cyan); background: rgba(92, 225, 210, .22); box-shadow: 0 0 0 3px rgba(92, 225, 210, .12); outline: none; }
  .account-menu { width: 100%; }
  .account-menu-toggle { width: 100%; text-align: left; }
  .account-identity { max-width: none; margin: 8px 0 4px; text-align: left; }
  .notification-menu { align-self: flex-start; }
  .notification-dropdown { position: static; width: min(370px, calc(100vw - 32px)); margin-top: 6px; }
.account-dropdown { position: static; margin-top: 6px; }
}

/* Organization monitoring workspace */
.org-page-heading { margin: 20px 0 22px; }
.org-page-heading h1 { margin: 10px 0 5px; font: 600 clamp(29px, 4vw, 39px) 'Space Grotesk', sans-serif; letter-spacing: -1px; }
.org-page-heading p { margin: 0; color: var(--muted); font-size: 13px; }
.org-device-header-meta { display: flex; align-items: center; flex-wrap: wrap; gap: 5px 17px; margin-top: 2px; color: var(--muted); font-size: 12px; line-height: 1.5; }
.org-device-header-identity { color: var(--muted); }
.org-device-header-status.is-active { color: #8edbd0; }
.org-device-header-status.is-retired, .org-device-header-inventory.is-pending { color: #f2bd7f; }
.org-device-header-alerts strong { color: #c7a0ff; font: 600 13px 'Space Grotesk', sans-serif; }
.org-page-heading .org-product-detail-meta { max-width: 1100px; line-height: 1.6; }
.org-product-detail-meta a { color: #a7dcd7; }
.org-heading-row { display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.org-detail-header-actions { display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: 8px; margin-left: auto; }
.org-detail-header-actions form { margin: 0; }
.org-detail-header-actions > a, .org-detail-header-actions > form > button { box-sizing: border-box; min-height: 38px; }
.org-detail-header-actions .page-back-button { margin-left: 4px; }
.org-layout { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin-bottom: 16px; }
.org-panel { min-width: 0; margin-bottom: 16px; padding: 22px; border: 1px solid var(--line); border-radius: 15px; background: rgba(13, 22, 37, .82); box-shadow: var(--shadow); }
.org-panel h2 { margin: 0 0 15px; font: 600 19px 'Space Grotesk', sans-serif; }
.org-panel-heading { display: flex; align-items: center; justify-content: space-between; gap: 15px; margin-bottom: 12px; }
.org-panel-heading h2 { margin: 8px 0 0; }
.org-count, .org-role { color: var(--cyan); font-size: 11px; font-weight: 700; }
.org-list, .org-alert-list { display: grid; gap: 8px; }
.org-list-item, .org-compact-list li { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 11px 12px; border: 1px solid rgba(151, 177, 211, .1); border-radius: 9px; background: rgba(6, 12, 21, .34); }
.org-list-item strong, .org-list-item small, .org-compact-list strong, .org-compact-list small { display: block; }
.org-list-item strong, .org-compact-list strong { color: #dbe5f1; font-size: 13px; }
.org-list-item small, .org-compact-list small { margin-top: 3px; color: #8999ae; font-size: 11px; overflow-wrap: anywhere; }
.org-list-item:hover { border-color: rgba(92, 225, 210, .3); text-decoration: none; }
.org-list-actions { display: flex; align-items: center; gap: 12px; }
.org-list-actions .org-secondary-button { white-space: nowrap; }
@media (max-width: 560px) { .org-list-item { align-items: flex-start; flex-direction: column; } .org-list-actions { width: 100%; justify-content: space-between; } }
.org-muted, .org-footnote { color: #8999ae; font-size: 12px; line-height: 1.6; }
.org-footnote { margin: 14px 0 0; }
.org-form { display: grid; gap: 11px; }
.org-management-form { margin-bottom: 18px; }
.org-form p { margin: 0; }
.org-form label { display: grid; gap: 5px; color: #9baac0; font-size: 11px; }
.org-form input, .org-form select, .org-form textarea, .org-invite-link input { width: 100%; min-width: 0; padding: 9px 10px; border: 1px solid rgba(151, 177, 211, .17); border-radius: 8px; color: #dce5f2; background: rgba(5, 11, 20, .55); font-size: 13px; }
.org-role-select { box-sizing: border-box; min-height: 34px; padding: 0 11px !important; border: 1px solid rgba(151, 177, 211, .17) !important; border-radius: 7px !important; color: #dce5f2 !important; background: #0d1625 !important; font: 700 11px 'DM Sans', sans-serif !important; }
.org-role-select option { color: #dce5f2; background: #0d1625; }
.org-form textarea { resize: vertical; }
.org-form select option { color: #dce5f2; background: #0d1625; }
.org-form .btn { width: max-content; padding: 9px 13px; font-size: 12px; }
.org-form-error { color: #ffabb5; }
.org-inventory-search { display: grid; gap: 8px; margin: 0 0 14px; padding: 13px 15px; border: 1px solid var(--line); border-radius: 12px; background: rgba(13, 22, 37, .82); box-shadow: var(--shadow); }
.org-inventory-search > .eyebrow { display: inline-flex; gap: 7px; margin: 0; }
.org-inventory-search > div { display: flex; align-items: center; gap: 8px; }
.org-inventory-search input[type="search"] { box-sizing: border-box; width: 100%; min-width: 0; min-height: 38px; padding: 8px 11px; border: 1px solid rgba(151, 177, 211, .17); border-radius: 8px; outline: none; color: #dce5f2; background: rgba(5, 11, 20, .55); font: 400 13px 'DM Sans', sans-serif; }
.org-inventory-search input:focus { border-color: rgba(92, 225, 210, .55); box-shadow: 0 0 0 3px rgba(92, 225, 210, .08); }
.org-inventory-search .btn { width: max-content; padding: 9px 13px; font-size: 12px; white-space: nowrap; }
[data-inventory-results][aria-busy="true"] { opacity: .62; transition: opacity .12s ease; }
.org-form-row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: end; gap: 10px; margin-bottom: 15px; }
.org-form-row > button { grid-column: 1 / -1; }
.org-product-device-field { display: grid; gap: 5px; color: #9baac0; font-size: 11px; }
.org-product-device-field select { width: 100%; min-width: 0; min-height: 38px; padding: 9px 10px; border: 1px solid rgba(151, 177, 211, .17); border-radius: 8px; color: #dce5f2; background: rgba(5, 11, 20, .55); font-size: 13px; }
.org-product-device-help { margin: -4px 0 0; color: #8999ae; font-size: 10px; line-height: 1.55; }
.org-domain-panel { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; }
.org-domain-panel h2 { margin-bottom: 7px; }
.org-dns-record { display: grid; min-width: min(390px, 48%); gap: 6px; padding: 12px; border: 1px solid rgba(151, 177, 211, .12); border-radius: 9px; background: rgba(5, 11, 20, .35); }
.org-dns-record small { color: #8999ae; font-size: 11px; overflow-wrap: anywhere; }
.org-dns-record code { color: var(--cyan); font-size: 12px; overflow-wrap: anywhere; }
.org-dns-record form { margin-top: 5px; }
.org-state { flex: 0 0 auto; padding: 7px 10px; border-radius: 999px; font-size: 11px; font-weight: 700; }
.org-state.is-good { color: #80e2b2; background: rgba(91, 216, 159, .08); }
.org-secondary-button { display: inline-flex; align-items: center; justify-content: center; padding: 8px 11px; border: 1px solid rgba(92, 225, 210, .22); border-radius: 8px; color: var(--cyan); background: rgba(92, 225, 210, .04); font-size: 11px; font-weight: 700; cursor: pointer; }
.org-secondary-button:hover { background: rgba(92, 225, 210, .1); text-decoration: none; }
.org-secondary-button:disabled { opacity: .45; cursor: not-allowed; }
.org-secondary-button.is-refreshing { gap: 8px; opacity: 1; color: #b7fff2; border-color: rgba(92, 225, 210, .5); background: rgba(92, 225, 210, .13); cursor: wait; }
.org-secondary-button.is-refreshing::before { width: 11px; height: 11px; border: 2px solid rgba(183, 255, 242, .3); border-top-color: #b7fff2; border-radius: 50%; content: ""; animation: org-refresh-spin .7s linear infinite; }
.org-secondary-button.is-pending { color: #aab8ca; border-color: rgba(151, 177, 211, .2); background: rgba(151, 177, 211, .06); cursor: wait; }
.org-secondary-button.is-refresh-done { color: #9af0c9; border-color: rgba(65, 210, 155, .3); background: rgba(65, 210, 155, .08); }
.org-secondary-button.is-refresh-failed { color: #ffb0ba; border-color: rgba(255, 102, 121, .35); background: rgba(154, 42, 59, .12); }
@keyframes org-refresh-spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { .org-secondary-button.is-refreshing::before { animation-duration: 1.8s; } }
.org-alert-card { display: flex; align-items: flex-start; justify-content: space-between; gap: 14px; padding: 14px; border: 1px solid rgba(151, 177, 211, .12); border-radius: 10px; background: rgba(5, 11, 20, .34); }
.org-monitor-alert-card { flex-wrap: wrap; }
.org-monitor-alert-card .org-alert-main { min-width: 0; flex: 1 1 calc(100% - 205px); }
.org-monitor-alert-card .org-alert-status-form { flex: 0 0 190px; }
.org-monitor-alert-card .org-alert-comment-area { flex: 0 0 100%; }
.org-alert-card.status-resolved { opacity: .7; }
.org-alert-main { min-width: 0; }
.org-alert-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; color: #8797ad; font-size: 10px; }
/* Keep first-detection and treatment age readable without adding bulk to alert cards. */
.org-alert-lifecycle { display: flex; flex-wrap: wrap; gap: 5px 13px; margin: 5px 0 2px; color: #9aa9bd; font-size: 11px; line-height: 1.45; }
.org-alert-type { color: var(--cyan); }
.type-vulnerability { color: #f2bd7f; }
.type-partner_breach { color: #c09cff; }
.org-alert-card h3 { margin: 7px 0 4px; color: #dce5f2; font-size: 14px; }
.org-overview-vuln-title-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 7px; }
.org-overview-vuln-title-row h3 { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; min-width: 0; margin: 0; }
.org-overview-vuln-title-row h3 > span:last-child { min-width: 0; overflow-wrap: anywhere; }
.org-overview-vuln-title-row .org-vuln-tags { flex: 0 0 auto; margin: 0; }
.org-alert-card p { margin: 0; color: #a1aec0; font-size: 12px; line-height: 1.55; white-space: pre-line; overflow-wrap: anywhere; }
.org-alert-card .org-alert-subject { margin-bottom: 5px; color: #7fded3; font-size: 11px; }
.org-alert-details-link { display: inline-flex; align-items: center; gap: 5px; margin-top: 8px; color: var(--cyan); font-size: 11px; font-weight: 700; }
.org-alert-details-link:hover { color: #b1fff3; text-decoration: none; }
.org-alert-card small { display: block; margin-top: 6px; color: #8797ad; font-size: 10px; }
.org-compact-list { display: grid; gap: 7px; margin: 0; padding: 0; list-style: none; }
.org-compact-list form { flex: 0 0 auto; }
/* Keep destructive actions explicit with a localized text label. */
.org-remove-button { min-height: 31px; padding: 7px 10px; border: 1px solid rgba(255, 143, 143, .28); border-radius: 7px; color: #ffabb5; background: rgba(255, 90, 90, .07); font: 700 11px 'DM Sans', sans-serif; white-space: nowrap; cursor: pointer; }
.org-remove-button:hover { border-color: rgba(255, 143, 143, .52); background: rgba(255, 90, 90, .13); }
.org-invite-link { display: grid; gap: 6px; margin-top: 12px; padding: 12px; border: 1px solid rgba(92, 225, 210, .18); border-radius: 9px; }
.org-invite-link strong, .org-pending-invites small { color: #a9bacf; font-size: 11px; }
.org-invite-link small, .org-pending-invites span { color: #8797ad; font-size: 10px; overflow-wrap: anywhere; }
.org-pending-invites { display: grid; gap: 5px; margin-top: 12px; }
.org-invitation-panel { max-width: 650px; margin: 38px auto; }
.org-invitation-panel h1 { font: 600 27px 'Space Grotesk', sans-serif; }
.org-invitation-panel p { color: var(--muted); font-size: 13px; }

/* Give CERT and CVE detail pages the same clear hero, summary and content-card hierarchy as breach details. */
.cert-detail-hero h1, .vuln-detail-hero h1 { max-width: 1000px; overflow-wrap: anywhere; }
.cert-risk-inline-badge { max-width: 100%; margin: 0; white-space: pre-line; line-height: 1.45; overflow-wrap: anywhere; }
.cert-detail-stats { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.cert-detail-notice { margin: 14px 0; }
.cert-detail-sections { margin: 14px 0 0; }
.cert-detail-sections .cert-article-section { padding: 22px; border-color: var(--line); border-radius: 14px; background: rgba(15, 24, 40, .76); }
.cert-detail-sections .cert-alert-content { color: #aab8ca; font-size: 14px; line-height: 1.75; overflow-wrap: anywhere; }
.cert-detail-sections .cert-article-subsection { margin-top: 12px; }
.cert-detail-fallback { margin-top: 14px; }
.cert-detail-fallback .detail-description { white-space: pre-line; }
.vuln-detail-hero h1 { margin-bottom: 16px; }
.vuln-detail-hero .vuln-detail-summary-title { margin: 11px 0 7px; font-size: clamp(30px, 3.8vw, 43px); line-height: 1.16; letter-spacing: -1.35px; }
.vuln-detail-hero .vuln-detail-product-title { margin: 0 0 14px; color: #aab8ca; font: 500 clamp(17px, 2vw, 21px) 'Space Grotesk', sans-serif; letter-spacing: -.3px; overflow-wrap: anywhere; }
.vuln-detail-product { margin: 14px 0 0; color: #aab8ca; font-size: 14px; }
.vuln-detail-stats { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.badge-cvss-critical { border-color: rgba(184, 145, 255, .36); color: #c6aaff; background: rgba(184, 145, 255, .12); }
.badge-cvss-high { border-color: rgba(255, 112, 128, .36); color: #ffabb5; background: rgba(255, 75, 99, .12); }
.badge-cvss-medium { border-color: rgba(255, 183, 101, .36); color: #f2bd7f; background: rgba(255, 183, 101, .12); }
.badge-cvss-low { border-color: rgba(92, 171, 255, .36); color: #91c7ff; background: rgba(92, 171, 255, .12); }
/* Make confirmed ransomware use stand out beside the other vulnerability risk badges. */
.badge-ransomware { border-color: rgba(255, 112, 128, .4); color: #ffabb5; background: rgba(255, 75, 99, .14); }
.vuln-detail-content-grid { margin-top: 14px; }
.vuln-detail-wide { grid-column: 1 / -1; }
.vuln-detail-weaknesses { display: grid; gap: 8px; margin-top: 18px; }
.vuln-detail-weaknesses > small { color: #8493a9; font-size: 10px; font-weight: 600; letter-spacing: .6px; text-transform: uppercase; }
.vuln-detail-affected { display: grid; gap: 8px; margin-top: 16px; padding-left: 18px; font-size: 13px; line-height: 1.6; }
.vuln-detail-affected li span { display: block; color: #8797ad; }
.vuln-detail-vendor-meta { display: flex; flex-wrap: wrap; gap: 8px 18px; margin-top: 14px; color: #aab8ca; font-size: 12px; }
.vuln-detail-vendor-meta strong { color: #dce5f2; }
.vuln-detail-vendor-notes { margin: 12px 0 0; color: #9eacc0; font-size: 13px; line-height: 1.65; }
.vuln-detail-references { margin-top: 12px; font-size: 13px; line-height: 1.6; }
.vuln-detail-references a { color: #aab8ca; text-decoration: underline; text-decoration-color: rgba(170, 184, 202, .32); text-underline-offset: 3px; }
.vuln-detail-references a:hover { color: var(--cyan); }
.vuln-detail-next-steps { margin-top: 14px; }
.vuln-detail-next-steps .detail-next-steps-list { grid-template-columns: 1fr; }

@media (max-width: 767.98px) {
  .cert-detail-sections .cert-article-section { padding: 18px; }
  .vuln-detail-wide { grid-column: auto; }
}
.detail-next-steps { display: block; }
.detail-next-steps-heading > .eyebrow + p { margin: 15px 0 0; color: #aab8ca; font-size: 14px; line-height: 1.75; }
.detail-next-steps-list { display: grid; grid-template-columns: 1fr; gap: 11px; margin: 19px 0 0; padding-left: 20px; color: #b5c2d3; font-size: 13px; line-height: 1.6; }
.detail-next-steps-list li { padding-left: 3px; }
.vuln-result { display: grid; gap: 0; }
.vuln-next-steps { margin-top: 12px; padding: 18px 20px; }
.vuln-next-steps .detail-next-steps-list { margin-top: 15px; }
.vuln-action-context { margin-top: 12px !important; font-size: 12px !important; }
.org-workspace-menu { display: flex; align-items: flex-end; gap: 5px; margin: 0 0 18px; padding: 8px; overflow-x: auto; border: 1px solid var(--line); border-radius: 12px; background: rgba(8, 15, 27, .82); scrollbar-width: thin; }
.org-workspace-bar { display: flex; align-items: flex-start; gap: 10px; margin-bottom: 18px; }
.org-workspace-bar .org-workspace-menu { min-width: 0; flex: 1 1 auto; margin-bottom: 0; }
.org-dashboard-manage-link { flex: 0 0 auto; white-space: nowrap; }
.org-workspace-menu a { position: relative; top: 1px; flex: 1 0 auto; padding: 12px 17px; border: 1px solid transparent; border-bottom: 0; border-radius: 8px 8px 0 0; color: #aab8ca; text-align: center; white-space: nowrap; font-size: 12px; font-weight: 600; transition: color .18s ease, background .18s ease; }
.org-workspace-menu a:hover { color: var(--cyan); background: rgba(92, 225, 210, .05); text-decoration: none; }
.org-workspace-menu a.is-current { border-color: rgba(92, 225, 210, .22); border-bottom: 1px solid rgba(92, 225, 210, .22); border-radius: 8px; color: var(--cyan); background: #0d1625; box-shadow: none; text-decoration: none; }
.org-workspace-menu a.is-plan-locked { display: inline-flex; align-items: center; justify-content: center; gap: 7px; }
.org-plan-upgrade-badge { display: inline-flex; align-items: center; justify-content: center; min-width: 29px; height: 16px; padding: 0 5px; border: 1px solid rgba(255, 177, 66, .42); border-radius: 999px; color: #ffc36b; background: rgba(255, 177, 66, .12); font-size: 8px; font-weight: 800; letter-spacing: .45px; line-height: 1; }
.plan-upgrade-preview { margin: 0 0 24px; }
.plan-preview-panel { padding-bottom: 20px; }
.plan-preview-stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin: 16px 0; }
.plan-preview-stats .org-monitoring-card { min-width: 0; padding: 17px 18px; }
.plan-preview-stats small { display: block; color: #8393a9; font-size: 10px; font-weight: 700; letter-spacing: .7px; }
.plan-preview-stats strong { display: block; margin: 10px 0 3px; color: #e1e9f3; font: 600 26px 'Space Grotesk', sans-serif; }
.plan-preview-stats strong.plan-preview-alert-number { color: #ff9ca7; }
.plan-preview-stats span { color: #8291a6; font-size: 11px; }
.plan-preview-kpi-charts { display: grid; grid-template-columns: minmax(0, 1.6fr) minmax(240px, 1fr); gap: 14px; }
.plan-preview-kpi-charts .org-monthly-trend-panel { min-width: 0; }
.plan-preview-bars { display: flex; height: 155px; align-items: end; gap: 10px; margin: 16px 6px 4px; padding: 10px 10px 0; border-bottom: 1px solid rgba(151, 177, 211, .12); background: repeating-linear-gradient(to bottom, transparent 0, transparent 37px, rgba(151, 177, 211, .08) 38px, transparent 39px); }
.plan-preview-bars i { flex: 1 1 0; min-width: 7px; border-radius: 5px 5px 0 0; background: linear-gradient(180deg, rgba(184, 145, 255, .82), rgba(92, 225, 210, .42)); }
.plan-preview-status-list { display: grid; gap: 12px; margin-top: 21px; }
.plan-preview-status-list span { display: flex; align-items: center; gap: 9px; color: #b8c5d6; font-size: 12px; }
.plan-preview-status-list i { width: 9px; height: 9px; border-radius: 50%; }
.plan-preview-status-list i.status-open { background: #ff6b78; }.plan-preview-status-list i.status-in_progress { background: #ffb45f; }.plan-preview-status-list i.status-reopened { background: #912B2E; }
.plan-preview-status-list strong { margin-left: auto; color: #e1e9f3; }
@media (max-width: 720px) { .plan-preview-kpi-charts { grid-template-columns: 1fr; } }
@media (max-width: 560px) { .plan-preview-stats { grid-template-columns: 1fr; gap: 9px; }.plan-preview-stats .org-monitoring-card { padding: 13px 15px; }.plan-preview-stats strong { margin: 5px 0 2px; font-size: 22px; } }
.org-alert-summary { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-bottom: 16px; }
.org-alert-summary a { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 16px 18px; border: 1px solid var(--line); border-radius: 12px; color: #aab8ca; background: rgba(13, 22, 37, .82); font-size: 12px; }
.org-alert-summary a:hover { border-color: rgba(92, 225, 210, .3); text-decoration: none; }
.org-alert-summary strong { color: var(--cyan); font: 600 23px 'Space Grotesk', sans-serif; }
.org-monitoring-overview { margin-bottom: 18px; }
.org-monitoring-overview-heading { margin: 0 0 12px; }
.org-monitoring-overview-heading h2 { margin: 7px 0 0; font: 600 20px 'Space Grotesk', sans-serif; }
.org-monitoring-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.org-monitoring-card { min-width: 0; padding: 17px; border: 1px solid var(--line); border-radius: 13px; background: linear-gradient(145deg, rgba(16, 27, 44, .94), rgba(9, 16, 28, .9)); box-shadow: var(--shadow); }
.org-monitoring-card-heading, .org-monitoring-card-heading > div { display: flex; align-items: center; }
.org-monitoring-card-heading { justify-content: space-between; gap: 8px; }
.org-monitoring-card-heading > div { min-width: 0; gap: 10px; }
.org-monitoring-card-heading h3 { margin: 0; color: #dce5f2; font: 600 15px 'Space Grotesk', sans-serif; }
.org-monitoring-card-heading small { display: block; margin-top: 3px; color: #8797ad; font-size: 10px; }
.org-monitoring-card-heading .org-secondary-button { flex: 0 0 auto; padding: 7px 9px; }
.org-monitoring-icon { display: grid; width: 35px; height: 35px; flex: 0 0 auto; place-items: center; border: 1px solid rgba(92, 225, 210, .2); border-radius: 10px; color: var(--cyan); background: rgba(92, 225, 210, .07); font: 700 17px 'Space Grotesk', sans-serif; }
.org-monitoring-icon-emails { color: #92baff; border-color: rgba(119, 163, 255, .22); background: rgba(119, 163, 255, .08); }
.org-monitoring-icon-partners { color: #d0a7ff; border-color: rgba(182, 131, 255, .22); background: rgba(182, 131, 255, .08); }
.org-monitoring-card-stats { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 6px; margin: 15px 0 5px; }
.org-monitoring-card-stats > div { display: grid; gap: 3px; min-width: 0; }
.org-monitoring-card-stats strong { color: #dce5f2; font: 600 18px 'Space Grotesk', sans-serif; }
.org-monitoring-card-stats span { overflow: hidden; color: #8797ad; font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
/* Keep the global alert total readable beside the three category status charts. */
.org-total-alert-card { display: flex; flex-direction: column; }
.org-total-alert-content { display: grid; grid-template-columns: minmax(104px, .9fr) minmax(0, 1.1fr); align-items: center; gap: 8px; min-height: 170px; margin-top: 8px; }
.org-total-alert-donut { display: block; width: 100%; max-width: 148px; margin: 0 auto; overflow: visible; }
.org-alert-donut-track, .org-alert-donut-segment { fill: none; stroke-width: 15; transform: rotate(-90deg); transform-origin: 70px 70px; }
.org-alert-donut-track { stroke: rgba(151, 177, 211, .12); }
.org-alert-donut-segment { stroke-linecap: butt; }
.org-alert-donut-segment.is-new { stroke: #e35b70; }
.org-alert-donut-segment.is-reopened { stroke: #912B2E; }
.org-alert-donut-segment.is-progress { stroke: #d59648; }
.org-alert-donut-segment.is-resolved { stroke: #45a77e; }
.org-alert-donut-segment.is-accepted-risk { stroke: #9b70d8; }
.org-alert-donut-segment.is-not-affected { stroke: #5899d3; }
.org-total-alert-number { fill: #e0e8f2; font: 600 23px 'Space Grotesk', sans-serif; text-anchor: middle; }
.org-total-alert-caption { fill: #8797ad; font: 700 8px 'DM Sans', sans-serif; letter-spacing: 1px; text-anchor: middle; }
.org-total-alert-status-list { display: grid; gap: 6px; min-width: 0; margin: 0; padding: 0; list-style: none; }
.org-total-alert-status-list li { display: grid; grid-template-columns: 8px minmax(0, 1fr) auto; align-items: center; gap: 6px; color: #aab8ca; font-size: 9px; line-height: 1.3; }
.org-total-alert-status-list li strong { color: #dce5f2; font-size: 10px; }
.org-alert-total-dot { width: 7px; height: 7px; border-radius: 50%; background: #8291a7; }
.org-alert-total-dot.is-new { background: #e35b70; }
.org-alert-total-dot.is-reopened { background: #912B2E; }
.org-alert-total-dot.is-progress { background: #d59648; }
.org-alert-total-dot.is-resolved { background: #45a77e; }
.org-alert-total-dot.is-accepted-risk { background: #9b70d8; }
.org-alert-total-dot.is-not-affected { background: #5899d3; }
.org-products-heading-actions { display: inline-flex; align-items: center; gap: 9px; }
.org-products-heading-actions form { margin: 0; }
.org-products-heading-actions .org-secondary-button:disabled { opacity: .45; cursor: not-allowed; }
.org-products-refresh-all-form { flex: 0 0 auto; margin: 0; }
.org-products-table th.org-products-table-actions .org-products-refresh-all-form { display: inline-flex; align-items: center; justify-content: flex-end; vertical-align: middle; }
.org-products-refresh-pill { display: inline-flex; width: 38px; min-height: 38px; height: 38px; align-items: center; justify-content: center; padding: 0; border: 1px solid rgba(151, 177, 211, .16); border-radius: 999px; color: #8795a9; background: rgba(151, 177, 211, .045); cursor: pointer; transition: color .18s ease, background .18s ease, border-color .18s ease, box-shadow .18s ease; }
.org-products-refresh-pill svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.7; }
.org-products-refresh-pill:hover:not(:disabled) { color: #c4cfdd; border-color: rgba(151, 177, 211, .34); background: rgba(151, 177, 211, .1); }
.org-products-refresh-pill:disabled { opacity: .4; cursor: not-allowed; }
.org-products-refresh-pill.is-refreshing { opacity: 1; color: #55e3a4; border-color: rgba(65, 210, 155, .58); background: rgba(35, 157, 105, .14); box-shadow: 0 0 0 0 rgba(65, 210, 155, .32); cursor: wait; animation: org-refresh-glow 1.25s ease-in-out infinite; }
.org-products-refresh-pill.is-refreshing svg { filter: drop-shadow(0 0 4px rgba(65, 210, 155, .68)); animation: org-refresh-spin .8s linear infinite; }
.org-products-refresh-pill:focus-visible { outline: 2px solid var(--cyan); outline-offset: 2px; }
@media (prefers-reduced-motion: reduce) { .org-products-refresh-pill.is-refreshing, .org-products-refresh-pill.is-refreshing svg { animation-duration: 1.8s; } }
.org-products-actions-heading { cursor: default; }
.org-products-toolbar { min-width: 0; flex: 1 1 auto; justify-content: flex-end; flex-wrap: wrap; }
.org-products-toolbar > form { margin: 0; }
.org-products-search-row { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; margin: 0 0 14px; padding: 9px 12px; border: 1px solid var(--line); border-radius: 10px; background: rgba(20, 31, 49, .72); }
.org-products-inventory-search { width: auto; min-width: 0; max-width: none; flex: 1 1 400px; align-items: center; gap: 9px; margin: 0; padding: 4px 5px 4px 11px; border-color: rgba(151, 177, 211, .14); border-radius: 8px; background: rgba(5, 11, 20, .36); }
.org-products-inventory-search:focus-within { border-color: rgba(92, 225, 210, .48); box-shadow: 0 0 0 2px rgba(92, 225, 210, .06); }
.org-products-search-icon { flex: 0 0 17px; width: 17px; height: 17px; fill: none; stroke: #8494aa; stroke-linecap: round; stroke-width: 1.7; }
.org-products-inventory-search input { padding: 8px 4px; font-size: 13px; }
.org-products-inventory-search input::-webkit-search-cancel-button { display: none; }
.org-products-inventory-search .org-products-search-clear { width: 28px; height: 28px; padding: 0; border: 0; border-radius: 6px; color: #8797ad; background: transparent; font-size: 20px; font-weight: 400; line-height: 1; }
.org-products-inventory-search .org-products-search-clear:hover { color: #dce5f2; background: rgba(151, 177, 211, .1); }
.org-products-inventory-search .org-products-search-clear[hidden] { display: none; }
.org-products-inventory-search .org-products-search-submit { display: inline-flex; height: 38px; min-height: 38px; align-items: center; justify-content: center; padding: 0 15px; border: 1px solid rgba(92, 225, 210, .25); border-radius: 7px; color: #07131c; background: var(--cyan); font-size: 11px; }
.org-products-inventory-search .org-products-search-submit:hover { border-color: rgba(92, 225, 210, .55); background: #79eddf; }
.org-products-search-add { width: 38px; min-width: 38px; height: 38px; min-height: 38px; flex: 0 0 38px; justify-content: center; padding: 0; border-radius: 8px; }
.org-products-search-add svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-linecap: round; stroke-width: 2; }
.org-product-add-page > h2 { margin: 9px 0 0; color: #dce5f2; font: 600 20px 'Space Grotesk', sans-serif; }
.org-product-add-page > .org-muted { margin: 7px 0 18px; max-width: 760px; }
.org-product-add-layout { display: grid; width: 100%; max-width: none; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: stretch; gap: 16px; margin-bottom: 16px; }
.org-product-add-layout > .org-panel { box-sizing: border-box; width: 100%; min-width: 0; height: 100%; margin: 0; }
.org-product-add-import > h2 { margin: 9px 0 0; color: #dce5f2; font: 600 20px 'Space Grotesk', sans-serif; }
.org-product-add-import > .org-muted { margin: 7px 0 12px; }
.org-product-add-import .org-csv-form { align-items: flex-end; }
.org-product-add-import .org-script-downloads > span { flex-basis: 100%; }
.org-product-add-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 13px; }
.org-product-add-grid > label { display: grid; min-width: 0; gap: 6px; color: #9baac0; font-size: 11px; }
.org-product-add-grid > label > input { box-sizing: border-box; width: 100%; min-width: 0; padding: 9px 10px; border: 1px solid rgba(151, 177, 211, .17); border-radius: 8px; color: #dce5f2; background: rgba(5, 11, 20, .55); font-size: 13px; }
.org-product-add-grid > label > input:focus { border-color: rgba(92, 225, 210, .55); outline: none; box-shadow: 0 0 0 3px rgba(92, 225, 210, .08); }
.org-product-add-grid > label > textarea { box-sizing: border-box; width: 100%; min-width: 0; min-height: 86px; padding: 9px 10px; border: 1px solid rgba(151, 177, 211, .17); border-radius: 8px; color: #dce5f2; background: rgba(5, 11, 20, .55); font: 13px 'DM Sans', sans-serif; resize: vertical; }
.org-product-add-grid > label > textarea:focus { border-color: rgba(92, 225, 210, .55); outline: none; box-shadow: 0 0 0 3px rgba(92, 225, 210, .08); }
.org-add-aliases-field { grid-column: 1 / -1; }
.org-product-add-notice { margin: 13px 0; padding: 11px 13px; border: 1px solid rgba(255, 183, 101, .2); border-radius: 9px; color: #d0aa7a; background: rgba(255, 183, 101, .05); font-size: 12px; }
.org-product-add-notice a { margin-left: 5px; color: var(--cyan); font-weight: 700; }
.org-product-add-form .org-item-edit-actions { align-items: center; margin-top: 7px; }
.org-product-add-form .org-item-edit-actions > .btn, .org-product-add-form .org-item-edit-actions > .org-secondary-button { box-sizing: border-box; min-height: 38px; }
.org-product-add-import .org-csv-form button { box-sizing: border-box; min-height: 38px; }
.org-status-chart { display: flex; height: 190px; align-items: stretch; justify-content: space-around; gap: 10px; margin-top: 8px; padding: 10px 7px 0; border-top: 1px solid rgba(151, 177, 211, .1); }
.org-status-chart-column { display: flex; min-width: 0; flex: 1 1 0; flex-direction: column; align-items: center; gap: 4px; }
.org-status-chart-track { display: flex; width: min(30px, 70%); height: 145px; align-items: flex-end; overflow: hidden; border-radius: 5px 5px 2px 2px; background: rgba(151, 177, 211, .07); }
.org-status-chart-track span { display: block; width: 100%; min-height: 0; border-radius: 5px 5px 1px 1px; transition: height .35s ease; }
.org-status-chart-track .is-new { background: linear-gradient(180deg, #ff8493, #b83e52); box-shadow: 0 0 14px rgba(255, 105, 125, .19); }
.org-status-chart-track .is-reopened { background: #912B2E; box-shadow: 0 0 14px rgba(145, 43, 46, .22); }
.org-status-chart-track .is-progress { background: linear-gradient(180deg, #ffd28c, #c17a2f); box-shadow: 0 0 14px rgba(240, 163, 76, .15); }
.org-status-chart-track .is-resolved { background: linear-gradient(180deg, #7ce0b0, #328b69); box-shadow: 0 0 14px rgba(81, 201, 152, .13); }
.org-status-chart-track .is-accepted-risk { background: linear-gradient(180deg, #c49bff, #7650a8); box-shadow: 0 0 14px rgba(160, 115, 220, .16); }
.org-status-chart-track .is-not-affected { background: linear-gradient(180deg, #79c5ff, #3b77b6); box-shadow: 0 0 14px rgba(91, 164, 228, .15); }
.org-status-chart-column small { overflow: hidden; max-width: 100%; color: #92a0b6; font: 500 10px/1.4 'DM Sans', sans-serif; text-overflow: ellipsis; white-space: nowrap; }
.org-status-chart-column strong { color: #dce5f2; font: 600 12px/1.4 'DM Sans', sans-serif; }
.org-status-chart-title { margin: 8px 0 0; color: #aab8ca; font: 600 11px/1.5 'DM Sans', sans-serif; letter-spacing: .2px; }
/* Keep the asset comparison visually aligned with the dashboard's other chart panels. */
.org-dashboard-chart-row { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); align-items: stretch; gap: 12px; margin-top: 12px; }
.org-dashboard-chart-row > article { min-width: 0; margin-top: 0; }
.org-dashboard-chart-row > article { display: flex; flex-direction: column; }
.org-dashboard-chart-row > article > .org-monthly-trend-heading { height: 72px; min-height: 72px; flex: 0 0 72px; margin-bottom: 10px; }
.org-dashboard-chart-row > article > .org-asset-alert-chart { min-height: 180px; grid-template-rows: repeat(5, minmax(0, 1fr)); gap: 0; }
.org-dashboard-chart-row .org-asset-alert-row { min-height: 0; }
.org-dashboard-chart-row .org-top-alert-empty { grid-row: 1 / -1; align-self: center; }
.org-dashboard-chart-row > article > .org-monthly-trend-scroll { display: flex; height: 180px; flex: 0 0 180px; align-items: stretch; }
.org-dashboard-chart-row .org-monthly-trend-chart { width: 100%; min-width: 0; height: 180px; flex: 1 1 auto; }
.org-monthly-trend-panel { grid-column: auto; }
.org-asset-alert-panel { padding: 17px; border: 1px solid var(--line); border-radius: 13px; background: linear-gradient(145deg, rgba(16, 27, 44, .94), rgba(9, 16, 28, .9)); box-shadow: var(--shadow); }
.org-asset-alert-panel .org-monthly-trend-heading { margin-bottom: 10px; }
.org-asset-alert-panel h3 { margin: 0; color: #dce5f2; font: 600 15px 'Space Grotesk', sans-serif; }
.org-asset-alert-panel p { margin: 5px 0 0; color: #92a0b6; font: 400 12px/1.5 'DM Sans', sans-serif; }
.org-asset-alert-chart { display: grid; gap: 8px; }
.org-asset-alert-row { display: grid; grid-template-columns: 20px minmax(105px, 175px) minmax(0, 1fr) 30px; align-items: center; gap: 8px; }
.org-asset-alert-rank { color: #8797ad; font: 600 10px/1.4 'DM Sans', sans-serif; text-align: center; }
.org-asset-alert-item { display: grid; min-width: 0; gap: 1px; }
.org-asset-alert-label { display: block; overflow: hidden; color: #aab8ca; font: 500 11px/1.35 'DM Sans', sans-serif; text-overflow: ellipsis; white-space: nowrap; }
.org-asset-alert-label:hover { color: var(--cyan); }
.org-asset-alert-item small { overflow: hidden; color: #73839a; font: 400 9px/1.3 'DM Sans', sans-serif; text-overflow: ellipsis; white-space: nowrap; }
.org-asset-alert-track { height: 8px; overflow: hidden; border-radius: 999px; background: rgba(151, 177, 211, .09); }
.org-asset-alert-track span { display: block; height: 100%; min-width: 0; border-radius: inherit; transition: width .3s ease; }
.org-asset-alert-track .is-products { background: linear-gradient(90deg, #36b8ab, #65ddd0); }
.org-asset-alert-track .is-emails { background: linear-gradient(90deg, #5e89e8, #92baff); }
.org-asset-alert-track .is-partners { background: linear-gradient(90deg, #9668cf, #c49bff); }
.org-asset-alert-track .is-devices { background: linear-gradient(90deg, #d68a45, #ffc477); }
.org-asset-alert-row strong { color: #dce5f2; font: 600 12px/1.4 'DM Sans', sans-serif; text-align: right; }
.org-device-alert-panel { margin-top: 12px; }
.org-top-alert-empty { margin: 0; padding: 12px 0 2px; color: #92a0b6; font-size: 12px; }
.org-monthly-trend-panel { margin-top: 12px; padding: 17px; border: 1px solid var(--line); border-radius: 13px; background: linear-gradient(145deg, rgba(16, 27, 44, .94), rgba(9, 16, 28, .9)); box-shadow: var(--shadow); }
.org-monthly-trend-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 14px; margin-bottom: 12px; }
.org-monthly-trend-heading h3 { margin: 0; color: #dce5f2; font: 600 15px 'Space Grotesk', sans-serif; }
.org-monthly-trend-heading p { margin: 5px 0 0; color: #92a0b6; font: 400 12px/1.5 'DM Sans', sans-serif; }
.org-monthly-trend-legend { display: flex; flex-wrap: wrap; gap: 12px; color: #aab8ca; font: 500 11px/1.5 'DM Sans', sans-serif; }
.org-monthly-trend-legend span { display: inline-flex; align-items: center; gap: 6px; }
.org-monthly-trend-legend i { width: 8px; height: 8px; border-radius: 2px; }
.org-monthly-trend-legend .is-discovered { background: #b987ff; }
.org-monthly-trend-legend .is-closed { background: #57cbb9; }
.org-monthly-trend-legend .is-plan-individual { background: #79c5ff; }
.org-monthly-trend-legend .is-plan-pro { background: #7ce0b0; }
.org-monthly-trend-legend .is-plan-enterprise { background: #c49bff; }
.org-monthly-trend-legend .is-plan-custom { background: #ffd28c; }
.org-monthly-trend-scroll { overflow-x: auto; }
.org-monthly-trend-chart { display: block; width: 100%; min-width: 0; height: 180px; overflow: visible; padding-top: 8px; border-top: 1px solid rgba(151, 177, 211, .1); }
.org-monthly-trend-grid line { stroke: rgba(151, 177, 211, .16); stroke-width: 1; }
.org-monthly-trend-grid text, .org-monthly-trend-month-label { fill: #92a0b6; font: 500 11px 'DM Sans', sans-serif; }
.org-monthly-trend-grid text { text-anchor: end; }
.org-monthly-trend-month-label { font-size: 10px; }
.org-monthly-trend-chart polyline { fill: none; stroke-width: 3; stroke-linejoin: round; stroke-linecap: round; }
.org-monthly-trend-chart polyline.is-discovered { stroke: #a777ee; }
.org-monthly-trend-chart polyline.is-closed { stroke: #36b8ab; }
.org-monthly-trend-chart polyline.is-plan-individual { stroke: #79c5ff; }
.org-monthly-trend-chart polyline.is-plan-pro { stroke: #7ce0b0; }
.org-monthly-trend-chart polyline.is-plan-enterprise { stroke: #c49bff; }
.org-monthly-trend-chart polyline.is-plan-custom { stroke: #ffd28c; }
.org-monthly-trend-chart circle.is-discovered { fill: #a777ee; stroke: #211932; stroke-width: 2; }
.org-monthly-trend-chart circle.is-closed { fill: #36b8ab; stroke: #0c2830; stroke-width: 2; }
.org-monthly-trend-chart circle.is-plan-individual { fill: #79c5ff; stroke: #10263a; stroke-width: 2; }
.org-monthly-trend-chart circle.is-plan-pro { fill: #7ce0b0; stroke: #153a2b; stroke-width: 2; }
.org-monthly-trend-chart circle.is-plan-enterprise { fill: #c49bff; stroke: #2a1d3d; stroke-width: 2; }
.org-monthly-trend-chart circle.is-plan-custom { fill: #ffd28c; stroke: #3e2c17; stroke-width: 2; }
.org-alert-pagination { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin-top: 12px; padding-top: 11px; border-top: 1px solid rgba(151, 177, 211, .1); color: #8594a9; font-size: 11px; }
.org-alert-pagination > div { display: flex; gap: 8px; }
.org-alert-status-form { display: grid; flex: 0 0 190px; gap: 7px; }
.org-alert-status-form select { box-sizing: border-box; width: 100%; height: 34px; padding: 0 11px; border: 1px solid rgba(151, 177, 211, .17); border-radius: 7px; color: #dce5f2; background: #0d1625; font: 700 11px 'DM Sans', sans-serif; }
/* Keep workflow colors on the selector in item detail pages; status badges stay in overview. */
.org-alert-status-form select.status-open { color: #ffbac2; border-color: rgba(255, 105, 125, .5); background-color: rgba(129, 43, 58, .45); }
.org-alert-status-form select.status-reopened { color: #fff; border-color: #912B2E; background-color: #912B2E; }
.org-alert-status-form select.status-in_progress { color: #ffdb9f; border-color: rgba(240, 163, 76, .5); background-color: rgba(116, 69, 22, .45); }
.org-alert-status-form select.status-resolved { color: #a9dfc7; border-color: rgba(81, 201, 152, .38); background-color: rgba(24, 87, 63, .35); }
.org-alert-status-form select.status-accepted_risk { color: #e7d4ff; border-color: rgba(185, 135, 255, .5); background-color: rgba(87, 50, 127, .42); }
.org-alert-status-form select.status-not_affected { color: #d8edff; border-color: rgba(97, 170, 255, .5); background-color: rgba(36, 75, 120, .42); }
.org-alert-status-form select option[value="open"] { color: #ffbac2; background: #812b3a; }
.org-alert-status-form select option[value="reopened"] { color: #fff; background: #912B2E; }
.org-alert-status-form select option[value="in_progress"] { color: #ffdb9f; background: #744516; }
.org-alert-status-form select option[value="resolved"] { color: #a9dfc7; background: #18573f; }
.org-alert-status-form select option[value="accepted_risk"] { color: #e7d4ff; background: #57327f; }
.org-alert-status-form select option[value="not_affected"] { color: #d8edff; background: #244b78; }
.org-alert-status-form .org-secondary-button { box-sizing: border-box; width: 100%; height: 34px; padding: 0 11px; font: 700 11px 'DM Sans', sans-serif; }
.org-alert-form-actions { display: flex; align-items: center; gap: 7px; }
.org-alert-form-actions { width: 100%; }
.org-alert-form-actions > button:first-child { flex: 1 1 auto; min-width: 0; }
.org-subheading { margin: 24px 0 12px; font: 600 16px 'Space Grotesk', sans-serif; }
.org-watch-item { display: grid; gap: 5px; min-width: 0; flex: 1 1 auto; }
.org-watch-status { display: grid; gap: 3px; margin-top: 5px; padding: 8px 10px; border: 1px solid rgba(151, 177, 211, .1); border-radius: 8px; background: rgba(6, 12, 21, .3); }
.org-watch-status .has-findings { color: #ffabb5; font-size: 11px; }
.org-watch-status .is-clear { color: #80e2b2; }
.org-watch-status .is-warning { color: #f2bd7f; }
.org-watch-actions { display: flex; align-items: center; flex: 0 0 auto; gap: 8px; }
.org-watch-actions form { flex: 0 0 auto; }
.org-member-actions { justify-content: flex-end; gap: 10px; }
.org-member-role-form { display: flex; align-items: center; gap: 7px; margin: 0; }
.org-member-role-form .org-role-select { width: 150px; }
.org-member-role-form .org-secondary-button { min-height: 34px; padding: 0 11px; }
.org-member-actions > form:last-child { margin: 0; }
.org-member-account-edit { position: relative; flex: 0 0 auto; }
.org-member-account-edit > summary { min-height: 31px; padding: 7px 10px; border: 1px solid rgba(151, 177, 211, .2); border-radius: 7px; color: #c8d4e4; background: rgba(151, 177, 211, .05); font-size: 11px; font-weight: 700; white-space: nowrap; cursor: pointer; list-style: none; }
.org-member-account-edit > summary::-webkit-details-marker { display: none; }
.org-member-account-edit[open] > summary { border-color: rgba(92, 225, 210, .38); color: var(--cyan); }
.org-member-account-edit > .org-form { position: absolute; top: calc(100% + 7px); right: 0; z-index: 10; width: 280px; padding: 14px; border: 1px solid var(--line); border-radius: 10px; background: #111a2b; box-shadow: var(--shadow); }
.org-member-account-edit .org-form label { gap: 4px; }
.org-member-account-edit .org-form input { min-height: 36px; padding: 7px 9px; }
.org-member-account-edit .org-form .org-secondary-button { justify-self: start; }
.org-product-list-row { display: flex; align-items: center; }
/* Keep the product table aligned with the vulnerability database table. */
.org-products-table-wrap { overflow: visible; }
.org-products-table-wrap .breach-table-scroll { overflow: visible; }
.org-products-table { min-width: 1080px; table-layout: fixed; }
/* Keep product identity, provider, alert count, and check date easy to scan. */
.org-products-table th:nth-child(1), .org-products-table td:nth-child(1) { width: 26%; }
.org-products-table th:nth-child(2), .org-products-table td:nth-child(2) { width: 13%; }
.org-products-table th:nth-child(3), .org-products-table td:nth-child(3) { width: 18%; }
.org-products-table th:nth-child(4), .org-products-table td:nth-child(4) { width: 22%; }
.org-products-table th:nth-child(5), .org-products-table td:nth-child(5) { width: 15%; }
.org-products-table th:last-child, .org-products-table td:last-child { width: 64px; text-align: right; }
.org-products-table td { overflow-wrap: anywhere; }
.org-products-clickable-row { cursor: pointer; }
.org-products-clickable-row:focus-visible { outline: 2px solid rgba(92, 225, 210, .7); outline-offset: -2px; }
.org-clickable-inventory-row { cursor: pointer; }
.org-clickable-inventory-row:focus-visible { outline: 2px solid rgba(92, 225, 210, .7); outline-offset: -2px; }
/* Keep the device inventory aligned with the product table while fitting its five fields. */
.org-products-table.org-devices-table { min-width: 980px; }
.org-devices-table th:nth-child(1), .org-devices-table td:nth-child(1) { width: 25%; }
.org-devices-table th:nth-child(2), .org-devices-table td:nth-child(2) { width: 25%; }
.org-devices-table th:nth-child(3), .org-devices-table td:nth-child(3) { width: 13%; }
.org-devices-table th:nth-child(4), .org-devices-table td:nth-child(4) { width: 17%; }
.org-devices-table th:last-child, .org-devices-table td:last-child { width: 20%; text-align: left; }
.org-products-table.org-partner-table { min-width: 1080px; }
.org-partner-table th:nth-child(1), .org-partner-table td:nth-child(1) { width: 22%; }
.org-partner-table th:nth-child(2), .org-partner-table td:nth-child(2) { width: 25%; }
.org-partner-table th:nth-child(3), .org-partner-table td:nth-child(3) { width: 16%; }
.org-partner-table th:nth-child(4), .org-partner-table td:nth-child(4) { width: 17%; }
.org-partner-table th:nth-child(5), .org-partner-table td:nth-child(5) { width: 14%; }
.org-partner-table th:last-child, .org-partner-table td:last-child { width: 64px; text-align: right; }
.org-device-product-count { color: #bac7d9; font: 500 13px/1.5 'DM Sans', sans-serif; }
.soc-hero { margin-bottom: 24px; }
.soc-organizations-section > .section-heading { margin-bottom: 12px; }
.soc-organizations-table { min-width: 1120px; }
.soc-organizations-table th:nth-child(1), .soc-organizations-table td:nth-child(1) { width: 24%; }
.soc-organizations-table th:nth-child(2), .soc-organizations-table td:nth-child(2) { width: 14%; }
.soc-organizations-table th:nth-child(3), .soc-organizations-table td:nth-child(3) { width: 12%; }
.soc-organizations-table th:nth-child(4), .soc-organizations-table td:nth-child(4) { width: 12%; }
.soc-organizations-table th:nth-child(5), .soc-organizations-table td:nth-child(5) { width: 12%; }
.soc-organizations-table th:nth-child(6), .soc-organizations-table td:nth-child(6) { width: 13%; }
.soc-organizations-table th:nth-child(7), .soc-organizations-table td:nth-child(7) { width: 13%; text-align: left; }
.soc-organization-count { color: #c5d1e1; font: 600 13px/1.5 'DM Sans', sans-serif; }
.soc-organization-breakdown { display: block; margin-top: 4px; color: #8494aa; font-size: 13px; line-height: 1.5; }
.soc-organization-alert-count { color: #8b9ab0; font: 600 13px/1.5 'DM Sans', sans-serif; }
.soc-organization-alert-count.has-active-alerts { color: #ff929d; }
.soc-organization-create-panel[hidden] { display: none; }
.soc-organization-create-panel { margin-top: 0; }
.soc-organization-create-panel .org-form { max-width: 640px; }
.soc-organizations-toolbar .org-products-search-add { border: 1px solid rgba(92, 225, 210, .28); color: var(--cyan); background: rgba(92, 225, 210, .06); cursor: pointer; }
.soc-organizations-toolbar .org-products-search-add:hover { border-color: rgba(92, 225, 210, .55); background: rgba(92, 225, 210, .12); }
@media (max-width: 700px) {
  .soc-organizations-table { min-width: 1120px; }
}

/* Platform administration: keep account and organization management separate from SOC workflows. */
.platform-admin-hero { margin-bottom: 24px; }
.platform-admin-workspace-bar { margin-bottom: 18px; }
.platform-admin-workspace-menu { -webkit-overflow-scrolling: touch; }
.platform-admin-workspace-menu a > .platform-admin-menu-count { display: inline-flex; align-items: center; justify-content: center; min-width: 20px; height: 18px; margin-left: 2px; padding: 0 5px; border: 1px solid rgba(151, 177, 211, .18); border-radius: 999px; color: #aab8ca; background: rgba(151, 177, 211, .07); font-size: 10px; font-weight: 700; line-height: 1; }
.platform-admin-workspace-menu a > .platform-admin-menu-count.has-pending { border-color: rgba(255, 164, 92, .4); color: #ffc184; background: rgba(255, 164, 92, .12); }
.organization-admin-workspace-menu { -webkit-overflow-scrolling: touch; }
.organization-admin-workspace-menu a > .organization-admin-menu-count { display: inline-flex; align-items: center; justify-content: center; min-width: 20px; height: 18px; margin-left: 2px; padding: 0 5px; border: 1px solid rgba(151, 177, 211, .18); border-radius: 999px; color: #aab8ca; background: rgba(151, 177, 211, .07); font-size: 10px; font-weight: 700; line-height: 1; }
.organization-admin-hero { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-bottom: 24px; }
.organization-admin-hero > div { min-width: 0; }
.organization-admin-hero > div > p { max-width: 700px; margin: 0; color: var(--muted); font-size: 14px; }
.organization-admin-hero .page-back-button { flex: 0 0 auto; }
.platform-admin-section, .platform-admin-requests { margin-top: 18px; }
.admin-overview-stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.admin-overview-stats > .org-monitoring-card { min-width: 0; }
.admin-monitoring-overview { margin-top: 14px; }
.org-monitoring-grid.admin-platform-kpi-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.admin-active-users-card { display: flex; flex-direction: column; }
.admin-active-users-content { min-height: 170px; }
.admin-online-icon { color: #7ce0b0; border-color: rgba(81, 201, 152, .3); background: rgba(81, 201, 152, .09); font-size: 11px; }
.admin-active-users-content .org-alert-donut-segment.is-account-active { stroke: #55c697; }
.admin-active-users-content .org-alert-donut-segment.is-account-inactive { stroke: rgba(151, 177, 211, .36); }
.admin-active-users-content .org-alert-total-dot.is-account-active { background: #55c697; }
.admin-active-users-content .org-alert-total-dot.is-account-inactive { background: rgba(151, 177, 211, .55); }
.org-dashboard-chart-row.platform-admin-chart-row { grid-template-columns: minmax(0, 1.65fr) minmax(270px, 1fr); }
.admin-pending-request-chart { display: grid; gap: 10px; margin: 2px 0 13px; padding: 13px 15px; border: 1px solid rgba(151, 177, 211, .12); border-radius: 10px; background: rgba(6, 12, 21, .24); }
.admin-pending-request-chart h3 { margin: 0; color: #aab8ca; font: 600 12px 'Space Grotesk', sans-serif; }
.admin-pending-request-row { display: grid; grid-template-columns: minmax(120px, 190px) minmax(0, 1fr) 28px; align-items: center; gap: 10px; color: #aab8ca; font-size: 11px; }
.admin-pending-request-row > span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.admin-pending-request-row > strong { color: #dce5f2; text-align: right; }
.admin-pending-request-track { height: 8px; overflow: hidden; border-radius: 999px; background: rgba(151, 177, 211, .1); }
.admin-pending-request-track i { display: block; height: 100%; border-radius: inherit; }
.admin-pending-request-track .is-creation-request { background: linear-gradient(90deg, #a777ee, #c49bff); }
.admin-pending-request-track .is-plan-request { background: linear-gradient(90deg, #d68a45, #ffd28c); }
.org-dashboard-chart-row.platform-admin-chart-row > .org-monthly-trend-panel { grid-column: auto; }
.org-status-chart-track .is-plan-individual, .org-status-chart-track .is-role-personal { background: linear-gradient(180deg, #79c5ff, #3b77b6); box-shadow: 0 0 14px rgba(91, 164, 228, .15); }
.org-status-chart-track .is-plan-pro, .org-status-chart-track .is-role-analyst { background: linear-gradient(180deg, #7ce0b0, #328b69); box-shadow: 0 0 14px rgba(81, 201, 152, .13); }
.org-status-chart-track .is-plan-enterprise, .org-status-chart-track .is-role-admin, .org-status-chart-track .is-workspace-company { background: linear-gradient(180deg, #c49bff, #7650a8); box-shadow: 0 0 14px rgba(160, 115, 220, .16); }
.org-status-chart-track .is-plan-custom, .org-status-chart-track .is-role-superadmin, .org-status-chart-track .is-role-staff { background: linear-gradient(180deg, #ffd28c, #c17a2f); box-shadow: 0 0 14px rgba(240, 163, 76, .15); }
.org-status-chart-track .is-workspace-personal, .org-status-chart-track .is-role-readonly { background: linear-gradient(180deg, #79c5ff, #3b77b6); box-shadow: 0 0 14px rgba(91, 164, 228, .15); }
.org-status-chart-track .is-role-unassigned { background: linear-gradient(180deg, #ff8493, #b83e52); box-shadow: 0 0 14px rgba(255, 105, 125, .19); }
.org-alert-donut-segment.is-account-active { stroke: #45a77e; }
.org-alert-donut-segment.is-account-inactive { stroke: #e35b70; }
.org-alert-total-dot.is-account-active { background: #45a77e; }
.org-alert-total-dot.is-account-inactive { background: #e35b70; }
.admin-pending-stat { border-color: rgba(255, 164, 92, .3); }
.admin-pending-stat strong { color: #ffc184; }
.admin-priority-panel { margin-top: 18px; }
.admin-priority-panel .org-panel-heading { align-items: center; }
.admin-priority-list li { border-left: 2px solid rgba(255, 164, 92, .52); padding-left: 14px; }
.admin-pending-badge { display: inline-flex; flex: 0 0 auto; align-items: center; justify-content: center; padding: 5px 9px; border: 1px solid rgba(255, 164, 92, .35); border-radius: 999px; color: #ffc184; background: rgba(255, 164, 92, .1); font-size: 10px; font-weight: 700; }
.platform-admin-empty { margin-top: 18px; }
.organization-plan-panel, .organization-pending-plan-panel { margin-top: 18px; }
.organization-plan-usage-table-wrap { margin-top: 16px; }
.breach-feed-table.app-responsive-table.organization-plan-usage-table { min-width: 640px; }
.organization-plan-usage-table th:nth-child(1), .organization-plan-usage-table td:nth-child(1) { width: 36%; }
.organization-plan-usage-table th:nth-child(2), .organization-plan-usage-table td:nth-child(2) { width: 18%; }
.organization-plan-usage-table th:nth-child(3), .organization-plan-usage-table td:nth-child(3) { width: 21%; }
.organization-plan-usage-table th:nth-child(4), .organization-plan-usage-table td:nth-child(4) { width: 25%; }
.organization-plan-usage-table td:first-child { min-width: 0; }
.organization-plan-usage-status.is-full { border: 1px solid rgba(255, 126, 138, .3); color: #ff9eaa; background: rgba(255, 126, 138, .09); }
.organization-plan-usage-status.is-good { border: 1px solid rgba(91, 216, 159, .2); }
.organization-plan-note { margin: 16px 0 0; }
.organization-plan-request-form { max-width: 820px; margin-top: 20px; }
.organization-custom-plan-limits { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.organization-custom-plan-limits[hidden] { display: none; }
.organization-custom-plan-limits label { min-width: 0; }
.organization-pending-plan-panel > .org-compact-list { margin-top: 0; }
.platform-admin-toolbar { margin-top: 0; }
.platform-admin-form { max-width: 760px; }
.platform-admin-organizations-table { min-width: 760px; }
.platform-admin-organizations-table th:nth-child(1), .platform-admin-organizations-table td:nth-child(1) { width: 42%; }
.platform-admin-organizations-table th:nth-child(2), .platform-admin-organizations-table td:nth-child(2) { width: 24%; }
.platform-admin-organizations-table th:nth-child(3), .platform-admin-organizations-table td:nth-child(3) { width: 18%; }
.platform-admin-organizations-table th:nth-child(4), .platform-admin-organizations-table td:nth-child(4) { width: 16%; }
.platform-admin-users-table { min-width: 1080px; }
.platform-admin-users-table th:nth-child(1), .platform-admin-users-table td:nth-child(1) { width: 14%; }
.platform-admin-users-table th:nth-child(2), .platform-admin-users-table td:nth-child(2) { width: 11%; }
.platform-admin-users-table th:nth-child(3), .platform-admin-users-table td:nth-child(3) { width: 11%; }
.platform-admin-users-table th:nth-child(4), .platform-admin-users-table td:nth-child(4) { width: 22%; }
.platform-admin-users-table th:nth-child(5), .platform-admin-users-table td:nth-child(5) { width: 16%; }
.platform-admin-users-table th:nth-child(6), .platform-admin-users-table td:nth-child(6) { width: 17%; }
.platform-admin-users-table th:nth-child(7), .platform-admin-users-table td:nth-child(7) { width: 9%; }
.platform-admin-create-hero { display: flex; align-items: center; justify-content: space-between; gap: 22px; }
.platform-admin-create-hero > div { min-width: 0; }
.platform-admin-create-hero > div > p { max-width: 700px; margin: 0; color: var(--muted); font-size: 14px; }
.platform-admin-create-hero .page-back-button { flex: 0 0 auto; }
.platform-admin-create-panel { max-width: 900px; }
.platform-admin-create-form { max-width: 720px; }
.platform-admin-create-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; margin-top: 7px; }
.platform-user-heading { margin-bottom: 20px; }
.platform-user-edit-panel, .platform-user-access-panel { margin-top: 18px; }
.platform-user-edit-form { max-width: 720px; }
.platform-user-profile-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; }
.platform-user-profile-summary .profile-summary-heading { flex-wrap: wrap; }
.platform-user-state { margin-left: auto; }
.platform-user-state.is-disabled { border-color: rgba(255, 126, 138, .35); color: #ff9eaa; background: rgba(255, 126, 138, .08); }
.platform-user-recovery-codes { margin-top: 18px; padding: 12px 14px; border: 1px solid rgba(151, 177, 211, .16); border-radius: 10px; background: rgba(6, 12, 21, .28); }
.platform-user-recovery-codes > summary { color: #dbe5f1; cursor: pointer; font-size: 13px; font-weight: 600; }
.platform-user-recovery-codes[open] > summary { margin-bottom: 12px; }
.platform-user-recovery-codes .profile-edit-intro { margin: 0 0 10px; font-size: 12px; }
.platform-user-recovery-code-list { display: grid; grid-template-columns: repeat(auto-fit, minmax(145px, 1fr)); gap: 7px; margin: 0; padding: 0; list-style: none; }
.platform-user-recovery-code-list li { padding: 8px 10px; border: 1px solid rgba(151, 177, 211, .12); border-radius: 7px; background: rgba(5, 10, 19, .45); }
.platform-user-recovery-code-list code { color: #d7e2f0; font-size: 13px; letter-spacing: .04em; }
.platform-user-edit-form { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.platform-user-edit-form > label:has(input[type="checkbox"]) { display: flex; align-items: center; gap: 10px; }
.platform-user-edit-form input[type="checkbox"] { width: 18px; height: 18px; }
.platform-user-edit-actions { display: flex; grid-column: 1 / -1; align-items: center; gap: 10px; margin-top: 8px; }
.platform-user-access-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; }
.platform-user-access-heading h2 { margin-bottom: 6px; }
.platform-user-access-heading .profile-edit-intro { margin-bottom: 12px; }
.platform-user-workspace-row { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 14px 0; border-bottom: 1px solid rgba(151, 173, 200, .12); }
.platform-user-workspace-row > span { display: grid; gap: 4px; }
.platform-user-workspace-row small { color: var(--muted, #96a4b8); }
.platform-user-memberships { margin-top: 8px; }
.platform-user-membership-item { align-items: flex-start; }
.platform-user-membership-actions { display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: 8px; }
.platform-user-membership-actions form { display: flex; align-items: center; gap: 7px; margin: 0; }
.platform-user-membership-actions .org-role-select { min-width: 125px; }
.platform-user-membership-actions .org-secondary-button,
.platform-user-membership-actions .org-remove-button { min-height: 36px; white-space: nowrap; }
@media (max-width: 720px) {
  .organization-admin-hero { align-items: flex-start; flex-direction: column; }
  .admin-overview-stats { grid-template-columns: minmax(0, 1fr); }
  .admin-priority-panel .org-panel-heading { align-items: flex-start; flex-direction: column; }
  .admin-priority-list > li { align-items: flex-start; }
  .organization-custom-plan-limits { grid-template-columns: minmax(0, 1fr); }
  .platform-admin-create-hero { align-items: flex-start; flex-direction: column; }
  .platform-user-edit-actions { align-items: stretch; flex-direction: column; }
  .platform-user-profile-heading { flex-direction: column; }
  .platform-user-edit-form { grid-template-columns: minmax(0, 1fr); }
  .platform-user-edit-actions { grid-column: 1; }
  .platform-user-membership-item { align-items: stretch; }
  .platform-user-membership-actions { justify-content: flex-start; }
  .platform-user-membership-actions form { flex-wrap: wrap; }
}
.org-monitoring-state { display: inline-flex; padding: 5px 8px; border: 1px solid rgba(91, 216, 159, .2); border-radius: 7px; color: #80e2b2; background: rgba(91, 216, 159, .06); font-size: 10px; font-weight: 700; white-space: nowrap; }
.org-monitoring-state.is-paused { border-color: rgba(151, 177, 211, .18); color: #9aa9bd; background: rgba(151, 177, 211, .05); }
/* Give Email & domains and Third Parties identical alignment for their monitoring badges. */
.org-inventory-monitoring-cell { vertical-align: middle; }
.org-inventory-monitoring-cell .org-monitoring-state { box-sizing: border-box; min-width: 76px; justify-content: center; }
.org-table-check-status { display: block; margin-top: 4px; color: #8494aa; font-size: 13px; font-weight: 400; line-height: 1.5; white-space: normal; }
.org-products-table-product { display: grid; gap: 3px; min-width: 0; }
.org-products-table-product-link { text-decoration: none; }
.org-products-table-product-link:hover strong { color: var(--cyan); }
.org-products-table-product small { margin: 0; color: #8494aa; font-size: 13px; letter-spacing: .35px; text-transform: uppercase; }
.org-products-table-product strong { color: #e0e8f2; font-size: 13px; }
.org-products-table-version { color: #bac7d9; font: 400 13px/1.5 'DM Sans', sans-serif; }
.org-products-table-provider { color: #aebbd0; font-size: 13px; line-height: 1.5; }
.org-products-table-date { display: block; margin-top: 0 !important; color: #9eacc0 !important; font-size: 13px !important; line-height: 1.5; white-space: nowrap; }
.org-products-alert-counts { display: flex; align-items: center; gap: 4px; flex-wrap: wrap; }
.org-products-alert-state-count { display: inline-flex; min-width: 32px; min-height: 32px; align-items: center; justify-content: center; padding: 3px 7px; border: 1px solid; border-radius: 7px; font-size: 9px; font-weight: 600; line-height: 1; white-space: nowrap; }
.org-products-alert-state-count strong { font: 600 14px 'Space Grotesk', sans-serif; }
.org-products-alert-state-count.status-open { color: #ffbac2; border-color: rgba(255, 105, 125, .5); background: rgba(129, 43, 58, .45); }
.org-products-alert-state-count.status-reopened { color: #fff; border-color: #912B2E; background: #912B2E; }
.org-products-alert-state-count.status-in_progress { color: #ffdb9f; border-color: rgba(240, 163, 76, .5); background: rgba(116, 69, 22, .45); }
.org-products-alert-state-count.status-none { color: #aab8ca; border-color: rgba(151, 177, 211, .2); background: rgba(151, 177, 211, .06); }
.org-products-table-actions { overflow: visible !important; }
.org-products-table-actions form { display: inline-flex; margin: 0; }
.org-product-refresh-button { display: inline-grid; width: 38px; min-height: 38px; height: 38px; place-items: center; padding: 0; border: 1px solid rgba(151, 177, 211, .16); border-radius: 999px; color: #8795a9; background: rgba(151, 177, 211, .045); cursor: pointer; transition: color .18s ease, background .18s ease, border-color .18s ease, box-shadow .18s ease; }
.org-product-refresh-button svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.7; transition: filter .18s ease; }
.org-product-refresh-button:hover:not(:disabled) { color: #c4cfdd; border-color: rgba(151, 177, 211, .34); background: rgba(151, 177, 211, .1); }
.org-product-refresh-button.is-checked-today:not(.is-refreshing) { color: rgba(92, 225, 210, .78); border-color: rgba(92, 225, 210, .28); background: rgba(92, 225, 210, .045); }
.org-product-refresh-button:disabled { opacity: .45; cursor: not-allowed; }
.org-product-refresh-button.is-pending { color: #a5b0bf; border-color: rgba(151, 177, 211, .2); background: rgba(151, 177, 211, .07); cursor: wait; }
.org-product-refresh-button.is-refreshing { opacity: 1; color: #55e3a4; border-color: rgba(65, 210, 155, .58); background: rgba(35, 157, 105, .14); box-shadow: 0 0 0 0 rgba(65, 210, 155, .32); cursor: wait; animation: org-refresh-glow 1.25s ease-in-out infinite; }
.org-product-refresh-button.is-refreshing svg { filter: drop-shadow(0 0 4px rgba(65, 210, 155, .68)); animation: org-refresh-spin .8s linear infinite; }
.org-product-refresh-button.is-refresh-done { color: #55e3a4; border-color: rgba(65, 210, 155, .38); }
.org-product-refresh-button.is-refresh-failed { color: #ff8998; border-color: rgba(255, 102, 121, .42); }
.org-product-refresh-button:focus-visible { outline: 2px solid var(--cyan); outline-offset: 2px; }
@keyframes org-refresh-glow { 0%, 100% { box-shadow: 0 0 0 0 rgba(65, 210, 155, .08); } 50% { box-shadow: 0 0 12px 3px rgba(65, 210, 155, .25); } }
@media (prefers-reduced-motion: reduce) { .org-product-refresh-button.is-refreshing, .org-product-refresh-button.is-refreshing svg { animation-duration: 1.8s; } }
@media (max-width: 1100px) {
  .org-products-table-wrap .breach-table-scroll { overflow-x: auto; }
}
.org-add-product { margin-top: 14px; border-top: 1px solid rgba(151, 177, 211, .1); padding-top: 12px; }
.org-add-product summary { width: max-content; color: var(--cyan); font-size: 12px; font-weight: 700; cursor: pointer; }
.org-add-product[open] summary { margin-bottom: 12px; }
.org-add-product .org-form-row { margin-bottom: 0; }
.org-add-item-panel { padding: 17px 20px; }
.org-add-item-toggle { display: flex; align-items: center; justify-content: space-between; gap: 16px; list-style: none; cursor: pointer; }
.org-add-item-toggle::-webkit-details-marker { display: none; }
.org-add-item-toggle > .eyebrow { display: inline-flex; gap: 7px; }
.org-add-item-actions { display: inline-flex; align-items: center; gap: 8px; }
.org-add-item-action { display: inline-flex; min-height: 30px; align-items: center; padding: 6px 11px; border: 1px solid rgba(92, 225, 210, .24); border-radius: 8px; color: var(--cyan); background: rgba(92, 225, 210, .05); font-size: 11px; font-weight: 700; white-space: nowrap; }
.org-add-item-toggle:hover .org-add-item-action { border-color: rgba(92, 225, 210, .5); background: rgba(92, 225, 210, .1); }
.org-add-item-panel[open] .org-add-item-toggle { margin-bottom: 16px; }
.org-add-item-panel > .org-muted { margin: 0 0 12px; }
.org-add-item-panel .org-form-row { margin-bottom: 0; }
.org-csv-import { margin-top: 17px; padding-top: 13px; border-top: 1px solid rgba(151, 177, 211, .1); }
.org-csv-import summary { width: max-content; color: var(--cyan); font-size: 12px; font-weight: 700; cursor: pointer; }
.org-csv-import[open] summary { margin-bottom: 9px; }
.org-csv-import > .org-muted { margin: 0 0 7px; font-size: 11px; }
.org-csv-example { display: inline-block; margin-bottom: 10px; padding: 5px 8px; border: 1px solid rgba(151, 177, 211, .12); border-radius: 6px; color: #aab8ca; background: rgba(6, 12, 21, .4); font: 10px 'DM Sans', sans-serif; }
.org-csv-preview-table-wrap { overflow-x: auto; border: 1px solid rgba(151, 177, 211, .12); border-radius: 10px; background: rgba(6, 12, 21, .3); }
.org-csv-preview-table { width: 100%; min-width: 760px; border-collapse: collapse; color: #bac7d9; font-size: 13px; }
.org-csv-preview-table th { padding: 11px 13px; border-bottom: 1px solid var(--line); color: #8999ae; background: rgba(20, 31, 49, .65); font-size: 10px; letter-spacing: .6px; text-align: left; text-transform: uppercase; white-space: nowrap; }
.org-csv-preview-table td { max-width: 360px; padding: 10px 13px; border-bottom: 1px solid rgba(151, 177, 211, .08); overflow-wrap: anywhere; }
.org-csv-preview-table tr:last-child td { border-bottom: 0; }
.org-csv-preview-heading-actions { display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: 10px; }
.org-csv-preview-heading-actions form { margin: 0; }
.org-csv-preview-heading-actions button { white-space: nowrap; }
.org-csv-status { display: inline-flex; padding: 4px 8px; border: 1px solid rgba(92, 225, 210, .2); border-radius: 999px; color: var(--cyan); background: rgba(92, 225, 210, .06); font-size: 10px; font-weight: 700; white-space: nowrap; }
.org-csv-status.is-duplicate { border-color: rgba(151, 177, 211, .18); color: #9baac0; background: rgba(151, 177, 211, .05); }
.org-csv-preview-pagination { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 13px; color: #8999ae; font-size: 11px; }
.org-csv-preview-pagination > div { display: flex; gap: 8px; }
.org-csv-preview-actions { display: flex; justify-content: flex-end; gap: 10px; margin-top: 17px; }
.org-csv-preview-actions form { margin: 0; }
.org-csv-preview-actions button:disabled { opacity: .45; cursor: not-allowed; }
.org-csv-machine-choice { margin: 10px 0 15px; padding: 15px; border: 1px solid rgba(151, 177, 211, .12); border-radius: 10px; background: rgba(6, 12, 21, .28); }
.org-csv-detected-device { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 12px; padding: 11px 12px; border: 1px solid rgba(92, 225, 210, .2); border-radius: 8px; background: rgba(92, 225, 210, .045); }
.org-csv-detected-device > div { display: grid; gap: 3px; min-width: 0; }
.org-csv-detected-device strong { color: #b8fff4; font-size: 11px; }
.org-csv-detected-device > div > span { color: #aab8ca; font-size: 12px; overflow-wrap: anywhere; }
.org-csv-status.is-retired { border-color: rgba(242, 189, 127, .35); color: #f2bd7f; background: rgba(255, 183, 101, .07); }
.org-csv-machine-choice > label { display: grid; max-width: 620px; gap: 6px; color: #aab8ca; font-size: 11px; }
.org-csv-machine-choice select, .org-csv-device-fields input { width: 100%; min-height: 38px; padding: 8px 10px; border: 1px solid rgba(151, 177, 211, .18); border-radius: 8px; color: var(--text); background: rgba(5, 11, 20, .75); font: 12px 'DM Sans', sans-serif; }
.org-csv-device-fields { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin-top: 10px; }
.org-csv-device-fields[hidden] { display: none; }
.org-csv-device-fields label { display: grid; gap: 5px; color: #8797ad; font-size: 10px; }
.org-csv-link-note { margin: 9px 0 0; color: #8797ad; font-size: 10px; line-height: 1.5; }
.org-csv-retired-note { margin: 10px 0 0; padding: 9px 11px; border-left: 2px solid #f2bd7f; color: #f2bd7f; background: rgba(255, 183, 101, .06); font-size: 11px; }
.org-csv-retired-note a { color: var(--cyan); text-decoration: underline; }
.org-history-purge-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 0 0 12px; padding: 10px 12px; border: 1px solid rgba(255, 112, 128, .15); border-radius: 9px; background: rgba(255, 75, 99, .035); }
.org-history-purge-row form { flex: 0 0 auto; margin: 0; }
.org-device-management-actions { display: flex; align-items: flex-start; justify-content: flex-end; flex-wrap: wrap; gap: 8px; margin-left: auto; }
.org-device-management-actions form { margin: 0; }
.org-device-reactivate-form { display: grid; justify-items: end; gap: 9px; }
.org-device-reactivate-form fieldset { display: flex; flex-wrap: wrap; gap: 10px; margin: 0; padding: 9px 11px; border: 1px solid rgba(151, 177, 211, .15); border-radius: 9px; color: #aab8ca; font-size: 11px; }
.org-device-reactivate-form legend { padding: 0 5px; color: #8797ad; font-size: 10px; }
.org-device-snapshot-list { display: grid; gap: 9px; }
.org-device-snapshot { padding: 12px 14px; border: 1px solid rgba(151, 177, 211, .12); border-radius: 10px; background: rgba(6, 12, 21, .26); }
.org-device-snapshot > summary { display: flex; align-items: center; justify-content: space-between; gap: 10px; color: #aebbd0; font-size: 12px; font-weight: 700; cursor: pointer; }
.org-device-history-products { display: grid; gap: 6px; margin: 12px 0 0; padding-left: 18px; color: #aab8ca; font-size: 11px; }
.org-device-history-products li { overflow-wrap: anywhere; }
.org-device-snapshot .org-product-active-findings { color: #ff9ca7; }
@media (max-width: 1100px) and (min-width: 768px) {
  .org-monitoring-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .org-monitoring-grid.admin-platform-kpi-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .org-dashboard-chart-row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .org-dashboard-chart-row > .org-monthly-trend-panel { grid-column: auto; }
  .org-dashboard-chart-row.platform-admin-chart-row { grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr); }
}
@media (max-width: 900px) {
  .org-product-add-layout { grid-template-columns: minmax(0, 1fr); }
  .org-script-download-item { grid-template-columns: minmax(0, 1fr); }
  .org-script-download-item > .org-secondary-button { justify-self: start; }
}
.org-csv-form { display: flex; align-items: flex-end; gap: 12px; margin: 0; }
.org-csv-form label { min-width: 0; flex: 1 1 auto; margin: 0; color: #aab8ca; font-size: 11px; }
.org-csv-form input[type="file"] { display: block; width: 100%; margin-top: 5px; color: #aab8ca; font: 11px 'DM Sans', sans-serif; }
.org-csv-form button { flex: 0 0 auto; }
.org-script-downloads { display: grid; gap: 9px; margin-top: 12px; color: #aab8ca; font-size: 11px; }
.org-script-download-list { display: grid; gap: 8px; }
.org-script-download-item { display: grid; min-width: 0; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 12px; padding: 10px 11px; border: 1px solid rgba(151, 177, 211, .12); border-radius: 9px; background: rgba(5, 11, 20, .28); }
.org-script-download-meta { display: grid; min-width: 0; grid-template-columns: auto auto minmax(0, 1fr); align-items: baseline; gap: 7px 10px; }
.org-script-download-meta strong { color: #dce5f2; font-size: 12px; }
.org-script-download-meta span { color: #8494aa; font-size: 10px; }
.org-script-download-meta code { min-width: 0; color: #9baac0; font: 10px/1.45 ui-monospace, SFMono-Regular, Menlo, monospace; overflow-wrap: anywhere; }
.org-script-download-item > .org-secondary-button { min-height: 36px; white-space: nowrap; }
.org-domain-settings-panel .org-domain-panel,
.org-domain-settings-panel .org-domain-settings-inner { margin: 0; padding: 15px 0 0; border: 0; border-top: 1px solid rgba(151, 177, 211, .1); border-radius: 0; background: transparent; box-shadow: none; }
.org-domain-settings-panel .org-domain-settings-inner { margin-top: 16px; }
.org-domain-settings-panel .org-domain-settings-inner h2 { margin-bottom: 12px; }
.org-domain-settings-panel .org-domain-panel > div:first-child { max-width: 620px; }
.org-domain-settings-panel .org-domain-panel .org-muted { margin-bottom: 0; }
.org-domain-settings-panel .org-domain-settings-inner .org-form { max-width: 620px; }
.org-domain-settings-panel[open] .org-add-item-toggle { margin-bottom: 15px; }
.org-item-edit-panel { max-width: 760px; }
.org-item-edit-panel > .eyebrow { margin-bottom: 14px; }
.org-item-edit-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 9px; margin-top: 5px; }
.org-item-edit-delete-form { margin-top: 18px; padding-top: 15px; border-top: 1px solid rgba(151, 177, 211, .1); }
.org-item-settings-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 9px; margin-top: 16px; padding-top: 15px; border-top: 1px solid rgba(151, 177, 211, .1); }
.org-item-settings-form { max-width: none; }
.org-item-settings-actions > form { display: flex; align-items: center; margin: 0; }
.org-item-settings-actions > a,
.org-item-settings-actions > form > button { box-sizing: border-box; min-height: 38px; }
.org-item-settings-actions .org-device-reactivate-form { display: grid; justify-items: start; gap: 9px; }
.org-watch-actions .org-secondary-button { white-space: nowrap; }
.org-product-alert-count { min-width: 112px; color: #8999ae; text-align: center; }
.org-product-alert-count strong { color: var(--cyan); font: 600 19px 'Space Grotesk', sans-serif; }
.org-product-alert-count.has-findings strong { color: #ffabb5; }
.org-product-alert-count .org-product-vulnerability-count { font-size: 10px; }
.org-product-alert-count.has-findings .org-product-active-alerts,
.org-product-active-findings { color: #ff8f9e; font-weight: 700; }
.org-email-refresh-group { display: grid; justify-items: start; gap: 5px; }
.org-email-refresh-group small { white-space: nowrap; }
.org-alert-status-form label { color: #9baac0; font-size: 11px; }
.org-alert-comment-field { display: grid; gap: 6px; }
.org-alert-comment-field[hidden] { display: none; }
.org-alert-comment-area { display: grid; gap: 8px; }
.org-alert-comment-area[hidden] { display: none; }
.org-alert-comment-field label { color: #f0b65f; font-size: 11px; font-weight: 700; }
.org-alert-comment-field textarea { box-sizing: border-box; width: 100%; min-height: 36px; resize: vertical; padding: 8px 9px; border: 1px solid rgba(233, 163, 72, .42); border-radius: 7px; color: #dce5f2; background: #0d1625; font: inherit; font-size: 12px; line-height: 1.5; }
.org-alert-comment-field textarea:focus { outline: 2px solid rgba(233, 163, 72, .35); outline-offset: 1px; }
.org-alert-treatment-comment { display: grid; gap: 4px; margin: 20px 0 0; padding: 9px 11px; border-left: 2px solid #e9a348; border-radius: 0 6px 6px 0; color: #c3cfdd; background: rgba(233, 163, 72, .07); font-size: 12px; line-height: 1.55; white-space: pre-wrap; }
.org-email-breach-details ~ .org-alert-treatment-comment { margin-top: 20px; }
.org-alert-treatment-comment strong { color: #f0b65f; font-size: 11px; }
.org-alert-status-form select { min-width: 160px; }
.org-product-alert-card { display: grid; grid-template-columns: minmax(0, 1fr) 190px; align-items: flex-start; }
.org-product-alert-card .org-alert-main { grid-column: 1; grid-row: 1; min-width: 0; }
/* Keep the selector and update button stacked in their original right-hand column. */
.org-product-alert-card .org-alert-status-form { grid-column: 2; grid-row: 1; display: grid; align-self: start; width: 190px; }
.org-product-alert-card .org-alert-comment-area { grid-column: 1 / -1; grid-row: 2; }
.org-product-alert-card h3 { margin-bottom: 0; }
.org-product-alert-heading { display: flex; align-items: center; justify-content: space-between; gap: 14px; }
.org-email-risk-badges { display: inline-flex; flex: 0 0 auto; align-items: center; gap: 6px; }
.org-product-alert-heading h3 { display: flex; align-items: center; flex-wrap: wrap; min-width: 0; gap: 8px; }
.org-product-alert-title-row { justify-content: flex-start; }
.org-product-alert-title-row h3 { flex: 1 1 auto; }
.org-product-alert-title-row .org-vuln-tags { flex: 0 0 auto; margin-top: 0; }
.org-cve-badge { display: inline-flex; flex: 0 0 auto; align-items: center; min-height: 25px; padding: 5px 9px; border: 1px solid rgba(92, 225, 210, .4); border-radius: 7px; color: #b1fff3; background: rgba(25, 123, 117, .25); box-shadow: 0 0 14px rgba(92, 225, 210, .08); font: 700 11px 'DM Sans', sans-serif; white-space: nowrap; }
.org-cve-badge.cvss-critical { color: #f4eaff; border-color: #b987ff; background: #57327f; box-shadow: 0 0 0 1px rgba(185, 135, 255, .18); }
.org-cve-badge.cvss-high { color: #fff1f3; border-color: #ff697d; background: #812b3a; box-shadow: 0 0 0 1px rgba(255, 105, 125, .18); }
.org-cve-badge.cvss-medium { color: #fff4e5; border-color: #f0a34c; background: #744516; box-shadow: 0 0 0 1px rgba(240, 163, 76, .16); }
.org-cve-badge.cvss-low { color: #e5f3ff; border-color: #61aaff; background: #244b78; box-shadow: 0 0 0 1px rgba(97, 170, 255, .16); }
.org-cvss-score-text { display: inline-flex; align-items: center; min-height: 25px; color: #aab8ca; font-size: 11px; font-weight: 700; white-space: nowrap; }
.org-vulnerability-name { overflow-wrap: anywhere; }
.org-product-version-note { margin: 6px 0 3px !important; color: #90a2b9 !important; font-size: 11px !important; line-height: 1.5 !important; }
.org-vuln-tags { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; margin-top: 7px; }
.org-cvss-badge, .org-cwe-badge, .org-vuln-status-tag { display: inline-flex; flex: 0 0 auto; align-items: center; min-height: 25px; padding: 3px 7px; border: 1px solid rgba(151, 177, 211, .2); border-radius: 7px; font-size: 11px; font-weight: 700; line-height: 1; white-space: nowrap; }
.org-cvss-badge.cvss-high { color: #fff1f3; border-color: #ff697d; background: #812b3a; box-shadow: 0 0 0 1px rgba(255, 105, 125, .18); }
.org-cvss-badge.cvss-critical { color: #f4eaff; border-color: #b987ff; background: #57327f; box-shadow: 0 0 0 1px rgba(185, 135, 255, .18); }
.org-cvss-badge.cvss-medium { color: #fff4e5; border-color: #f0a34c; background: #744516; box-shadow: 0 0 0 1px rgba(240, 163, 76, .16); }
.org-cvss-badge.cvss-low { color: #e5f3ff; border-color: #61aaff; background: #244b78; }
.org-cvss-badge.cvss-unknown { color: #dbe6f4; border-color: #7186a1; background: #26384d; }
.org-cwe-badge { color: #b7c6d9; }
.org-vuln-status-tag.status-open { color: #ffbac2; border-color: rgba(255, 105, 125, .5); background: rgba(129, 43, 58, .45); }
.org-vuln-status-tag.status-reopened { color: #fff; border-color: #912B2E; background: #912B2E; }
.org-vuln-status-tag.status-in_progress { color: #ffdb9f; border-color: rgba(240, 163, 76, .5); background: rgba(116, 69, 22, .45); }
.org-vuln-status-tag.status-resolved { color: #a9dfc7; border-color: rgba(81, 201, 152, .38); background: rgba(24, 87, 63, .35); }
.org-vuln-status-tag.status-accepted_risk { color: #e7d4ff; border-color: rgba(185, 135, 255, .5); background: rgba(87, 50, 127, .42); }
.org-vuln-status-tag.status-not_affected { color: #d8edff; border-color: rgba(97, 170, 255, .5); background: rgba(36, 75, 120, .42); }
article.org-product-alert-card.status-open,
article.org-product-alert-card.status-reopened,
article.org-product-alert-card.status-in_progress,
article.org-product-alert-card.status-resolved { background: rgba(5, 11, 20, .34); }
.org-vuln-guidance { margin-top: 7px; }
.org-vuln-guidance [data-cve-details-container][aria-busy="true"] { opacity: .88; }
.org-vuln-guidance summary, .org-treated-history > summary { color: var(--cyan); font-size: 11px; font-weight: 700; cursor: pointer; }
.org-vuln-guidance p { margin-top: 8px; }
.org-vuln-guidance .vuln-description { margin: 10px 0; color: #adbacb; font-size: 13px; line-height: 1.65; }
.org-vuln-guidance .vuln-metrics { margin: 10px 0 14px; }
.org-vuln-guidance h4 { margin: 15px 0 5px; color: #a6b5c9; font-size: 11px; font-weight: 700; letter-spacing: .6px; text-transform: uppercase; }
.org-vuln-guidance .org-product-next-steps { gap: 7px; margin: 8px 0 14px; font-size: 11px; }
.org-email-breach-details .detail-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); margin: 10px 0; }
.org-email-breach-details .detail-content-grid { grid-template-columns: minmax(0, 1fr); gap: 8px; margin-top: 10px; }
.org-email-breach-details .detail-card { padding: 14px; }
.org-email-recommendations { margin-top: 10px; padding: 15px; }
.org-email-recommendations .detail-next-steps-list { margin-top: 10px; }
.org-cve-date { color: #8797ad !important; font-size: 11px !important; }
.org-vuln-guidance .vuln-affected, .org-vuln-guidance .vuln-references { margin: 0; padding-left: 18px; color: #aab6c9; font-size: 11px; }
.org-vuln-guidance .vuln-affected li, .org-vuln-guidance .vuln-references li { padding: 3px 0; overflow-wrap: anywhere; }
.org-vuln-guidance .org-affected-heading { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; }
.org-used-version-tag { display: inline-flex; align-items: center; min-height: 22px; padding: 3px 8px; border: 1px solid rgba(240, 163, 76, .55); border-radius: 999px; color: #ffe0b3; background: rgba(116, 69, 22, .58); font-size: 10px; font-weight: 700; letter-spacing: 0; line-height: 1.2; text-transform: none; white-space: nowrap; }
.org-treated-history { padding-top: 14px; }
.org-treated-history > summary { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.org-treated-history[open] > summary { margin-bottom: 13px; }
.org-treated-history .org-product-alert-card { margin-bottom: 7px; }
.org-alert-card.status-in_progress { border-color: rgba(255, 183, 101, .28); }
.org-alert-card.status-resolved { opacity: .72; }
.org-alert-card.status-accepted_risk,
.org-alert-card.status-not_affected { opacity: .72; }
.org-alert-card.status-open { border-color: rgba(92, 225, 210, .24); }
.org-alert-card.status-reopened { border-color: rgba(145, 43, 46, .72); }
@media (max-width: 767.98px) {
  .org-alert-summary { grid-template-columns: 1fr; }
  .org-monitoring-grid { grid-template-columns: 1fr; }
  .org-monitoring-grid.admin-platform-kpi-grid { grid-template-columns: 1fr; }
  .org-dashboard-chart-row { grid-template-columns: 1fr; }
  .org-dashboard-chart-row > .org-monthly-trend-panel { grid-column: auto; }
  .org-dashboard-chart-row.platform-admin-chart-row { grid-template-columns: minmax(0, 1fr); }
  .org-dashboard-chart-row > article > .org-monthly-trend-heading { height: auto; min-height: 0; flex-basis: auto; }
  .org-monthly-trend-heading { flex-direction: column; }
  .admin-pending-request-row { grid-template-columns: minmax(100px, 1fr) minmax(0, 1.5fr) 24px; gap: 7px; }
  .org-asset-alert-row { grid-template-columns: 18px minmax(95px, 150px) minmax(0, 1fr) 28px; gap: 7px; }
  .org-alert-card { align-items: stretch; }
  .org-monitor-alert-card { flex-direction: column; }
  .org-monitor-alert-card .org-alert-status-form { width: 100%; flex-basis: auto; }
  .org-product-alert-card { align-items: stretch; }
  .org-alert-status-form { flex: 1 1 auto; }
  .org-product-alert-card { grid-template-columns: minmax(0, 1fr); }
  .org-product-alert-card .org-alert-main { grid-column: 1; grid-row: 1; }
  .org-product-alert-card .org-alert-status-form { grid-column: 1; grid-row: 2; width: 100%; }
  .org-product-alert-card .org-alert-comment-area { grid-column: 1; grid-row: 3; }
  .org-product-list-row { align-items: stretch; flex-direction: column; }
  .org-product-list-row .org-watch-actions { justify-content: flex-start; }
  .org-products-actions-heading { align-items: flex-start; flex-direction: column; }
  .org-products-toolbar { width: 100%; justify-content: flex-start; }
  .org-products-inventory-search { width: 100%; max-width: none; flex: 1 1 100%; }
  .org-products-search-add { align-self: flex-end; }
  .org-product-add-grid { grid-template-columns: minmax(0, 1fr); }
  .org-product-add-import .org-csv-form { align-items: stretch; flex-direction: column; }
  .org-product-add-import .org-csv-form button { align-self: flex-start; }
  .org-product-alert-heading { align-items: flex-start; flex-direction: column; gap: 6px; }
  .org-overview-vuln-title-row { align-items: flex-start; flex-direction: column; }
  .org-product-alert-count { text-align: left; }
  .org-csv-device-fields { grid-template-columns: 1fr; }
  .org-history-purge-row { align-items: flex-start; flex-direction: column; }
  .org-device-management-actions { justify-content: flex-start; margin-left: 0; }
  .org-device-reactivate-form { justify-items: start; }
}
@media (max-width: 767.98px) {
  .org-layout { grid-template-columns: 1fr; }
  .org-domain-panel, .org-heading-row { align-items: flex-start; flex-direction: column; }
  .org-workspace-bar { align-items: stretch; flex-direction: column; }
  .org-dashboard-manage-link { align-self: flex-end; }
  .org-dns-record { width: 100%; min-width: 0; }
  .org-alert-card { flex-direction: column; }
  .org-form-row { grid-template-columns: 1fr; }
  .org-form-row > button { grid-column: auto; }
  .org-member-account-edit > .org-form { position: static; width: min(280px, calc(100vw - 48px)); margin-top: 7px; }
}

/* Let only the Products table shrink to its panel, then scroll without losing the action controls. */
.org-product-responsive-table-wrap { max-width: 100%; }
.org-product-responsive-table-wrap .breach-table-scroll { max-width: 100%; overflow-x: auto; overflow-y: hidden; overscroll-behavior-x: contain; scrollbar-color: rgba(92, 225, 210, .38) transparent; scrollbar-width: thin; -webkit-overflow-scrolling: touch; }
.org-product-table-scroll:focus-visible { outline: 2px solid rgba(92, 225, 210, .55); outline-offset: -2px; }
.org-products-table.org-product-inventory-table { width: 100%; min-width: 880px; table-layout: fixed; }
.org-products-table.org-product-inventory-table th,
.org-products-table.org-product-inventory-table td { box-sizing: border-box; padding-right: clamp(7px, 1vw, 13px); padding-left: clamp(7px, 1vw, 13px); overflow-wrap: anywhere; }
.org-products-table.org-product-inventory-table th { white-space: normal; line-height: 1.35; letter-spacing: .9px; }
.org-products-table.org-product-inventory-table th:nth-child(1), .org-products-table.org-product-inventory-table td:nth-child(1) { width: 25%; }
.org-products-table.org-product-inventory-table th:nth-child(2), .org-products-table.org-product-inventory-table td:nth-child(2) { width: 12%; }
.org-products-table.org-product-inventory-table th:nth-child(3), .org-products-table.org-product-inventory-table td:nth-child(3) { width: 15%; }
.org-products-table.org-product-inventory-table th:nth-child(4), .org-products-table.org-product-inventory-table td:nth-child(4) { width: 20%; }
.org-products-table.org-product-inventory-table th:nth-child(5), .org-products-table.org-product-inventory-table td:nth-child(5) { width: 20%; }
.org-products-table.org-product-inventory-table th:last-child, .org-products-table.org-product-inventory-table td:last-child { width: 8%; text-align: right; }
.org-products-table.org-monitored-products-table th:nth-child(1), .org-products-table.org-monitored-products-table td:nth-child(1) { width: 22%; }
.org-products-table.org-monitored-products-table th:nth-child(2), .org-products-table.org-monitored-products-table td:nth-child(2) { width: 10%; }
.org-products-table.org-monitored-products-table th:nth-child(3), .org-products-table.org-monitored-products-table td:nth-child(3) { width: 13%; }
.org-products-table.org-monitored-products-table th:nth-child(4), .org-products-table.org-monitored-products-table td:nth-child(4) { width: 17%; }
.org-products-table.org-monitored-products-table th:nth-child(5), .org-products-table.org-monitored-products-table td:nth-child(5) { width: 15%; }
.org-products-table.org-monitored-products-table th:nth-child(6), .org-products-table.org-monitored-products-table td:nth-child(6) { width: 15%; }
.org-product-device-list { display: grid; gap: 3px; color: #aebbd0; font-size: 12px; line-height: 1.4; }
.org-product-device-list > span { overflow-wrap: anywhere; }
.org-products-table.org-product-inventory-table td:first-child { min-width: 0; }
.org-products-table.org-product-inventory-table .org-products-table-date { white-space: normal; }
.org-products-table.org-product-inventory-table .org-products-table-actions form { justify-content: flex-end; }
.org-products-table.org-product-inventory-table th:last-child,
.org-products-table.org-product-inventory-table td:last-child { position: sticky; right: 0; z-index: 2; }
.org-products-table.org-product-inventory-table thead th:last-child { z-index: 3; background: rgba(20, 31, 49, .72); }
/* Give every body cell the same surface so the pinned refresh column blends into its row. */
.org-products-table.org-product-inventory-table tbody td { background: #0d1625; }

/* Give every application table the same responsive scroll behavior as Products. */
.app-responsive-table-scroll { box-sizing: border-box; max-width: 100%; overflow-x: auto !important; overflow-y: hidden; overscroll-behavior-x: contain; scrollbar-color: rgba(92, 225, 210, .38) transparent; scrollbar-width: thin; -webkit-overflow-scrolling: touch; }
.app-responsive-table-scroll:focus-visible { outline: 2px solid rgba(92, 225, 210, .55); outline-offset: -2px; }
.app-responsive-table { width: 100%; min-width: 760px; table-layout: fixed; }
.app-responsive-table th, .app-responsive-table td { box-sizing: border-box; overflow-wrap: anywhere; }
.app-responsive-table th, .app-responsive-table td { padding-right: clamp(7px, 1vw, 13px); padding-left: clamp(7px, 1vw, 13px); }
.app-responsive-table th { white-space: normal; line-height: 1.35; }
/* Pin action cells to the scroll area's right edge while letting data columns scroll. */
.app-table-has-actions th:last-child, .app-table-has-actions td:last-child { position: sticky; right: 0; z-index: 2; text-align: right; }
.app-table-has-actions thead th:last-child { z-index: 3; background: rgba(20, 31, 49, .72); }
.app-table-has-actions tbody td:last-child { background: #0d1625; }
.app-table-has-actions th:last-child form { justify-content: flex-end; }
/* Rebalance inventory columns so their widths scale with the viewport before scrolling is needed. */
.org-products-table.app-responsive-table.org-devices-table { width: 100%; min-width: 880px; }
.org-products-table.app-responsive-table.org-partner-table { width: 100%; min-width: 920px; }
.org-products-table.app-responsive-table.org-email-table.org-product-inventory-table { width: 100%; min-width: 880px; }
.org-products-table.app-responsive-table td:first-child { min-width: 0; }
.org-partner-table th:nth-child(1), .org-partner-table td:nth-child(1) { width: 23%; }
.org-partner-table th:nth-child(2), .org-partner-table td:nth-child(2) { width: 23%; }
.org-partner-table th:nth-child(3), .org-partner-table td:nth-child(3) { width: 14%; }
.org-partner-table th:nth-child(4), .org-partner-table td:nth-child(4) { width: 18%; }
.org-partner-table th:nth-child(5), .org-partner-table td:nth-child(5) { width: 14%; }
.org-partner-table th:last-child, .org-partner-table td:last-child { width: 8%; }
/* Keep the sticky Refresh all header identical to the neighboring Last check header. */
.org-partner-table.app-table-has-actions thead th.org-products-table-actions { background: rgba(20, 31, 49, .72); }
/* Keep the pinned refresh cell on the same hover surface as the rest of each third-party row. */
.org-partner-table tbody td { background: #0d1625; }
/* Keep public breach and advisory tables readable, with their Details column pinned where present. */
.email-search-results-table th:nth-child(1), .email-search-results-table td:nth-child(1) { width: 25%; }
.email-search-results-table th:nth-child(2), .email-search-results-table td:nth-child(2) { width: 17%; }
.email-search-results-table th:nth-child(3), .email-search-results-table td:nth-child(3) { width: 16%; }
.email-search-results-table th:nth-child(4), .email-search-results-table td:nth-child(4) { width: 42%; }
/* Allocate enough width for breach counts and dates so those columns cannot overlap. */
.breach-catalogue-table.app-responsive-table { min-width: 840px; }
.breach-catalogue-table th:nth-child(1), .breach-catalogue-table td:nth-child(1) { width: 15%; }
.breach-catalogue-table th:nth-child(2), .breach-catalogue-table td:nth-child(2) { width: 9%; }
.breach-catalogue-table th:nth-child(3), .breach-catalogue-table td:nth-child(3) { width: 15%; }
.breach-catalogue-table th:nth-child(4), .breach-catalogue-table td:nth-child(4) { width: 25%; }
.breach-catalogue-table th:nth-child(5), .breach-catalogue-table td:nth-child(5) { width: 36%; }
/* Add a reference column while keeping the CERT summary as the widest table field. */
.cert-alerts-table.app-responsive-table { min-width: 900px; }
.cert-alerts-table th:nth-child(1), .cert-alerts-table td:nth-child(1) { width: 28%; }
.cert-alerts-table th:nth-child(2), .cert-alerts-table td:nth-child(2) { width: 14%; }
.cert-alerts-table th:nth-child(3), .cert-alerts-table td:nth-child(3) { width: 22%; }
.cert-alerts-table th:nth-child(4), .cert-alerts-table td:nth-child(4) { width: 36%; }
/* Give CERT advisory references a clear blue identity in the feed table. */
.cert-feed-reference { border-color: rgba(96, 165, 250, .35); color: #93c5fd; background: rgba(59, 130, 246, .12); white-space: nowrap; }
.cve-results-table th:nth-child(1), .cve-results-table td:nth-child(1) { width: 16%; }
.cve-results-table th:nth-child(2), .cve-results-table td:nth-child(2) { width: 24%; }
.cve-results-table th:nth-child(3), .cve-results-table td:nth-child(3) { width: 16%; }
.cve-results-table th:nth-child(4), .cve-results-table td:nth-child(4) { width: 44%; }
.kev-catalogue-table th:nth-child(1), .kev-catalogue-table td:nth-child(1) { width: 12%; }
.kev-catalogue-table th:nth-child(2), .kev-catalogue-table td:nth-child(2) { width: 17%; }
.kev-catalogue-table th:nth-child(3), .kev-catalogue-table td:nth-child(3) { width: 10%; }
.kev-catalogue-table th:nth-child(4), .kev-catalogue-table td:nth-child(4) { width: 13%; }
.kev-catalogue-table th:nth-child(5), .kev-catalogue-table td:nth-child(5) { width: 48%; }
.kev-catalogue-table td:nth-child(1) { min-width: 140px; white-space: nowrap; }
.kev-catalogue-table td:nth-child(2) { min-width: 160px; }
.kev-catalogue-table td.kev-catalogue-summary { overflow-wrap: break-word; word-break: normal; white-space: normal; line-height: 1.45; vertical-align: top; }
.kev-catalogue-table .detail-badge { white-space: nowrap; }
.app-clickable-result-row { cursor: pointer; }
.app-clickable-result-row:focus-visible { outline: 2px solid rgba(92, 225, 210, .7); outline-offset: -2px; }
/* Keep the same subtle row hover across every table in the application. */
table { border-collapse: separate; border-spacing: 0; }
table tbody tr { transition: background-color .18s ease; }
table tbody tr:hover > td { background-color: rgba(92, 225, 210, .035); }
table.app-responsive-table tbody tr:hover > td { background-color: rgba(92, 225, 210, .035); }
/* The pinned action column needs a stronger selector to match the hovered row. */
table.app-responsive-table tbody tr:hover > td:last-child { background-color: rgba(92, 225, 210, .035); }
/* Lift hovered edge cells above adjacent cells so their rounded corners stay visible. */
table.app-responsive-table thead tr:hover > th:first-child { position: relative; z-index: 4; border-top-left-radius: 9px; background-clip: padding-box; }
table.app-responsive-table:not(.app-table-has-actions) thead tr:hover > th:last-child { position: relative; z-index: 4; border-top-right-radius: 9px; background-clip: padding-box; }
table.app-responsive-table.app-table-has-actions thead tr:hover > th:last-child { z-index: 5; border-top-right-radius: 9px; background-clip: padding-box; }
table.app-responsive-table tbody tr:last-child:hover > td:first-child { position: relative; z-index: 4; border-bottom-left-radius: 9px; background-clip: padding-box; }
table.app-responsive-table:not(.app-table-has-actions) tbody tr:last-child:hover > td:last-child { position: relative; z-index: 4; border-bottom-right-radius: 9px; background-clip: padding-box; }
table.app-responsive-table.app-table-has-actions tbody tr:last-child:hover > td:last-child { z-index: 5; border-bottom-right-radius: 9px; background-clip: padding-box; }
/* Preserve table-cell sizing and match vulnerability typography; clamp only summary text. */
.breach-catalogue-table .feed-count-cell { color: #bac7d9; font-family: 'DM Sans', sans-serif; font-size: 13px; font-weight: 400; line-height: 1.5; }
.breach-catalogue-table .feed-summary { min-width: 0; max-width: none; color: #aebbd0; font-size: 13px; line-height: 1.5; overflow-wrap: break-word; word-break: normal; white-space: normal; vertical-align: top; }
.breach-catalogue-table .feed-summary-text { display: -webkit-box; max-width: none; overflow: hidden; line-height: inherit; overflow-wrap: anywhere; -webkit-box-orient: vertical; -webkit-line-clamp: 2; line-clamp: 2; }
.breach-catalogue-table .exposed-data-chips { min-width: 0; max-height: none; overflow: visible; }
.cert-feed-summary { max-width: none; }
.breach-catalogue-table td:nth-child(1) { min-width: 120px; }
.breach-catalogue-table td:first-child { min-width: 120px; }
.breach-catalogue-table td:nth-child(2) { min-width: 70px; }
.cert-alerts-table td:nth-child(2), .cve-results-table td:nth-child(3), .kev-catalogue-table td:nth-child(3) { min-width: 120px; }
.breach-catalogue-table td:nth-child(3) { min-width: 95px; }
.breach-catalogue-table td:nth-child(4) { min-width: 150px; }
.breach-catalogue-table td:nth-child(5) { min-width: 300px; }
.cert-alerts-table td:nth-child(4), .cve-results-table td:nth-child(4), .kev-catalogue-table td:nth-child(5) { min-width: 280px; }
.cve-results-table td:nth-child(3), .kev-catalogue-table td:nth-child(4) { min-width: 125px; color: #aebbd0; }
/* Keep inherited minimum cell widths inside the table's own scroll area. */
.breach-feed-table.cve-results-table.app-responsive-table { min-width: 900px; }
.breach-feed-table.cve-results-table td:first-child { min-width: 120px; }
.breach-feed-table.kev-catalogue-table.app-responsive-table { min-width: 1000px; }
.breach-feed-table.kev-catalogue-table td:first-child { min-width: 140px; }
.kev-catalogue-table th:nth-child(1), .kev-catalogue-table td:nth-child(1) { width: 14%; }
.kev-catalogue-table th:nth-child(2), .kev-catalogue-table td:nth-child(2) { width: 19%; }
.kev-catalogue-table th:nth-child(3), .kev-catalogue-table td:nth-child(3) { width: 13%; }
.kev-catalogue-table th:nth-child(4), .kev-catalogue-table td:nth-child(4) { width: 14%; }
.kev-catalogue-table th:nth-child(5), .kev-catalogue-table td:nth-child(5) { width: 40%; }
.org-csv-preview-table.app-responsive-table { min-width: 760px; }

/* Standardize typography across every application table while preserving chip styles. */
table.app-responsive-table { font-family: 'DM Sans', sans-serif; font-size: 13px; }
table.app-responsive-table th { font: 700 10px/1.35 'DM Sans', sans-serif; letter-spacing: .9px; text-transform: uppercase; }
table.app-responsive-table td { font: 400 13px/1.5 'DM Sans', sans-serif; }

/* Keep the cross-inventory SOC alert feed visually aligned with Products. */
.org-alerts-table-wrap { max-width: 100%; }
.org-alerts-table-wrap .app-responsive-table-scroll { border-radius: 9px; }
.org-products-table.org-alerts-overview-table { width: 100%; min-width: 880px; table-layout: fixed; }
.org-products-table.org-alerts-overview-table th:nth-child(1), .org-products-table.org-alerts-overview-table td:nth-child(1) { width: 12%; }
.org-products-table.org-alerts-overview-table th:nth-child(2), .org-products-table.org-alerts-overview-table td:nth-child(2) { width: 25%; }
.org-products-table.org-alerts-overview-table th:nth-child(3), .org-products-table.org-alerts-overview-table td:nth-child(3) { width: 16%; }
.org-products-table.org-alerts-overview-table th:nth-child(4), .org-products-table.org-alerts-overview-table td:nth-child(4) { width: 16%; }
.org-products-table.org-alerts-overview-table th:nth-child(5), .org-products-table.org-alerts-overview-table td:nth-child(5) { width: 31%; }
.org-alert-title-cell { color: #bac7d9; overflow-wrap: anywhere; }
.org-alert-asset-cell { display: flex; min-width: 0; align-items: center; flex-wrap: wrap; gap: 8px; color: #bac7d9; }
.org-alert-kind { display: inline-flex; flex: 0 0 auto; align-items: center; padding: 3px 7px; border: 1px solid rgba(92, 225, 210, .2); border-radius: 6px; color: #9ce9df; background: rgba(92, 225, 210, .06); font-size: 10px; font-weight: 700; white-space: nowrap; }
.org-alert-cve-label { color: #9ce9df !important; font: 700 11px/1.4 'DM Sans', sans-serif !important; letter-spacing: .25px !important; text-transform: none !important; }
.org-products-table.org-alerts-overview-table .org-products-table-date { white-space: nowrap; }
@media (max-width: 720px) {
  .org-products-table.org-alerts-overview-table { min-width: 760px; }
}

/* Keep the password-check action at the right edge of the breach recommendations. */
.detail-next-steps-top { display: flex; align-items: flex-start; justify-content: space-between; gap: 24px; margin-bottom: 18px; }
.detail-next-steps-top .detail-next-steps-heading { min-width: 0; flex: 1 1 auto; }
.password-check-recommendation-link { display: inline-flex; flex: 0 0 auto; align-items: center; justify-content: center; gap: 9px; margin-top: 1px; white-space: nowrap; }
/* Give the dedicated password checker a focused form and clear privacy feedback. */
.password-check-hero { margin-bottom: 18px; }
.password-check-panel { max-width: 850px; margin: 0 auto 20px; }
.password-check-panel > label { display: block; margin: 0 0 7px; color: #dce5f2; font-size: 13px; font-weight: 700; }
.password-check-controls { display: flex; align-items: stretch; gap: 10px; }
.password-check-controls input { width: 100%; min-width: 0; min-height: 44px; padding: 9px 12px; border: 1px solid rgba(151, 177, 211, .2); border-radius: 9px; outline: 0; color: var(--text); background: rgba(5, 11, 20, .62); font: 14px 'DM Sans', sans-serif; }
.password-check-controls input:focus { border-color: rgba(92, 225, 210, .65); box-shadow: 0 0 0 3px rgba(92, 225, 210, .08); }
.password-check-controls .btn { flex: 0 0 auto; min-height: 44px; padding: 10px 16px; }
.password-check-controls .btn:disabled { opacity: .65; cursor: wait; }
.password-check-privacy { margin: 11px 0 0; color: #8f9eb3; font-size: 12px; line-height: 1.65; }
.password-check-result { margin-top: 14px; padding: 12px 14px; border: 1px solid var(--line); border-radius: 9px; color: #b7c5d8; background: rgba(151, 177, 211, .05); font-size: 13px; line-height: 1.6; }
.password-check-result.is-pending { border-color: rgba(92, 225, 210, .24); color: #a2fff4; background: rgba(92, 225, 210, .05); }
.password-check-result.is-found { border-color: rgba(255, 112, 128, .34); color: #ffabb5; background: rgba(255, 75, 99, .08); }
.password-check-result.is-clear { border-color: rgba(91, 216, 159, .3); color: #a3e9c4; background: rgba(91, 216, 159, .06); }
.password-check-result.is-error { border-color: rgba(255, 183, 101, .32); color: #f2bd7f; background: rgba(255, 183, 101, .06); }
@media (max-width: 767.98px) {
  .detail-next-steps-top { align-items: stretch; flex-direction: column; gap: 12px; }
  .password-check-recommendation-link { align-self: flex-end; }
  .password-check-controls { align-items: stretch; flex-direction: column; }
  .password-check-controls .btn { align-self: flex-end; }
}

/* First-login feature tour. */
.onboarding-shell { max-width: 1120px; margin: 0 auto; }
.onboarding-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; margin: 0 0 22px; }
.onboarding-heading h1 { margin: 13px 0 8px; color: #edf4fb; font: 600 clamp(32px, 4.2vw, 48px)/1.1 'Space Grotesk', sans-serif; letter-spacing: -1.8px; }
.onboarding-heading h1 span { color: var(--cyan); }
.onboarding-heading p { max-width: 620px; margin: 0; color: #a2b2c6; font-size: 15px; }
.onboarding-counter { flex: 0 0 auto; padding: 8px 12px; border: 1px solid rgba(92, 225, 210, .22); border-radius: 999px; color: #79dfd1; background: rgba(92, 225, 210, .07); font-size: 12px; font-weight: 700; font-variant-numeric: tabular-nums; }
.onboarding-card { overflow: hidden; border: 1px solid rgba(119, 160, 203, .18); border-radius: 20px; background: linear-gradient(120deg, rgba(15, 28, 46, .98), rgba(10, 21, 36, .98)); box-shadow: 0 22px 65px rgba(0, 0, 0, .22); }
.onboarding-slide { display: grid; min-height: 360px; grid-template-columns: minmax(0, .92fr) minmax(360px, 1.08fr); align-items: center; gap: 34px; padding: 38px 46px; animation: onboarding-slide-in .32s ease both; }
.onboarding-slide[hidden] { display: none; }
.onboarding-copy { max-width: 475px; }
.onboarding-kicker { display: inline-block; margin-bottom: 15px; color: #70ddd0; font: 700 10px/1.3 'DM Sans', sans-serif; letter-spacing: 1.2px; }
.onboarding-copy h2 { margin: 0 0 13px; color: #e9f1f8; font: 600 clamp(25px, 3vw, 35px)/1.14 'Space Grotesk', sans-serif; letter-spacing: -.8px; }
.onboarding-copy p { margin: 0; color: #a5b5c8; font-size: 14px; line-height: 1.75; }
.onboarding-tags { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 20px; }
.onboarding-tags span { padding: 6px 10px; border: 1px solid rgba(132, 165, 199, .16); border-radius: 999px; color: #b8c9da; background: rgba(115, 148, 183, .07); font-size: 11px; font-weight: 600; }
.onboarding-illustration { display: flex; min-width: 0; align-items: center; justify-content: center; }
.onboarding-illustration svg { display: block; width: min(100%, 460px); height: auto; filter: drop-shadow(0 14px 24px rgba(0, 0, 0, .16)); }
.onboarding-footer { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 17px 28px; border-top: 1px solid rgba(132, 165, 199, .13); background: rgba(6, 14, 25, .38); }
.onboarding-progress { display: flex; align-items: center; gap: 7px; }
.onboarding-dot { display: block; width: 7px; height: 7px; border-radius: 999px; background: #40546b; transition: width .2s ease, background .2s ease; }
.onboarding-dot.is-active { width: 23px; background: var(--cyan); }
.onboarding-controls { display: flex; align-items: center; gap: 9px; }
.onboarding-controls button { min-height: 39px; padding: 9px 14px; border: 1px solid rgba(138, 165, 195, .2); border-radius: 9px; color: #c4d1df; background: rgba(108, 135, 164, .08); font: 600 12px 'DM Sans', sans-serif; cursor: pointer; transition: color .18s ease, border-color .18s ease, background .18s ease, opacity .18s ease; }
.onboarding-controls button:hover:not(:disabled) { border-color: rgba(92, 225, 210, .42); color: #86e7db; background: rgba(92, 225, 210, .08); }
.onboarding-controls button:disabled { opacity: .38; cursor: default; }
.onboarding-controls .onboarding-skip { margin-right: 7px; border-color: transparent; color: #96a7bb; background: transparent; }
.onboarding-controls .onboarding-skip:hover { border-color: transparent; color: #d2deea; background: transparent; }
.onboarding-controls .onboarding-next, .onboarding-controls .onboarding-finish { min-width: 104px; border-color: transparent; color: #07131c; background: linear-gradient(110deg, var(--cyan), #8ce4c7); font-weight: 700; }
.onboarding-controls .onboarding-next:hover, .onboarding-controls .onboarding-finish:hover { color: #07131c; background: linear-gradient(110deg, #76ebdb, #a0f0d3); }
.onboarding-controls button span { margin-left: 8px; font-size: 15px; }
@keyframes onboarding-slide-in { from { opacity: .45; transform: translateY(5px); } to { opacity: 1; transform: translateY(0); } }
@media (max-width: 767.98px) {
  .onboarding-heading { align-items: flex-start; }
  .onboarding-heading h1 { font-size: 34px; letter-spacing: -1.2px; }
  .onboarding-heading p { font-size: 13px; }
  .onboarding-counter { margin-top: 21px; }
  .onboarding-slide { min-height: 0; grid-template-columns: minmax(0, 1fr); gap: 20px; padding: 27px 22px 22px; }
  .onboarding-copy { max-width: none; }
  .onboarding-copy h2 { font-size: 27px; }
  .onboarding-illustration svg { max-height: 230px; }
  .onboarding-footer { align-items: flex-start; flex-direction: column-reverse; padding: 15px 19px; }
  .onboarding-controls { width: 100%; flex-wrap: wrap; }
  .onboarding-controls .onboarding-skip { margin-right: auto; padding-left: 0; }
}
@media (prefers-reduced-motion: reduce) { .onboarding-slide { animation: none; } }

/* Match the two-factor login and enrollment screens to the account area. */
.two-factor-panel { max-width: 700px; margin: 0 auto; padding: 30px; }
.password-reset-panel { max-width: 620px; }
.password-reset-link-row { margin: -5px 0 14px; text-align: right; }
.password-reset-link-row a, .password-reset-back a { color: #75ddd2; font-size: 13px; font-weight: 600; }
.password-reset-link-row a:hover, .password-reset-back a:hover { color: #b8fff5; }
.login-form-actions { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin: 4px 0 8px; }
.login-forgot-link { color: #75ddd2; font-size: 13px; font-weight: 600; }
.login-forgot-link:hover { color: #b8fff5; }
.login-form-actions .btn { margin: 0; }
.password-reset-back { margin: 18px 0 0; }
.password-reset-back-top { margin: 0 0 12px; }
.password-reset-panel .two-factor-form { display: grid; gap: 8px; }
.password-reset-panel .two-factor-form label { margin: 5px 0 0; }
.password-reset-panel .two-factor-form .btn { justify-self: start; margin-top: 8px; }
.password-reset-panel .org-form-error { color: #ff9e9e; font-size: 12px; }
.register-panel { max-width: 700px; }
.register-panel .two-factor-form { display: grid; gap: 13px; }
.register-panel .two-factor-form > .btn { justify-self: start; width: auto; margin: 0; }
.register-panel .register-field label { margin: 0 0 6px; }
.register-panel .register-help { margin-top: 5px; color: #8393a9; font-size: 11px; line-height: 1.5; }
.register-panel .register-help ul { margin: 5px 0 0; padding-left: 17px; }
.register-panel .register-field .org-form-error { display: block; margin-top: 5px; color: #ff9e9e; font-size: 12px; }
.register-panel .password-reset-back { padding-top: 14px; border-top: 1px solid rgba(151, 177, 211, .14); color: #9eacc0; }
.two-factor-panel h1 { margin: 9px 0 10px; color: #e7eff8; font: 600 29px/1.2 'Space Grotesk', sans-serif; }
.two-factor-panel > p:not(.profile-kicker) { color: #a4b3c6; font-size: 14px; line-height: 1.65; }
.two-factor-panel .two-factor-form p { margin: 0 0 15px; }
.two-factor-panel .two-factor-form label { display: block; margin-bottom: 6px; color: #d8e2ef; font-weight: 600; }
.two-factor-panel .two-factor-form input:not([type="hidden"]), .two-factor-panel .two-factor-form select { width: 100%; min-height: 42px; padding: 9px 11px; border: 1px solid rgba(151, 177, 211, .22); border-radius: 8px; outline: 0; color: var(--text); background: rgba(5, 11, 20, .62); }
.two-factor-panel .two-factor-form p:has(.trust-browser-checkbox) { display: flex; align-items: center; gap: 8px; }
.two-factor-panel .two-factor-form p:has(.trust-browser-checkbox) label { margin: 0; }
.two-factor-panel .two-factor-form input[type="checkbox"].trust-browser-checkbox { width: 1em; height: 1em; min-height: 0; flex: 0 0 1em; margin: 0; padding: 0; accent-color: var(--cyan); }
.two-factor-panel .two-factor-form input:focus, .two-factor-panel .two-factor-form select:focus { border-color: rgba(92, 225, 210, .65); box-shadow: 0 0 0 3px rgba(92, 225, 210, .08); }
.two-factor-panel .two-factor-form ul.errorlist { padding: 0; color: #ff9e9e; list-style: none; }
.two-factor-panel .two-factor-form .btn { margin: 5px 8px 0 0; }
.two-factor-panel .two-factor-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 18px; }
.two-factor-panel .two-factor-actions .btn { margin: 0; }
.two-factor-backup-form { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; margin-top: 22px; padding-top: 16px; border-top: 1px solid rgba(151, 177, 211, .14); }
.two-factor-backup-form p { margin: 0; color: #9eacc0; font-size: 12px; }
.two-factor-backup-form .btn-link { padding: 0; color: #73dacc; font-size: 12px; }
.two-factor-alt-methods { display: grid; gap: 8px; margin-top: 17px; padding-top: 15px; border-top: 1px solid rgba(151, 177, 211, .14); }
.two-factor-alt-methods p { color: #9eacc0; font-size: 12px; }
.two-factor-qr { width: fit-content; margin: 15px 0; padding: 12px; border-radius: 10px; background: #fff; }
.two-factor-qr img { display: block; width: 190px; height: 190px; }
.two-factor-secret-label { margin: 14px 0 6px !important; color: #b8c7d9 !important; font-size: 12px !important; }
.two-factor-secret { display: inline-block; max-width: 100%; overflow-wrap: anywhere; padding: 9px 12px; border: 1px solid rgba(92, 225, 210, .2); border-radius: 7px; color: #89e5d8; background: rgba(92, 225, 210, .06); letter-spacing: 1px; }
.two-factor-token-help { margin: 14px 0; padding: 11px 13px; border: 1px solid rgba(255, 183, 77, .28); border-radius: 8px; color: #f2c77f !important; background: rgba(255, 183, 77, .07); font-size: 13px !important; }
.two-factor-token-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin: 18px 0; padding: 0; list-style: none; }
.two-factor-token-list code { display: block; padding: 10px 12px; border: 1px solid rgba(151, 177, 211, .16); border-radius: 7px; color: #dce6f3; background: rgba(5, 11, 20, .5); font-size: 14px; letter-spacing: 1px; text-align: center; }
@media (max-width: 767.98px) { .two-factor-panel { padding: 23px 19px; } .two-factor-panel h1 { font-size: 25px; } }
@media (max-width: 480px) { .two-factor-token-list { grid-template-columns: 1fr; } }

/* Style the live search feedback and clear control to match the catalogue forms. */
button.breach-search-clear { padding: 0; border: 0; background: transparent; font-family: 'DM Sans', sans-serif; cursor: pointer; }
button.breach-search-clear:hover { color: var(--cyan); }
.live-search-status { display: block; margin: 8px 2px 0; color: #9eacc0; font-size: 12px; line-height: 1.4; }
.live-search-status[hidden] { display: none; }

/* Public pricing overview, aligned with the dark catalogue panels. */
.pricing-hero { margin-bottom: 18px; }
.pricing-hero > p { margin-bottom: 14px; }
.pricing-availability { display: inline-flex; align-items: center; gap: 8px; padding: 7px 10px; border: 1px solid rgba(92, 225, 210, .2); border-radius: 999px; color: #9edfd7; background: rgba(92, 225, 210, .055); font-size: 11px; font-weight: 600; }
.pricing-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); align-items: stretch; gap: 13px; }
.pricing-card { position: relative; display: flex; min-width: 0; flex-direction: column; padding: 20px 19px 18px; overflow: hidden; border: 1px solid rgba(132, 161, 195, .17); border-radius: 15px; background: linear-gradient(155deg, rgba(17, 28, 45, .96), rgba(10, 18, 31, .96)); box-shadow: 0 13px 34px rgba(0, 0, 0, .14); }
.pricing-card-featured { border-color: rgba(92, 225, 210, .42); box-shadow: 0 14px 38px rgba(0, 0, 0, .17), inset 0 1px rgba(92, 225, 210, .1); }
.pricing-card-custom { background: linear-gradient(155deg, rgba(24, 27, 47, .96), rgba(12, 18, 32, .96)); }
.pricing-recommended { position: absolute; top: 0; right: 0; padding: 6px 9px; border-bottom-left-radius: 9px; color: #07131c; background: linear-gradient(100deg, #67e3d3, #8be7c6); font-size: 8px; font-weight: 800; letter-spacing: .65px; }
.pricing-card-top { display: flex; min-height: 53px; align-items: center; justify-content: space-between; gap: 8px; }
.pricing-plan-kicker { color: #7f92aa; font-size: 9px; font-weight: 700; letter-spacing: 1px; }
.pricing-card h2 { margin: 3px 0 0; color: #e7eef7; font: 600 22px/1.15 'Space Grotesk', sans-serif; letter-spacing: -.4px; }
.pricing-plan-mark { color: rgba(135, 161, 190, .28); font: 600 22px 'Space Grotesk', sans-serif; }
.pricing-intro { min-height: 57px; margin: 13px 0; color: #a5b4c7; font-size: 12px; line-height: 1.55; }
.pricing-limit { display: grid; grid-template-columns: auto 1fr auto 1fr; align-items: baseline; gap: 5px 7px; padding: 11px 10px; border: 1px solid rgba(139, 164, 194, .12); border-radius: 10px; background: rgba(5, 11, 20, .34); }
.pricing-limit strong { color: #85e4d8; font: 600 21px/1 'Space Grotesk', sans-serif; }
.pricing-limit span { color: #8797ac; font-size: 10px; }
.pricing-custom-limits { display: grid; min-height: 48px; place-items: center; padding: 8px; border: 1px solid rgba(184, 145, 255, .21); border-radius: 10px; color: #d0b8ff; background: rgba(184, 145, 255, .055); font: 600 14px 'Space Grotesk', sans-serif; }
.pricing-features { display: grid; gap: 0; margin: 16px 0 19px; padding: 0; list-style: none; }
.pricing-features li { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: start; gap: 5px 7px; min-height: 36px; padding: 8px 0; border-bottom: 1px solid rgba(132, 161, 195, .09); color: #bdcad9; font-size: 11px; line-height: 1.4; }
.pricing-features li > span { grid-column: 1; grid-row: 1; }
.pricing-features li > small { grid-column: 2; grid-row: 1; color: #76d9c9; font-size: 9px; line-height: 1.5; text-align: right; white-space: nowrap; }
.pricing-features li.is-unavailable { color: #728198; }
.pricing-features li.is-unavailable > small { color: #8390a3; }
.pricing-action { display: flex; min-height: 39px; align-items: center; justify-content: space-between; gap: 8px; margin-top: auto; padding: 9px 11px; border: 1px solid rgba(92, 225, 210, .2); border-radius: 8px; color: #a8f0e7; background: rgba(92, 225, 210, .055); font-size: 11px; font-weight: 700; text-decoration: none; transition: border-color .18s ease, background .18s ease, transform .18s ease; }
.pricing-action:hover, .pricing-action:focus-visible { transform: translateY(-1px); border-color: rgba(92, 225, 210, .52); color: #c9fff7; background: rgba(92, 225, 210, .11); text-decoration: none; }
.pricing-card-featured .pricing-action { border-color: transparent; color: #07131c; background: linear-gradient(105deg, #67e3d3, #8be7c6); }
.pricing-card-featured .pricing-action:hover, .pricing-card-featured .pricing-action:focus-visible { color: #07131c; background: linear-gradient(105deg, #86eee1, #a5f1d4); }
.pricing-action-form { width: 100%; margin-top: auto; }
.pricing-action-button { width: 100%; font: inherit; text-align: left; cursor: pointer; }
.pricing-action-button:disabled { opacity: .72; cursor: default; transform: none; }
.org-plan-approval-limits { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; margin: 0 0 9px; }
.org-plan-approval-limits label { display: grid; gap: 4px; color: #9eacc0; font-size: 9px; }
.org-plan-approval-limits input { width: 100%; min-width: 0; height: 31px; padding: 5px 7px; border: 1px solid rgba(132, 161, 195, .2); border-radius: 6px; color: #dce6f3; background: rgba(5, 11, 20, .55); font: 500 11px 'DM Sans', sans-serif; }
.org-plan-approval-limits input:focus { border-color: rgba(92, 225, 210, .55); outline: 2px solid rgba(92, 225, 210, .12); }
.org-watch-actions form { max-width: 100%; }
.pricing-footnote { margin: 13px 2px 28px; color: #77879d; font-size: 10px; line-height: 1.5; }
@media (max-width: 1100px) { .pricing-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 560px) { .pricing-grid { grid-template-columns: minmax(0, 1fr); gap: 10px; }.pricing-card { padding: 19px; }.pricing-intro { min-height: 0; }.pricing-recommended { font-size: 7px; }.pricing-features li { font-size: 11px; }.pricing-features li > small { font-size: 9px; } }

/* Compact 404 card follows the login page layout; the mascot blends into the app background. */
.error-404-body { display: grid; min-height: 100vh; place-items: center; padding: 24px; color: #edf3f9; background: radial-gradient(ellipse at 15% 0%, rgba(57, 118, 177, .18), transparent 34rem), radial-gradient(ellipse at 95% 24%, rgba(38, 194, 179, .10), transparent 28rem), var(--bg); }
.error-404-shell { display: flex; width: min(100%, 820px); min-height: 0; flex-direction: column; align-items: center; justify-content: center; gap: 0; margin: 0; padding: clamp(24px, 4vw, 42px); text-align: center; }
.error-404-chameleon { display: block; width: min(28vw, 270px); aspect-ratio: 1; margin: 0 0 18px; border: 0; border-radius: 0; background: transparent; object-fit: contain; box-shadow: none; }
.error-404-shell h1 { max-width: 720px; margin: 0 0 12px; color: #f2f6fa; font: 700 clamp(26px, 3vw, 38px)/1.15 'Space Grotesk', sans-serif; letter-spacing: -1.1px; }
.error-404-shell p { max-width: 620px; margin: 0 0 22px; color: #d2dce7; font: 400 clamp(15px, 1.3vw, 18px)/1.55 'DM Sans', sans-serif; }
.error-404-home { gap: 8px; padding: 9px 14px; text-decoration: none; }
.error-404-home svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.8; }
@media (max-width: 700px) {
  .error-404-body { padding: 16px; }
  .error-404-shell { width: 100%; padding: 25px 19px; }
  .error-404-chameleon { width: min(64vw, 230px); margin-bottom: 16px; }
  .error-404-shell h1 { margin-bottom: 11px; letter-spacing: -.8px; }
  .error-404-shell p { margin-bottom: 22px; }
}

/* Keep text actions consistent throughout the application. Icon-only controls
   (refresh, clear, notification, language and navigation) retain their compact sizes. */
:root {
  --action-button-height: 40px;
  --action-button-padding-x: 14px;
  --action-button-radius: 8px;
  --action-button-font-size: 12px;
}

.btn:not(.btn-link),
.org-primary-button,
.org-secondary-button,
.org-remove-button,
.page-back-button,
.pagination-button,
.vuln-pagination a,
.vuln-search button,
.breach-name-search button,
.vuln-deep-search-prompt button,
.hero-search button,
.cookie-notice-dismiss,
.terms-accept-controls button,
.onboarding-controls button,
.org-products-inventory-search .org-products-search-submit,
.org-add-item-action,
.org-member-account-edit > summary {
  box-sizing: border-box;
  min-height: var(--action-button-height) !important;
  padding: 9px var(--action-button-padding-x) !important;
  border-radius: var(--action-button-radius);
  font-size: var(--action-button-font-size) !important;
  line-height: 1.2;
}

.btn:not(.btn-link),
.org-primary-button,
.org-secondary-button,
.org-remove-button,
.page-back-button,
.pagination-button,
.vuln-pagination a,
.vuln-search button,
.breach-name-search button,
.vuln-deep-search-prompt button,
.hero-search button,
.cookie-notice-dismiss,
.terms-accept-controls button,
.onboarding-controls button,
.org-products-inventory-search .org-products-search-submit,
.org-add-item-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

/* The plus-only add control remains square while matching the common action height. */
.org-products-search-add {
  box-sizing: border-box;
  width: 40px;
  min-width: 40px;
  height: 40px;
  min-height: 40px !important;
  flex-basis: 40px;
  padding: 0 !important;
}

.vuln-pagination a {
  border: 1px solid rgba(92, 225, 210, .2);
  color: var(--cyan);
  background: rgba(92, 225, 210, .05);
  font-weight: 700;
  text-decoration: none;
}
.vuln-pagination a:hover,
.vuln-pagination a:focus-visible {
  border-color: rgba(92, 225, 210, .48);
  background: rgba(92, 225, 210, .1);
  text-decoration: none;
}

.pricing-action {
  box-sizing: border-box;
  min-height: var(--action-button-height);
  padding: 9px var(--action-button-padding-x);
  border-radius: var(--action-button-radius);
  font-size: var(--action-button-font-size);
  line-height: 1.2;
}

/* Keep status actions the same height as their neighboring controls. */
.org-alert-status-form .org-secondary-button,
.org-member-role-form .org-secondary-button,
.platform-user-membership-actions .org-secondary-button,
.platform-user-membership-actions .org-remove-button,
.org-item-settings-actions > a,
.org-item-settings-actions > form > button,
.org-product-add-form .org-item-edit-actions > .btn,
.org-product-add-form .org-item-edit-actions > .org-secondary-button,
.org-product-add-import .org-csv-form button {
  box-sizing: border-box;
  min-height: var(--action-button-height) !important;
  height: var(--action-button-height) !important;
}

/* Preserve the intentionally compact platform access save control. */
.platform-site-access-form > .org-primary-button {
  min-height: 32px !important;
  height: 32px !important;
  padding: 6px 11px !important;
  font-size: 11px !important;
}

@media (max-width: 600px) {
  .btn:not(.btn-link),
  .org-primary-button,
  .org-secondary-button,
  .org-remove-button,
  .page-back-button,
  .pagination-button,
  .vuln-pagination a,
  .vuln-search button,
  .breach-name-search button,
  .vuln-deep-search-prompt button,
  .hero-search button,
  .cookie-notice-dismiss,
  .terms-accept-controls button,
  .onboarding-controls button,
  .org-products-inventory-search .org-products-search-submit,
  .org-add-item-action {
    min-height: var(--action-button-height) !important;
  }
}
