/* ===================================================================
   科技风浅色主题 - 公用覆盖样式 (gcb-web)
   各页在 style.css 之后引入: <link href="css/tech-theme.css">
   按类名作用域,跨页互不影响
   =================================================================== */
/* Vue 挂载前隐藏模板,避免弹窗/插值闪烁 */
[v-cloak]{ display:none !important; }

:root{
  --t-accent:#2f6bff; --t-accent2:#11b6e3; --t-line:#e4e9f2;
  --t-txt:#1f2a44; --t-sub:#7886a6;
  --t-grad:linear-gradient(135deg,#2f6bff,#11b6e3);
  --t-glow:0 0 0 1px rgba(47,107,255,.3),0 10px 28px -10px rgba(47,107,255,.45);
}

/* ---------- 背景 ---------- */
.apply.bg-gray,.account.bg-gray,.dashboard,body.tech-bg{
  background:
    radial-gradient(1100px 600px at 8% -12%, rgba(47,107,255,.10), transparent 60%),
    radial-gradient(900px 520px at 100% 0%, rgba(17,182,227,.10), transparent 55%),
    linear-gradient(180deg,#eef3fb,#e9f0fb) !important;
  min-height:100vh;
}

/* ---------- admin-header (apply/order 顶栏) ---------- */
.header{ position:static !important; min-width:0 !important; background:#fff; border-bottom:1px solid var(--t-line); box-shadow:0 2px 12px -6px rgba(31,42,68,.15); padding:0 !important; height:60px; display:flex; align-items:center; }
/* 旧固定头预留的 body padding-top:122px 清掉(style.css 残留) */
body{ margin:0 !important; padding-top:0 !important; }
.apply.bg-gray{ padding-top:0 !important; }
#adminHeader{ margin:0 !important; padding:0 !important; line-height:0; font-size:0; }
#adminHeader .header{ margin:0 !important; }
#app.apply{ margin-top:0 !important; }
.header-inner{ max-width:1080px; width:100%; margin:0 auto; padding:0 16px; }
.header-brand{ display:flex; align-items:center; gap:10px; text-decoration:none; }
.header-logo{ width:32px; height:32px; border-radius:9px; background:var(--t-grad); color:#fff; display:flex; align-items:center; justify-content:center; font-size:16px; box-shadow:0 6px 14px -6px rgba(17,182,227,.7); }
.header .header-tit{ font-size:18px; font-weight:700; color:#26324e; }
.header .header-tit .sub-name{ background:var(--t-grad); -webkit-background-clip:text; background-clip:text; color:transparent; -webkit-text-fill-color:transparent; }
.header-menu{ gap:8px; }
.header-menu a{ padding:7px 16px; border-radius:8px; color:#46557a; font-size:14px; text-decoration:none; transition:.2s; }
.header-menu a:hover,.header-menu a.active{ background:rgba(47,107,255,.1); color:var(--t-accent); }

/* ---------- 顶栏(共用 header 组件) ---------- */
/* .head 原 position:fixed,改静态在文档流,不需 body padding-top 预留 */
.head{ position:static !important; box-shadow:0 6px 24px -14px rgba(31,42,68,.25); }
.head-top{ background:var(--t-grad) !important; color:#fff !important; }
.head-top,.head-top *{ color:#fff !important; }
.head-top .sub-name{ color:#fff !important; -webkit-text-fill-color:#fff; }
.head-menu a{ transition:.2s; }
.head-menu a.active,.head-menu a:hover{ color:var(--t-accent); }
.head-service .num{ color:var(--t-accent); font-weight:600; }

/* ---------- 通用输入 ---------- */
.apply-dd-inp,.account-inp{
  border:1px solid var(--t-line) !important; border-radius:8px !important;
  background:#fff !important; transition:.2s;
}
.apply-dd-inp:focus,.account-inp:focus{
  border-color:var(--t-accent) !important; box-shadow:0 0 0 3px rgba(47,107,255,.15); outline:none;
}

/* ---------- 通用按钮 ---------- */
.t-btn-primary,.search-btn,.apply-search-btn{
  background:var(--t-grad); color:#fff; border:none; border-radius:8px;
  font-weight:600; cursor:pointer; transition:.2s; box-shadow:0 8px 18px -8px rgba(17,182,227,.6);
}
.t-btn-primary:hover,.search-btn:hover,.apply-search-btn:hover{ filter:brightness(1.06); }
.dashboard-apply-btn{
  background:linear-gradient(135deg,#16a34a,#22c55e); color:#fff; border:none; border-radius:8px;
  font-weight:600; cursor:pointer; transition:.2s; box-shadow:0 8px 18px -8px rgba(34,197,94,.6);
}
.dashboard-apply-btn:hover{ filter:brightness(1.06); }

/* ---------- 弹窗 ---------- */
.popup-main{ border-radius:14px; box-shadow:0 20px 60px -20px rgba(31,42,68,.4); }
/* 通用关闭图标:钉右上角,统一尺寸(覆盖各弹窗 float/居中问题) */
.popup-main img[src*="close"]{ position:absolute !important; right:20px !important; top:20px !important;
  float:none !important; margin:0 !important; width:18px !important; height:18px !important;
  cursor:pointer; opacity:.5; transition:.2s; z-index:2; }
.popup-main img[src*="close"]:hover{ opacity:1; }

/* ---------- 状态徽章(dashboard) ---------- */
.dashboard-status-pending,.dashboard-status-pass,.dashboard-status-reject,.dashboard-status-cancel{
  padding:3px 10px; border-radius:11px; font-size:12px; display:inline-block;
}
.dashboard-status-pending{ background:rgba(245,158,11,.12); color:#d98a09; }
.dashboard-status-pass{ background:rgba(34,197,94,.12); color:#16a34a; }
.dashboard-status-reject{ background:rgba(255,77,79,.12); color:#e23b3d; }
.dashboard-status-cancel{ background:rgba(120,134,166,.14); color:#6b7796; }

/* =================== dashboard 列表页 =================== */
.dashboard.main{ max-width:1320px; margin:0 auto !important; padding:22px 28px 40px !important; box-sizing:border-box; }
.dashboard-container{ gap:18px; }
.left-nav{ background:#fff; border:1px solid var(--t-line); border-radius:14px; padding:10px; box-shadow:0 10px 30px -18px rgba(31,42,68,.2); }
.nav-item{ border-radius:10px; transition:.2s; color:var(--t-sub); }
.nav-item:hover{ background:#f3f7ff; }
.nav-item.active{ background:var(--t-grad); color:#fff !important; box-shadow:0 8px 18px -8px rgba(17,182,227,.6); }
.nav-item.active .nav-title{ color:#fff !important; }
.right-content{ background:#fff; border:1px solid var(--t-line); border-radius:14px; box-shadow:0 12px 40px -20px rgba(31,42,68,.22); }
.search-operation{ display:flex; justify-content:space-between; align-items:center; gap:12px; flex-wrap:wrap; }
.search-filters{ display:flex; align-items:center; gap:12px; flex:1; min-width:0; }
.search-box{ flex:1; min-width:200px; }
.search-box input{ width:100%; border:1px solid var(--t-line); border-radius:8px; height:40px; padding:0 14px; background:#f8fafd; box-sizing:border-box; transition:.2s; }
.status-filter select{ border:1px solid var(--t-line); border-radius:8px; height:auto; min-height:40px; min-width:140px; padding:9px 14px; font-size:14px; line-height:1.4; background:#f8fafd; box-sizing:border-box; color:#1f2a44 !important; -webkit-text-fill-color:#1f2a44; cursor:pointer; transition:.2s; appearance:auto; vertical-align:middle; }
.status-filter select option{ color:#1f2a44; background:#fff; }
.search-box input:focus,.status-filter select:focus{ border-color:var(--t-accent); box-shadow:0 0 0 3px rgba(47,107,255,.15); background:#fff; outline:none; }
.search-btn,.dashboard-apply-btn{ height:40px; padding:0 22px; box-sizing:border-box; flex:0 0 auto; }
.dashboard-order-table{ border-collapse:separate; border-spacing:0; width:100%; }
.dashboard-order-table thead th{ background:#f4f7fd; color:#46557a; font-weight:600; padding:13px 12px; border-bottom:1px solid var(--t-line); }
.dashboard-order-table tbody td{ padding:14px 12px; border-bottom:1px solid #f0f3f9; color:var(--t-txt); }
.dashboard-order-table tbody tr{ transition:.15s; }
.dashboard-order-table tbody tr:hover{ background:#f7faff; }
.btn-view,.btn-download,.btn-pay,.btn-cancel{ cursor:pointer; font-size:13px; margin-right:10px; transition:.2s; white-space:nowrap; display:inline-block; }
.dashboard-order-table tbody td:last-child{ white-space:nowrap; }
.btn-view{ color:var(--t-accent); }
.btn-download{ color:#16a34a; }
.btn-pay{ color:#d98a09; font-weight:600; }
.btn-cancel{ color:#e23b3d; }
.btn-view:hover,.btn-download:hover,.btn-pay:hover,.btn-cancel:hover{ text-decoration:underline; }
.common-page{ display:flex; align-items:center; justify-content:center; gap:10px; padding:16px 0; }
.common-page .page{ display:flex; align-items:center; gap:8px; }
.common-page .pageHref{ display:inline-flex; align-items:center; justify-content:center; box-sizing:border-box; border:1px solid var(--t-line); border-radius:7px; min-width:34px; height:34px; padding:0 8px; line-height:1; text-align:center; color:var(--t-sub); cursor:pointer; transition:.2s; }
.common-page .pageHref:hover{ border-color:var(--t-accent); color:var(--t-accent); }
.common-page .pageHref.active{ background:var(--t-grad); color:#fff; border-color:transparent; }
.common-page select{ height:34px; border:1px solid var(--t-line); border-radius:7px; padding:0 8px; }
.dashboard-btn-submit,.confirm-modal-btn-confirm{ background:var(--t-grad) !important; border:none !important; color:#fff !important; }

/* =================== account 账户设置 =================== */
.account-main{ background:#fff; border:1px solid var(--t-line); border-radius:14px; box-shadow:0 12px 40px -22px rgba(31,42,68,.2); margin-bottom:18px; }
.account-table th{ background:#f4f7fd; color:#46557a; }
.account-table td{ color:var(--t-txt); }
.account-table input,.account-table select{ border:1px solid var(--t-line) !important; border-radius:8px !important; background:#f8fafd !important; transition:.2s; }
.account-table input:focus,.account-table select:focus{ border-color:var(--t-accent) !important; box-shadow:0 0 0 3px rgba(47,107,255,.15); background:#fff !important; outline:none; }
.account-upload{ border:1px dashed var(--t-line); border-radius:10px; background:#f8fafd; transition:.2s; }
.account-upload:hover{ border-color:var(--t-accent); background:#f3f7ff; }
.account-img{ border:1px solid var(--t-line); border-radius:10px; }
.account-btn,.account-save,.account-modal-btn-confirm{ background:var(--t-grad) !important; color:#fff !important; border:none !important; border-radius:9px !important; font-weight:600; box-shadow:0 8px 20px -8px rgba(17,182,227,.7); transition:.2s; }
.account-btn:hover,.account-save:hover{ filter:brightness(1.06); }
.account-user-table th{ background:#f4f7fd; color:#46557a; }
.account-user-table tr:hover td{ background:#f7faff; }
.account-user-table a{ color:var(--t-accent); }
.account-preview-image{ border-radius:10px; }

/* =================== account 新版布局 =================== */
.acc-wrap{ max-width:1080px; margin:0 auto; padding:20px 16px 50px; }
.acc-hero{ display:flex; justify-content:space-between; align-items:center; gap:16px;
  background:var(--t-grad); color:#fff; border-radius:14px; padding:22px 26px; box-shadow:0 12px 30px -12px rgba(47,107,255,.5); margin-bottom:18px; }
.acc-hero-left{ display:flex; align-items:center; gap:16px; }
.acc-avatar{ width:54px; height:54px; border-radius:14px; background:rgba(255,255,255,.2); display:flex; align-items:center; justify-content:center; font-size:26px; font-weight:700; }
.acc-name{ font-size:20px; font-weight:700; }
.acc-sub{ font-size:13px; opacity:.9; margin-top:4px; }
.acc-badge{ flex:0 0 auto; padding:6px 14px; border-radius:20px; font-size:13px; font-weight:600; background:rgba(255,255,255,.18); }
.acc-badge.ok{ background:rgba(255,255,255,.95); color:#16a34a; }
.acc-badge.ing{ background:rgba(255,255,255,.95); color:#d98a09; }
.acc-badge.no{ background:rgba(255,255,255,.95); color:#e23b3d; }
.acc-card{ background:#fff; border:1px solid var(--t-line); border-radius:14px; padding:0 0 20px; margin-bottom:18px; box-shadow:0 12px 40px -22px rgba(31,42,68,.2); overflow:hidden; }
.acc-card-h{ display:flex; justify-content:space-between; align-items:center; padding:16px 24px; border-bottom:1px solid var(--t-line); }
.acc-card-t{ font-size:15px; font-weight:600; color:#26324e; position:relative; padding-left:12px; }
.acc-card-t::before{ content:""; position:absolute; left:0; top:50%; transform:translateY(-50%); width:3px; height:15px; border-radius:2px; background:linear-gradient(180deg,var(--t-accent),var(--t-accent2)); }
.acc-edit{ font-size:13px; color:var(--t-accent); cursor:pointer; padding:5px 14px; border:1px solid rgba(47,107,255,.4); border-radius:7px; transition:.2s; }
.acc-edit:hover{ background:var(--t-accent); color:#fff; }
.acc-kv{ display:grid; grid-template-columns:1fr 1fr; gap:14px 32px; padding:20px 24px; }
.acc-kv .kv{ display:flex; align-items:flex-start; font-size:14px; line-height:1.6; }
.acc-kv .kv.wide{ grid-column:1 / -1; }
.acc-kv .kv label{ flex:0 0 130px; color:#5c6a86; font-size:14px; }
.acc-kv .kv span{ flex:1; color:#1f2a44; font-weight:600; word-break:break-all; }
.acc-cert-row{ display:flex; flex-wrap:wrap; gap:18px; padding:4px 24px 8px; }
.acc-cert{ width:150px; }
.acc-cert-box{ width:150px; height:100px; border:1px solid var(--t-line); border-radius:10px; overflow:hidden; background:#f8fafd; cursor:pointer; display:flex; align-items:center; justify-content:center; transition:.2s; }
.acc-cert-box:hover{ border-color:var(--t-accent); box-shadow:0 8px 20px -10px rgba(47,107,255,.5); }
.acc-cert-box img{ width:100%; height:100%; object-fit:cover; }
.acc-cert p{ margin-top:8px; font-size:13px; color:var(--t-sub); text-align:center; }

/* =================== login 登录页 =================== */
/* 保留左侧大图(images/login.png),叠加渐变色调;表单卡浮右 */
.admin-login{ background:
    linear-gradient(120deg, rgba(47,107,255,.28), rgba(17,182,227,.12) 55%, rgba(255,255,255,0) 70%),
    url(../images/login.png) no-repeat 8% center,
    linear-gradient(180deg,#eaf1fb,#e2ebfb) !important;
  background-size:auto, 42% auto, cover !important; }
.admin-login-main{ width:400px !important; background:rgba(255,255,255,.96); border:1px solid var(--t-line); border-radius:16px;
  padding:32px 34px 28px !important; box-shadow:0 24px 70px -24px rgba(31,42,68,.4); backdrop-filter:blur(4px); }
.admin-login-menu{ display:flex; gap:24px; margin-bottom:24px; border-bottom:1px solid var(--t-line); }
.admin-login-menu a{ padding:0 2px 12px; color:var(--t-sub); font-size:16px; position:relative; cursor:pointer; }
.admin-login-menu a.active{ color:var(--t-accent); font-weight:600; }
.admin-login-menu a.active::after{ content:""; position:absolute; left:0; right:0; bottom:-1px; height:2px; background:var(--t-grad); border-radius:2px; }
.admin-login-item{ margin-bottom:16px; }
.admin-login-item .tit{ color:#46557a; font-size:13px; margin-bottom:6px; }
.admin-login-item .cont{ display:flex; align-items:center; border:1px solid var(--t-line); border-radius:8px; background:#f8fafd; padding:0 12px; overflow:hidden; transition:.2s; }
.admin-login-item .cont:focus-within{ border-color:var(--t-accent); box-shadow:0 0 0 3px rgba(47,107,255,.15); background:#fff; }
.admin-login-item input{ flex:1; min-width:0; height:42px; padding:0; background:transparent; border:none !important; outline:none; box-shadow:none !important; }
.admin-login-item .psd{ width:18px !important; height:18px !important; margin-left:8px; flex:0 0 auto; cursor:pointer; opacity:.45; transition:.2s; }
.admin-login-item .psd:hover{ opacity:.8; }
.admin-login-item .login-code{ width:100%; }
.login-image-cont{ margin-left:10px; }
.admin-login-btn{ width:100%; height:46px; border:none; border-radius:9px; background:var(--t-grad); color:#fff;
  font-size:16px; font-weight:600; letter-spacing:4px; cursor:pointer; margin-top:6px; box-shadow:0 10px 24px -8px rgba(17,182,227,.6); transition:.2s; }
.admin-login-btn:hover{ filter:brightness(1.06); }
.admin-login-phone{ text-align:center; margin-top:18px; color:var(--t-sub); font-size:13px; }
.admin-login-phone .sub-service-phone{ color:var(--t-accent); font-weight:600; }
.login-code-img{ border-radius:8px; border:1px solid var(--t-line); }

/* =================== order 订单进度页 =================== */
.apply-state{ background:#fff; border:1px solid var(--t-line); border-radius:14px; box-shadow:0 10px 30px -18px rgba(31,42,68,.2); }
.apply-state-li .num{ transition:.25s; }
.apply-state-li.current .num,.apply-state-li.active .num{ background:var(--t-grad) !important; color:#fff !important; border-color:transparent !important; box-shadow:0 6px 16px -6px rgba(17,182,227,.6); }
.apply-state-li.current .tit,.apply-state-li.active .tit{ color:var(--t-accent) !important; }
.apply-pay{ background:#fff; border:1px solid var(--t-line); border-radius:14px; box-shadow:0 12px 40px -22px rgba(31,42,68,.2); }
.apply-pay-menu a.active{ color:var(--t-accent); border-bottom:2px solid var(--t-accent); }
.apply-pay-table{ border-collapse:separate; border-spacing:0; width:100%; border:1px solid var(--t-line); border-radius:10px; overflow:hidden; }
.apply-pay-table th{ background:#f4f7fd !important; color:#26324e !important; font-weight:600; padding:10px 14px !important; line-height:1.4 !important; border:none !important; border-bottom:1px solid #eef1f6 !important; }
.apply-pay-table td{ padding:14px 18px; border:none !important; border-bottom:1px solid #eef1f6 !important; color:#1f2a44; }
.apply-pay-table td:first-child{ border-right:1px solid #eef1f6 !important; }
.apply-pay-table td[rowspan]{ border-left:1px solid #eef1f6 !important; }
.apply-pay-table tr:last-child td{ border-bottom:none !important; }
.apply-pay-table a{ display:inline-block; background:var(--t-grad) !important; color:#fff !important; border-radius:8px; padding:9px 22px; font-weight:600; text-decoration:none; box-shadow:0 8px 18px -8px rgba(17,182,227,.6); transition:.2s; }
.apply-pay-table a:hover{ filter:brightness(1.08); }
.apply-pay-table .price span{ color:var(--t-accent); font-weight:700; font-size:18px; }
.apply-pay-tip{ background:linear-gradient(135deg,#fff7ea,#fffdf8); border:1px dashed #f0c078; border-radius:10px; }
.apply-pay-tip .tit{ color:#d98a09; }
.apply-pay-tip .sub-service-phone,.apply-status .sub-service-phone{ color:var(--t-accent); font-weight:600; }
.apply-status{ background:#fff; border:1px solid var(--t-line); border-radius:14px; box-shadow:0 12px 40px -22px rgba(31,42,68,.2); }
.apply-status a{ color:var(--t-accent); }
.handling i{ background:var(--t-grad) !important; }
.loading-main span{ background:var(--t-grad) !important; }
.account-perfect .btn a{ background:var(--t-grad); color:#fff; border-radius:8px; }

/* =================== apply 分步申请页 =================== */
.wiz{ max-width:1080px; margin:24px auto; }
.wiz-top{ display:flex; justify-content:space-between; align-items:center; padding:16px 24px; border-radius:14px 14px 0 0; background:var(--t-grad); color:#fff; box-shadow:0 8px 24px -10px rgba(47,107,255,.5); }
.wiz-top h2{ font-size:18px; font-weight:700; }
.wiz-top .svc{ font-size:13px; opacity:.9; }
.wiz-steps{ display:flex; align-items:center; justify-content:center; background:#fff; padding:26px 20px; border:1px solid var(--t-line); border-radius:14px; box-shadow:0 10px 30px -18px rgba(31,42,68,.2); margin-bottom:18px; }
.wstep{ display:flex; flex-direction:column; align-items:center; }
.wstep .wd{ width:36px; height:36px; border-radius:50%; background:#f1f4fa; border:1px solid var(--t-line); color:var(--t-sub); display:flex; align-items:center; justify-content:center; font-weight:700; transition:.25s; }
.wstep .wl{ margin-top:8px; font-size:13px; color:var(--t-sub); }
.wstep.active .wd{ background:var(--t-grad); color:#fff; border-color:transparent; box-shadow:0 0 0 4px rgba(47,107,255,.15),0 6px 16px -4px rgba(17,182,227,.55); }
.wstep.active .wl{ color:var(--t-accent); font-weight:600; }
.wstep.done .wd{ background:linear-gradient(135deg,#16a34a,#22c55e); color:#fff; border-color:transparent; }
.wbar{ flex:1; max-width:160px; height:3px; background:#e4e9f2; margin:0 8px 24px; border-radius:2px; }
.wbar.fill{ background:linear-gradient(90deg,#22c55e,#11b6e3); }
.wiz-panel{ background:none; border:none; box-shadow:none; padding:0; }
.wiz-actions{ display:flex; justify-content:space-between; margin-top:18px; }
.wiz-actions.end{ justify-content:flex-end; }
.wbtn{ height:42px; padding:0 30px; border:none; border-radius:9px; font-size:15px; font-weight:600; cursor:pointer; transition:.2s; }
.wbtn-next{ background:var(--t-grad); color:#fff; box-shadow:0 8px 20px -8px rgba(17,182,227,.7); }
.wbtn-prev{ background:#fff; border:1px solid var(--t-line); color:#46557a; }
.wbtn-submit{ background:linear-gradient(135deg,#16a34a,#22c55e); color:#fff; box-shadow:0 8px 20px -8px rgba(34,197,94,.7); }
.wbtn:hover{ filter:brightness(1.06); }
.wbtn:disabled{ opacity:.6; cursor:not-allowed; }
/* apply/applyRead 容器拍平:去白底,卡片直接浮背景 */
.apply .apply-main{ width:auto !important; max-width:none !important; margin:0 !important; padding:0 !important; }
.apply .apply-form{ background:none !important; padding:0 !important; border-radius:0 !important; }
/* apply 卡片块 */
.apply .apply-item{ background:#fff; border:1px solid var(--t-line); border-radius:14px; box-shadow:0 12px 40px -22px rgba(31,42,68,.18); margin-bottom:18px; overflow:hidden; }
.apply .apply-tit{ display:flex; justify-content:space-between; align-items:center; padding:14px 22px; border-bottom:1px solid var(--t-line); }
.apply .apply-tit .tit{ color:#26324e; font-weight:600; position:relative; padding-left:12px; }
.apply .apply-tit .tit::before{ content:""; position:absolute; left:0; top:50%; transform:translateY(-50%); width:3px; height:14px; border-radius:2px; background:linear-gradient(180deg,var(--t-accent),var(--t-accent2)); }
.apply .apply-tit .tip{ font-size:12px; color:#9aa6c2; font-weight:400; }
.apply .apply-cont{ padding:20px 22px !important; }
.apply .apply-cont.flex{ display:grid !important; grid-template-columns:1fr 1fr; gap:16px 28px; }
.apply .apply-dl{ margin:0 !important; width:auto !important; display:flex; align-items:center; }
.apply .apply-dl.wid{ grid-column:1 / -1; }
.apply .apply-dt{ flex:0 0 132px; text-align:right; padding-right:10px; color:#46557a !important; font-weight:500; }
.apply .apply-dd{ flex:1; min-width:0; display:flex; align-items:center; }
.apply .apply-dd-inp{ background:#fff !important; height:38px; }
.apply .apply-dd-unit{ margin-left:8px; color:#7886a6; flex:0 0 auto; }
.apply .apply-dd-btn{ flex:0 0 auto; margin-left:10px; white-space:nowrap; cursor:pointer;
  background:var(--t-grad) !important; color:#fff !important; border:none !important; border-radius:8px;
  height:38px; line-height:38px; padding:0 18px; font-weight:600; display:inline-flex; align-items:center;
  box-shadow:0 6px 14px -6px rgba(17,182,227,.55); transition:.2s; }
.apply .apply-dd-btn:hover{ filter:brightness(1.08); text-decoration:none; }
/* 预览(新窗口 a[target]) / 上传(label) 保持文字链,不做实心按钮 */
.apply a.apply-dd-btn[target],
.apply label.apply-dd-btn{ background:none !important; color:var(--t-accent) !important; box-shadow:none !important; height:auto; line-height:normal; padding:0; font-weight:400; }
.apply .apply-check{ display:flex; flex-wrap:wrap; gap:10px; }
.apply .apply-check a{ padding:8px 18px; border:1px solid var(--t-line); border-radius:8px; color:var(--t-sub); font-size:14px; transition:.2s; }
.apply .apply-check a:hover{ color:var(--t-accent); border-color:rgba(47,107,255,.45); }
.apply .apply-check a.active{ background:var(--t-grad); border-color:transparent; color:#fff; box-shadow:0 6px 16px -6px rgba(17,182,227,.6); }
.wiz .el-date-editor.el-input,.wiz .el-date-editor{ width:100% !important; }
.apply .apply-data{ width:100%; border-collapse:separate; border-spacing:0; }
.apply .apply-data th{ background:#f4f7fd; color:#46557a; padding:12px 14px; }
.apply .apply-data td{ padding:12px 14px; border-bottom:1px solid #f0f3f9; }
.apply .apply-data .view{ color:var(--t-accent); }
/* 机构卡片单选 */
.inst-list{ display:grid; grid-template-columns:repeat(auto-fill,minmax(250px,1fr)); gap:14px; }
.inst{ border:1px solid var(--t-line); border-radius:12px; padding:15px; cursor:pointer; position:relative; transition:.2s; background:#fff; }
.inst:hover{ border-color:rgba(47,107,255,.5); transform:translateY(-2px); box-shadow:0 10px 24px -12px rgba(47,107,255,.45); }
.inst.on{ border-color:transparent; background:linear-gradient(180deg,#f3f8ff,#fff); box-shadow:var(--t-glow); }
.inst-top{ display:flex; justify-content:space-between; align-items:flex-start; gap:8px; }
.inst-name{ font-weight:600; line-height:1.4; color:#26324e; }
.inst .ck{ width:22px; height:22px; border-radius:50%; background:var(--t-grad); color:#fff; font-size:12px; display:none; align-items:center; justify-content:center; flex:0 0 auto; }
.inst.on .ck{ display:flex; }
.inst-meta{ margin-top:10px; display:flex; flex-wrap:wrap; gap:6px 14px; color:var(--t-sub); font-size:12px; }
.inst-meta .muted{ color:#9aa6c2; }
/* 摘要 */
.sum-grid{ display:grid; grid-template-columns:repeat(2,1fr); gap:10px 24px; }
.sum-grid .it{ display:flex; }
.sum-grid .it label{ flex:0 0 90px; color:var(--t-sub); }
.sum-grid .it span{ color:#26324e; font-weight:500; }
.pill{ display:inline-block; padding:2px 10px; border-radius:11px; background:rgba(47,107,255,.1); color:var(--t-accent); font-size:12px; border:1px solid rgba(47,107,255,.25); }
/* 选择项目弹窗 */
.apply-projectList{ width:min(1080px,92vw) !important; max-height:86vh; display:flex; flex-direction:column; overflow:hidden; }
.apply-projectList-tit{ padding:0 24px !important; line-height:60px !important; border-bottom:1px solid var(--t-line) !important; display:flex; justify-content:space-between; align-items:center; }
.apply-projectList-tit{ position:relative !important; }
.apply-projectList-tit p{ float:none !important; margin:0 !important; }
.apply-projectList-tit img{ position:absolute !important; right:24px; top:50%; transform:translateY(-50%); float:none !important; margin:0 !important; width:18px !important; height:18px !important; cursor:pointer; opacity:.5; transition:.2s; }
.apply-projectList-tit img:hover{ opacity:1; }
.account-user-tit{ position:relative !important; display:flex; justify-content:space-between; align-items:center; }
.account-user-tit p{ float:none !important; margin:0 !important; }
.account-user-tit img{ position:absolute !important; right:24px; top:50%; transform:translateY(-50%); float:none !important; margin:0 !important; width:18px !important; height:18px !important; cursor:pointer; opacity:.5; }
.account-user-tit img:hover{ opacity:1; }
.apply-projectList-main{ padding:18px 24px 24px !important; overflow:auto; }
.account-user{ width:min(900px,92vw) !important; }
.account-user-main{ overflow:auto; }
.apply-projectList-tit p{ font-size:16px; font-weight:600; color:#26324e; }
.apply-projectList-tit img{ cursor:pointer; opacity:.6; transition:.2s; }
.apply-projectList-tit img:hover{ opacity:1; }
.apply-project-search-container{ display:flex; gap:10px; align-items:center; }
.apply-project-search-container input{ flex:1; height:38px; border:1px solid var(--t-line); border-radius:8px; padding:0 12px; background:#fff; transition:.2s; }
.apply-project-search-container input:focus{ border-color:var(--t-accent); box-shadow:0 0 0 3px rgba(47,107,255,.15); outline:none; }
.apply-projectList-table{ table-layout:auto; }
.apply-projectList-table th{ background:#f4f7fd; color:#46557a; padding:12px 10px; white-space:nowrap; }
.apply-projectList-table td{ padding:12px 10px; border-bottom:1px solid #f0f3f9; }
.apply-projectList-table th:first-child,.apply-projectList-table td:first-child{ width:56px; white-space:nowrap; }
.apply-projectList-tit img{ width:18px; height:18px; align-self:center; }
.apply-projectList-table tr:hover td{ background:#f7faff; }
.apply-projectList-table a{ color:var(--t-accent); cursor:pointer; }
.apply-project-detail-row td{ padding:0 !important; background:#fafbfc; }
.apply-project-detail{ padding:14px 18px; border-top:1px solid var(--t-line); border-bottom:1px solid var(--t-line); background:linear-gradient(180deg,#f7faff,#fff); }
.apply-project-detail-grid{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px 24px; font-size:13px; }
.apply-project-detail-grid > div{ display:flex; align-items:flex-start; line-height:1.6; }
.apply-project-detail-grid > div.wide{ grid-column:1 / -1; }
.apply-project-detail-grid label{ flex:0 0 110px; color:var(--t-sub); }
.apply-project-detail-grid span{ flex:1; word-break:break-all; color:#26324e; }
.apply-project-detail-grid a{ color:var(--t-accent); }

/* 变更经办人弹窗 */
.account-user-tit{ display:flex; justify-content:space-between; align-items:center; }
.account-user-tit p{ font-size:16px; font-weight:600; color:#26324e; }
.account-user-tit img{ cursor:pointer; opacity:.6; transition:.2s; }
.account-user-tit img:hover{ opacity:1; }
.account-user-table td{ padding:12px 10px; border-bottom:1px solid #f0f3f9; }

/* order 支付表边框统一主题色(覆盖内联浅灰) */
.apply-pay-table td[style*="D6CBCB"]{ border-color:var(--t-line) !important; }
.apply-pay-table td{ border-color:var(--t-line) !important; }

/* 完善信息弹窗按钮 */
.account-perfect .tit{ font-weight:600; color:#26324e; }
.account-perfect .btn a{ background:var(--t-grad); color:#fff; border-radius:9px; padding:10px 26px; font-weight:600; box-shadow:0 8px 20px -8px rgba(17,182,227,.6); }
