/* 北纬49 · 决策模拟器 */

.sim-hero-note{
  font-size:15.5px;color:var(--ink-soft);line-height:1.7;margin:-6px 0 18px;max-width:720px;
}
.sim-hero-note b{color:var(--ink);font-weight:600}

/* 场景选择：横滑 / 网格 */
.sim-picks{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:10px;
  margin-bottom:16px;
}
@media(max-width:800px){
  .sim-picks{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:480px){
  .sim-picks{
    display:flex;overflow-x:auto;gap:8px;padding-bottom:6px;
    scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;
  }
  .sim-picks::-webkit-scrollbar{display:none}
}

.sim-pick{
  display:flex;flex-direction:column;align-items:flex-start;gap:6px;
  background:var(--card);border:1.5px solid var(--line);border-radius:12px;
  padding:14px 12px 12px;cursor:pointer;text-align:left;font-family:inherit;
  color:inherit;transition:border-color .15s,transform .12s,box-shadow .15s;
  min-width:0;position:relative;overflow:hidden;
}
@media(max-width:480px){
  .sim-pick{min-width:118px;scroll-snap-align:start;flex-shrink:0}
}
.sim-pick:hover{border-color:var(--blue);transform:translateY(-2px);box-shadow:0 4px 14px rgba(12,58,104,.08)}
.sim-pick.on{
  border-color:var(--blue);background:var(--blue-wash);
  box-shadow:0 0 0 1px var(--blue);
}
.sim-pick .sp-emoji{font-size:22px;line-height:1}
.sim-pick .sp-label{font-size:13.5px;font-weight:800;letter-spacing:.2px;line-height:1.3}
.sim-pick .sp-hook{font-size:11.5px;color:var(--ink-mute);line-height:1.4;display:none}
@media(min-width:641px){.sim-pick .sp-hook{display:block}}

/* 主舞台 */
.sim-stage{
  background:var(--card);
  border:1px solid var(--line);
  border-radius:16px;
  overflow:hidden;
  position:relative;
}
.sim-stage::before{
  content:"";position:absolute;left:0;top:0;bottom:0;width:3px;
  background:linear-gradient(180deg,var(--blue-deep),var(--blue));
}
.sim-stage-inner{padding:22px 22px 20px 24px}
@media(max-width:560px){.sim-stage-inner{padding:18px 16px 16px 18px}}

.sim-stage-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px}
.sim-stage-head h3{font-size:19px;font-weight:800;letter-spacing:.3px;line-height:1.3;margin:0}
.sim-stage-head .sim-live{
  flex-shrink:0;font-size:11px;font-weight:700;letter-spacing:1px;
  color:var(--blue);background:var(--blue-wash);padding:4px 9px;border-radius:999px;
  font-family:"Helvetica Neue",Arial,sans-serif;text-transform:uppercase;
}
.sim-stage-head .sim-live::before{
  content:"";display:inline-block;width:6px;height:6px;border-radius:50%;
  background:#2ea878;margin-right:6px;vertical-align:middle;
  box-shadow:0 0 0 3px rgba(46,168,120,.25);
}

.sim-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px 14px;margin-bottom:8px}
@media(max-width:560px){.sim-fields{grid-template-columns:1fr}}

