/* ============================================================
   s3.css — 心元 S3 行业工作台 · 前端壳
   设计系统：深蓝墨 × 金箔 × 绿芽（与 s1/s2 同源 token）
   移动端优先（老板手机 / 平板）+ 大屏断点（≥1024 宽屏）
   ============================================================ */
:root{
  --ink:#0b1526; --ink-2:#101f38; --ink-3:#1a2f52;
  --gold:#c9a55a; --gold-2:#e9d3a0; --gold-dim:rgba(201,165,90,.16);
  --green:#7ed9a0; --green-2:#45b981; --green-dim:rgba(126,217,160,.12);
  --txt:#e9eef8; --muted:#8fa3c2; --line:rgba(201,165,90,.16);
  --danger:#f07a7a; --warn:#f0b45a; --input-bg:#0c1830;
  --r-pill:999px; --r-btn:10px; --r-card:14px;
  --fs-body:15px; --fs-small:12px; --fs-heading:17px; --fs-hero:36px;
  --shadow:0 10px 30px rgba(0,0,0,.35);
}
*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}
html{-webkit-text-size-adjust:100%}
body{
  font-family:"PingFang SC","Microsoft YaHei",system-ui,sans-serif;
  font-size:var(--fs-body);color:var(--txt);line-height:1.5;min-height:100vh;
  background:
    radial-gradient(1200px 500px at 82% -8%, var(--gold-dim), transparent 60%),
    radial-gradient(900px 500px at -8% 108%, rgba(126,217,160,.09), transparent 55%),
    linear-gradient(168deg, var(--ink) 0%, #0a1428 55%, var(--ink) 100%);
  background-attachment:fixed;
}
.view{display:none;min-height:100vh}
.view.on{display:block}
#view-login.on{display:flex;align-items:center;justify-content:center;padding:24px 16px}

/* ---------- 登录 ---------- */
.login-card{width:100%;max-width:400px;background:var(--ink-2);border:1px solid var(--line);
  border-top:3px solid var(--gold);border-radius:var(--r-card);padding:30px 22px 22px;box-shadow:var(--shadow)}
.brand{font-size:24px;font-weight:800;letter-spacing:2px}
.brand em{color:var(--gold);font-style:normal}
.login-sub{font-size:var(--fs-small);color:var(--muted);margin:6px 0 22px;letter-spacing:1px}
.login-tip{font-size:var(--fs-small);color:var(--muted);margin-top:12px;text-align:center;min-height:16px}
.demo-link{margin-top:12px;text-align:center;font-size:13px}
.demo-link a{color:var(--green);text-decoration:none;border-bottom:1px dashed var(--green-2);padding-bottom:1px}

/* ---------- 顶栏 + 三宫格导航 ---------- */
.topbar{display:flex;justify-content:space-between;align-items:center;padding:14px 16px 8px;max-width:760px;margin:0 auto}
.brand-sm{font-size:18px;font-weight:800;letter-spacing:1px}
.brand-sm b{color:var(--gold)}
.top-user{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--muted)}
.nav3,.nav4{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:8px 16px 4px;max-width:760px;margin:0 auto}
.nav4{grid-template-columns:repeat(4,1fr)}
@media(max-width:430px){.nav3,.nav4{gap:6px}.nav3 .nav-item,.nav4 .nav-item{padding:10px 4px;font-size:12px}.nav3 .nav-ico,.nav4 .nav-ico{font-size:18px}}
.nav-item{display:flex;flex-direction:column;align-items:center;gap:5px;padding:12px 8px;
  background:var(--ink-2);border:1px solid var(--line);border-radius:var(--r-btn);
  color:var(--muted);cursor:pointer;font-size:13px;font-family:inherit;transition:border-color .15s,color .15s}
.nav-item:active{transform:scale(.97)}
.nav-item.active{border-color:var(--gold);color:var(--gold-2);box-shadow:0 0 0 1px var(--gold) inset}
.nav-ico{font-size:20px;line-height:1}

