/* recommend.css — 推荐配置页（第十阶段第5轮）
 * 字号映射：前端设计规范 v1.1 Type Scale
 * body=14px  caption=13px  badge=11px  legal=11px */

.rc-page { background: var(--rc-bg, #F7F9FC); min-height: 60vh; }

/* ── 产品规格区 ── */
.rc-tiers-section {
    background: #fff;
    padding: 28px clamp(16px, 12.5vw, 240px) 28px;
}
.rc-tiers-head {
    display: flex;
    flex-direction: row;
    align-items: baseline;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 14px;
}
.rc-tiers-title { font-size: 28px; font-weight: 700; color: var(--rc-ink, #0F1B2D); white-space: nowrap; line-height: 1.3; } /* h2 */
.rc-tiers-sub { font-size: 14px; color: var(--rc-ink-2, #4A5A72); line-height: 1.45; } /* body */
.rc-tiers-row {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 12px;
}
.rc-tier-card {
    border-radius: 14px;
    padding: 16px 14px;
    border: 1px solid var(--rc-line, #E6ECF3);
    display: flex;
    flex-direction: column;
    gap: 8px;
    cursor: pointer;
    transition: box-shadow .18s, transform .15s;
    text-align: left;
    background: #fff;
}
.rc-tier-card:hover { transform: translateY(-1px); box-shadow: 0 4px 14px rgba(26, 84, 144, .08); }
.rc-tier-card.is-selected {
    border: 2px solid var(--rc-brand, #1A5490);
    box-shadow: 0 0 0 1px rgba(26, 84, 144, .08);
}
.rc-tier-card__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}
.rc-tier-card__name { font-size: 20px; font-weight: 700; line-height: 1.35; } /* h3 */
.rc-tier-card__tag {
    display: none;
    font-size: 10px;
    font-weight: 600;
    color: #fff;
    background: #6BAF8D;
    border-radius: 10px;
    padding: 2px 8px;
    white-space: nowrap;
}
.rc-tier-card.is-selected .rc-tier-card__tag { display: inline-flex; }
.rc-tier-card__desc { font-size: 13px; line-height: 1.5; }          /* caption */
.rc-tier-card__spec { font-size: 14px; font-weight: 600; color: var(--rc-ink-2, #4A5A72); line-height: 1.5; } /* body · 规格说明 */
.rc-tier-card__stock {
    display: none;
    font-size: 12px;
    color: var(--rc-ink-3, #8A98AE);
    line-height: 1.4;
}
.rc-app-card__icon img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 12px;
}
.rc-tier-card__os { font-size: 13px; color: var(--rc-ink-3, #8A98AE); line-height: 1.45; }  /* caption · 辅助文字 */
.rc-tier-card__games { font-size: 13px; line-height: 1.5; }         /* caption · 卡片说明文 */

/* ── 档位卡片包装层（包含 card + 独立 info-btn） ── */
.rc-tier-wrap {
    position: relative;
    display: flex;
    flex-direction: column;
}
.rc-tier-wrap .rc-tier-card {
    flex: 1;
}

/* ── 库存状态徽章 ── */
.rc-stock-row {
    display: flex;
    align-items: center;
    gap: 4px;
}
.rc-stock-badge {
    display: inline-flex;
    align-items: center;
    font-size: 11px;
    font-weight: 700;
    padding: 3px 8px;
    border-radius: 20px;
    white-space: nowrap;
    line-height: 1.3;
}
.rc-stock-badge--ok   { background: #ECFDF3; color: #16A34A; }
.rc-stock-badge--low  { background: #FFF7ED; color: #C2610C; }
.rc-stock-badge--none { background: #FFF5F5; color: #C53030; }

/* 库存查看触发标记（放大镜图标胶囊） */
.rc-stock-info-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 26px;
    height: 22px;
    border-radius: 20px;
    cursor: pointer;
    flex-shrink: 0;
    transition: opacity .15s, background .12s;
    user-select: none;
}
/* 配套徽章颜色：橙/红（PC 卡片内 rc-stock-row） */
.rc-stock-row .rc-stock-badge--low  ~ .rc-stock-info-btn { background: #FEE9CD; color: #92400E; }
.rc-stock-row .rc-stock-badge--none ~ .rc-stock-info-btn { background: #FED7D7; color: #822727; }
/* 移动端详情面板（rc-tier-detail__stock-row 内同胞选择器） */
.rc-tier-detail__stock-row .rc-stock-badge--low  ~ .rc-stock-info-btn { background: #FEE9CD; color: #92400E; }
.rc-tier-detail__stock-row .rc-stock-badge--none ~ .rc-stock-info-btn { background: #FED7D7; color: #822727; }
.rc-stock-info-btn:hover  { opacity: .75; }
.rc-stock-info-btn.is-active { opacity: 1; filter: brightness(.9); }

/* 库存信息浮层 */
.rc-stock-popup {
    position: absolute;
    z-index: 1050;
    background: #1E293B;
    color: #F1F5F9;
    border-radius: 10px;
    padding: 12px 14px;
    min-width: 200px;
    max-width: 280px;
    box-shadow: 0 4px 20px rgba(0,0,0,.2);
    pointer-events: none;
}
.rc-stock-popup__inner { display: flex; flex-direction: column; gap: 6px; }
.rc-stock-popup__row { font-size: 12px; line-height: 1.5; margin: 0; }
.rc-stock-popup__time { color: #94A3B8; }
.rc-stock-popup__release { font-weight: 600; }
.rc-stock-popup__release--low  { color: #FBBF24; }
.rc-stock-popup__release--none { color: #FC8181; }
.rc-stock-popup__arrow {
    position: absolute;
    top: -6px;
    left: 50%;
    transform: translateX(-50%);
    width: 12px;
    height: 6px;
    overflow: hidden;
}
.rc-stock-popup__arrow::after {
    content: '';
    display: block;
    width: 10px;
    height: 10px;
    background: #1E293B;
    transform: rotate(45deg) translate(1px, 1px);
    border-radius: 2px;
}

/* 移动端档位详情展开面板（桌面端不显示） */
.rc-tier-detail { display: none; }

/* ── 搜索（位于结果区顶部，灰底上的白框） ── */
.rc-results-search {
    padding-bottom: 4px;
    border-bottom: 1px solid var(--rc-line, #E6ECF3);
    margin-bottom: 4px;
}
.rc-search-bar {
    display: flex;
    flex-direction: column;
    gap: 0;
    padding: 0;
    border: none;
    border-radius: 0;
    background: transparent;
}
.rc-search-bar__row {
    display: flex;
    align-items: stretch;
    gap: 16px;
    width: 100%;
}
.rc-search-chips {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
    flex-shrink: 0;
}
.rc-chip {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 4px 10px;
    border-radius: 8px;
    font-size: 12px;
    font-weight: 600;
    border: none;
    cursor: pointer;
}
.rc-chip--tier { background: #E8F5EE; color: #3D6B52; }
.rc-chip--app { background: #EFF6FF; color: #1A5490; }
.rc-chip__x { font-size: 11px; opacity: .7; }
/* 输入框：标签 + 图标 + 输入同处框内 */
.rc-search-input-wrap {
    flex: 0 0 50%;
    max-width: 50%;
    min-width: 0;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    min-height: 48px;
    padding: 6px 12px;
    background: #fff;
    border: 1.5px solid #8A98AE;
    border-radius: 12px;
    box-shadow: inset 0 1px 2px rgba(15, 27, 45, 0.05);
    cursor: text;
    transition: border-color .2s, box-shadow .2s;
}
.rc-search-input-wrap:focus-within {
    border-color: var(--brand, #1A5490);
    box-shadow: 0 0 0 3px rgba(26, 84, 144, 0.12);
}
.rc-search-icon {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    color: var(--ink-3, #8A98AE);
}
.rc-search-input-wrap:focus-within .rc-search-icon {
    color: var(--brand, #1A5490);
}
.rc-search-input {
    flex: 1;
    min-width: 140px;
    border: none;
    outline: none;
    font-size: 15px;
    font-weight: 500;
    color: var(--rc-ink, #0F1B2D);
    background: transparent;
    font-family: inherit;
    line-height: 1.4;
}
.rc-search-input::placeholder { color: var(--ink-3, #8A98AE); font-weight: 400; }
.rc-search-hint {
    flex: 1;
    min-width: 0;
    align-self: center;
    font-size: 13px;
    color: var(--rc-ink-3, #8A98AE);
    line-height: 1.55;
    margin: 0;
    padding: 0 4px 0 0;
}
.rc-search-bar:has(.rc-search-input-wrap:focus-within) .rc-search-hint {
    color: var(--rc-ink-2, #4A5A72);
}
.rc-search-hint .rc-hint-action {
    display: inline;
    vertical-align: baseline;
    background: none;
    border: none;
    padding: 0;
    margin: 0;
    font-size: inherit;
    font-weight: 600;
    color: var(--brand, #1A5490);
    cursor: pointer;
    text-decoration: underline;
    text-underline-offset: 2px;
    font-family: inherit;
}
.rc-search-hint .rc-hint-action:hover { color: var(--brand-light, #2E7BC4); }
.rc-search-hint .rc-hint-muted {
    color: var(--ink-3, #8A98AE);
    font-weight: 500;
}
.rc-search-hint .rc-hint-report-done {
    display: inline-block;
    margin-left: 10px;
    padding-left: 10px;
    border-left: 1px solid var(--rc-line, #E6ECF3);
    color: var(--rc-ink-2, #4A5A72);
    font-weight: 600;
}

/* ── 结果区 ── */
.rc-results {
    padding: 24px clamp(16px, 12.5vw, 240px) 48px;
    display: flex;
    flex-direction: column;
    gap: 20px;
    background: var(--rc-bg, #F7F9FC);
}
.rc-tabs {
    display: flex;
    align-items: center;
    gap: 16px;
    flex-wrap: wrap;
    padding-bottom: 8px;
}
.rc-tab {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
    padding: 8px 14px;
    border-radius: 10px;
    border: none;
    cursor: pointer;
    background: transparent;
    font-family: inherit;
}
.rc-tab__top { display: flex; align-items: center; gap: 8px; }
.rc-tab__label { font-size: 16px; font-weight: 800; }
.rc-tab__badge {
    font-size: 11px;
    font-weight: 700;
    color: #fff;
    border-radius: 10px;
    padding: 2px 8px;
}
.rc-tab__line { width: 72px; height: 4px; border-radius: 2px; opacity: 0; }
.rc-tab--rec { background: #E8F5EE; }
.rc-tab--rec .rc-tab__label { color: #3D6B52; }
.rc-tab--rec .rc-tab__badge { background: #6BAF8D; }
.rc-tab--rec.is-active .rc-tab__line { background: #6BAF8D; opacity: 1; }
.rc-tab--ban { background: #FFF5F5; }
.rc-tab--ban .rc-tab__label { color: #9B2C2C; }
.rc-tab--ban .rc-tab__badge { background: #EF4444; }
.rc-tab--ban.is-active .rc-tab__line { background: #FECACA; opacity: 1; }
.rc-tabs-summary { font-size: 12px; color: var(--rc-ink-3, #8A98AE); margin-left: auto; }

.rc-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 20px;
}
.rc-app-card {
    background: var(--rc-surface, #fff);
    border-radius: 12px;
    padding: 20px;
    display: flex;
    flex-direction: column;
    gap: 12px;
    cursor: pointer;
    transition: box-shadow .18s, transform .15s;
}
.rc-app-card:hover {
    transform: translateY(-1px);
    box-shadow: 0 4px 14px rgba(26, 84, 144, .08);
}
.rc-app-card__head { display: flex; align-items: center; gap: 10px; }
.rc-app-card__icon {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    font-weight: 800;
    flex-shrink: 0;
}
.rc-app-card__name { font-size: 15px; font-weight: 700; color: var(--rc-ink, #0F1B2D); }
.rc-app-card__divider { height: 1px; background: var(--rc-line, #E6ECF3); }

.rc-meta-row { display: flex; align-items: center; gap: 10px; width: 100%; }
.rc-meta-label {
    width: 96px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    color: var(--rc-ink-3, #8A98AE);
}
.rc-meta-dot {
    width: 16px;
    height: 16px;
    border-radius: 8px;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}
.rc-meta-dot--rec::after {
    content: '';
    width: 8px;
    height: 8px;
    border-radius: 4px;
    background: #22C55E;
}
.rc-meta-dot--min::after {
    content: '';
    width: 8px;
    height: 8px;
    border-radius: 4px;
    background: #EAB308;
}
.rc-meta-values {
    display: flex;
    align-items: center;
    gap: 6px;
    flex: 1;
    min-width: 0;
}
.rc-meta-row--spread {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    align-items: center;
    gap: 8px;
}
.rc-meta-row--spread .rc-meta-label { width: auto; justify-self: start; }
.rc-meta-row--spread .rc-tier-badge { justify-self: center; }
.rc-meta-row--spread .rc-spec-tag { justify-self: end; margin-left: 0; }
.rc-spec-tag { margin-left: auto; }
.rc-tier-badge {
    font-size: 11px;
    font-weight: 700;
    padding: 4px 8px;
    border-radius: 6px;
    white-space: nowrap;
}
.rc-tier-badge--rec { background: #ECFDF3; color: #16A34A; }
.rc-tier-badge--min { background: #FFFBEB; color: #CA8A04; }
.rc-spec-tag {
    font-size: 11px;
    font-weight: 600;
    color: var(--rc-ink-2, #4A5A72);
    background: #F1F5F9;
    padding: 4px 8px;
    border-radius: 5px;
    white-space: nowrap;
}

/* 规格图例：处理器 / 内存 / 存储 */
.rc-spec-legend {
    display: inline-flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 4px 8px;
}
.rc-spec-item {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    white-space: nowrap;
}
.rc-spec-icon {
    flex-shrink: 0;
    color: var(--rc-ink-3, #8A98AE);
}
.rc-spec-val {
    font-weight: 600;
    color: inherit;
}
.rc-spec-legend--tier {
    gap: 6px 10px;
    margin-top: 2px;
}
.rc-spec-legend--tier .rc-spec-item {
    font-size: 13px;
    font-weight: 600;
    color: var(--rc-ink-2, #4A5A72);
}
.rc-spec-legend--tag {
    background: #F1F5F9;
    padding: 4px 8px;
    border-radius: 5px;
    gap: 4px 6px;
}
.rc-spec-legend--tag .rc-spec-item {
    font-size: 11px;
    color: var(--rc-ink-2, #4A5A72);
}
.rc-spec-tag.rc-spec-legend--tag {
    white-space: normal;
    max-width: 100%;
}

/* 规格进度条 */
.rc-track {
    background: #FAFBFD;
    border-radius: 10px;
    padding: 12px 14px;
    display: flex;
    flex-direction: column;
    gap: 5px;
    container-type: inline-size;
    container-name: rc-track;
}
.rc-pins {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    height: 22px;
    align-items: center;
}
.rc-pin {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 22px;
}
.rc-pin--x::after {
    content: '✕';
    font-size: 12px;
    font-weight: 700;
    color: #94A3B8;
    line-height: 1;
}
.rc-pin--dot::after {
    content: '';
    display: block;
    border-radius: 50%;
    flex-shrink: 0;
    background: var(--rc-pin-color, #CBD5E1);
}
.rc-pin--dot-0::after { width: 6px; height: 6px; }
.rc-pin--dot-1::after { width: 6px; height: 6px; }
.rc-pin--dot-2::after { width: 8px; height: 8px; }
.rc-pin--dot-3::after { width: 10px; height: 10px; }
.rc-pin--dot-4::after { width: 12px; height: 12px; }
.rc-pin--dot-5::after { width: 14px; height: 14px; }
.rc-bars {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 4px;
    align-items: end;
    height: 16px;
    background: #fff;
    border-radius: 6px;
    padding: 0 2px;
}
.rc-bar-seg { border-radius: 3px; width: 100%; }
.rc-labels {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    text-align: center;
    font-size: 11px;
    line-height: 1.3;
}
.rc-labels .is-rec { font-weight: 800; } /* 后台 tier_recommended 推荐档 */
.rc-labels .is-min { font-weight: 700; } /* 后台 tier_enabled 最低可用档 */
.rc-zones {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 4px;
    padding-top: 4px;
}
.rc-zone {
    min-height: 22px;
    border-radius: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 11px;
    font-weight: 600;
    line-height: 1.2;
    white-space: nowrap;
    overflow: hidden;
    padding: 0 4px;
    min-width: 0;
}
.rc-zone__icon { display: none; font-size: 10px; line-height: 1; }
.rc-zone--unavail { background: #F1F5F9; color: #94A3B8; }
.rc-zone--stable { background: #FEF3C7; color: #B45309; }
.rc-zone--fluid { background: #ECFDF3; color: #16A34A; }
.rc-track--no-pins .rc-pins { display: none; }

@container rc-track (max-width: 240px) {
    .rc-zone__text { display: none; }
    .rc-zone__icon { display: inline-flex; }
    .rc-zone { padding: 0 2px; min-height: 20px; }
}

/* 禁用列表 */
.rc-banned-panel { display: none; flex-direction: column; gap: 12px; }
.rc-banned-panel.is-active { display: flex; }
.rc-rec-panel { display: flex; flex-direction: column; gap: 20px; }
.rc-rec-panel.is-hidden { display: none; }
.rc-banned-title { font-size: 14px; font-weight: 700; color: var(--rc-ink, #0F1B2D); }
.rc-banned-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}
.rc-banned-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 14px 16px;
    border-radius: 10px;
    background: #FFF8F6;
    border: 1px solid #FFD4C4;
    min-width: 0;
    cursor: pointer;
    transition: background 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease;
}
.rc-banned-item:hover {
    background: #FFF0EC;
    border-color: #F5A898;
    box-shadow: 0 2px 8px rgba(214, 92, 42, 0.08);
}
.rc-banned-item__icon {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    font-weight: 700;
    overflow: hidden;
}
.rc-banned-item__icon img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 10px;
}
.rc-banned-item__body {
    flex: 1;
    min-width: 0;
}
.rc-banned-item:nth-child(even) { background: #FFF5F5; border-color: transparent; }
.rc-banned-item__name { font-size: 14px; font-weight: 600; color: var(--rc-ink, #0F1B2D); }
.rc-banned-item__reason { font-size: 12px; color: var(--rc-ink-3, #8A98AE); margin-top: 4px; }
.rc-banned-item__status { font-size: 12px; font-weight: 700; color: #D65C2A; white-space: nowrap; }
.rc-banned-empty { font-size: 13px; color: var(--rc-ink-3, #8A98AE); padding: 8px 0; }

.rc-empty {
    grid-column: 1 / -1;
    text-align: center;
    padding: 48px 16px;
    color: var(--rc-ink-3, #8A98AE);
    font-size: 14px;
}

/* 全页无配置数据空态（非搜索无结果） */
.rc-page-empty {
    text-align: center;
    padding: 56px 24px 48px;
    margin: 8px 0 16px;
    border-radius: 12px;
    background: var(--rc-surface-2, #f7f9fc);
    border: 1px dashed var(--rc-border, #e2e8f0);
}
.rc-page-empty__icon {
    font-size: 2rem;
    line-height: 1;
    margin-bottom: 12px;
    opacity: 0.85;
}
.rc-page-empty__title {
    margin: 0 0 8px;
    font-size: 16px;
    font-weight: 600;
    color: var(--rc-ink, #0f1b2d);
}
.rc-page-empty__desc {
    margin: 0;
    font-size: 14px;
    line-height: 1.65;
    color: var(--rc-ink-3, #8a98ae);
    max-width: 420px;
    margin-inline: auto;
}

/* ── 单应用搜索命中（设计稿 hNuxv / QWCEQ） ── */
.rc-hit-view { display: none; flex-direction: column; gap: 16px; }
.rc-hit-view.is-active { display: flex; }
.rc-hit-banner {
    display: flex;
    align-items: center;
    padding: 12px 16px;
    border-radius: 10px;
    background: #E8F5EE;
}
.rc-hit-banner.is-ban { background: #FFF5F5; }
.rc-hit-banner__line {
    font-size: 14px;
    font-weight: 600;
    color: #3D6B52;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.rc-hit-banner.is-ban .rc-hit-banner__line { color: #9B2C2C; }
.rc-hit-layout {
    display: flex;
    align-items: stretch;
    gap: 28px;
    padding: 28px 36px;
    border-radius: 16px;
    background: #F0F9F4;
    border: 1px solid #B8E0C8;
}
.rc-hit-layout.is-ban {
    background: #FFFAF8;
    border-color: #FFD4C4;
}
.rc-hit-layout[data-tone="rec"] {
    background: #F0F9F4;
    border-color: #B8E0C8;
}
.rc-hit-layout[data-tone="min"],
.rc-hit-layout[data-tone="stable"] {
    background: #FFFBEB;
    border-color: #FDE68A;
}
.rc-hit-layout[data-tone="neutral"] {
    background: #F8FAFC;
    border-color: #E2E8F0;
}
.rc-hit-summary {
    width: 280px;
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 22px;
    border-radius: 12px;
    background: #fff;
    border: 1px solid #D4EDDA;
    align-self: stretch;
}
.rc-hit-layout.is-ban .rc-hit-summary { border-color: #FECACA; }
.rc-hit-summary__name { font-size: 20px; font-weight: 700; color: var(--rc-ink, #0F1B2D); line-height: 1.3; }
.rc-hit-summary__badge {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    padding: 6px 12px;
    border-radius: 8px;
    font-size: 12px;
    font-weight: 700;
    color: #3D6B52;
    background: #E8F5EE;
}
.rc-hit-layout.is-ban .rc-hit-summary__badge { color: #9B2C2C; background: #FEE2E2; }
.rc-hit-summary__badge--rec { color: #3D6B52; background: #E8F5EE; }
.rc-hit-summary__badge--min,
.rc-hit-summary__badge--stable { color: #B45309; background: #FEF3C7; }
.rc-hit-summary__badge--ban { color: #9B2C2C; background: #FEE2E2; }
.rc-hit-summary__badge--neutral { color: #4A5A72; background: #F1F5F9; }
.rc-hit-summary__line {
    font-size: 13px;
    color: var(--rc-ink-2, #4A5A72);
    padding-bottom: 8px;
    border-bottom: 1px solid #E8F0EC;
}
.rc-hit-layout.is-ban .rc-hit-summary__line { border-bottom-color: #FEE2E2; }
.rc-hit-layout[data-tone="neutral"] .rc-hit-summary__line { border-bottom-color: #E2E8F0; }
.rc-hit-summary__verdict {
    display: flex;
    flex-direction: column;
    gap: 8px;
    flex: 1;
    padding: 14px 12px;
    border-radius: 8px;
    background: #ECFDF3;
}
.rc-hit-layout.is-ban .rc-hit-summary__verdict { background: #FFF5F5; }
.rc-hit-summary__verdict--rec { background: #ECFDF3; }
.rc-hit-summary__verdict--min,
.rc-hit-summary__verdict--stable { background: #FFFBEB; }
.rc-hit-summary__verdict--ban { background: #FFF5F5; }
.rc-hit-summary__verdict--neutral { background: #F8FAFC; }
.rc-hit-summary__verdict-label { font-size: 11px; font-weight: 700; color: #3D6B52; }
.rc-hit-layout.is-ban .rc-hit-summary__verdict-label { color: #9B2C2C; }
.rc-hit-summary__verdict--min .rc-hit-summary__verdict-label,
.rc-hit-summary__verdict--stable .rc-hit-summary__verdict-label { color: #B45309; }
.rc-hit-summary__verdict--rec .rc-hit-summary__verdict-label { color: #3D6B52; }
.rc-hit-summary__verdict-text { font-size: 12px; font-weight: 600; color: #16A34A; line-height: 1.6; }
.rc-hit-summary__verdict--min .rc-hit-summary__verdict-text,
.rc-hit-summary__verdict--stable .rc-hit-summary__verdict-text { color: #CA8A04; }
.rc-hit-layout.is-ban .rc-hit-summary__verdict-text,
.rc-hit-summary__verdict--ban .rc-hit-summary__verdict-text { color: #DC2626; }
.rc-hit-summary__verdict--neutral .rc-hit-summary__verdict-text { color: #4A5A72; }
.rc-hit-card {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding: 24px;
    border-radius: 12px;
    background: var(--rc-surface, #fff);
    border: 2px solid #6BAF8D;
}
.rc-hit-layout.is-ban .rc-hit-card { border-color: #FCA5A5; }
.rc-hit-layout[data-tone="rec"] .rc-hit-card { border-color: #6BAF8D; }
.rc-hit-layout[data-tone="min"] .rc-hit-card,
.rc-hit-layout[data-tone="stable"] .rc-hit-card { border-color: #FCD34D; }
.rc-hit-layout[data-tone="neutral"] .rc-hit-card { border-color: #CBD5E1; }
.rc-hit-card__head {
    display: flex;
    align-items: stretch;
    gap: 12px;
}
.rc-hit-card__identity {
    flex: 0 0 33.333%;
    max-width: 33.333%;
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 12px;
}
.rc-hit-card__main {
    flex: 1;
    min-width: 0;
    display: flex;
    align-items: center;
}
.rc-hit-card__title-row {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    min-height: 44px;
    width: 100%;
}
.rc-hit-card__title-row .rc-app-card__name {
    flex: 1 1 auto;
    min-width: 0;
    line-height: 1.25;
    word-break: break-word;
}
.rc-hit-card__remark {
    flex: 1 1 66.666%;
    min-width: 0;
    align-self: stretch;
    font-size: 13px;
    line-height: 1.55;
    color: var(--rc-ink-2, #4A5A72);
    padding: 8px 12px;
    border-radius: 8px;
    background: #F8FAFC;
    border: 1px solid var(--rc-line, #E6ECF3);
    word-break: break-word;
    overflow-wrap: anywhere;
}
.rc-hit-card__remark[hidden] { display: none; }
.rc-hit-card__status {
    font-size: 11px;
    font-weight: 700;
    color: #fff;
    background: #6BAF8D;
    padding: 3px 8px;
    border-radius: 8px;
    white-space: nowrap;
    line-height: 1.25;
    flex-shrink: 0;
}
@media (min-width: 641px) {
    .rc-hit-card__status { margin-right: 80px; }
}
.rc-hit-card__status--rec { background: #6BAF8D; }
.rc-hit-card__status--min,
.rc-hit-card__status--stable { background: #EAB308; }
.rc-hit-card__status--ban { background: #EF4444; }
.rc-hit-card__status--neutral { background: #94A3B8; }
.rc-hit-layout.is-ban .rc-hit-card__status { background: #EF4444; }
.rc-grid.is-hidden { display: none; }

@media (max-width: 1200px) {
    .rc-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 900px) {
    .rc-tiers-row { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .rc-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .rc-tabs-summary { width: 100%; margin-left: 0; }
}

@media (max-width: 640px) {
    .rc-tiers-head { align-items: flex-start; flex-direction: column; gap: 4px; }
    .rc-tiers-section { padding-top: 0; }
    .rc-search-bar__row { flex-direction: column; gap: 8px; }
    .rc-search-input-wrap { flex: 1 1 auto; max-width: none; width: 100%; }
    .rc-search-hint { padding: 0; align-self: stretch; }
    .rc-search-hint .rc-hint-report-done {
        display: block;
        margin-left: 0;
        padding-left: 0;
        border-left: none;
        margin-top: 4px;
    }
    /* 方案 A：3×2 紧凑档位选择 */
    .rc-tiers-row {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 8px;
        overflow: visible;
        padding-bottom: 0;
    }
    .rc-tier-wrap {
        position: relative;
    }
    .rc-tier-card {
        width: 100%;
        min-width: 0;
        padding: 10px 6px;
        gap: 0;
        align-items: center;
        text-align: center;
        scroll-snap-align: unset;
        flex-shrink: unset;
    }
    .rc-tier-card__head {
        justify-content: center;
        width: 100%;
    }
    .rc-tier-card__tag { display: none !important; }
    .rc-tier-card__desc,
    .rc-tier-card__spec,
    .rc-tier-card__os,
    .rc-tier-card__games,
    .rc-tier-card__stock { display: none; }
    .rc-tier-card__name {
        font-size: 14px;
        line-height: 1.3;
        width: 100%;
    }
    .rc-tier-card .rc-stock-row { display: none; }   /* 移动端徽章在详情面板里展示 */
    .rc-tier-card.is-selected {
        border-width: 2px;
        box-shadow: 0 0 0 2px rgba(26, 84, 144, .1);
    }
    /* 选中档位详情展开 */
    .rc-tier-detail.is-visible {
        display: flex;
        flex-direction: column;
        gap: 8px;
        margin-top: 10px;
        padding: 14px;
        border-radius: 12px;
        border: 1px solid var(--rc-line, #E6ECF3);
    }
    .rc-tier-detail__head {
        display: flex;
        align-items: flex-start;
        justify-content: space-between;
        gap: 8px;
    }
    .rc-tier-detail__head-left {
        display: flex;
        flex-direction: column;
        gap: 6px;
        min-width: 0;
    }
    .rc-tier-detail__stock-row {
        display: flex;
        align-items: center;
        gap: 6px;
    }
    .rc-tier-detail__name {
        font-size: 18px;
        font-weight: 700;
        line-height: 1.35;
    }
    .rc-tier-detail__clear {
        flex-shrink: 0;
        width: 28px;
        height: 28px;
        border: none;
        border-radius: 8px;
        background: rgba(15, 27, 45, .06);
        color: var(--rc-ink-2, #4A5A72);
        font-size: 14px;
        line-height: 1;
        cursor: pointer;
        font-family: inherit;
    }
    .rc-tier-detail__desc { font-size: 13px; line-height: 1.5; margin: 0; }
    .rc-tier-detail__spec { font-size: 14px; font-weight: 600; color: var(--rc-ink-2, #4A5A72); }
    .rc-tier-detail__os { font-size: 13px; color: var(--rc-ink-3, #8A98AE); margin: 0; }
    .rc-tier-detail__games { font-size: 13px; line-height: 1.5; margin: 0; }
    .rc-tier-detail__stock { font-size: 12px; color: var(--rc-ink-3, #8A98AE); }
    .rc-search-section { padding-top: 0; }
    .rc-grid { grid-template-columns: 1fr; }
    .rc-app-card { padding: 14px; }
    /* Tab 双按钮强制单行 */
    .rc-tabs {
        flex-wrap: nowrap;
        gap: 8px;
        align-items: stretch;
    }
    .rc-tab {
        flex: 1 1 0;
        min-width: 0;
        padding: 8px 6px;
    }
    .rc-tab__top {
        gap: 4px;
        justify-content: center;
        white-space: nowrap;
    }
    .rc-tab__label {
        font-size: 13px;
        white-space: nowrap;
    }
    .rc-tab__badge {
        flex-shrink: 0;
        padding: 2px 6px;
    }
    .rc-tab__line {
        width: 100%;
        max-width: 56px;
    }
    .rc-tabs-summary { display: none; }
    .rc-hit-layout { flex-direction: column; padding: 16px; gap: 16px; }
    .rc-hit-summary { width: 100%; }
    .rc-hit-card__head { flex-direction: column; }
    .rc-hit-card__identity {
        flex: 1 1 auto;
        max-width: none;
        width: 100%;
    }
    .rc-hit-card__remark { flex: 1 1 auto; max-width: none; width: 100%; }
    .rc-banned-list { grid-template-columns: 1fr; }
    /* 移动端标签缩短：推荐配置 → 推荐，最低配置 → 最低 */
    .rc-meta-label__txt {
        font-size: 0;
        line-height: 0;
    }
    .rc-meta-label__txt::before {
        content: attr(data-short);
        font-size: 13px;
        line-height: 1.4;
    }
    .rc-meta-label { white-space: nowrap; }
}