.sim-field{display:flex;flex-direction:column;gap:5px}
.sim-field.full{grid-column:1 / -1}
.sim-field label{
  font-size:12.5px;font-weight:700;color:var(--ink-soft);letter-spacing:.2px;
}
.sim-field .hint{font-size:11.5px;color:var(--ink-mute);font-weight:500}
.sim-field input[type="number"],
.sim-field input[type="text"],
.sim-field select{
  width:100%;height:46px;border:1px solid var(--line);border-radius:10px;
  padding:0 12px;font-size:16px;font-family:inherit;background:var(--card);
  color:var(--ink);font-variant-numeric:tabular-nums;
}
[data-theme="dark"] .sim-field input,
[data-theme="dark"] .sim-field select{background:var(--input-bg,#0a1520);border-color:var(--input-border,#2a3d52)}
.sim-field input:focus,.sim-field select:focus{
  outline:none;border-color:var(--blue);box-shadow:0 0 0 3px rgba(26,95,165,.12);
}

/* 滑条 */
.sim-slider-row{display:flex;align-items:center;gap:10px}
.sim-slider-row input[type="range"]{
  flex:1;height:6px;-webkit-appearance:none;appearance:none;
  background:var(--line);border-radius:999px;outline:none;
}
.sim-slider-row input[type="range"]::-webkit-slider-thumb{
  -webkit-appearance:none;width:20px;height:20px;border-radius:50%;
  background:var(--blue-deep);cursor:pointer;border:3px solid #fff;
  box-shadow:0 1px 6px rgba(12,58,104,.35);
}
[data-theme="dark"] .sim-slider-row input[type="range"]::-webkit-slider-thumb{
  border-color:var(--card);background:var(--blue);
}
.sim-slider-val{
  min-width:64px;text-align:right;font-weight:800;font-size:14.5px;
  font-variant-numeric:tabular-nums;color:var(--blue);
}

/* 结果区 */
.sim-result{
  margin-top:18px;padding:16px 16px 14px;
  border-radius:14px;background:var(--paper);border:1px solid var(--line-soft);
}
.sim-result.tone-act{background:linear-gradient(135deg,var(--amber-wash),var(--paper));border-color:rgba(189,119,22,.25)}
.sim-result.tone-watch{background:linear-gradient(135deg,var(--blue-wash),var(--paper))}
.sim-result.tone-ok{background:linear-gradient(135deg,rgba(26,122,90,.08),var(--paper));border-color:rgba(26,122,90,.2)}

.sim-verdict{
  font-size:18px;font-weight:800;letter-spacing:.2px;line-height:1.35;margin-bottom:10px;
}
.sim-kpis{
  display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:12px;
}
@media(max-width:520px){.sim-kpis{grid-template-columns:1fr 1fr}}
.sim-kpi{
  background:var(--card);border:1px solid var(--line-soft);border-radius:12px;padding:11px 12px;
}
.sim-kpi .l{font-size:11px;font-weight:700;color:var(--ink-mute);margin-bottom:4px;letter-spacing:.3px}
.sim-kpi .v{
  font-size:18px;font-weight:800;font-variant-numeric:tabular-nums;line-height:1.2;
  letter-spacing:-.3px;
}
.sim-kpi .v.big{font-size:22px;color:var(--blue)}
.sim-kpi .v.hot{color:var(--amber)}
.sim-kpi .v.ok{color:#1a7a5a}
[data-theme="dark"] .sim-kpi .v.ok{color:#7ddea8}

.sim-blurb{font-size:14.5px;color:var(--ink-soft);line-height:1.7;margin:0}
.sim-blurb b{color:var(--ink);font-weight:600}

/* 对比条 */
.sim-bars{margin:12px 0 4px;display:flex;flex-direction:column;gap:8px}
.sim-bar-row{display:grid;grid-template-columns:72px 1fr 88px;align-items:center;gap:8px;font-size:12.5px}
.sim-bar-row .bn{color:var(--ink-mute);font-weight:600}
.sim-bar-row .bv{text-align:right;font-weight:800;font-variant-numeric:tabular-nums;font-size:13px}
.sim-bar-track{height:10px;background:var(--line-soft);border-radius:999px;overflow:hidden}
.sim-bar-fill{height:100%;border-radius:999px;background:var(--blue);transition:width .25s ease}
.sim-bar-fill.alt{background:var(--amber)}
.sim-bar-fill.ok{background:#1a7a5a}

.sim-foot{
  display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;
  margin-top:14px;padding-top:12px;border-top:1px solid var(--line-soft);
}
.sim-foot .method{font-size:11.5px;color:var(--ink-mute);line-height:1.45;max-width:420px}
.sim-foot .links{display:flex;flex-wrap:wrap;gap:8px}
.sim-foot a.sim-link{
  font-size:13px;font-weight:700;color:var(--blue);
  padding:7px 12px;border-radius:8px;border:1px solid var(--line);
  background:var(--card);transition:border-color .12s,background .12s;
}
.sim-foot a.sim-link:hover{border-color:var(--blue);background:var(--blue-wash)}

/* 本机记住 + 恢复默认 */
.sim-toolbar{
  display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;
  margin:4px 0 12px;padding:10px 12px;border-radius:10px;
  background:var(--paper);border:1px solid var(--line-soft);
}
.sim-remember{
  display:flex;align-items:flex-start;gap:8px;cursor:pointer;font-size:13.5px;font-weight:600;
  color:var(--ink);line-height:1.4;user-select:none;
}
.sim-remember input{margin-top:3px;flex-shrink:0;width:16px;height:16px;accent-color:var(--blue)}
.sim-remember-hint{
  display:block;font-size:11.5px;font-weight:500;color:var(--ink-mute);margin-top:2px;
}
.sim-reset-btn{
  flex-shrink:0;font-size:12.5px;font-weight:700;font-family:inherit;
  color:var(--ink-soft);background:var(--card);border:1px solid var(--line);
  border-radius:8px;padding:7px 12px;cursor:pointer;
}
.sim-reset-btn:hover{border-color:var(--blue);color:var(--blue)}

/* 结果反馈三按钮 */
.sim-feedback{
  display:flex;flex-wrap:wrap;align-items:center;gap:8px;
  margin:14px 0 4px;padding:12px 12px 10px;
  border-radius:12px;background:var(--card);border:1px dashed var(--line);
}
.sim-feedback-q{font-size:13px;font-weight:700;color:var(--ink-soft);margin-right:4px}
.sim-fb-btn{
  font-size:12.5px;font-weight:700;font-family:inherit;cursor:pointer;
  border:1px solid var(--line);border-radius:999px;padding:6px 12px;
  background:var(--paper);color:var(--ink-soft);transition:border-color .12s,background .12s,color .12s;
}
.sim-fb-btn:hover{border-color:var(--blue);color:var(--blue);background:var(--blue-wash)}
.sim-fb-btn[data-fb="useful"]:hover{border-color:#1a7a5a;color:#1a7a5a}
.sim-fb-btn[data-fb="off"]:hover{border-color:var(--amber);color:var(--amber)}
.sim-feedback-thanks{font-size:13px;font-weight:600;color:var(--ink-soft);line-height:1.5}

/* 首页入口卡（紧凑） */
.sim-home-card{
  display:block;text-decoration:none;color:inherit;
  background:var(--card);border:1px solid var(--line);border-radius:16px;
  padding:0;overflow:hidden;position:relative;
  transition:border-color .15s,box-shadow .15s,transform .15s;
  margin-bottom:8px;
}
.sim-home-card:hover{border-color:var(--blue);box-shadow:0 6px 24px rgba(12,58,104,.1);transform:translateY(-2px)}
.sim-home-card::before{
  content:"";position:absolute;left:0;top:0;bottom:0;width:3px;
  background:linear-gradient(180deg,#0c3a68,#1a5fa5,#f5a623);
}
.sim-home-top{
  padding:22px 24px 16px 26px;
  background:
    radial-gradient(ellipse at 100% 0%,rgba(26,95,165,.12) 0%,transparent 55%),
    radial-gradient(ellipse at 0% 100%,rgba(245,166,35,.08) 0%,transparent 45%),
    var(--card);
}
[data-theme="dark"] .sim-home-top{
  background:
    radial-gradient(ellipse at 100% 0%,rgba(107,184,232,.1) 0%,transparent 55%),
    radial-gradient(ellipse at 0% 100%,rgba(240,176,64,.06) 0%,transparent 45%),
    var(--card);
}
.sim-home-kicker{
  display:inline-flex;align-items:center;gap:6px;
  font-size:11.5px;letter-spacing:1.5px;font-weight:700;color:var(--amber);
  font-family:"Helvetica Neue",Arial,sans-serif;margin-bottom:10px;
}
.sim-home-kicker .dot{
  width:7px;height:7px;border-radius:50%;background:#2ea878;
  box-shadow:0 0 0 3px rgba(46,168,120,.22);
}
.sim-home-top h3{font-size:22px;font-weight:800;line-height:1.35;margin:0 0 8px;letter-spacing:.2px}
.sim-home-top h3 .accent{color:var(--blue)}
.sim-home-top p{font-size:15px;color:var(--ink-soft);line-height:1.7;margin:0;max-width:560px}
.sim-home-top p b{color:var(--ink);font-weight:600}

.sim-home-chips{
  display:flex;flex-wrap:wrap;gap:8px;padding:0 24px 18px 26px;
}
.sim-chip{
  font-size:12.5px;font-weight:700;padding:7px 12px;border-radius:999px;
  background:var(--paper);border:1px solid var(--line);color:var(--ink-soft);
  display:inline-flex;align-items:center;gap:5px;
}
.sim-chip span{font-size:14px}

.sim-home-go{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:14px 22px 14px 26px;border-top:1px solid var(--line-soft);
  background:var(--paper);
}
.sim-home-go .left{font-size:13.5px;color:var(--ink-soft);line-height:1.45}
.sim-home-go .left b{color:var(--ink);font-weight:700}
.sim-home-go .cta{
  flex-shrink:0;display:inline-flex;align-items:center;gap:6px;
  background:var(--blue-deep);color:#fff;font-size:14px;font-weight:700;
  padding:10px 16px;border-radius:10px;letter-spacing:.3px;
}
[data-theme="dark"] .sim-home-go .cta{background:var(--blue);color:#0b121a}
.sim-home-card:hover .sim-home-go .cta{filter:brightness(1.06)}

/* 独立页 hero */
.sim-page-hero{
  padding:36px 0 8px;position:relative;overflow:hidden;
}
.sim-page-hero .lat-bg{
  position:absolute;right:-20px;top:-10px;
  font-family:"Helvetica Neue",Arial,sans-serif;font-size:120px;font-weight:800;
  color:var(--blue);opacity:.07;letter-spacing:-4px;pointer-events:none;line-height:1;
}
.sim-page-hero .kicker{
  font-size:12px;letter-spacing:2px;color:var(--amber);font-weight:700;
  font-family:"Helvetica Neue",Arial,sans-serif;margin-bottom:10px;
}
.sim-page-hero h1{font-size:30px;font-weight:800;line-height:1.3;margin:0 0 12px;letter-spacing:.3px}
.sim-page-hero h1 .accent{color:var(--blue)}
.sim-page-hero .sub{font-size:16.5px;color:var(--ink-soft);line-height:1.75;max-width:560px;margin:0}
.sim-page-hero .sub b{color:var(--ink);font-weight:600}
@media(max-width:560px){
  .sim-page-hero h1{font-size:25px}
  .sim-page-hero .lat-bg{font-size:80px}
}

.sim-disc{
  font-size:12px;color:var(--ink-mute);line-height:1.55;margin:14px 0 0;text-align:center;
}