/* ---------- 主体 ---------- */
main{max-width:760px;margin:0 auto;padding:10px 16px 44px}
.sec{display:none}
.sec.on{display:block;animation:fade .25s ease}
@keyframes fade{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.card{background:var(--ink-2);border:1px solid var(--line);border-radius:var(--r-card);padding:16px;margin-bottom:14px}
.card h3{font-size:var(--fs-heading);color:var(--gold-2);margin-bottom:12px;display:flex;align-items:center;gap:8px}
.card h3::before{content:"";width:4px;height:16px;border-radius:2px;background:linear-gradient(var(--gold),var(--gold-2))}
.hd-right{margin-left:auto}
.lbl{font-size:var(--fs-small);color:var(--muted);margin:2px 0 8px}

/* ---------- Hero ---------- */
.hero-card{position:relative;overflow:hidden;background:linear-gradient(135deg,rgba(201,165,90,.20),rgba(201,165,90,.04) 55%),var(--ink-2);
  border:1px solid var(--gold);border-radius:var(--r-card);padding:22px 20px 18px;margin-bottom:14px}
.hero-card::after{content:"行业";position:absolute;right:-10px;bottom:-20px;font-size:96px;font-weight:800;
  color:rgba(201,165,90,.07);pointer-events:none}
.hero-label{font-size:var(--fs-small);color:var(--muted);letter-spacing:2px}
.hero-num{font-size:var(--fs-hero);font-weight:800;color:var(--gold-2);margin:4px 0 2px;font-family:Georgia,"Times New Roman",serif}
.hero-sub{font-size:var(--fs-small);color:var(--muted)}

/* ---------- 一店一档 · 门店卡 ---------- */
.store-list{display:flex;flex-direction:column;gap:10px}
.store-card{background:var(--input-bg);border:1px solid var(--line);border-left:3px solid var(--gold);
  border-radius:var(--r-card);padding:12px 14px;cursor:pointer;transition:border-color .15s}
.store-card:active{transform:scale(.99)}
.store-head{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:4px;flex-wrap:wrap}
.store-head h4{font-size:15px;color:var(--txt)}
.store-city{font-size:var(--fs-small);color:var(--muted)}
.store-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:8px}
.store-meta .sm{background:var(--ink-2);border-radius:8px;padding:6px 8px}
.store-meta .sm b{display:block;font-size:14px;color:var(--gold-2);font-family:Georgia,serif}
.store-meta .sm span{font-size:11px;color:var(--muted)}
.page-row{display:flex;justify-content:center;align-items:center;gap:14px;margin-top:12px}
.page-info{font-size:var(--fs-small);color:var(--muted)}

/* ---------- 对标报告 ---------- */
.report-head{background:var(--green-dim);border:1px solid rgba(126,217,160,.32);color:var(--green);
  border-radius:var(--r-btn);padding:10px 12px;font-size:13px;margin-bottom:12px}
.report-items{display:flex;flex-direction:column;gap:12px}
.rep-item .rep-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}
.rep-item .rep-name{font-size:13px;color:var(--txt);font-weight:600}
.rep-item .rep-val{font-size:13px;color:var(--gold-2);font-family:Georgia,serif}
.rep-item .rep-level{font-size:11px;color:var(--muted)}
.rep-bar{position:relative;height:8px;background:var(--input-bg);border-radius:999px;overflow:visible;margin-bottom:2px}
.rep-bar .bar-fill{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--green-2),var(--gold))}
.rep-bar .bar-p50{position:absolute;top:-3px;bottom:-3px;width:2px;background:var(--txt);opacity:.5;border-radius:2px}
.rep-bar .bar-p75{position:absolute;top:-3px;bottom:-3px;width:1px;background:var(--gold);opacity:.4}
.rep-scale{display:flex;justify-content:space-between;font-size:10px;color:var(--muted)}
.report-conclusion{background:var(--gold-dim);border:1px solid rgba(201,165,90,.32);color:var(--gold-2);
  border-radius:var(--r-btn);padding:10px 12px;font-size:13px;margin-top:14px}
.report-disclaimer{font-size:11px;color:var(--muted);margin-top:8px;text-align:center}

/* ---------- 行业参数表 ---------- */
.bench-table{width:100%;border-collapse:collapse;font-size:13px}
.bench-table th,.bench-table td{border-bottom:1px solid var(--line);padding:9px 6px;text-align:left}
.bench-table th{color:var(--gold);font-weight:600;font-size:12px}
.bench-table td{color:var(--txt)}
.bench-table .b-val{font-family:Georgia,serif;color:var(--gold-2)}
.bench-table .b-unit{font-size:11px;color:var(--muted);margin-left:3px}

