.bs-brand-v2 {
    --brand-cyan: #08b8c7;
    --brand-cyan-2: #19d3c2;
    --brand-teal: #087d88;
    --brand-deep: #061f25;
    --brand-deep-2: #074b55;
    --brand-ink: #173a41;
    --brand-text: #50676c;
    --brand-muted: #7d9297;
    --brand-pale: #eefafb;
    --brand-line: #dcecef;
    --brand-shadow: 0 14px 38px rgba(6, 63, 71, .10);
    background: #f2f5f6;
    color: var(--brand-text);
    font-family: "Microsoft YaHei", "PingFang SC", "Noto Sans CJK SC", Arial, sans-serif;
    font-size: 14px;
    line-height: 1.68;
    min-height: 100vh;
}

.bs-brand-v2,
.bs-brand-v2 * { box-sizing: border-box; }
.bs-brand-v2 a { color: inherit; text-decoration: none; }
.bs-brand-v2 a:hover { color: inherit; }
.bs-brand-v2-shell { margin: 0 auto; max-width: 1220px; padding-left: 24px; padding-right: 24px; }
.bs-brand-v2-content { padding-bottom: 54px; padding-top: 22px; }
.bs-brand-v2-card {
    background: #fff;
    border: 1px solid #e0ecee;
    border-radius: 18px;
    box-shadow: var(--brand-shadow);
}

