/* Source-first vendor workbench within the Command Center shell. */
.vendor-body .cyber-rail-nav a:first-child { border-left-color: transparent; background: transparent; color: var(--cyber-muted); }
.vendor-body .cyber-rail-nav a:first-child > span { color: var(--cyber-subtle); }
.vendor-body .cyber-rail-nav a[aria-current="page"] { border-left: 2px solid var(--cyber-cyan); background: #173c49; color: var(--cyber-cyan); }
.vendor-body .cyber-rail-nav a[aria-current="page"] > span { color: var(--cyber-cyan); }
.vendor-page { display: block; min-width: 0; padding: 0 24px 76px; }
.vendor-page .cyber-utility a { color: var(--cyber-muted); text-decoration: none; }
.vendor-page .cyber-utility a:hover { color: var(--cyber-cyan); }
.vendor-page :is(button, input, textarea, select):focus-visible { outline: 3px solid #f3c679; outline-offset: 2px; }
.vendor-heading { padding: 25px 0 20px; }
.vendor-kicker, .vendor-step { display: block; margin: 0 0 9px; color: var(--cyber-cyan); font-size: .65rem; font-weight: 850; letter-spacing: .15em; text-transform: uppercase; }
.vendor-heading h1 { margin: 0; font-size: clamp(2.1rem, 3.4vw, 3.35rem); line-height: 1.08; letter-spacing: -.05em; }
.vendor-heading h1 span { color: var(--cyber-cyan); }
.vendor-heading > p:last-child { max-width: 780px; margin: 9px 0 0; color: var(--cyber-muted); font-size: .86rem; }
.vendor-privacy { display: flex; align-items: center; gap: 13px; padding: 15px 18px; border: 1px solid #3a5c62; border-left: 3px solid var(--cyber-mint); border-radius: 7px; background: #122528; }
.vendor-privacy > span { align-self: start; color: var(--cyber-mint); font-size: 1.2rem; }
.vendor-privacy > div { min-width: 0; flex: 1; }
.vendor-privacy h2 { margin: 0; font-size: .88rem; }
.vendor-privacy p { max-width: 870px; margin: 4px 0 0; color: #b8d1cd; font-size: .72rem; }
.vendor-privacy a { flex: 0 0 auto; color: var(--cyber-mint); font-size: .7rem; font-weight: 750; text-decoration: none; }
.vendor-privacy a:hover { text-decoration: underline; }
.vendor-metrics { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; margin: 16px 0 19px; }
.vendor-metrics > div { min-width: 0; padding: 16px; border: 1px solid var(--cyber-line); border-radius: 7px; background: var(--cyber-surface); }
.vendor-metrics span { display: block; color: var(--cyber-muted); font-size: .68rem; }
.vendor-metrics strong { display: block; margin: 6px 0 2px; font-size: clamp(1.55rem, 2.4vw, 2.2rem); font-variant-numeric: tabular-nums; line-height: 1.05; }
.vendor-metrics > div:nth-child(2) strong { color: var(--cyber-mint); }
.vendor-metrics > div:nth-child(3) strong { color: #f2bd78; }
.vendor-metrics small, .vendor-metrics small span { display: inline; color: var(--cyber-subtle); font-size: .61rem; line-height: 1.3; }
.vendor-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(260px, 300px); gap: 16px; align-items: start; }
.vendor-main, .vendor-sidebar { display: grid; gap: 16px; min-width: 0; }
.vendor-panel { min-width: 0; padding: 21px; border: 1px solid var(--cyber-line); border-radius: 8px; background: #0f1927; }
.vendor-panel-head { display: grid; grid-template-columns: 92px minmax(0, 1fr); gap: 15px; margin-bottom: 20px; }
.vendor-panel-head .vendor-step { margin: 4px 0 0; }
.vendor-panel h2 { margin: 0; font-size: clamp(1.25rem, 1.7vw, 1.7rem); line-height: 1.2; letter-spacing: -.035em; }
.vendor-panel-head p, .vendor-sidebar section > p:not(.vendor-step) { margin: 7px 0 0; color: var(--cyber-muted); font-size: .74rem; }
.vendor-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 15px; }
.vendor-wide { grid-column: 1 / -1; }
.vendor-field { min-width: 0; }
.vendor-field label { display: block; margin: 0 0 6px; color: #c3d1df; font-size: .68rem; font-weight: 750; }
.vendor-field :is(input, textarea, select) { display: block; width: 100%; min-width: 0; min-height: 40px; padding: 9px 11px; border: 1px solid #3a4e65; border-radius: 5px; background: #0b1421; color: var(--cyber-ink); font: inherit; font-size: .75rem; line-height: 1.4; }
.vendor-field textarea { resize: vertical; }
.vendor-field input::placeholder, .vendor-field textarea::placeholder { color: #7c8fa5; }
.vendor-field small { display: block; margin: 5px 0 0; color: var(--cyber-subtle); font-size: .63rem; line-height: 1.4; }
.vendor-toolbar { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 12px; margin-bottom: 18px; padding: 10px; border: 1px solid var(--cyber-line-soft); border-radius: 6px; background: #111e2e; }
.vendor-tabs { display: flex; gap: 7px; flex-wrap: wrap; min-width: 0; }
.vendor-page button { cursor: pointer; font: inherit; }
.vendor-tabs button, .vendor-button, .vendor-inline-button, .vendor-remove { min-height: 34px; padding: 7px 11px; border: 1px solid #3b526c; border-radius: 5px; background: #18283a; color: #cddded; font-size: .69rem; font-weight: 750; }
.vendor-tabs button[aria-pressed="true"] { border-color: var(--cyber-cyan); background: #173b49; color: var(--cyber-cyan); }
.vendor-tabs button:hover, .vendor-button:hover, .vendor-inline-button:hover { border-color: var(--cyber-cyan); color: #fff; }
.vendor-inline-button { margin-top: 12px; }
.vendor-remove { border-color: #744c4d; background: #2c1b26; color: #ffb4a4; }
.vendor-remove:hover { border-color: #f3a292; }
.vendor-editor-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 13px; }
.vendor-editor-head h3 { margin: 0; font-size: 1rem; }
.vendor-section { padding: 17px 0; border-top: 1px solid var(--cyber-line-soft); }
#value { scroll-margin-top: 90px; }
.vendor-section:first-of-type { padding-top: 2px; border-top: 0; }
.vendor-section-head { display: flex; align-items: start; justify-content: space-between; gap: 16px; margin-bottom: 14px; }
.vendor-section h3 { margin: 0; font-size: .91rem; }
.vendor-section p { margin: 4px 0 0; color: var(--cyber-muted); font-size: .69rem; }
.vendor-section-tag { flex: 0 0 auto; padding: 4px 6px; border: 1px solid #284b55; border-radius: 4px; background: #132b36; color: var(--cyber-cyan); font-size: .56rem; font-weight: 850; letter-spacing: .07em; }
.vendor-repeat { display: grid; gap: 10px; }
.vendor-record { padding: 14px; border: 1px solid #2c3d54; border-radius: 6px; background: #111e2d; }
.vendor-record-head { display: flex; justify-content: space-between; align-items: start; gap: 10px; margin-bottom: 10px; }
.vendor-record-head h4 { margin: 0; font-size: .77rem; }
.vendor-record-head p { margin-top: 3px; font-size: .65rem; }
.vendor-record .vendor-fields { gap: 12px; }
.vendor-record .vendor-remove { min-height: 28px; padding: 4px 7px; font-size: .62rem; }
.vendor-checklist { display: grid; gap: 9px; }
.vendor-check { padding: 13px; border: 1px solid #2b3f50; border-radius: 6px; background: #101f2a; }
.vendor-check > h4 { margin: 0 0 4px; color: #e2f7f5; font-size: .77rem; }
.vendor-check > p { margin: 0 0 11px; color: #a8c5c5; font-size: .67rem; }
.vendor-check .vendor-fields { gap: 10px; }
.vendor-roi-result { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin-top: 13px; }
.vendor-roi-result > div { padding: 12px; border: 1px solid #31545a; border-radius: 5px; background: #102a32; }
.vendor-roi-result span { display: block; color: #a9cbc8; font-size: .61rem; }
.vendor-roi-result strong { display: block; margin-top: 5px; color: #d9f9e9; font-size: 1.05rem; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.vendor-roi-note { margin-top: 9px !important; }
.vendor-comparison { min-width: 0; overflow-x: auto; }
.vendor-comparison table { width: 100%; min-width: 610px; border-collapse: collapse; font-size: .69rem; }
.vendor-comparison th, .vendor-comparison td { padding: 10px; border: 1px solid #2b3e52; text-align: left; vertical-align: top; overflow-wrap: anywhere; }
.vendor-comparison thead th { background: #163041; color: #d8f7f9; font-size: .72rem; }
.vendor-comparison tbody th { width: 155px; background: #101e2c; color: #c3d5e4; font-weight: 750; }
.vendor-comparison td { background: #0e1b2a; color: #c7d6e4; }
.vendor-comparison td a { color: var(--cyber-cyan); overflow-wrap: anywhere; }
.vendor-comparison .vendor-muted { color: var(--cyber-subtle); }
.vendor-export button { display: block; width: 100%; min-height: 38px; margin: 10px 0 0; padding: 9px; border: 1px solid #43889b; border-radius: 5px; background: #184655; color: #dcfaff; font-size: .7rem; font-weight: 800; }
.vendor-export button:hover { background: #225b68; }
.vendor-export .vendor-field { margin-top: 17px; }
.vendor-export .vendor-reset { border-color: #6c5155; background: #34222c; color: #ffd4cc; }
.vendor-export .vendor-reset:hover { background: #493039; }
#vendor-message { padding: 9px; border-left: 2px solid var(--cyber-cyan); background: #122334; color: #d3e7e6; }
.vendor-sources a { display: block; margin-top: 12px; color: var(--cyber-cyan); font-size: .7rem; line-height: 1.4; text-decoration: none; }
.vendor-sources a:hover { text-decoration: underline; }
.vendor-limits { border-color: #416255; background: #10261f; }
.vendor-limits .vendor-step { color: var(--cyber-mint); }
@media (max-width: 1120px) { .vendor-grid { grid-template-columns: 1fr; } .vendor-sidebar { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 760px) { .vendor-page { padding: 0 16px 50px; } .vendor-sidebar { grid-template-columns: 1fr; } .vendor-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); } .vendor-privacy { align-items: start; flex-wrap: wrap; } .vendor-privacy a { margin-left: 27px; } }
@media (max-width: 540px) { .vendor-heading { padding-top: 18px; } .vendor-panel { padding: 16px; } .vendor-panel-head { grid-template-columns: 1fr; gap: 2px; } .vendor-fields, .vendor-record .vendor-fields, .vendor-check .vendor-fields { grid-template-columns: 1fr; } .vendor-wide { grid-column: auto; } .vendor-roi-result { grid-template-columns: 1fr; } .vendor-section-head { flex-direction: column; gap: 5px; } .vendor-toolbar { align-items: stretch; } .vendor-toolbar > button { width: 100%; } .vendor-privacy a { margin-left: 0; } }
@media (max-width: 340px) { .vendor-metrics { gap: 7px; } .vendor-metrics > div { padding: 11px; } .vendor-panel { padding: 12px; } .vendor-page { padding-inline: 12px; } }