/* ---------- 输入 / 按钮 ---------- */
.inp{width:100%;background:var(--input-bg);border:1px solid rgba(143,163,194,.25);border-radius:var(--r-btn);
  padding:12px 14px;color:var(--txt);font-size:var(--fs-body);margin-bottom:10px;outline:none;color-scheme:dark}
.inp:focus{border-color:var(--gold)}
.sel{cursor:pointer}.sel option{background:var(--ink-3);color:var(--txt)}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.btn{border:none;border-radius:var(--r-btn);padding:11px 18px;font-size:var(--fs-body);cursor:pointer;
  font-weight:600;font-family:inherit;transition:.15s}
.btn:active{transform:scale(.98)}
.btn:disabled{opacity:.5;cursor:not-allowed}
.btn-gold{background:linear-gradient(135deg,var(--gold-2),var(--gold));color:#101525}
.btn-ghost{background:transparent;color:var(--gold-2);border:1px solid var(--gold)}
.btn-xs{padding:5px 10px;font-size:12px}
.btn-block{width:100%}

/* ---------- 演示态横幅 ---------- */
.demo-banner{display:none;align-items:center;gap:8px;background:linear-gradient(135deg,rgba(201,165,90,.30),rgba(201,165,90,.10));
  border:1px solid var(--gold);color:var(--gold-2);font-size:12px;font-weight:700;letter-spacing:1px;
  border-radius:var(--r-btn);padding:9px 12px;margin-bottom:12px}
.demo-banner::before{content:"⚠";font-size:14px}
.demo-on .demo-banner{display:flex}
.demo-tag{display:inline-block;margin-left:6px;background:var(--gold);color:#101525;font-size:10px;
  font-weight:800;padding:1px 8px;border-radius:999px;vertical-align:2px;letter-spacing:1px}

/* ---------- 移动端触控尺寸（≤768 触屏设备）+ 大屏断点 ---------- */
@media(max-width:768px){
  .topbar .btn{min-height:44px;display:inline-flex;align-items:center;justify-content:center;padding:8px 14px}
  .btn-xs,.btn-sm{min-height:40px}
  .demo-link a{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 12px}
}
@media(min-width:1024px){
  .topbar{max-width:1120px}
  .nav3,.nav4{max-width:1120px}
  main{max-width:1120px}
  .hero-num{font-size:42px}
  .store-meta{grid-template-columns:repeat(6,1fr)}
  .report-items{display:grid;grid-template-columns:1fr 1fr;gap:14px}
}

/* ---------- 空态 / Toast ---------- */
.empty-tip{border:1px dashed rgba(143,163,194,.35);border-radius:var(--r-card);padding:22px;
  text-align:center;color:var(--muted);font-size:13px;margin-bottom:14px}
.toast{position:fixed;left:50%;bottom:26px;transform:translateX(-50%) translateY(20px);
  background:var(--ink-3);border:1px solid var(--gold);color:var(--gold-2);padding:10px 20px;
  border-radius:var(--r-pill);font-size:13px;opacity:0;pointer-events:none;transition:.25s;
  z-index:99;max-width:86vw;text-align:center;box-shadow:var(--shadow)}
.toast.on{opacity:1;transform:translateX(-50%) translateY(0)}

/* ---------- 撮合需求大厅（mini 列表组件） ---------- */
.mini-list{display:flex;flex-direction:column;gap:8px}
.mini-item{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap;
  background:var(--input-bg);border:1px solid var(--line);border-left:3px solid var(--gold);
  border-radius:10px;padding:9px 12px;font-size:13px}
.mini-item .mi-name{color:var(--txt);font-weight:600}
.mini-item .mi-sub{font-size:11px;color:var(--muted);margin-top:2px}
.mini-item .mi-tag{font-size:11px;padding:2px 8px;border-radius:999px;background:var(--gold-dim);color:var(--gold-2)}

/* ---------- 订单跟踪 · 验收评价表单 ---------- */
.rating-box{margin-top:8px;width:100%}
.rating-form{background:var(--ink-2);border:1px solid rgba(126,217,160,.32);border-radius:var(--r-btn);padding:10px}
.rating-form .inp{margin-bottom:8px}