.bs-brand-v2-topbar {
    background: linear-gradient(90deg, #05262d, #07515b 58%, #07909b);
    border-bottom: 4px solid transparent;
    border-image: linear-gradient(90deg, #0b1d21 0%, #0b1d21 44%, #18d8cb 50%, #0b1d21 56%, #0b1d21 100%) 1;
    color: #fff;
}
.bs-brand-v2-topbar-inner {
    align-items: center;
    display: flex;
    font-size: 12px;
    gap: 20px;
    justify-content: space-between;
    padding-bottom: 12px;
    padding-top: 12px;
}
.bs-brand-v2-topbar-inner span { opacity: .7; }
.bs-brand-v2-topbar-inner > div:last-child { color: #c9f7f4; font-size: 11px; }

.bs-brand-v2-hero { overflow: hidden; }
.bs-brand-v2-hero-strip { background: linear-gradient(90deg, #0bbbc8, #1dd6c4, #087f8b); height: 8px; }
.bs-brand-v2-hero-grid {
    display: grid;
    gap: 22px;
    grid-template-columns: minmax(0, 1.5fr) minmax(280px, .72fr);
    padding: 24px;
}
.bs-brand-v2-company-row { align-items: flex-start; display: flex; gap: 16px; }
.bs-brand-v2-logo {
    align-items: center;
    background: #fff;
    border: 1px solid var(--brand-line);
    border-radius: 19px;
    display: flex;
    flex: 0 0 auto;
    height: 78px;
    justify-content: center;
    overflow: hidden;
    width: 78px;
}
.bs-brand-v2-logo img { height: 100%; object-fit: contain; padding: 7px; width: 100%; }
.bs-brand-v2-company-title { min-width: 0; }
.bs-brand-v2-company-title h1 {
    color: var(--brand-ink);
    font-size: 30px;
    letter-spacing: -.035em;
    line-height: 1.2;
    margin: 0;
}
.bs-brand-v2-identities { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 7px; }
.bs-brand-v2-identities span {
    background: #fbfefe;
    border: 1px solid var(--brand-line);
    border-radius: 999px;
    color: #6d8388;
    font-size: 10px;
    padding: 4px 8px;
}
.bs-brand-v2-positioning {
    color: #143a42;
    font-size: 15px;
    font-weight: 800;
    margin: 14px 0 8px;
}
.bs-brand-v2-summary { color: #5d7277; font-size: 12.5px; margin: 0; }
.bs-brand-v2-chips { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 14px; }
.bs-brand-v2-chip {
    background: #f3feff;
    border: 1px solid #bfe7ea;
    border-radius: 999px;
    color: #087b86;
    font-size: 10.5px;
    padding: 4px 9px;
}
.bs-brand-v2-chip.primary { background: #073f48; border-color: #073f48; color: #fff; }
.bs-brand-v2-chip.gold { background: #fff7e8; border-color: #f0d59e; color: #a26917; }
.bs-brand-v2-hero-note {
    background: linear-gradient(90deg, #effbfc, #f8ffff);
    border-left: 4px solid var(--brand-cyan);
    border-radius: 12px;
    color: #4d6b71;
    font-size: 11px;
    margin-top: 15px;
    padding: 12px 14px;
}
.bs-brand-v2-hero-note strong { color: #116f79; }

.bs-brand-v2-overview {
    align-self: stretch;
    background: linear-gradient(180deg, #effcfd, #eaf7f8);
    border: 1px solid #cce8eb;
    border-radius: 16px;
    padding: 18px;
}
.bs-brand-v2-overview h2 { color: #0b6771; font-size: 15px; margin: 0 0 12px; }
.bs-brand-v2-overview > div {
    border-bottom: 1px dashed #c9e1e4;
    display: grid;
    font-size: 11px;
    gap: 10px;
    grid-template-columns: 105px 1fr;
    padding: 8px 0;
}
.bs-brand-v2-overview > div:last-child { border-bottom: 0; }
.bs-brand-v2-overview span { color: #748a8f; }
.bs-brand-v2-overview b { color: #28494f; font-weight: 700; text-align: right; }
.bs-brand-v2-overview a { color: var(--brand-teal); }

.bs-brand-v2-section { margin-top: 22px; scroll-margin-top: 90px; }
.bs-brand-v2-section-head {
    align-items: flex-end;
    display: flex;
    gap: 18px;
    justify-content: space-between;
    margin-bottom: 12px;
}
.bs-brand-v2-section-head h2 {
    color: var(--brand-ink);
    font-size: 20px;
    line-height: 1.2;
    margin: 0;
}
.bs-brand-v2-section-head h2::after {
    background: linear-gradient(90deg, var(--brand-cyan), var(--brand-cyan-2));
    border-radius: 4px;
    content: "";
    display: block;
    height: 3px;
    margin-top: 8px;
    width: 44px;
}
.bs-brand-v2-section-head p { color: var(--brand-muted); font-size: 11px; margin: 0; text-align: right; }

.bs-brand-v2-industry-panel { padding: 16px; }
.bs-brand-v2-core-industry {
    align-items: center;
    background: linear-gradient(110deg, #062b32, #075c67);
    border-radius: 16px;
    color: #fff;
    display: grid;
    gap: 18px;
    grid-template-columns: 1fr auto;
    margin-bottom: 12px;
    overflow: hidden;
    padding: 17px 19px;
    position: relative;
}
.bs-brand-v2-core-industry small { color: #91dfe1; font-size: 10px; }
.bs-brand-v2-core-industry strong { display: block; font-size: 18px; margin: 4px 0; }
.bs-brand-v2-core-industry p { color: #cbe9eb; font-size: 11px; margin: 0; max-width: 820px; }
.bs-brand-v2-parent-link {
    border: 1px solid rgba(255, 255, 255, .32);
    border-radius: 999px;
    color: #e3ffff !important;
    font-size: 10px;
    padding: 7px 11px;
    transition: .2s ease;
    white-space: nowrap;
}
.bs-brand-v2-parent-link:hover { background: #fff; border-color: #fff; color: #075a65 !important; transform: translateY(-1px); }
.bs-brand-v2-click-hint { color: #74898e; font-size: 10px; margin: 2px 0 10px; }
.bs-brand-v2-industry-grid {
    display: grid;
    gap: 11px;
    grid-auto-columns: minmax(250px, 1fr);
    grid-auto-flow: column;
    overflow-x: auto;
    padding: 2px 2px 10px;
    scroll-snap-type: x mandatory;
    scrollbar-width: thin;
}
.bs-brand-v2-industry-card {
    background: #fff;
    border: 1px solid var(--brand-line);
    border-radius: 15px;
    cursor: pointer;
    min-height: 220px;
    padding: 15px;
    scroll-snap-align: center;
    transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease, background .18s ease;
}
.bs-brand-v2-industry-card:hover,
.bs-brand-v2-industry-card:focus,
.bs-brand-v2-industry-card.active {
    background: linear-gradient(180deg, #fff, #effcfc);
    border-color: #58cbd2;
    box-shadow: 0 12px 28px rgba(4, 110, 120, .13);
    outline: 0;
    transform: translateY(-2px);
}
.bs-brand-v2-level { align-items: center; display: flex; gap: 8px; justify-content: space-between; }
.bs-brand-v2-level > span:first-child { color: #087b86; font-size: 9px; }
.bs-brand-v2-strength {
    background: #82959a;
    border-radius: 999px;
    color: #fff;
    font-size: 9px;
    padding: 3px 7px;
}
.bs-brand-v2-strength.core { background: #087f8b; }
.bs-brand-v2-strength.important { background: #398e97; }
.bs-brand-v2-industry-card h3 { color: var(--brand-ink); font-size: 13px; margin: 12px 0 7px; }
.bs-brand-v2-industry-card p { color: #697e83; font-size: 10.5px; margin: 0; }
.bs-brand-v2-role {
    border-top: 1px dashed #d9e8ea;
    color: #177783;
    font-size: 9.7px;
    margin-top: 11px;
    padding-top: 9px;
}
.bs-brand-v2-text-link { color: #087b86 !important; display: inline-block; font-size: 9.5px; font-weight: 800; margin-top: 10px; }

.bs-brand-v2-observation { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(340px, .92fr); overflow: hidden; }
.bs-brand-v2-observation-main {
    background: linear-gradient(145deg, #051f25, #064d57);
    color: #e7ffff;
    overflow: hidden;
    padding: 23px;
    position: relative;
}
.bs-brand-v2-observation-main::after {
    border: 1px solid rgba(255, 255, 255, .07);
    border-radius: 50%;
    bottom: -90px;
    box-shadow: 0 0 0 34px rgba(255, 255, 255, .025), 0 0 0 70px rgba(255, 255, 255, .015);
    content: "";
    height: 240px;
    position: absolute;
    right: -80px;
    width: 240px;
}
.bs-brand-v2-eyebrow { color: #86dfe2; font-size: 10px; letter-spacing: 1px; }
.bs-brand-v2-observation-target {
    border: 1px solid rgba(255, 255, 255, .22);
    border-radius: 999px;
    color: #dcffff;
    display: inline-flex;
    font-size: 9.5px;
    margin-top: 10px;
    padding: 4px 8px;
}
.bs-brand-v2-observation-main h3 { color: #fff; font-size: 19px; line-height: 1.48; margin: 10px 0; position: relative; z-index: 1; }
.bs-brand-v2-observation-main p { color: #c7e5e7; font-size: 11px; margin: 0; position: relative; z-index: 1; }
.bs-brand-v2-observation-items { background: #fff; display: grid; gap: 10px; padding: 18px; }
.bs-brand-v2-observation-item {
    background: #fcffff;
    border: 1px solid #e1edef;
    border-radius: 13px;
    display: grid;
    gap: 11px;
    grid-template-columns: 34px 1fr;
    padding: 12px;
}
.bs-brand-v2-observation-item > span {
    align-items: center;
    background: #e9fafb;
    border-radius: 10px;
    color: #087f8a;
    display: flex;
    font-size: 10px;
    font-weight: 900;
    height: 34px;
    justify-content: center;
    width: 34px;
}
.bs-brand-v2-observation-item strong { color: #1c4249; font-size: 12px; }
.bs-brand-v2-observation-item p { color: #70848a; font-size: 10.5px; margin: 3px 0 0; }

.bs-brand-v2-product-grid { display: grid; gap: 11px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.bs-brand-v2-product-card {
    background: #fff;
    border: 1px solid var(--brand-line);
    border-radius: 15px;
    display: flex;
    flex-direction: column;
    min-height: 238px;
    padding: 15px;
}
.bs-brand-v2-product-top { align-items: flex-start; display: flex; gap: 12px; justify-content: space-between; }
.bs-brand-v2-product-industry { color: #087b86 !important; display: block; font-size: 9px; margin-bottom: 5px; }
.bs-brand-v2-product-card h3 { color: var(--brand-ink); font-size: 13px; margin: 0; }
.bs-brand-v2-product-card > p { color: #6b8085; font-size: 10.5px; margin: 9px 0; }
.bs-brand-v2-phase { border-radius: 7px; font-size: 9px; padding: 3px 7px; white-space: nowrap; }
.bs-brand-v2-phase.mass { background: #e7f8f2; color: #168169; }
.bs-brand-v2-phase.pilot { background: #fff4e6; color: #a86d1f; }
.bs-brand-v2-phase.verify { background: #eaf2fb; color: #39749b; }
.bs-brand-v2-metrics { display: grid; gap: 7px; grid-template-columns: repeat(2, 1fr); margin-top: auto; }
.bs-brand-v2-metrics > div { background: #eff9fa; border-radius: 9px; color: #60787d; font-size: 9.5px; padding: 8px; }
.bs-brand-v2-metrics span,
.bs-brand-v2-metrics strong { display: block; }
.bs-brand-v2-metrics strong { color: #155f68; font-size: 10.5px; margin-top: 2px; }
.bs-brand-v2-product-footer {
    border-top: 1px dashed #dce9eb;
    color: #187987;
    font-size: 9.5px;
    margin-top: 10px;
    padding-top: 9px;
}

.bs-brand-v2-trace-panel { padding: 17px; }
.bs-brand-v2-trace-filter { display: flex; flex-wrap: wrap; gap: 7px; margin-bottom: 12px; }
.bs-brand-v2-trace-filter button {
    background: #fff;
    border: 1px solid #cce6e8;
    border-radius: 999px;
    color: #57747a;
    cursor: pointer;
    font-size: 10.5px;
    padding: 6px 10px;
}
.bs-brand-v2-trace-filter button.active,
.bs-brand-v2-trace-filter button:hover { background: #087f8b; border-color: #087f8b; color: #fff; }
.bs-brand-v2-trace-list { display: grid; gap: 10px; }
.bs-brand-v2-trace-item {
    align-items: start;
    background: #fff;
    border: 1px solid #e0ecee;
    border-radius: 13px;
    display: grid;
    gap: 14px;
    grid-template-columns: 105px 1fr 150px;
    padding: 13px;
}
.bs-brand-v2-trace-item[hidden] { display: none; }
.bs-brand-v2-trace-side time { color: #71868b; display: block; font-size: 10px; font-weight: 800; }
.bs-brand-v2-trace-side span { background: #ecfafa; border-radius: 6px; color: #087b86; display: inline-block; font-size: 9px; margin-top: 6px; padding: 2px 6px; }
.bs-brand-v2-trace-body h3 { color: var(--brand-ink); font-size: 12px; margin: 0 0 5px; }
.bs-brand-v2-trace-body p { color: #6d8287; font-size: 10px; margin: 0; }
.bs-brand-v2-trace-body > div { background: #eff9fa; border-radius: 9px; color: #176c75; font-size: 9.7px; margin-top: 7px; padding: 7px 9px; }
.bs-brand-v2-trace-source { font-size: 9px; text-align: right; }
.bs-brand-v2-trace-source > span { border-radius: 6px; display: inline-block; font-weight: 800; padding: 3px 7px; }
.bs-brand-v2-trace-source .grade-a { background: #e6f7f0; color: #168166; }
.bs-brand-v2-trace-source .grade-b { background: #ecf5fb; color: #35799a; }
.bs-brand-v2-trace-source .grade-c { background: #f4f1ed; color: #7f7468; }
.bs-brand-v2-trace-source a { color: #6c8287 !important; display: block; margin-top: 7px; }

.bs-brand-v2-competition { align-items: stretch; display: grid; gap: 12px; grid-template-columns: minmax(0, 1.12fr) minmax(300px, .88fr); }
.bs-brand-v2-assessment-panel { display: grid; gap: 11px; grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 14px; }
.bs-brand-v2-assessment { background: linear-gradient(180deg, #fff, #fbfefe); border: 1px solid #dce9ec; border-radius: 14px; min-width: 0; padding: 15px; }
.bs-brand-v2-assessment-head {
    align-items: flex-start;
    border-bottom: 1px solid #e1ecee;
    display: flex;
    gap: 10px;
    justify-content: space-between;
    margin-bottom: 10px;
    padding-bottom: 10px;
}
.bs-brand-v2-assessment-head h3 { color: #143a42; font-size: 13.5px; line-height: 1.35; margin: 0; }
.bs-brand-v2-assessment-head span { background: #fff4e5; border-radius: 999px; color: #a86d1f; flex: 0 0 auto; font-size: 9px; font-weight: 800; max-width: 50%; padding: 3px 8px; }
.bs-brand-v2-assessment-block { border-radius: 10px; margin-top: 8px; padding: 10px; }
.bs-brand-v2-assessment-block.advantage { background: #edf9f5; }
.bs-brand-v2-assessment-block.vulnerability { background: #fff7ef; }
.bs-brand-v2-assessment-block b { color: #254a51; font-size: 10.5px; }
.bs-brand-v2-assessment-block p { color: #6d8287; font-size: 10px; margin: 4px 0 0; }
.bs-brand-v2-risk-panel {
    background: linear-gradient(145deg, #063039, #075a65);
    color: #e9ffff;
    padding: 18px;
}
.bs-brand-v2-risk-panel h3 { color: #fff; font-size: 15px; margin: 0 0 8px; }
.bs-brand-v2-risk-panel > p { color: #c9e7e9; font-size: 11px; margin: 0; }
.bs-brand-v2-risk-panel ul { display: grid; gap: 9px; list-style: none; margin: 14px 0 0; padding: 0; }
.bs-brand-v2-risk-panel li { background: rgba(255, 255, 255, .09); border: 1px solid rgba(255, 255, 255, .13); border-radius: 11px; color: #e4f7f8; font-size: 10px; padding: 10px 11px; }

.bs-brand-v2-report-grid { display: grid; gap: 12px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.bs-brand-v2-report {
    background: #fff;
    border: 1px solid var(--brand-line);
    border-radius: 16px;
    box-shadow: 0 10px 25px rgba(16, 78, 92, .10);
    display: block;
    overflow: hidden;
    transition: transform .18s ease, box-shadow .18s ease;
}
.bs-brand-v2-report:hover { box-shadow: 0 16px 34px rgba(16, 78, 92, .15); transform: translateY(-2px); }
.bs-brand-v2-report-cover {
    align-items: center;
    aspect-ratio: 16 / 9;
    background: linear-gradient(150deg, rgba(9, 69, 78, .94), rgba(10, 143, 157, .82));
    color: #81e7e7;
    display: flex;
    font-size: 10px;
    font-weight: 850;
    justify-content: center;
    letter-spacing: .12em;
}
.bs-brand-v2-report-cover img { height: 100%; object-fit: cover; width: 100%; }
.bs-brand-v2-report > div:last-child { padding: 14px; }
.bs-brand-v2-report small { color: #81959a; font-size: 9px; }
.bs-brand-v2-report h3 { color: var(--brand-ink); font-size: 13px; margin: 5px 0; }
.bs-brand-v2-report p { color: #6f8388; font-size: 10px; margin: 0; }

.bs-brand-v2-update-grid { display: grid; gap: 12px; grid-template-columns: 1fr 1fr; }
.bs-brand-v2-update-panel,
.bs-brand-v2-source-panel { padding: 17px; }
.bs-brand-v2-update-panel > h3,
.bs-brand-v2-source-panel > h3 { color: var(--brand-ink); font-size: 14px; margin: 0 0 13px; }
.bs-brand-v2-update-item { display: grid; gap: 8px; grid-template-columns: 78px 18px 1fr; margin-bottom: 13px; }
.bs-brand-v2-update-item:last-child { margin-bottom: 0; }
.bs-brand-v2-update-item time { color: #7d9196; font-size: 9.5px; padding-top: 2px; text-align: right; }
.bs-brand-v2-update-item > span { position: relative; }
.bs-brand-v2-update-item > span::before { background: #cde6e8; bottom: -18px; content: ""; left: 8px; position: absolute; top: 0; width: 1px; }
.bs-brand-v2-update-item:last-child > span::before { bottom: 8px; }
.bs-brand-v2-update-item > span::after { background: #0cb4bf; border-radius: 50%; box-shadow: 0 0 0 4px #e8fafa; content: ""; display: block; height: 8px; margin: 5px auto 0; width: 8px; }
.bs-brand-v2-update-item strong { color: #173d44; font-size: 10.5px; }
.bs-brand-v2-update-item p { color: #75888d; font-size: 9.5px; margin: 2px 0 0; }
.bs-brand-v2-source-panel { display: grid; gap: 8px; }
.bs-brand-v2-source-panel > h3 { margin-bottom: 5px; }
.bs-brand-v2-source-panel > a {
    align-items: center;
    background: #fcffff;
    border: 1px solid #e1edef;
    border-radius: 11px;
    display: grid;
    gap: 9px;
    grid-template-columns: 44px 1fr auto;
    padding: 10px;
}
.bs-brand-v2-source-panel > a > span { background: #e6f7f0; border-radius: 6px; color: #168166; font-size: 9px; font-weight: 800; padding: 3px 6px; text-align: center; }
.bs-brand-v2-source-panel strong { color: #29484f; font-size: 10px; }
.bs-brand-v2-source-panel em { color: #087b86; font-size: 9px; font-style: normal; }

.bs-brand-v2-page-footer {
    color: #667a7f;
    display: flex;
    font-size: 10px;
    gap: 24px;
    justify-content: space-between;
    margin-top: 28px;
    padding: 18px 0 0;
}
.bs-brand-v2-page-footer strong { color: #29434a; display: block; margin-bottom: 3px; }

@media (max-width: 980px) {
    .bs-brand-v2-hero-grid,
    .bs-brand-v2-observation,
    .bs-brand-v2-update-grid { grid-template-columns: 1fr; }
    .bs-brand-v2-product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .bs-brand-v2-competition { grid-template-columns: 1fr; }
    .bs-brand-v2-report-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 640px) {
    .bs-brand-v2-shell { padding-left: 14px; padding-right: 14px; }
    .bs-brand-v2-topbar-inner { align-items: flex-start; }
    .bs-brand-v2-topbar-inner > div:last-child { text-align: right; }
    .bs-brand-v2-hero-grid { padding: 17px; }
    .bs-brand-v2-company-row { flex-direction: column; }
    .bs-brand-v2-company-title h1 { font-size: 26px; }
    .bs-brand-v2-overview { padding: 15px; }
    .bs-brand-v2-overview > div { grid-template-columns: 95px 1fr; }
    .bs-brand-v2-section-head { align-items: flex-start; }
    .bs-brand-v2-section-head p { display: none; }
    .bs-brand-v2-core-industry { grid-template-columns: 1fr; }
    .bs-brand-v2-parent-link { text-align: left; white-space: normal; width: fit-content; }
    .bs-brand-v2-industry-grid { grid-auto-columns: 84%; }
    .bs-brand-v2-observation-main { padding: 18px; }
    .bs-brand-v2-observation-main h3 { font-size: 17px; }
    .bs-brand-v2-observation-items { padding: 13px; }
    .bs-brand-v2-product-grid,
    .bs-brand-v2-assessment-panel,
    .bs-brand-v2-report-grid { grid-template-columns: 1fr; }
    .bs-brand-v2-trace-item { grid-template-columns: 1fr; }
    .bs-brand-v2-trace-source { text-align: left; }
    .bs-brand-v2-source-panel > a { grid-template-columns: 42px 1fr; }
    .bs-brand-v2-source-panel em { display: none; }
    .bs-brand-v2-page-footer { flex-direction: column; }
}
