.cvss-page .section-heading h2 { font-size: 3.04rem; }
.cvss-shell { display: grid; grid-template-columns: 180px minmax(0, 1fr); gap: 18px; align-items: start; }
.cvss-tabs { display: grid; gap: 10px; position: sticky; top: 104px; }
.cvss-tabs button { min-height: 46px; border: 1px solid var(--line); border-radius: 8px; background: #fff; color: var(--blue); font: inherit; font-weight: 900; cursor: pointer; text-align: left; padding: 0 14px; }
.cvss-tabs button.active, .cvss-tabs button:hover { background: var(--blue); color: #fff; }
.cvss-panel { display: grid; gap: 16px; }
.cvss-score-card, .cvss-vector, .cvss-group { border: 1px solid var(--line); border-radius: 8px; background: #fff; box-shadow: none; }
.cvss-score-card { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 22px; color: var(--blue); }
.cvss-score-card span, .cvss-vector span, .cvss-group h3 { display: block; margin: 0; color: var(--blue); font-size: 0.78rem; font-weight: 900; text-transform: uppercase; }
.cvss-score-card strong { display: block; color: var(--blue-dark); font-size: clamp(3rem, 7vw, 5.5rem); line-height: 0.9; }
.cvss-score-card p { margin: 0; color: var(--blue-dark); font-size: 1.5rem; font-weight: 900; }
.cvss-form { display: grid; gap: 16px; }
.cvss-group { padding: 18px; }
.cvss-group h3 { margin-bottom: 14px; }
.cvss-fields { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.cvss-field { display: grid; gap: 7px; color: var(--blue-dark); font-weight: 900; }
.cvss-field label { font-size: 0.9rem; }
.cvss-field select { width: 100%; min-height: 44px; border: 1px solid var(--line); border-radius: 8px; padding: 0 10px; color: var(--ink); background: #fff; font: inherit; font-weight: 800; }
.cvss-vector { padding: 18px; display: grid; gap: 8px; }
.cvss-vector code { display: block; white-space: normal; overflow-wrap: anywhere; color: var(--blue-dark); font-weight: 900; }
@media (max-width: 980px) { .cvss-shell { grid-template-columns: 1fr; } .cvss-tabs { position: static; grid-template-columns: repeat(5, minmax(0, 1fr)); } .cvss-tabs button { text-align: center; padding-inline: 8px; } .cvss-fields { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 760px) { .cvss-tabs, .cvss-fields { grid-template-columns: 1fr; } .cvss-score-card { align-items: flex-start; flex-direction: column; } }
