  :root{
    --bg:#F1F5F9; /* 浅灰蓝底色 */
    --bg2:#FFFFFF;
    --card:#FFFFFF;
    --border:#E2E8F0;
    --border-hi:#CBD5E1;
    --txt:#1E293B;
    --txt2:#64748B;
    --txt3:#94A3B8;
    --pri:#3B82F6;
    --pri2:#06B6D4;
    --gold:#F59E0B;
    --green:#10B981;
    --red:#EF4444;
    --purple:#8B5CF6;
  }
  *{box-sizing:border-box}
  html,body{margin:0;padding:0;background:var(--bg);color:var(--txt);font-family:-apple-system,BlinkMacSystemFont,'Segoe UI','PingFang SC','Microsoft YaHei',sans-serif;-webkit-font-smoothing:antialiased;min-height:100vh}
  body{display:flex}

  /* 侧边栏与主内容区布局 */
  .sidebar{width:260px;height:100vh;background:var(--bg2);border-right:1px solid var(--border);display:flex;flex-direction:column;position:sticky;top:0;flex-shrink:0;z-index:20}
  .main-content{flex:1;min-width:0;padding:32px 40px;overflow-y:auto;height:100vh}

  /* 卡片与阴影 */
  .card{background:var(--card);border:1px solid var(--border);border-radius:16px;box-shadow:0 4px 12px -2px rgba(0,0,0,0.03), 0 2px 4px -1px rgba(0,0,0,0.02)}
  .gradient-text{background:linear-gradient(135deg,#3B82F6 0%,#06B6D4 50%,#8B5CF6 100%);-webkit-background-clip:text;background-clip:text;color:transparent}

  /* 滚动条 */
  ::-webkit-scrollbar{width:8px;height:8px}
  ::-webkit-scrollbar-track{background:transparent}
  ::-webkit-scrollbar-thumb{background:rgba(100,116,139,0.2);border-radius:4px}
  ::-webkit-scrollbar-thumb:hover{background:rgba(100,116,139,0.4)}

  /* 页面切换动画 */
  .page{display:none;animation:fadeIn .4s ease}
  .page.active{display:block}
  @keyframes fadeIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}

  /* 步骤指示器 */
  .step-dot{width:8px;height:8px;border-radius:50%;background:#E2E8F0;transition:all .3s}
  .step-dot.active{background:#3B82F6;box-shadow:0 0 8px rgba(59,130,246,0.5);transform:scale(1.3)}
  .step-dot.done{background:#10B981}

  /* 图标圆形背景 */
  .icon-wrap{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:rgba(59,130,246,0.1);color:#3B82F6;flex-shrink:0}

  /* Loading */
  .loader{width:18px;height:18px;border:2px solid rgba(255,255,255,0.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}
  @keyframes spin{to{transform:rotate(360deg)}}

  /* Toast */
  .toast{position:fixed;top:24px;right:24px;z-index:9999;padding:14px 20px;border-radius:12px;background:#fff;border:1px solid var(--border);color:var(--txt);display:flex;align-items:center;gap:10px;box-shadow:0 12px 32px -8px rgba(0,0,0,0.15);transform:translateX(120%);transition:transform .35s cubic-bezier(.4,0,.2,1)}
  .toast.show{transform:translateX(0)}

  /* 模拟数据条 */
  .data-bar{height:4px;background:#F1F5F9;border-radius:2px;overflow:hidden;position:relative}
  .data-bar-fill{height:100%;border-radius:2px}

  .lucide{font-family:'lucide' !important;font-style:normal;font-weight:normal}

  /* ═══════════ V4 任务F: 响应式 H5 适配 ═══════════ */

  /* 底部导航栏（默认隐藏，<768px显示） */
  .bottom-nav{display:none;position:fixed;bottom:0;left:0;right:0;z-index:30;background:#fff;border-top:1px solid var(--border);padding:6px 0 env(safe-area-inset-bottom,0);box-shadow:0 -4px 12px rgba(0,0,0,0.05)}
  .bottom-nav .bn-item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:4px 2px;color:var(--txt2);font-size:13px;cursor:pointer;transition:color .15s;border:none;background:none}
  .bottom-nav .bn-item.active{color:var(--pri)}
  .bottom-nav .bn-item i{font-size:20px}

  /* 移动端断点 <768px */
  @media (max-width:767px){
    body{flex-direction:column}
    .sidebar{display:none !important}
    .main-content{padding:16px 12px 80px;height:auto;min-height:100vh}
    .bottom-nav{display:flex}

    /* 单列布局 */
    .grid.grid-cols-12{grid-template-columns:1fr !important}
    .grid.grid-cols-2,.grid.grid-cols-3,.grid.grid-cols-4{grid-template-columns:1fr !important}
    [class*="md:grid-cols-"],[class*="lg:grid-cols-"],[class*="xl:grid-cols-"]{grid-template-columns:1fr !important}
    [class*="col-span-"]{grid-column:span 1 !important}

    /* 6组Tab横向滚动 */
    #qualTabs{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}
    #qualTabs::-webkit-scrollbar{display:none}
    .qual-tab{flex-shrink:0;white-space:nowrap}

    /* 产品编辑弹窗7组Tab横向滚动 */
    #prodTabs{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}
    #prodTabs::-webkit-scrollbar{display:none}
    .prod-tab{flex-shrink:0;white-space:nowrap}

    /* 匹配按钮吸底 */
    #matchCreditBtn,#matchMortgageBtn{position:sticky;bottom:70px;z-index:15;border-radius:0;margin:0 -12px;width:calc(100% + 24px)}
    #matchResult{margin-bottom:80px}

    /* 上传区 */
    .upload-zone{padding:20px 12px}

    /* 表格横向滚动 */
    .overflow-x-auto{overflow-x:auto;-webkit-overflow-scrolling:touch}
    /* 征信上传页表格：确保在小屏上可横向滚动 */
    .data-table{min-width:600px}
    #cardTable{min-width:500px}

    /* 征信上传页「合计≠明细」提醒：固定宽度的单条静态提示，文本只显示一次、可换行、绝不撑宽贷款表 */
    .zpd-warn-bar{overflow:hidden;padding:7px 12px}
    .zpd-warn-text{color:#92400e;font-size:12px;line-height:1.5}

    /* 隐藏步骤指示器 */
    .hidden.md\\:flex{display:none !important}

    /* 卡片紧凑化 */
    .card.p-6,.card.p-5{padding:12px}
    .card.p-4{padding:10px}
  }

  /* 平板断点 768-1023px（侧边栏保留，内容紧凑） */
  @media (min-width:768px) and (max-width:1023px){
    .sidebar{width:200px}
    .main-content{padding:20px 24px}
    .hidden.md\\:flex{display:none !important}
  }

  /* 桌面断点 ≥1024px 保持现状 */
  @media (min-width:1024px){
    .bottom-nav{display:none !important}
  }

  /* V4 任务9: 6组导航高亮（与prod-tab.active一致） */
  .qual-tab.active{background:rgba(59,130,246,0.1);color:#2563EB}
  .qual-tab:hover:not(.active){color:#334155;background:#F1F5F9}
