/* ============ 分歧地图 DisagreeMap · Warm Editorial System ============ */
:root{
  --primary:#cc785c;
  --primary-active:#a9583e;
  --primary-hover:#d77b55;
  --primary-hover-border:#e3a080;
  --primary-soft:#f2e2da;
  --primary-disabled:#e6dfd8;
  --ink:#141413;
  --body:#3d3d3a;
  --body-strong:#252523;
  --muted:#6c6a64;
  --muted-soft:#8e8b82;
  --hairline:#e6dfd8;
  --hairline-soft:#ebe6df;
  --canvas:#faf9f5;
  --surface-soft:#f5f0e8;
  --surface-card:#efe9de;
  --surface-cream-strong:#e8e0d2;
  --surface-dark:#181715;
  --surface-dark-elevated:#252320;
  --surface-dark-soft:#1f1e1b;
  --on-dark:#faf9f5;
  --on-dark-soft:#a09d96;
  --teal:#5db8a6;
  --amber:#e8a55a;
  --success:#5db872;
  --warning:#d4a017;
  --error:#c64545;
  --radius-sm:6px;
  --radius-md:8px;
  --radius-lg:12px;
  --radius-xl:16px;
  --font-scale:1.25;
  --serif:"Noto Serif SC","Songti SC","SimSun",serif;
  --sans:"Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif;
  --mono:"JetBrains Mono","SFMono-Regular",Consolas,monospace;
}

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-padding-top:88px;scroll-behavior:smooth}
body{
  min-height:100vh;
  background:var(--canvas);
  color:var(--body);
  font-family:var(--sans);
  font-size:calc(16px * var(--font-scale));
  line-height:1.55;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
button,input{font:inherit}
button{color:inherit}
button:disabled{cursor:not-allowed}
a{color:var(--primary)}
::selection{background:var(--primary);color:#fff}
:focus-visible{outline:2px solid var(--primary);outline-offset:3px;border-radius:4px}
[tabindex="-1"]:focus{outline:none}
.sr-only{
  position:absolute!important;
  width:1px;height:1px;
  padding:0;margin:-1px;
  overflow:hidden;clip:rect(0,0,0,0);
  white-space:nowrap;border:0;
}
.skip-link{
  position:fixed;left:16px;top:-80px;z-index:100;
  padding:10px 16px;border-radius:var(--radius-md);
  background:var(--primary);color:#fff;text-decoration:none;
  transition:top .18s ease;
}
.skip-link:focus{top:12px}

/* ============ Intro Film ============ */
body.intro-is-playing{overflow:hidden}
.intro-overlay{
  position:fixed;inset:0;z-index:1000;
  min-height:100vh;min-height:100dvh;
  overflow:hidden;isolation:isolate;
  color:var(--on-dark);
  background:transparent;
}
.intro-overlay.is-finished{display:none}
.intro-curtain{
  position:absolute;inset-block:0;width:50.05%;z-index:0;
  overflow:hidden;
  background:
    linear-gradient(rgba(250,249,245,.026) 1px,transparent 1px),
    linear-gradient(90deg,rgba(250,249,245,.026) 1px,transparent 1px),
    var(--surface-dark);
  background-size:52px 52px,52px 52px,auto;
  transition:transform 1400ms cubic-bezier(.76,0,.24,1);
  will-change:transform;
}
.intro-curtain::after{
  content:"";position:absolute;inset-block:0;width:52%;
  background:radial-gradient(circle at center,rgba(204,120,92,.1),transparent 67%);
  pointer-events:none;
}
.intro-curtain-left{left:0;border-right:1px solid rgba(204,120,92,.22)}
.intro-curtain-left::after{right:0}
.intro-curtain-right{right:0;border-left:1px solid rgba(204,120,92,.22)}
.intro-curtain-right::after{left:0}
.intro-overlay.is-revealing .intro-curtain-left{transform:translate3d(-100%,0,0)}
.intro-overlay.is-revealing .intro-curtain-right{transform:translate3d(100%,0,0)}
.intro-texture{
  position:absolute;inset:0;z-index:1;pointer-events:none;
  background:
    linear-gradient(90deg,transparent calc(50% - .5px),rgba(204,120,92,.18) 50%,transparent calc(50% + .5px)),
    radial-gradient(circle at 50% 45%,rgba(232,165,90,.055),transparent 36%),
    linear-gradient(180deg,rgba(0,0,0,.06),transparent 38%,rgba(0,0,0,.2));
  transition:opacity .55s ease;
}
.intro-texture::before,.intro-texture::after{
  content:"";position:absolute;width:5px;height:5px;border:1px solid rgba(204,120,92,.52);
  transform:rotate(45deg);
}
.intro-texture::before{left:max(18px,3vw);top:max(18px,3vw)}
.intro-texture::after{right:max(18px,3vw);bottom:max(18px,3vw)}
.intro-scene{
  position:relative;z-index:2;width:100%;height:100%;
  transition:opacity .6s ease,transform .7s cubic-bezier(.4,0,.2,1);
}
.intro-overlay.is-revealing .intro-scene{opacity:0;transform:scale(.992)}
.intro-overlay.is-revealing .intro-texture{opacity:0}
.intro-topline{
  position:absolute;left:clamp(24px,4.2vw,68px);right:clamp(24px,4.2vw,68px);top:clamp(22px,4.2vh,40px);
  display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;
  color:var(--on-dark-soft);font-family:var(--mono);font-size:calc(9px * var(--font-scale));letter-spacing:.09em;
  opacity:0;transform:translateY(-7px);
  transition:opacity 1.1s ease .12s,transform 1.1s ease .12s;
}
.intro-overlay.is-running .intro-topline{opacity:1;transform:none}
.intro-brandmark{
  position:relative;display:block;width:17px;height:17px;
}
.intro-brandmark::before,.intro-brandmark::after{
  content:"";position:absolute;left:8px;top:0;width:1px;height:17px;
  background:var(--primary);border-radius:2px;
}
.intro-brandmark::after{transform:rotate(90deg)}
.intro-sequence{color:var(--primary);text-align:right}
.intro-question-wrap{
  position:absolute;left:50%;top:34%;width:min(980px,90vw);
  transform:translate3d(-50%,-50%,0);text-align:center;
  transition:top 1.3s cubic-bezier(.4,0,.2,1),opacity .8s ease,transform 1.3s cubic-bezier(.4,0,.2,1);
  will-change:top,transform,opacity;
}
.intro-overlay.is-diverged .intro-question-wrap{top:13%}
.intro-overlay.is-stacked .intro-question-wrap{
  top:11%;opacity:0;transform:translate3d(-50%,-50%,0) scale(.96);
}
.intro-kicker{
  display:flex;align-items:center;justify-content:center;gap:9px;
  margin-bottom:18px;color:var(--on-dark-soft);
  font-family:var(--mono);font-size:calc(9px * var(--font-scale));letter-spacing:.12em;
  opacity:0;transform:translateY(8px);
  transition:opacity 1s ease .25s,transform 1s ease .25s;
}
.intro-kicker span{width:22px;height:1px;background:var(--primary)}
.intro-overlay.is-running .intro-kicker{opacity:1;transform:none}
.intro-question{
  color:var(--on-dark);font-family:var(--serif);
  font-size:calc(clamp(38px,5.5vw,76px) * var(--font-scale));font-weight:400;line-height:1.2;
  letter-spacing:-.025em;
  transition:opacity .85s ease,font-size 1.2s cubic-bezier(.4,0,.2,1),letter-spacing 1.2s ease;
}
.intro-question span{display:block}
.intro-question span:first-child{
  opacity:0;transform:translateY(18px);
  transition:opacity 1.25s cubic-bezier(.2,.7,.2,1) .18s,transform 1.25s cubic-bezier(.2,.7,.2,1) .18s;
}
.intro-question span:last-child{
  opacity:0;transform:translateY(18px);
  transition:opacity 1.25s cubic-bezier(.2,.7,.2,1) .38s,transform 1.25s cubic-bezier(.2,.7,.2,1) .38s;
}
.intro-overlay.is-running .intro-question span{opacity:1;transform:none}
.intro-question em{color:var(--primary);font-style:normal}
.intro-overlay.is-diverged .intro-kicker{opacity:0;transform:translateY(-5px);transition-delay:0s}
.intro-overlay.is-diverged .intro-question{
  font-size:calc(clamp(25px,3.2vw,40px) * var(--font-scale));letter-spacing:.01em;opacity:.48;
}
.intro-orbit{
  position:absolute;left:50%;top:52%;width:min(900px,92vw);height:clamp(330px,47vh,440px);
  transform:translate3d(-50%,-50%,0);
  transition:top 1.35s cubic-bezier(.4,0,.2,1),opacity .65s ease,transform 1.35s cubic-bezier(.4,0,.2,1);
}
.intro-overlay.is-diverged .intro-orbit{transition-delay:.08s}
.intro-overlay.is-naming .intro-orbit{top:45%}
.intro-connectors{
  position:absolute;inset:0;width:100%;height:100%;overflow:visible;
  opacity:0;transition:opacity .65s ease .18s;
}
.intro-overlay.is-diverged .intro-connectors{opacity:1}
.intro-overlay.is-stacked .intro-connectors{opacity:0;transition-delay:0s}
.intro-connector{
  fill:none;stroke:rgba(204,120,92,.55);stroke-width:1.15;
  stroke-dasharray:1;stroke-dashoffset:1;pathLength:1;
  transition:stroke-dashoffset 1.35s cubic-bezier(.4,0,.2,1);
}
.intro-overlay.is-diverged .intro-connector-a{stroke-dashoffset:0;transition-delay:.18s}
.intro-overlay.is-diverged .intro-connector-b{stroke-dashoffset:0;transition-delay:.28s}
.intro-overlay.is-diverged .intro-connector-c{stroke-dashoffset:0;transition-delay:.38s}
.intro-connector-dot{
  fill:var(--primary);opacity:0;
  transition:opacity .5s ease,transform .5s ease;
  transform-box:fill-box;transform-origin:center;transform:scale(.2);
}
.intro-overlay.is-diverged .intro-connector-dot{opacity:1;transform:scale(1)}
.intro-overlay.is-diverged .dot-a{transition-delay:.54s}
.intro-overlay.is-diverged .dot-b{transition-delay:.62s}
.intro-overlay.is-diverged .dot-c{transition-delay:.7s}
.intro-branch-label{
  position:absolute;left:50%;top:50%;z-index:4;
  margin:0;padding:9px 18px;
  border:1px solid rgba(204,120,92,.38);border-radius:999px;
  background:rgba(24,23,21,.92);
  box-shadow:0 10px 28px rgba(0,0,0,.28);
  color:var(--on-dark);font-family:var(--serif);font-size:calc(16px * var(--font-scale));
  letter-spacing:.04em;white-space:nowrap;
  opacity:0;transform:translate3d(-50%,-50%,0) scale(.9);
  transition:opacity .65s ease,transform .75s cubic-bezier(.16,1,.3,1);
}
.intro-overlay.is-diverged .intro-branch-label{
  opacity:1;transform:translate3d(-50%,-50%,0) scale(1);
  transition-delay:.75s;
}
.intro-overlay.is-stacked .intro-branch-label{
  opacity:0;transform:translate3d(-50%,-50%,0) scale(.88);
  transition-delay:0s;
}
.intro-fragment{
  position:absolute;width:min(250px,28%);
  padding:16px 18px;overflow:hidden;
  border:1px solid rgba(250,249,245,.16);border-radius:var(--radius-lg);
  background:
    radial-gradient(circle at 100% 0,rgba(204,120,92,.12),transparent 48%),
    rgba(37,35,32,.94);
  box-shadow:0 18px 50px rgba(0,0,0,.26);
  opacity:0;
  transition:
    opacity .75s ease,
    transform 1.35s cubic-bezier(.16,1,.3,1),
    border-color .75s ease;
  will-change:transform,opacity;
}
.intro-fragment::after{
  content:"";position:absolute;left:0;top:0;width:2px;height:100%;
  background:var(--fragment-color,var(--primary));
}
.intro-fragment-a{left:3%;top:7%;--fragment-color:var(--primary);transform:translate3d(-22px,18px,0) scale(.94)}
.intro-fragment-b{right:3%;top:7%;--fragment-color:var(--teal);transform:translate3d(22px,18px,0) scale(.94)}
.intro-fragment-c{left:50%;bottom:-5%;--fragment-color:var(--amber);transform:translate3d(-50%,24px,0) scale(.94)}
.intro-fragment>span{display:block;color:var(--fragment-color);font-family:var(--mono);font-size:calc(8px * var(--font-scale));letter-spacing:.05em}
.intro-fragment>b{display:block;margin-top:8px;color:var(--on-dark);font-family:var(--serif);font-size:calc(16px * var(--font-scale));font-weight:500}
.intro-fragment>small{display:block;margin-top:5px;color:var(--on-dark-soft);font-size:calc(10px * var(--font-scale));line-height:1.55}
.intro-overlay.is-diverged .intro-fragment{opacity:1}
.intro-overlay.is-diverged .intro-fragment-a{transform:none;transition-delay:.1s}
.intro-overlay.is-diverged .intro-fragment-b{transform:none;transition-delay:.18s}
.intro-overlay.is-diverged .intro-fragment-c{transform:translate3d(-50%,0,0);transition-delay:.26s}
.intro-overlay.is-stacked .intro-fragment{
  opacity:0;transform:translate3d(0,0,0) scale(.8);
  transition-delay:0s;
}
.intro-overlay.is-stacked .intro-fragment-c{transform:translate3d(-50%,-112%,0) scale(.8)}
.intro-stack{
  position:absolute;left:50%;top:50%;width:min(390px,64vw);aspect-ratio:1.64;
  display:grid;align-items:stretch;
  opacity:0;pointer-events:none;
  transform:translate3d(-50%,-50%,0) scale(.82);
  transform-origin:center;
  transition:
    transform 1.45s cubic-bezier(.16,1,.3,1),
    opacity .75s ease;
  will-change:transform,opacity;
}
.intro-overlay.is-stacked .intro-stack{opacity:1;transform:translate3d(-50%,-50%,0) scale(1)}
.intro-overlay.is-naming .intro-stack{
  transform:translate3d(-50%,-50%,0) scale(.9);
}
.intro-overlay.is-aligning .intro-stack{
  opacity:0;
  transform:
    translate3d(calc(-50% + var(--intro-target-x,0px)),calc(-50% + var(--intro-target-y,0px)),0)
    scale(var(--intro-target-scale,1));
  transition:
    transform 1.45s cubic-bezier(.45,.05,.55,.95),
    opacity .9s ease .45s;
}
.intro-stack-card{
  grid-area:1/1;min-width:0;padding:20px;
  border:1px solid rgba(250,249,245,.14);border-radius:var(--radius-lg);
  background:
    radial-gradient(circle at 94% 7%,rgba(204,120,92,.14),transparent 36%),
    linear-gradient(145deg,var(--surface-dark-elevated),#171715);
  box-shadow:0 22px 45px rgba(0,0,0,.3);
  transform-origin:top center;
}
.intro-stack-card>span{
  display:inline-grid;place-items:center;width:26px;height:26px;
  border:1px solid rgba(250,249,245,.18);border-radius:50%;
  color:var(--primary);font-family:var(--mono);font-size:calc(8px * var(--font-scale));
}
.intro-stack-card>b{display:block;margin-top:16px;font-family:var(--serif);font-size:calc(18px * var(--font-scale));font-weight:500;line-height:1.4}
.intro-stack-card>small{display:block;margin-top:7px;color:var(--on-dark-soft);font-size:calc(10px * var(--font-scale));line-height:1.6}
.intro-stack-back{
  z-index:1;transform:translate3d(0,-22px,-22px) scale(.95);
  border-color:rgba(250,249,245,.15);box-shadow:0 11px 24px rgba(0,0,0,.2);
}
.intro-stack-middle{
  z-index:2;transform:translate3d(0,-11px,-11px) scale(.975);
  border-color:rgba(250,249,245,.17);box-shadow:0 15px 30px rgba(0,0,0,.23);
}
.intro-stack-front{z-index:3;position:relative;overflow:hidden;border-color:rgba(204,120,92,.33)}
.intro-stack-front::after{
  content:"";position:absolute;right:0;top:0;width:34px;height:34px;
  background:linear-gradient(225deg,rgba(250,249,245,.1) 0 49%,transparent 50%);
}
.intro-stack-heading{display:flex;align-items:center;justify-content:space-between}
.intro-stack-heading span{color:var(--primary);font-family:var(--mono);font-size:calc(8px * var(--font-scale));letter-spacing:.08em}
.intro-stack-heading i{color:var(--teal);font-family:var(--mono);font-size:calc(7px * var(--font-scale));font-style:normal;letter-spacing:.1em}
.intro-stack-front>b{margin-top:26px;font-size:calc(21px * var(--font-scale))}
.intro-stack-tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:17px}
.intro-stack-tags span{
  padding:4px 7px;border:1px solid rgba(250,249,245,.1);border-radius:999px;
  color:var(--on-dark-soft);font-size:calc(8px * var(--font-scale));
}
.intro-product{
  position:absolute;left:50%;bottom:clamp(32px,7vh,68px);width:min(760px,86vw);
  text-align:center;opacity:0;transform:translate3d(-50%,24px,0);
  transition:opacity 1.05s ease,transform 1.15s cubic-bezier(.16,1,.3,1);
}
.intro-overlay.is-naming .intro-product{opacity:1;transform:translate3d(-50%,0,0)}
.intro-overlay.is-aligning .intro-product{
  opacity:0;transform:translate3d(-50%,14px,0);
  transition-duration:.55s;
}
.intro-product>p{color:var(--on-dark-soft);font-family:var(--mono);font-size:calc(8px * var(--font-scale));letter-spacing:.1em}
.intro-product>div{display:flex;align-items:baseline;justify-content:center;gap:14px;margin-top:11px}
.intro-product strong{color:var(--on-dark);font-family:var(--serif);font-size:calc(clamp(27px,3vw,38px) * var(--font-scale));font-weight:400;letter-spacing:.06em}
.intro-product div span{color:var(--primary);font-family:var(--mono);font-size:calc(8px * var(--font-scale));letter-spacing:.12em}
.intro-product>em{display:block;margin-top:8px;color:rgba(250,249,245,.7);font-family:var(--serif);font-size:calc(13px * var(--font-scale));font-style:normal}
.intro-skip{
  position:absolute;right:clamp(24px,4.2vw,68px);bottom:clamp(22px,4.2vh,40px);z-index:8;
  display:inline-flex;align-items:center;gap:9px;min-height:38px;padding:9px 15px;
  border:1px solid rgba(250,249,245,.18);border-radius:999px;
  background:rgba(24,23,21,.7);color:var(--on-dark-soft);
  font-size:calc(10px * var(--font-scale));cursor:pointer;
  transition:border-color .22s ease,color .22s ease,background .22s ease;
}
.intro-skip:hover,.intro-skip:focus-visible{border-color:var(--primary);background:rgba(204,120,92,.1);color:var(--on-dark)}
.intro-skip span{color:var(--primary)}
.intro-progress{
  position:absolute;left:0;right:0;bottom:0;z-index:8;height:2px;background:rgba(250,249,245,.06);
}
.intro-progress i{
  display:block;width:100%;height:100%;background:var(--primary);
  transform:scaleX(0);transform-origin:left;
}
.intro-overlay.is-running .intro-progress i{animation:intro-progress 12.35s linear forwards}
.intro-overlay.is-revealing .intro-skip,
.intro-overlay.is-revealing .intro-progress{opacity:0;pointer-events:none}
.intro-progress{transition:opacity .2s ease}
@keyframes intro-progress{to{transform:scaleX(1)}}

/* ============ Navigation ============ */
.topbar{
  position:sticky;top:0;z-index:50;
  min-height:64px;
  display:grid;grid-template-columns:1fr auto 1fr;
  align-items:center;gap:24px;
  padding:10px max(24px,4vw);
  background:rgba(250,249,245,.94);
  border-bottom:1px solid var(--hairline);
  backdrop-filter:blur(14px);
}
.brand{display:flex;align-items:center;gap:10px;min-width:0}
.brand-mark,.footer-mark{
  position:relative;display:inline-block;flex:0 0 auto;
  width:18px;height:18px;
}
.brand-mark::before,.brand-mark::after,
.footer-mark::before,.footer-mark::after{
  content:"";position:absolute;left:8px;top:0;
  width:2px;height:18px;background:var(--primary);border-radius:2px;
}
.brand-mark::after,.footer-mark::after{transform:rotate(90deg)}
.footer-mark::before,.footer-mark::after{background:var(--on-dark)}
.brand-copy{display:flex;flex-direction:column;line-height:1.05;min-width:0}
.brand-zh{font-family:var(--serif);font-size:calc(16px * var(--font-scale));font-weight:600;color:var(--ink)}
.brand-en{font-family:var(--mono);font-size:calc(9px * var(--font-scale));font-weight:400;color:var(--muted-soft);margin-top:5px}
.steps{display:flex;align-items:center;justify-content:center;gap:10px}
.step{
  display:flex;align-items:center;gap:7px;
  min-height:36px;padding:6px 9px;
  background:transparent;border:0;border-radius:var(--radius-md);
  color:var(--muted);cursor:pointer;
  transition:background .18s ease,color .18s ease;
}
.step .n{font-family:var(--mono);font-size:calc(10px * var(--font-scale));color:var(--muted-soft)}
.step .t{font-size:calc(13px * var(--font-scale));font-weight:500;white-space:nowrap}
.step.active{background:var(--surface-card);color:var(--ink)}
.step.active .n{color:var(--primary)}
.step.active{animation:step-active-in .42s cubic-bezier(.16,1,.3,1)}
@keyframes step-active-in{
  from{transform:translateY(3px) scale(.97);opacity:.55}
  to{transform:none;opacity:1}
}
.step:disabled{opacity:.42;cursor:not-allowed}
.step-line{width:20px;height:1px;background:var(--hairline)}
.quota{
  justify-self:end;
  padding:6px 10px;border:1px solid var(--hairline);border-radius:999px;
  background:var(--canvas);color:var(--muted);
  font-family:var(--mono);font-size:calc(10px * var(--font-scale));white-space:nowrap;cursor:default;
  user-select:none;
}
.quota.low{border-color:rgba(204,120,92,.5);color:var(--primary-active);background:var(--primary-soft)}
.quota.empty{border-color:rgba(180,85,63,.45);color:#8f4231;background:#fbeee8}

/* ============ Shared ============ */
.stage{display:none;min-height:calc(100vh - 64px)}
.stage.active{display:block}
.stage.is-stage-entering{animation:stage-shell-in .58s cubic-bezier(.16,1,.3,1) both}
.stage.is-stage-entering>section{animation:stage-section-in .68s cubic-bezier(.16,1,.3,1) both}
.stage.is-stage-entering>section>*{animation:stage-content-in .62s cubic-bezier(.16,1,.3,1) both}
.stage.is-stage-entering>section>:nth-child(2){animation-delay:.06s}
.stage.is-stage-entering>section>:nth-child(3){animation-delay:.12s}
.stage.is-stage-entering>section>:nth-child(4){animation-delay:.18s}
.stage.is-stage-entering>section>:nth-child(n+5){animation-delay:.23s}
@keyframes stage-shell-in{
  from{opacity:.25;filter:blur(5px)}
  to{opacity:1;filter:blur(0)}
}
@keyframes stage-section-in{
  from{opacity:0;transform:translate3d(0,22px,0) scale(.992)}
  to{opacity:1;transform:none}
}
@keyframes stage-content-in{
  from{opacity:0;transform:translate3d(0,13px,0)}
  to{opacity:1;transform:none}
}
.kicker{
  display:flex;align-items:center;gap:10px;
  margin-bottom:24px;color:var(--muted);
  font-family:var(--mono);font-size:calc(11px * var(--font-scale));
}
.kicker-rule{width:24px;height:1px;background:var(--primary)}
.btn-primary,.btn-ghost{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  min-height:42px;padding:11px 18px;
  border-radius:var(--radius-md);
  font-size:calc(14px * var(--font-scale));font-weight:500;line-height:1;
  cursor:pointer;transition:background .18s ease,border-color .18s ease,color .18s ease,transform .12s ease;
}
.btn-primary{border:1px solid var(--primary);background:var(--primary);color:#fff}
.btn-primary:hover{background:var(--primary-hover);border-color:var(--primary-hover-border)}
.btn-primary:active{transform:translateY(1px)}
.btn-primary:disabled{background:var(--primary-disabled);border-color:var(--primary-disabled);color:var(--muted);cursor:wait}
.boton-elegante{position:relative;overflow:hidden;isolation:isolate}
.boton-elegante::after{
  content:"";position:absolute;inset:0;z-index:-1;
  background:radial-gradient(circle,rgba(255,222,193,.34) 0%,rgba(255,159,104,0) 70%);
  transform:scale(0);transition:transform .5s ease;pointer-events:none;
}
.boton-elegante:hover::after,.boton-elegante:focus-visible::after{transform:scale(4)}
.btn-ghost{background:var(--canvas);border:1px solid var(--hairline);color:var(--ink)}
.btn-ghost:hover{border-color:var(--primary);color:var(--primary-active)}
.btn-ghost:disabled{opacity:.45}
.btn-lg{min-height:48px;padding:14px 22px}
.section-code{
  display:block;margin-bottom:6px;
  color:var(--on-dark-soft);font-family:var(--mono);font-size:calc(10px * var(--font-scale));
}
.hidden{display:none!important}

/* ============ Hero ============ */
.hero{max-width:1200px;margin:0 auto;padding:72px 24px 48px}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.04fr) minmax(420px,.96fr);align-items:center;gap:64px}
.hero-copy{min-width:0}
.hero h1{
  max-width:650px;
  color:var(--ink);
  font-family:var(--serif);font-size:calc(clamp(42px,5vw,64px) * var(--font-scale));
  font-weight:400;line-height:1.1;
}
.hero h1 em,.form-section h2 em{font-style:normal;color:var(--primary)}
.hero-sub{
  max-width:620px;margin-top:24px;
  color:var(--body);font-size:calc(16px * var(--font-scale));line-height:1.75;
}
.hero-sub strong{color:var(--ink);font-weight:600}
.ask-box{
  display:flex;align-items:center;gap:8px;
  max-width:650px;margin-top:32px;padding:6px;
  background:#fff;border:1px solid var(--hairline);border-radius:var(--radius-lg);
}
.ask-box:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px rgba(204,120,92,.14)}
.ask-box input{
  min-width:0;flex:1;
  height:44px;padding:0 12px;
  background:transparent;border:0;outline:0;
  color:var(--ink);font-size:calc(15px * var(--font-scale));
}
.ask-box input::placeholder{color:var(--muted-soft)}
.ask-box .btn-primary{height:44px;min-height:44px}
.chips-label{margin-top:24px;color:var(--muted);font-size:calc(12px * var(--font-scale));font-weight:500;display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.chips-note{font-family:var(--mono);font-size:calc(10.5px * var(--font-scale));color:var(--muted-soft);letter-spacing:.02em}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.chip{
  min-height:34px;padding:7px 12px;
  background:var(--surface-soft);border:1px solid transparent;border-radius:999px;
  color:var(--body);font-size:calc(12px * var(--font-scale));cursor:pointer;
  transition:background .18s ease,border-color .18s ease,color .18s ease;
}
.chip:hover{background:var(--surface-card);border-color:var(--hairline);color:var(--ink)}
.chip.live{border:1px dashed var(--hairline);background:transparent;color:var(--primary-active)}
.chip:disabled{opacity:.45}

.hero-preview{
  min-width:0;overflow:hidden;
  background:var(--surface-dark);color:var(--on-dark);
  border:1px solid var(--surface-dark-elevated);border-radius:var(--radius-xl);
}
.preview-bar,.preview-foot{
  display:flex;align-items:center;gap:10px;
  min-height:48px;padding:12px 18px;
  color:var(--on-dark-soft);font-family:var(--mono);font-size:calc(9px * var(--font-scale));
}
.preview-bar{border-bottom:1px solid rgba(250,249,245,.1)}
.preview-window{display:flex;gap:4px}
.preview-window i{width:6px;height:6px;border-radius:50%;background:#514e48}
.preview-kicker{color:var(--on-dark)}
.preview-status{display:flex;align-items:center;gap:6px;margin-left:auto;color:var(--teal)}
.preview-status i{width:6px;height:6px;border-radius:50%;background:var(--teal)}
.preview-body{padding:24px}
.preview-meta{display:flex;justify-content:space-between;color:var(--on-dark-soft);font-size:calc(10px * var(--font-scale))}
.preview-index{font-family:var(--mono);color:var(--primary)}
.preview-question{
  margin-top:14px;
  font-family:var(--serif);font-size:calc(clamp(25px,2.4vw,34px) * var(--font-scale));font-weight:400;line-height:1.25;
}
.preview-flow{
  display:grid;grid-template-columns:repeat(3,1fr);gap:6px;
  margin-top:24px;padding-bottom:22px;border-bottom:1px solid rgba(250,249,245,.1);
}
.preview-flow-step{
  display:flex;align-items:center;gap:6px;min-width:0;padding:7px 8px;
  border:0;border-radius:var(--radius-md);background:transparent;
  color:var(--on-dark-soft);font-family:inherit;font-size:calc(10px * var(--font-scale));text-align:left;
  cursor:pointer;transition:background .2s ease,color .2s ease,transform .2s ease;
}
.preview-flow-step:hover{background:rgba(250,249,245,.055);color:var(--on-dark)}
.preview-flow-step:active{transform:translateY(1px)}
.preview-flow-step:focus-visible{outline:2px solid var(--primary);outline-offset:2px}
.preview-flow-step span{
  display:grid;place-items:center;width:24px;height:24px;
  border:1px solid rgba(250,249,245,.18);border-radius:50%;
  font-family:var(--mono);font-size:calc(8px * var(--font-scale));
}
.preview-flow-step.active{color:var(--on-dark)}
.preview-flow-step.active span{background:var(--primary);border-color:var(--primary);color:#fff}
.preview-flow-step b{font-weight:500;white-space:nowrap}
.preview-deck{
  display:grid;min-height:250px;margin-top:22px;padding:28px 18px 18px;
  perspective:1050px;touch-action:pan-y;user-select:none;
  --preview-motion-duration:300ms;
  --preview-motion-easing:cubic-bezier(.2,.8,.2,1);
  --card-top-transform:translate3d(0,0,0) scale(1);
  --card-middle-transform:translate3d(0,-10px,-14px) scale(.975);
  --card-bottom-transform:translate3d(0,-20px,-28px) scale(.95);
}
.preview-panel{
  position:relative;grid-area:1/1;min-width:0;padding:14px;
  overflow:hidden;border:1px solid rgba(250,249,245,.12);border-radius:var(--radius-lg);
  background:
    radial-gradient(circle at 92% 8%,rgba(204,120,92,.11),transparent 34%),
    linear-gradient(145deg,var(--surface-dark-elevated),#171715);
  box-shadow:0 18px 38px rgba(0,0,0,.26);
  transform-origin:top center;backface-visibility:hidden;
  transition:
    transform var(--preview-motion-duration) var(--preview-motion-easing),
    opacity .22s ease,
    border-color .2s ease;
  will-change:transform,opacity;
}
.preview-panel>*{transition:opacity .14s ease}
.preview-panel:not([data-stack-position="0"])>*{opacity:0}
.preview-deck.is-switching .preview-panel[data-stack-position="0"]>*{
  opacity:0;transition:none;
}
.preview-panel::after{
  content:"";position:absolute;right:0;top:0;width:34px;height:34px;
  background:linear-gradient(225deg,rgba(250,249,245,.1) 0 49%,transparent 50%);
  opacity:.55;pointer-events:none;
}
.preview-panel[data-stack-position="0"]{
  z-index:3;opacity:1;transform:var(--card-top-transform);
  pointer-events:auto;border-color:rgba(204,120,92,.3);
  box-shadow:0 22px 42px rgba(0,0,0,.34);
}
.preview-panel[data-stack-position="1"]{
  z-index:2;opacity:1;transform:var(--card-middle-transform);
  pointer-events:none;border-color:rgba(250,249,245,.16);
  box-shadow:0 15px 30px rgba(0,0,0,.22);
}
.preview-panel[data-stack-position="2"]{
  z-index:1;opacity:1;transform:var(--card-bottom-transform);
  pointer-events:none;border-color:rgba(250,249,245,.13);
  box-shadow:0 12px 24px rgba(0,0,0,.18);
}
.preview-panel.is-leaving{
  z-index:4!important;pointer-events:none;
  animation:preview-card-to-bottom var(--preview-motion-duration) var(--preview-motion-easing) forwards;
}
.preview-panel.is-leaving>*{
  opacity:1!important;animation:none;
}
.preview-panel.is-entering{
  z-index:3;
  animation:preview-card-enter .38s cubic-bezier(.2,.8,.2,1) both;
}
.preview-panel.is-entering>*{
  animation:preview-content-float .28s cubic-bezier(.2,.8,.2,1) both;
}
.preview-panel.is-entering>:nth-child(2){animation-delay:.02s}
.preview-panel.is-entering>:nth-child(3){animation-delay:.04s}
.preview-panel.is-entering>:nth-child(4){animation-delay:.06s}
@keyframes preview-card-to-bottom{
  0%{opacity:1;transform:var(--card-top-transform)}
  100%{opacity:1;transform:var(--card-bottom-transform)}
}
@keyframes preview-card-enter{
  0%{opacity:.55;transform:translate3d(0,20px,-18px) scale(.975)}
  100%{opacity:1;transform:var(--card-top-transform)}
}
@keyframes preview-content-float{
  from{opacity:0;transform:translate3d(0,6px,0)}
  to{opacity:1;transform:none}
}
@media (prefers-reduced-motion:reduce){
  .preview-panel{
    transition-duration:.01ms;
    animation-duration:.01ms!important;
  }
}
.preview-panel[data-preview-panel="3"]{display:grid;align-content:center}
.preview-stances{display:flex;flex-direction:column;gap:8px}
.preview-stance{
  display:grid;grid-template-columns:28px 1fr;gap:10px;align-items:start;
  padding:12px;border-left:2px solid var(--stance-color);
  background:var(--surface-dark-soft);border-radius:0 var(--radius-md) var(--radius-md) 0;
}
.preview-stance.coral{--stance-color:var(--primary)}
.preview-stance.teal{--stance-color:var(--teal)}
.preview-stance.amber{--stance-color:var(--amber)}
.preview-no{padding-top:2px;color:var(--stance-color);font-family:var(--mono);font-size:calc(9px * var(--font-scale))}
.preview-stance b{display:block;font-size:calc(12px * var(--font-scale));font-weight:500;line-height:1.45}
.preview-stance small{display:block;margin-top:4px;color:var(--on-dark-soft);font-size:calc(10px * var(--font-scale));line-height:1.5}
.preview-profile-head{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:11px 12px;border:1px solid rgba(250,249,245,.1);
  border-radius:var(--radius-md);background:rgba(250,249,245,.035);
}
.preview-profile-head span{color:var(--on-dark-soft);font-family:var(--mono);font-size:calc(8px * var(--font-scale));letter-spacing:.08em}
.preview-profile-head b{font-size:calc(11px * var(--font-scale));font-weight:500;text-align:right}
.preview-profile-row{
  display:grid;grid-template-columns:66px minmax(0,1fr) auto;align-items:center;gap:10px;
  min-height:53px;padding:9px 12px;border-bottom:1px solid rgba(250,249,245,.08);
}
.preview-profile-row:last-child{border-bottom:0}
.preview-profile-row>span{color:var(--on-dark-soft);font-size:calc(9px * var(--font-scale))}
.preview-profile-row>b{font-size:calc(11px * var(--font-scale));font-weight:500;line-height:1.45}
.preview-profile-row>em{
  padding:4px 7px;border-radius:999px;font-size:calc(8px * var(--font-scale));font-style:normal;white-space:nowrap;
}
.preview-profile-row .is-match{background:rgba(103,157,145,.14);color:var(--teal)}
.preview-profile-row .is-gap{background:rgba(226,147,70,.13);color:var(--amber)}
.preview-profile-row .is-check{background:rgba(204,120,92,.15);color:var(--primary)}
.preview-conclusion{
  padding:18px;border:1px solid rgba(204,120,92,.28);
  border-radius:var(--radius-lg);
  background:linear-gradient(145deg,rgba(204,120,92,.1),rgba(250,249,245,.03));
}
.preview-conclusion-head>b{display:block;margin-top:9px;font-family:var(--serif);font-size:calc(16px * var(--font-scale));font-weight:500;line-height:1.45}
.preview-conclusion-kicker{color:var(--primary);font-family:var(--mono);font-size:calc(8px * var(--font-scale));letter-spacing:.08em}
.preview-conclusion-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}
.preview-insight{
  min-width:0;min-height:74px;padding:10px 11px;
  border:1px solid rgba(250,249,245,.1);border-radius:var(--radius-md);
  background:rgba(250,249,245,.035);
}
.preview-insight span{display:block;color:var(--teal);font-family:var(--mono);font-size:calc(8px * var(--font-scale));letter-spacing:.05em}
.preview-insight.is-gap span{color:var(--amber)}
.preview-insight p{margin-top:6px;color:var(--on-dark-soft);font-size:calc(9px * var(--font-scale));line-height:1.6}
.preview-conclusion-meta{display:flex;flex-wrap:wrap;gap:8px 14px;margin-top:14px;color:var(--on-dark-soft);font-size:calc(9px * var(--font-scale))}
.preview-conclusion-meta span{display:flex;align-items:center;gap:6px}
.preview-conclusion-meta i{width:6px;height:6px;border-radius:50%}
.preview-conclusion-meta .dot-match{background:var(--teal)}
.preview-conclusion-meta .dot-gap{background:var(--amber)}
.preview-deck-controls{
  position:relative;z-index:5;display:grid;grid-template-columns:32px 1fr 32px;
  align-items:center;gap:10px;margin-top:14px;
}
.preview-page-btn{
  display:grid;place-items:center;width:32px;height:32px;padding:0;
  border:1px solid rgba(250,249,245,.18);border-radius:50%;
  background:rgba(250,249,245,.035);color:var(--on-dark);
  font:500 calc(14px * var(--font-scale))/1 var(--mono);cursor:pointer;
  transition:background .2s ease,border-color .2s ease,transform .2s ease;
}
.preview-page-btn:hover,.preview-page-btn:focus-visible{
  border-color:var(--primary);background:rgba(204,120,92,.16);outline:none;
}
.preview-page-btn:active{transform:scale(.94)}
.preview-deck-status{display:flex;align-items:center;justify-content:center;gap:9px}
.preview-deck-status span{font-family:var(--mono);font-size:calc(9px * var(--font-scale));color:var(--on-dark)}
.preview-deck-status small{color:var(--on-dark-soft);font-size:calc(9px * var(--font-scale))}
.preview-foot{justify-content:space-between;border-top:1px solid rgba(250,249,245,.1)}
.preview-foot span:last-child{color:var(--primary)}

/* ============ Loading ============ */
.loading{max-width:1200px;margin:0 auto;padding:42px 24px 96px}
.loader-steps{
  display:grid;grid-template-columns:repeat(4,1fr);gap:0;
  overflow:hidden;background:var(--surface-dark);border-radius:var(--radius-lg);
}
.ls{
  position:relative;min-height:130px;padding:28px 20px;
  color:var(--on-dark-soft);font-family:var(--mono);font-size:calc(10px * var(--font-scale));
  border-right:1px solid rgba(250,249,245,.1);
}
.ls:last-child{border-right:0}
.ls::before{
  content:"";display:block;width:8px;height:8px;margin-bottom:22px;
  border-radius:50%;border:1px solid var(--on-dark-soft);
}
.ls.active{color:var(--on-dark);background:var(--surface-dark-elevated)}
.ls.active::before{background:var(--primary);border-color:var(--primary)}
.ls.done{color:var(--teal)}
.ls.done::before{background:var(--teal);border-color:var(--teal)}
.loading-inline{
  margin:28px 0;padding:18px 20px;
  background:var(--surface-soft);border-left:3px solid var(--primary);border-radius:var(--radius-md);
  color:var(--body);font-size:calc(13px * var(--font-scale));
}

/* ============ Results ============ */
.result{max-width:1200px;margin:0 auto;padding:54px 24px 96px}
.result-head{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:28px}
.result-head h2{
  max-width:820px;
  color:var(--ink);font-family:var(--serif);font-size:calc(clamp(28px,3.2vw,42px) * var(--font-scale));font-weight:400;line-height:1.25;
}
.muted{color:var(--muted);font-size:calc(13px * var(--font-scale));line-height:1.65;margin-top:8px}

/* ============ Map ============ */
.map-card{
  margin-bottom:24px;padding:24px;
  overflow:hidden;background:var(--surface-dark);border-radius:var(--radius-lg);
}
.map-title-row{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:16px;margin-bottom:16px}
.map-title-row h3{color:var(--on-dark);font-family:var(--serif);font-size:calc(22px * var(--font-scale));font-weight:400}
.map-legend{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px 14px;max-width:680px}
.legend-item{display:flex;align-items:center;gap:6px;color:var(--on-dark-soft);font-size:calc(10px * var(--font-scale))}
.legend-item .sw{width:8px;height:8px;border-radius:50%}
.map-container{
  position:relative;width:100%;height:clamp(480px,64vh,680px);min-height:480px;
  overflow:hidden;background:var(--surface-dark-soft);
  border:1px solid rgba(250,249,245,.08);border-radius:var(--radius-md);
}
.map-container svg{position:absolute;inset:0;display:block;width:100%;height:100%}
.map-axis-note{
  display:flex;justify-content:space-between;gap:16px;
  padding-top:14px;color:var(--on-dark-soft);font-size:calc(10px * var(--font-scale));
}
.map-tooltip{
  position:absolute;z-index:20;padding:10px 12px;
  background:var(--on-dark);color:var(--ink);
  border-radius:var(--radius-sm);font-size:calc(11px * var(--font-scale));line-height:1.5;
  opacity:0;transition:opacity .15s ease;pointer-events:none;
}
.map-node-shell{transform-box:fill-box}
.map-node-glow{
  transform-box:fill-box;transform-origin:center;
  transform:scale(0);opacity:.92;pointer-events:none;
  transition:transform .5s ease,opacity .35s ease;
}
.map-node-shell:hover .map-node-glow,
.map-node-shell:focus-within .map-node-glow{transform:scale(4);opacity:1}
.map-node:focus-visible{outline:none;stroke:var(--on-dark);stroke-width:3}

/* ============ Analysis Panels ============ */
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:42px}
.panel{
  min-width:0;padding:28px;
  background:var(--surface-soft);border:1px solid var(--hairline);border-radius:var(--radius-lg);
}
.panel h3{
  display:flex;align-items:center;gap:8px;
  color:var(--ink);font-family:var(--serif);font-size:calc(18px * var(--font-scale));font-weight:500;
}
.dot{width:8px;height:8px;border-radius:50%;display:inline-block}
.dot-consensus{background:var(--teal)}
.dot-disagree{background:var(--primary)}
.point-list{list-style:none;display:flex;flex-direction:column;gap:12px;margin-top:20px}
.point-list li{position:relative;padding-left:16px;color:var(--body);font-size:calc(13px * var(--font-scale));line-height:1.7}
.point-list li::before{content:"";position:absolute;left:0;top:.72em;width:5px;height:5px;border-radius:50%;background:var(--teal)}
.point-list li.empty{color:var(--muted)}
.point-list li.empty::before{display:none}
.focus-item{padding:14px 0;border-top:1px solid var(--hairline)}
.focus-item:first-of-type{margin-top:12px}
.focus-item .fp{color:var(--body-strong);font-family:var(--serif);font-size:calc(15px * var(--font-scale));font-weight:500;line-height:1.55}
.focus-item .fw{margin-top:5px;color:var(--muted);font-size:calc(12px * var(--font-scale));line-height:1.65}

.sec-title{
  display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;
  margin:0 0 18px;color:var(--ink);font-family:var(--serif);font-size:calc(28px * var(--font-scale));font-weight:400;
}
.sec-title .muted{font-family:var(--sans);font-size:calc(12px * var(--font-scale));margin:0}
.stance-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:40px}
.stance-card{
  min-width:0;padding:24px;
  background:var(--canvas);border:1px solid var(--hairline);border-top:3px solid var(--c);
  border-radius:var(--radius-lg);
  transition:border-color .2s ease,background .2s ease;
}
.stance-card.flash{background:var(--surface-soft);border-color:var(--c)}
.stance-card .s-tag{display:block;margin-bottom:12px;color:var(--c);font-family:var(--mono);font-size:calc(9px * var(--font-scale))}
.stance-card .s-name{color:var(--ink);font-family:var(--serif);font-size:calc(21px * var(--font-scale));font-weight:500;line-height:1.35}
.stance-card .s-tl{margin-top:4px;color:var(--muted);font-size:calc(12px * var(--font-scale));line-height:1.55}
.stance-card .s-thesis{
  margin-top:18px;padding-left:12px;
  color:var(--body-strong);font-size:calc(13px * var(--font-scale));line-height:1.7;
  border-left:2px solid var(--c);
}
.stance-card .s-args{margin-top:16px;padding-left:18px}
.stance-card .s-args li{margin-top:8px;color:var(--body);font-size:calc(12px * var(--font-scale));line-height:1.65}
.stance-card .s-pre{margin-top:16px;color:var(--muted);font-size:calc(12px * var(--font-scale));line-height:1.65}
.stance-card .s-pre b{color:var(--body-strong);font-weight:500}
.stance-card .s-evidence{
  display:flex;align-items:flex-start;flex-direction:column;gap:12px;
  margin-top:18px;padding-top:18px;border-top:1px solid var(--hairline);
}
.s-evidence-toggle{
  flex-wrap:wrap;justify-content:flex-start;
  max-width:100%;padding:10px 16px;
  color:#fff;font-size:calc(12px * var(--font-scale));
}
.s-evidence-toggle[aria-expanded="true"]{background:var(--primary-hover);border-color:var(--primary-hover-border)}
.ev-toggle-count{
  padding:2px 7px;color:inherit;font-family:var(--mono);font-size:calc(9px * var(--font-scale));font-weight:400;
  background:rgba(255,255,255,.16);border-radius:999px;
}
.ev-toggle-action{color:inherit;font-family:var(--mono);font-size:calc(9px * var(--font-scale));font-weight:500}
.ev-toggle-action .close{display:none}
.s-evidence-toggle[aria-expanded="true"] .ev-toggle-action .open{display:none}
.s-evidence-toggle[aria-expanded="true"] .ev-toggle-action .close{display:inline}
.ev-toggle-chevron{
  width:7px;height:7px;margin-left:2px;
  border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;
  transform:rotate(45deg) translateY(-2px);transition:transform .2s ease;
}
.s-evidence-toggle[aria-expanded="true"] .ev-toggle-chevron{transform:rotate(225deg) translate(-2px,0)}
.stance-card .s-ev{display:flex;width:100%;flex-direction:column;gap:10px}
.stance-card .s-ev[hidden]{display:none}
.ev-item{color:var(--muted);font-size:calc(11px * var(--font-scale));line-height:1.6}
.ev-item .q{color:var(--body);font-family:var(--serif);font-size:calc(13px * var(--font-scale))}
.ev-item .a{display:block;margin-top:5px;font-family:var(--mono);font-size:calc(9px * var(--font-scale))}
.ev-item .a .v{color:var(--primary-active)}
.ev-item a{color:var(--primary-active);text-decoration:none;border-bottom:1px solid rgba(204,120,92,.4)}
.ev-item a:hover{border-bottom-color:var(--primary-active)}

.cta-row{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.cta-note{max-width:700px;color:var(--muted);font-size:calc(12px * var(--font-scale));line-height:1.6}
.result>.cta-row{padding:24px 28px;background:var(--surface-card);border-radius:var(--radius-lg)}

/* ============ Forms ============ */
.form-section{max-width:960px;margin:0 auto;padding:64px 24px 112px}
.form-section h2{
  max-width:760px;
  color:var(--ink);font-family:var(--serif);font-size:calc(clamp(34px,4vw,48px) * var(--font-scale));font-weight:400;line-height:1.2;
}
.profile-form{display:flex;flex-direction:column;gap:28px;margin-top:40px}
.pf-group{min-width:0;border:0}
.pf-label{
  display:flex;align-items:center;gap:9px;flex-wrap:wrap;
  width:100%;margin-bottom:12px;
  color:var(--ink);font-family:var(--serif);font-size:calc(17px * var(--font-scale));font-weight:500;
}
.pf-label .pf-mono{color:var(--muted);font-family:var(--mono);font-size:calc(9px * var(--font-scale));font-weight:400}
.pf-opts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.pf-opt{
  min-width:0;padding:14px 16px;
  background:var(--canvas);border:1px solid var(--hairline);border-radius:var(--radius-md);
  color:var(--body);text-align:left;font-size:calc(13px * var(--font-scale));line-height:1.45;cursor:pointer;
  transition:border-color .18s ease,background .18s ease,color .18s ease;
}
.pf-opt small{display:block;margin-top:5px;color:var(--muted);font-size:calc(11px * var(--font-scale));line-height:1.5}
.pf-opt:hover{border-color:var(--primary)}
.pf-opt.sel{border-color:var(--primary);background:var(--primary-soft);color:var(--ink);box-shadow:0 0 0 2px rgba(204,120,92,.12)}
.pf-opt.sel small{color:var(--primary-active)}
.pf-custom{
  width:100%;height:44px;margin-top:8px;padding:10px 13px;
  background:#fff;border:1px solid var(--hairline);border-radius:var(--radius-md);
  color:var(--ink);font-size:calc(13px * var(--font-scale));outline:none;
}
.pf-custom::placeholder{color:var(--muted-soft)}
.pf-custom:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(204,120,92,.12)}

/* AI follow-up cards: wide editorial rows with question and answer side by side */
.profile-form.is-followup-deck{
  display:grid;grid-template-columns:minmax(0,1fr);
  align-items:stretch;gap:16px;margin-top:40px;
}
.profile-question-card{
  --c:var(--primary);
  display:grid;grid-template-columns:minmax(230px,.72fr) minmax(0,1.65fr);
  min-width:0;
  overflow:hidden;background:var(--canvas);
  border:1px solid var(--hairline);border-top:3px solid var(--c);
  border-radius:var(--radius-lg);
  animation:pq-card-in .55s cubic-bezier(.2,.7,.2,1) both;
  transition:border-color .25s ease,box-shadow .25s ease,transform .25s ease;
}
.profile-question-card:nth-child(4n+2){--c:var(--teal)}
.profile-question-card:nth-child(4n+3){--c:var(--amber)}
.profile-question-card:nth-child(4n){--c:#8b7a62}
.profile-question-card:nth-child(2){animation-delay:80ms}
.profile-question-card:nth-child(3){animation-delay:160ms}
.profile-question-card:nth-child(n+4){animation-delay:220ms}
.profile-question-card:hover{
  transform:translateX(3px);
  border-color:#d7cdc2;border-top-color:var(--c);
  box-shadow:0 16px 34px rgba(20,20,19,.07);
}
.profile-question-card.is-answered{
  border-color:rgba(93,184,166,.52);border-top-color:var(--c);
  box-shadow:0 0 0 1px rgba(93,184,166,.1);
}
.pq-card-head{
  display:flex;flex-direction:column;justify-content:flex-start;
  min-height:218px;padding:24px 26px;
  border-right:1px solid var(--hairline);
  background:linear-gradient(160deg,rgba(245,240,232,.72),rgba(245,240,232,.18));
}
.pq-card-meta{display:flex;align-items:center;justify-content:space-between;gap:10px}
.pq-card-code{color:var(--c);font-family:var(--mono);font-size:calc(8px * var(--font-scale));letter-spacing:.08em}
.pq-card-status{
  flex:0 0 auto;padding:4px 8px;border:1px solid var(--hairline);
  border-radius:999px;background:var(--surface-soft);
  color:var(--muted);font-family:var(--mono);font-size:calc(8px * var(--font-scale));
  transition:color .22s ease,background .22s ease,border-color .22s ease;
}
.is-answered .pq-card-status{
  color:#36776b;background:rgba(93,184,166,.14);border-color:rgba(93,184,166,.38);
}
.pq-card-title{
  margin-top:24px;color:var(--ink);
  font-family:var(--serif);font-size:calc(clamp(20px,2.1vw,26px) * var(--font-scale));font-weight:500;line-height:1.42;
}
.pq-card-body{
  display:flex;min-width:0;flex-direction:column;
  padding:22px 24px 20px;
  background:linear-gradient(110deg,rgba(245,240,232,.28),rgba(245,240,232,0) 58%);
}
.pq-card-prompt{margin-bottom:11px;color:var(--muted);font-size:calc(10px * var(--font-scale));line-height:1.55}
.profile-question-card .pf-opts{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.profile-question-card .pf-opt{
  display:flex;align-items:center;gap:9px;min-height:42px;
  padding:10px 11px;background:rgba(255,255,255,.72);
  border-radius:10px;color:var(--body-strong);font-size:calc(12px * var(--font-scale));line-height:1.5;
}
.profile-question-card .pf-opt::before{
  content:"";flex:0 0 auto;width:7px;height:7px;
  border:1px solid var(--muted-soft);border-radius:50%;
  background:transparent;transition:border-color .18s ease,background .18s ease,box-shadow .18s ease;
}
.profile-question-card .pf-opt:hover{background:#fff;border-color:var(--c)}
.profile-question-card .pf-opt:hover::before{border-color:var(--c)}
.profile-question-card .pf-opt.sel{
  border-color:var(--c);background:color-mix(in srgb,var(--c) 10%,#fff);color:var(--ink);
  box-shadow:none;
}
.profile-question-card .pf-opt.sel::before{
  border-color:var(--c);background:var(--c);box-shadow:0 0 0 3px color-mix(in srgb,var(--c) 13%,transparent);
}
.pq-custom-wrap{
  display:grid;grid-template-columns:150px minmax(0,1fr);align-items:center;gap:14px;
  margin-top:auto;padding-top:16px;
  color:var(--muted);font-size:calc(9px * var(--font-scale));
}
.pq-custom-wrap>span{display:block;font-family:var(--mono);letter-spacing:.03em}
.profile-question-card .pf-custom{
  height:41px;margin-top:0;padding:9px 11px;
  background:rgba(255,255,255,.72);font-size:calc(11px * var(--font-scale));border-radius:10px;
}
@keyframes pq-card-in{
  from{opacity:0;transform:translateY(16px)}
  to{opacity:1;transform:none}
}
.pf-loading{padding:30px;background:var(--surface-soft);border-radius:var(--radius-md);color:var(--muted);font-size:calc(13px * var(--font-scale))}
.privacy-note{
  margin-top:32px;padding:18px 20px;
  background:var(--surface-soft);border-left:3px solid var(--surface-cream-strong);border-radius:var(--radius-md);
  color:var(--muted);font-size:calc(11px * var(--font-scale));line-height:1.7;
}
.form-section .cta-row{justify-content:flex-end;margin-top:28px}
.form-error{
  margin-top:16px;padding:12px 14px;
  background:rgba(198,69,69,.08);border:1px solid rgba(198,69,69,.28);border-radius:var(--radius-md);
  color:#8f3434;font-size:calc(12px * var(--font-scale));line-height:1.6;
}

/* ============ Match Results ============ */
.match-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:24px}
.match-card{
  min-width:0;padding:22px;
  background:var(--canvas);border:1px solid var(--hairline);border-top:3px solid var(--c);border-radius:var(--radius-lg);
}
.match-card .mc-name{color:var(--ink);font-family:var(--serif);font-size:calc(18px * var(--font-scale));font-weight:500;line-height:1.45}
.match-card .mc-level{
  display:inline-block;margin-top:10px;padding:5px 10px;border-radius:999px;
  font-size:calc(10px * var(--font-scale));font-weight:500;
}
.lv-high{background:rgba(93,184,166,.14);color:#36776b;border:1px solid rgba(93,184,166,.35)}
.lv-mid,.lv-warn{background:var(--primary-soft);color:var(--primary-active);border:1px solid rgba(204,120,92,.35)}
.lv-info{background:var(--surface-soft);color:var(--muted);border:1px solid var(--hairline)}
.match-card .mc-items{display:flex;flex-direction:column;gap:9px;margin-top:16px}
.mc-it{position:relative;padding-left:17px;color:var(--body);font-size:calc(12px * var(--font-scale));line-height:1.65}
.mc-it::before{content:"✓";position:absolute;left:0;color:#478b7f;font-weight:600}
.mc-it.warn::before{content:"!";color:var(--amber)}
.mc-it.clash::before{content:"×";color:var(--error)}
.mc-empty{color:var(--muted);font-size:calc(12px * var(--font-scale));line-height:1.65}

/* 需进一步判断 · 补充信息重新判断 */
.mc-supplement{margin-top:18px;padding-top:16px;border-top:1px dashed var(--hairline)}
.mc-supplement-btn{width:100%;text-align:left;padding:10px 12px;border:1px solid var(--primary-soft);background:var(--primary-soft);color:var(--primary-active);border-radius:10px;font-size:calc(12.5px * var(--font-scale));font-weight:500;cursor:pointer;transition:border-color .15s ease}
.mc-supplement-btn:hover{border-color:var(--primary)}
.mc-supplement-form{margin-top:12px;display:flex;flex-direction:column;gap:12px}
.supp-group{min-width:0}
.supp-label{font-size:calc(11px * var(--font-scale));color:var(--muted);margin-bottom:6px;font-weight:500}
.supp-opts{grid-template-columns:repeat(2,minmax(0,1fr))}
.supp-opt{font-size:calc(12px * var(--font-scale));padding:8px 10px}
.supp-opt small{font-size:calc(10px * var(--font-scale))}
.supp-note{margin-bottom:14px;padding:9px 13px;border-radius:10px;background:var(--surface-soft);border:1px solid var(--hairline);color:var(--body);font-size:calc(12.5px * var(--font-scale));line-height:1.6}
.degrade-note{margin-bottom:14px;padding:9px 13px;border-radius:10px;background:#fbf3e2;border:1px solid rgba(212,160,23,.42);color:var(--body-strong);font-size:calc(12.5px * var(--font-scale));line-height:1.6}
.decision-panel{
  margin:0 0 20px;padding:16px 18px;border:1px solid var(--hairline);border-radius:14px;
  background:var(--canvas);
}
.supp-aggregate{margin:0;padding:14px;border:1px solid var(--primary-soft);background:var(--primary-soft);border-radius:12px}
.supp-agg-title{display:flex;flex-direction:column;gap:2px;margin-bottom:14px}
.supp-agg-title b{font-size:14px;font-weight:600;color:var(--primary-active)}
.supp-agg-title small{font-size:11.5px;color:var(--muted)}
.supp-agg-form{display:flex;flex-direction:column;gap:14px}
.supp-agg-err{margin-top:10px;font-size:12px;color:var(--danger,#c0392b);font-weight:500}
.supp-agg-hint{font-size:calc(12px * var(--font-scale));color:var(--muted);line-height:1.6;padding:8px 0}
.supp-agg-loading{font-size:calc(12.5px * var(--font-scale));color:var(--muted);padding:10px 0}
.supp-agg-src{font-size:calc(11px * var(--font-scale));color:var(--muted);line-height:1.6;margin:-6px 0 12px;opacity:.85}
.conclusion-panel{
  margin-bottom:24px;background:
    radial-gradient(circle at 100% 0,rgba(204,120,92,.15),transparent 34%),
    var(--surface-dark);
  border-color:var(--surface-dark);
}
.conclusion-panel-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}
.conclusion-panel-head>div{min-width:0}
.conclusion-panel-kicker{display:block;margin-bottom:7px;color:var(--primary);font-family:var(--mono);font-size:calc(9px * var(--font-scale));letter-spacing:.08em}
.conclusion-panel h3{color:var(--on-dark)}
.conclusion-panel-head>p{color:var(--on-dark-soft);font-size:calc(11px * var(--font-scale));line-height:1.6;text-align:right}
.conclusion-text{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:22px;
}
.conclusion-card{
  --conclusion-accent:var(--primary);
  position:relative;min-width:0;padding:18px;
  overflow:hidden;border:1px solid rgba(250,249,245,.11);border-radius:var(--radius-lg);
  background:linear-gradient(145deg,rgba(250,249,245,.065),rgba(250,249,245,.025));
}
.conclusion-card::before{
  content:"";position:absolute;left:0;top:0;width:3px;height:100%;
  background:var(--conclusion-accent);
}
.conclusion-card.is-gap{--conclusion-accent:var(--amber)}
.conclusion-card.is-risk{--conclusion-accent:#d16f66}
.conclusion-card.is-note{
  grid-column:1/-1;--conclusion-accent:var(--teal);
  background:rgba(250,249,245,.035);
}
.conclusion-card-head{display:flex;align-items:center;justify-content:space-between;gap:14px}
.conclusion-card-head span{color:var(--conclusion-accent);font-family:var(--mono);font-size:calc(8px * var(--font-scale));letter-spacing:.06em}
.conclusion-card-head strong{color:var(--on-dark);font-family:var(--serif);font-size:calc(14px * var(--font-scale));font-weight:500}
.conclusion-card p{margin-top:11px;color:rgba(250,249,245,.78);font-size:calc(13px * var(--font-scale));line-height:1.75}
.risk-panel{background:var(--primary-soft);border-color:rgba(204,120,92,.3);margin-bottom:24px}
.risk-panel h3{color:var(--primary-active)}
#riskList{list-style:none;display:flex;flex-direction:column;gap:9px;margin-top:16px}
#riskList li{position:relative;padding-left:17px;color:var(--body);font-size:calc(12px * var(--font-scale));line-height:1.65}
#riskList li::before{content:"!";position:absolute;left:0;color:var(--primary)}
.error-panel{margin-bottom:24px;background:var(--primary-soft);border-color:rgba(198,69,69,.28)}
.error-panel h3{color:var(--ink)}
.error-panel p{margin-top:12px;color:var(--body);font-size:calc(13px * var(--font-scale));line-height:1.7}
.error-panel .cta-row{justify-content:flex-start;margin-top:18px}

/* ============ 立场贴合确认 / 全立场贴合度 ============ */
/* 位于深色结论面板内部，故用浅色卡片形成对比，保证可读与可点 */
.confirm-panel,.verdict-panel{
  margin:0 0 20px;padding:16px 18px;border-radius:14px;
  background:var(--canvas);border:1px solid var(--hairline);
}
.decision-panel .confirm-panel{
  margin:14px 0 0;padding:16px 0 0;border:0;border-top:1px solid var(--hairline);
  border-radius:0;background:transparent;
}
#suppPanel.hidden + #confirmPanel{margin-top:0;padding-top:0;border-top:0}
.verdict-panel{margin-bottom:20px}
.confirm-title,.verdict-title{display:flex;flex-direction:column;gap:3px;margin-bottom:14px}
.confirm-title b,.verdict-title b{font-family:var(--serif);font-size:calc(15px * var(--font-scale));font-weight:600;color:var(--ink)}
.confirm-title small,.verdict-title small{font-size:calc(11.5px * var(--font-scale));color:var(--muted);line-height:1.6}
.confirm-item{
  min-width:0;margin-bottom:10px;padding:14px;
  border:1px solid var(--hairline);border-radius:12px;background:var(--surface-soft);
}
.confirm-name{display:flex;align-items:center;gap:9px;flex-wrap:wrap;color:var(--ink);font-family:var(--serif);font-size:calc(15px * var(--font-scale));font-weight:600}
.confirm-rule{padding:3px 8px;border-radius:999px;background:var(--primary-soft);color:var(--primary-active);font-family:var(--sans);font-size:calc(10px * var(--font-scale));font-weight:500}
.confirm-thesis{margin-top:6px;color:var(--body);font-size:calc(12.5px * var(--font-scale));line-height:1.65}
.confirm-premises{list-style:none;display:flex;flex-direction:column;gap:3px;margin:9px 0 0}
.confirm-premises li{position:relative;padding-left:14px;color:var(--muted);font-size:calc(11.5px * var(--font-scale));line-height:1.6}
.confirm-premises li::before{content:"·";position:absolute;left:2px;color:var(--primary);font-weight:700}
.confirm-prompt{margin:11px 0 8px;color:var(--ink);font-size:calc(12.5px * var(--font-scale));font-weight:600}
.confirm-opts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.confirm-opt{
  min-width:0;display:flex;flex-direction:column;gap:3px;padding:9px 10px;text-align:left;cursor:pointer;
  border:1px solid var(--hairline);border-radius:10px;background:var(--canvas);color:var(--body);
  transition:border-color .15s ease,background .15s ease;
}
.confirm-opt:hover{border-color:var(--primary)}
.confirm-opt b{font-size:calc(12px * var(--font-scale));font-weight:600;color:var(--ink)}
.confirm-opt small{font-size:calc(10px * var(--font-scale));color:var(--muted);line-height:1.45}
.confirm-opt.sel{border-color:var(--primary);background:var(--primary-soft)}
.confirm-opt.sel b{color:var(--primary-active)}
.decision-actions{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-top:16px;padding-top:16px;border-top:1px solid var(--hairline)}
.decision-hint{flex:1 1 360px;min-width:0;font-size:calc(11.5px * var(--font-scale));color:var(--muted);line-height:1.65}
.decision-submit{flex:0 0 auto;padding:10px 20px;font-size:calc(13px * var(--font-scale))}
.confirm-hint{font-size:calc(11.5px * var(--font-scale));color:var(--muted);line-height:1.6}
.verdict-list{display:flex;flex-direction:column;gap:8px}
.verdict-row{min-width:0;padding:11px 13px;border:1px solid var(--hairline);border-radius:10px;background:var(--surface-soft)}
.verdict-row.is-conflict{border-color:rgba(198,69,69,.45);background:rgba(198,69,69,.06)}
.vd-main{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.vd-name{color:var(--ink);font-family:var(--serif);font-size:calc(14px * var(--font-scale));font-weight:600}
.vd-fit{padding:3px 9px;border-radius:999px;font-size:calc(10.5px * var(--font-scale));font-weight:600;white-space:nowrap}
.fit-high{background:rgba(93,184,166,.18);color:#2f6f63;border:1px solid rgba(93,184,166,.4)}
.fit-mid{background:rgba(93,184,166,.1);color:#36776b;border:1px solid rgba(93,184,166,.28)}
.fit-part{background:rgba(214,158,66,.13);color:#8a6420;border:1px solid rgba(214,158,66,.35)}
.fit-no{background:var(--canvas);color:var(--muted);border:1px solid var(--hairline)}
.fit-pending{background:rgba(198,69,69,.08);color:#8f3434;border:1px solid rgba(198,69,69,.3)}
.vd-basis{color:var(--muted);font-size:calc(10.5px * var(--font-scale))}
.vd-note{margin-top:5px;color:var(--body);font-size:calc(11.5px * var(--font-scale));line-height:1.6}
.verdict-foot{margin-top:11px;color:var(--muted);font-size:calc(11px * var(--font-scale));line-height:1.65}

/* ============ Footer ============ */
.footbar{
  display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;
  padding:48px max(24px,4vw);
  background:var(--surface-dark);color:var(--on-dark-soft);
}
.footbar>div{display:flex;align-items:center;gap:10px}
.footbar strong{color:var(--on-dark);font-family:var(--serif);font-size:calc(15px * var(--font-scale));font-weight:500}
.footbar span:last-child,.footbar p{font-size:calc(10px * var(--font-scale))}
.footbar p{max-width:620px;line-height:1.6}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}

@media (max-width:1060px){
  .topbar{grid-template-columns:auto 1fr auto}
  .quota{font-size:9.5px;padding:5px 8px}
  .steps{gap:4px}
  .step .t{font-size:calc(12px * var(--font-scale))}
  .step-line{width:10px}
  .hero-grid{grid-template-columns:minmax(0,1fr) minmax(370px,.9fr);gap:36px}
  .preview-body{padding:20px}
  .stance-grid,.match-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .profile-form.is-followup-deck{grid-template-columns:1fr}
  .profile-question-card{grid-template-columns:minmax(215px,.65fr) minmax(0,1.6fr)}
}

@media (max-width:820px){
  html{scroll-padding-top:116px}
  .intro-topline{left:24px;right:24px}
  .intro-question-wrap{width:92vw}
  .intro-orbit{width:94vw;height:clamp(330px,44vh,400px)}
  .intro-fragment{width:29%;padding:14px 15px}
  .intro-fragment>b{font-size:calc(14px * var(--font-scale))}
  .intro-stack{width:min(420px,68vw)}
  .intro-product{bottom:72px}
  .topbar{grid-template-columns:1fr auto;gap:8px;padding:9px 18px}
  .steps{grid-column:1/-1;grid-row:2;width:100%;justify-content:space-between;gap:4px}
  .step{flex:1;justify-content:center}
  .step-line{flex:0 0 10px}
  .hero{padding:48px 20px 36px}
  .hero-grid{grid-template-columns:1fr;gap:40px}
  .hero h1{font-size:calc(clamp(38px,10vw,56px) * var(--font-scale))}
  .hero-preview{max-width:620px}
  .ask-box{align-items:stretch;flex-direction:column}
  .ask-box .btn-primary{width:100%}
  .loading{padding:20px}
  .loader-steps{grid-template-columns:1fr 1fr}
  .ls{min-height:105px;padding:20px;border-bottom:1px solid rgba(250,249,245,.1)}
  .ls:nth-child(2){border-right:0}
  .result{padding:42px 20px 72px}
  .result-head{align-items:flex-start;flex-direction:column}
  .map-card{padding:18px}
  .map-container{height:clamp(480px,68vh,600px);min-height:480px}
  .map-axis-note{flex-direction:column;gap:5px}
  .two-col{grid-template-columns:1fr}
  .panel{padding:22px}
  .stance-grid,.match-grid{grid-template-columns:1fr}
  .form-section{padding:44px 20px 80px}
  .conclusion-panel-head{align-items:flex-start;flex-direction:column;gap:8px}
  .conclusion-panel-head>p{text-align:left}
  .conclusion-text{grid-template-columns:1fr}
  .conclusion-card.is-note{grid-column:auto}
  .pf-opts{grid-template-columns:1fr}
  .confirm-opts{grid-template-columns:repeat(2,minmax(0,1fr))}
  .decision-actions{align-items:stretch;flex-direction:column}
  .decision-hint{flex-basis:auto}
  .decision-submit{width:100%}
  .profile-form.is-followup-deck{grid-template-columns:1fr}
  .profile-question-card{grid-template-columns:1fr}
  .pq-card-head{
    min-height:0;padding:21px 22px 19px;
    border-right:0;border-bottom:1px solid var(--hairline);
  }
  .pq-card-title{margin-top:16px;font-size:calc(20px * var(--font-scale))}
  .pq-card-body{padding:18px 22px 20px}
  .footbar{align-items:flex-start;flex-direction:column;padding:40px 20px}
}

@media (max-width:520px){
  .intro-topline{
    left:18px;right:18px;grid-template-columns:auto 1fr;
    font-size:calc(7px * var(--font-scale));letter-spacing:.06em;
  }
  .intro-sequence{display:none}
  .intro-question-wrap{top:31%;width:92vw}
  .intro-overlay.is-diverged .intro-question-wrap{top:14%}
  .intro-kicker{margin-bottom:12px;font-size:calc(7px * var(--font-scale))}
  .intro-question{font-size:calc(clamp(32px,10vw,42px) * var(--font-scale));line-height:1.24}
  .intro-orbit{top:54%;width:96vw;height:300px}
  .intro-overlay.is-naming .intro-orbit{top:43%}
  .intro-fragment{width:43%;padding:11px 12px;border-radius:10px}
  .intro-fragment-a{left:2%;top:3%}
  .intro-fragment-b{right:2%;top:3%}
  .intro-fragment-c{bottom:-4%}
  .intro-fragment>span{font-size:calc(6px * var(--font-scale))}
  .intro-fragment>b{margin-top:5px;font-size:calc(12px * var(--font-scale))}
  .intro-fragment>small{margin-top:3px;font-size:calc(8px * var(--font-scale))}
  .intro-branch-label{padding:7px 13px;font-size:calc(14px * var(--font-scale))}
  .intro-stack{width:min(350px,84vw)}
  .intro-stack-card{padding:15px}
  .intro-stack-front>b{margin-top:20px;font-size:calc(17px * var(--font-scale))}
  .intro-stack-card>small{font-size:calc(9px * var(--font-scale))}
  .intro-stack-tags{margin-top:12px}
  .intro-product{bottom:64px;width:90vw}
  .intro-product>p{font-size:calc(7px * var(--font-scale));line-height:1.6}
  .intro-product>div{gap:9px;margin-top:8px}
  .intro-product strong{font-size:calc(27px * var(--font-scale))}
  .intro-product div span{font-size:calc(6px * var(--font-scale))}
  .intro-product>em{font-size:calc(11px * var(--font-scale))}
  .intro-skip{right:18px;bottom:16px;padding:8px 12px;font-size:calc(9px * var(--font-scale))}
  .brand-en,.quota{display:none}
  .topbar{grid-template-columns:1fr auto;column-gap:10px;row-gap:8px;padding:8px 16px;min-height:0}
  .brand{grid-column:1;grid-row:1}
  .topbar-right{grid-column:2;grid-row:1;justify-self:end}
  .steps{grid-column:1/-1;grid-row:2}
  .step{padding:6px 3px;gap:4px}
  .step .t{font-size:calc(11px * var(--font-scale))}
  .step .n{display:none}
  .step-line{display:none}
  .hero{padding-top:36px}
  .kicker{font-size:calc(9px * var(--font-scale));line-height:1.6}
  .hero h1{font-size:calc(40px * var(--font-scale))}
  .hero-sub{font-size:calc(14px * var(--font-scale))}
  .preview-bar,.preview-foot{padding:11px 14px}
  .preview-kicker{display:none}
  .preview-body{padding:18px}
  .preview-question{font-size:calc(27px * var(--font-scale))}
  .preview-flow-step{flex-direction:column;align-items:flex-start;gap:4px}
  .preview-flow-step b{font-size:calc(9px * var(--font-scale))}
  .preview-conclusion-grid{grid-template-columns:1fr}
  .preview-deck{padding:24px 13px 13px}
  .preview-panel{padding:12px}
  .preview-deck{
    --card-top-transform:translate3d(0,0,0) scale(1);
    --card-middle-transform:translate3d(0,-8px,-12px) scale(.975);
    --card-bottom-transform:translate3d(0,-16px,-24px) scale(.95);
  }
  .preview-profile-row{grid-template-columns:58px minmax(0,1fr)}
  .preview-profile-row>em{grid-column:2;justify-self:start;margin-top:-3px}
  .preview-stance{padding:10px}
  .preview-deck-status small{display:none}
  .preview-foot span:first-child{max-width:220px}
  .loader-steps{grid-template-columns:1fr}
  .ls{border-right:0}
  .map-legend{justify-content:flex-start}
  .map-container{height:500px;min-height:500px}
  .sec-title{font-size:calc(24px * var(--font-scale))}
  .stance-card{padding:20px}
  .pq-card-head{padding:18px 18px 16px}
  .pq-card-title{font-size:calc(17px * var(--font-scale))}
  .pq-card-body{padding:16px 18px 18px}
  .profile-question-card .pf-opts{grid-template-columns:1fr}
  .pq-custom-wrap{grid-template-columns:1fr;gap:6px}
  .result>.cta-row,.result .cta-row{align-items:stretch;flex-direction:column}
  .result .cta-row .btn-primary,.result .cta-row .btn-ghost{width:100%}
}

/* ============ 账号 / 个人空间 / 分享 / 反馈 / 全站统计（浅色暖调系统） ============ */
.topbar-right{display:flex;align-items:center;gap:12px;justify-self:end;min-width:0}
.btn-sm{padding:8px 14px;font-size:.85rem;border-radius:8px}
.user-area{display:flex;align-items:center}
.user-chip{display:flex;align-items:center;gap:.5rem;background:var(--surface-soft);border:1px solid var(--hairline);border-radius:999px;padding:4px 12px 4px 4px;cursor:pointer;transition:border-color .2s,background .2s}
.user-chip:hover{border-color:var(--primary-hover-border);background:var(--surface-card)}
.user-avatar{width:26px;height:26px;border-radius:50%;background:var(--primary);color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-weight:700;font-size:.82rem;flex:none}
.user-name{font-family:var(--sans);font-size:.86rem;color:var(--ink);max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.user-caret{color:var(--muted-soft);font-size:.7rem}

/* 首页统计条：评分人数 + 全站热门方向 */
.usage-line{margin-top:1.6vh;font-family:var(--mono);font-size:.72rem;letter-spacing:.08em;color:var(--muted-soft)}
.insight-strip{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-top:2.4vh;padding:12px 16px;background:var(--surface-soft);border:1px solid var(--hairline);border-radius:var(--radius-lg)}
.insight-strip[hidden]{display:none}
.is-left{display:flex;align-items:center;gap:1.1rem;flex-wrap:wrap;min-width:0}
.is-rate{display:inline-flex;align-items:center;gap:.5rem;font-size:.84rem;color:var(--body-strong)}
.is-rate b{font-family:var(--mono);font-size:.95rem;color:var(--ink)}
.is-stars{color:var(--primary);letter-spacing:.08em;font-size:.9rem}
.is-hot{font-size:.84rem;color:var(--muted);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.is-hot b{color:var(--ink);font-weight:600}
.is-more{background:none;border:none;color:var(--primary);font-family:var(--mono);font-size:.76rem;letter-spacing:.06em;cursor:pointer;white-space:nowrap;padding:0;margin-left:auto}
.is-more:hover{color:var(--primary-active);text-decoration:underline}

/* 收藏按钮 */
#favBtn{display:inline-flex;align-items:center;gap:.4rem}
#favBtn[aria-pressed="true"]{border-color:var(--primary);color:var(--primary);background:var(--primary-soft)}
.fav-ico{font-size:1rem;line-height:1}

/* 结论页后置操作卡 */
.post-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.2rem;margin-top:3vh;padding-top:2.4vh;border-top:1px solid var(--hairline)}
.pa-card{background:var(--surface-soft);border:1px solid var(--hairline);border-radius:var(--radius-lg);padding:1.3rem 1.4rem;display:flex;flex-direction:column;scroll-margin-top:86px}
.pa-card>.pa-row:last-child{margin-top:auto;padding-top:.7rem}
.pa-card:focus-within{border-color:var(--primary-hover-border)}
.pa-title{font-family:var(--serif);font-weight:700;font-size:1rem;color:var(--ink);margin-bottom:.4rem}
.pa-hint{font-size:.82rem;color:var(--muted);line-height:1.6;margin-bottom:.8rem}
.pa-text{width:100%;box-sizing:border-box;margin-top:.4rem;border:1px solid var(--hairline);border-radius:var(--radius-md);padding:10px 12px;background:var(--canvas);color:var(--body-strong);font-family:var(--sans);font-size:.9rem;resize:vertical;line-height:1.6}
.pa-text::placeholder{color:var(--muted-soft)}
.pa-text:focus{outline:none;border-color:var(--primary);background:#fff}
.pa-row{display:flex;align-items:center;gap:.8rem;margin-top:.7rem;flex-wrap:wrap}
.pa-status{font-size:.78rem;font-family:var(--mono);letter-spacing:.02em;color:var(--muted)}
.pa-status.ok{color:#3f8f5b}
.pa-status.error{color:var(--error)}

/* 星级评分 */
.stars{display:flex;gap:.3rem;margin:.3rem 0 .7rem}
.star{background:var(--canvas);border:1px solid var(--hairline);color:var(--hairline);font-size:1.25rem;line-height:1;width:36px;height:36px;border-radius:var(--radius-md);cursor:pointer;transition:all .15s}
.star:hover{border-color:var(--primary);color:var(--primary-hover)}
.star.on{background:var(--primary-soft);border-color:var(--primary);color:var(--primary)}

/* 覆盖层 / 弹窗 */
.overlay{position:fixed;inset:0;z-index:80;background:rgba(20,20,19,.42);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;padding:4vw;overflow:auto}
.overlay[hidden]{display:none}
.modal{position:relative;width:100%;max-width:420px;background:var(--canvas);border:1px solid var(--hairline);border-radius:var(--radius-xl);padding:2rem 2rem 1.6rem;box-shadow:0 24px 64px rgba(20,20,19,.18);animation:fade .28s ease}
.modal-wide{max-width:780px}
.modal-x{position:absolute;top:12px;right:14px;width:32px;height:32px;border-radius:50%;border:1px solid var(--hairline);background:var(--canvas);color:var(--muted);font-size:1.2rem;cursor:pointer;line-height:1;z-index:2}
.modal-x:hover{border-color:var(--primary);color:var(--primary)}
.auth-tabs{display:flex;gap:.4rem;margin-bottom:1.1rem}
.auth-tab{flex:1;background:var(--surface-soft);border:1px solid var(--hairline);color:var(--muted);padding:9px;border-radius:var(--radius-md);cursor:pointer;font-family:var(--sans);font-size:.9rem;font-weight:500}
.auth-tab.active{border-color:var(--primary);color:var(--primary);background:var(--primary-soft)}
.auth-title{font-family:var(--serif);font-size:1.35rem;font-weight:800;color:var(--ink)}
.auth-sub{font-size:.84rem;color:var(--muted);margin:.45rem 0 1.3rem;line-height:1.7}
.auth-form{display:flex;flex-direction:column;gap:.9rem}
.auth-label{display:flex;flex-direction:column;gap:.4rem;font-size:.78rem;color:var(--muted);font-family:var(--mono);letter-spacing:.06em}
.auth-label[hidden]{display:none}
.auth-label input{background:#fff;border:1px solid var(--hairline);border-radius:var(--radius-md);padding:11px 13px;color:var(--ink);font-family:var(--sans);font-size:.95rem;outline:none;transition:border-color .2s}
.auth-label input:focus{border-color:var(--primary)}
.pwd-wrap{position:relative;display:block}
.pwd-wrap input{width:100%;padding-right:64px}
.pwd-toggle{position:absolute;top:50%;right:8px;transform:translateY(-50%);background:none;border:none;color:var(--muted);font-family:var(--mono);font-size:.78rem;letter-spacing:.06em;cursor:pointer;padding:4px 6px}
.pwd-toggle:hover{color:var(--primary)}
/* 管理员入口与通知面板 */
.foot-admin{background:none;border:1px solid var(--hairline);border-radius:var(--radius-md);color:var(--muted);font-family:var(--mono);font-size:.75rem;letter-spacing:.06em;cursor:pointer;padding:6px 12px}
.foot-admin:hover{color:var(--primary);border-color:var(--primary)}
.admin-token-row{display:flex;gap:.5rem;margin:0 0 1rem}
.admin-token-row input{flex:1;background:#fff;border:1px solid var(--hairline);border-radius:var(--radius-md);padding:10px 12px;font-family:var(--mono);font-size:.85rem;outline:none}
.admin-token-row input:focus{border-color:var(--primary)}
.admin-note{border:1px solid var(--hairline);border-radius:var(--radius-md);padding:14px 16px;margin-bottom:.8rem}
.admin-note.unread{border-color:var(--primary);background:#f6f9fe}
.admin-note-head{display:flex;justify-content:space-between;gap:1rem;align-items:baseline;margin-bottom:.35rem}
.admin-note-head b{font-size:.95rem}
.admin-note-head time{font-size:.78rem;color:var(--muted);font-family:var(--mono)}
.admin-note p{font-size:.85rem;color:var(--ink);margin:0}
.admin-queues{margin-top:1.2rem}
.admin-queue{display:flex;justify-content:space-between;gap:1rem;padding:8px 0;border-bottom:1px dashed var(--hairline);font-size:.85rem}
.admin-queue .q-state{font-family:var(--mono);font-size:.78rem}
.admin-queue .q-state.on{color:var(--error);font-weight:600}
.auth-error{min-height:1rem;font-size:.82rem;color:var(--error)}
.auth-guest{margin-top:.9rem;width:100%;background:none;border:none;color:var(--muted);font-size:.82rem;cursor:pointer;text-decoration:underline;font-family:var(--mono);letter-spacing:.06em}
.auth-guest:hover{color:var(--primary)}

/* 个人空间 */
.me-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1.5rem;flex-wrap:wrap;margin-bottom:2vh}
.me-actions{display:flex;gap:.6rem;flex-wrap:wrap}
.me-nav{display:flex;flex-wrap:wrap;gap:1.6rem;margin-bottom:2.4vh;padding-bottom:1rem;border-bottom:1px solid var(--hairline)}
.me-nav-group{display:flex;flex-direction:column;gap:.5rem}
.me-nav-label{font-family:var(--mono);font-size:.68rem;letter-spacing:.14em;color:var(--muted-soft);text-transform:uppercase}
.me-tabs{display:flex;gap:.45rem;flex-wrap:wrap}
.me-tab{background:var(--surface-soft);border:1px solid var(--hairline);color:var(--muted);padding:7px 14px;border-radius:999px;cursor:pointer;font-family:var(--sans);font-size:.86rem;font-weight:500;transition:all .16s}
.me-tab:hover{border-color:var(--primary-hover-border);color:var(--ink)}
.me-tab.active{border-color:var(--primary);color:var(--primary);background:var(--primary-soft)}
.me-panel{min-height:40vh}
.empty-card{background:var(--surface-soft);border:1px dashed var(--hairline);border-radius:var(--radius-lg);padding:2rem;display:flex;flex-direction:column;gap:.6rem;align-items:flex-start}
.empty-card h3{font-family:var(--serif);font-size:1.05rem;color:var(--ink)}
.empty-card p{font-size:.88rem;color:var(--muted);line-height:1.7;max-width:52ch}

/* 列表（历史 / 收藏 / 反馈） */
.list{display:flex;flex-direction:column;gap:.7rem}
.list-item{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;background:#fff;border:1px solid var(--hairline);border-radius:var(--radius-lg);padding:.95rem 1.15rem;transition:border-color .16s,box-shadow .16s}
.list-item:hover{border-color:var(--primary-hover-border);box-shadow:0 6px 18px rgba(20,20,19,.05)}
.li-main{min-width:0;flex:1}
.li-title{font-family:var(--serif);font-weight:700;font-size:1rem;color:var(--ink)}
.li-sub{font-size:.8rem;color:var(--muted);margin-top:.28rem;line-height:1.6}
.li-note{margin-top:.5rem;padding:.5rem .7rem;background:var(--surface-soft);border-left:2px solid var(--primary-hover-border);border-radius:0 var(--radius-sm) var(--radius-sm) 0;font-size:.84rem;color:var(--body);line-height:1.65}
.li-note b{font-family:var(--mono);font-size:.7rem;letter-spacing:.08em;color:var(--muted-soft);display:block;margin-bottom:.2rem}
.li-actions{display:flex;gap:.4rem;flex:none;align-items:center}
.li-btn{background:var(--canvas);border:1px solid var(--hairline);color:var(--muted);border-radius:var(--radius-sm);padding:5px 10px;font-size:.78rem;cursor:pointer;font-family:var(--sans);white-space:nowrap}
.li-btn:hover{border-color:var(--primary);color:var(--primary)}
.li-btn.danger:hover{border-color:var(--error);color:var(--error)}

/* 统计 / 画像 / 额度 */
.stat-card{background:var(--surface-soft);border:1px solid var(--hairline);border-radius:var(--radius-lg);padding:1.4rem 1.5rem;margin-bottom:1.1rem}
.stat-card h3{font-family:var(--serif);font-weight:700;font-size:1rem;color:var(--ink);margin-bottom:1rem}
.stat-row{display:flex;align-items:center;gap:.9rem;margin:.55rem 0}
.stat-label{width:96px;font-size:.82rem;color:var(--muted);flex:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.stat-bar{flex:1;height:9px;background:var(--surface-card);border-radius:6px;overflow:hidden}
.stat-fill{display:block;height:100%;border-radius:6px;background:var(--primary)}
.stat-val{width:64px;text-align:right;font-family:var(--mono);font-size:.82rem;color:var(--body-strong);flex:none}
.stat-big{display:flex;align-items:baseline;gap:.5rem;margin:.6rem 0}
.sb-num{font-family:var(--serif);font-weight:900;font-size:1.9rem;color:var(--primary);line-height:1}
.sb-label{font-size:.82rem;color:var(--muted)}
.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.8rem;margin-bottom:1.1rem}
.stat-mini{background:#fff;border:1px solid var(--hairline);border-radius:var(--radius-lg);padding:1rem 1.1rem}
.stat-mini .sb-num{font-size:1.6rem}
.stat-mini .sb-label{display:block;margin-top:.3rem}
.quota-list{list-style:none;display:flex;flex-direction:column;gap:.55rem}
.quota-list li{font-size:.9rem;color:var(--body);display:flex;align-items:baseline;gap:.3rem;flex-wrap:wrap}
.quota-list b{font-family:var(--mono);color:var(--ink);font-size:1.05rem}

/* 画像标签 */
.tag-edit{display:flex;flex-wrap:wrap;gap:.45rem;min-height:2rem}
.tag-chip{display:inline-flex;align-items:center;gap:.3rem;background:var(--primary-soft);border:1px solid var(--primary-hover-border);color:var(--primary-active);border-radius:999px;padding:4px 10px;font-size:.82rem}
.tag-x{background:none;border:none;color:var(--primary);cursor:pointer;font-size:.95rem;line-height:1;padding:0}
.tag-x:hover{color:var(--error)}
.tag-add{display:flex;gap:.5rem;margin-top:.7rem;max-width:420px}
.tag-add input{flex:1;background:#fff;border:1px solid var(--hairline);border-radius:var(--radius-md);padding:9px 11px;font-size:.88rem;color:var(--ink);outline:none}
.tag-add input:focus{border-color:var(--primary)}
.prof-card{max-width:620px}
.prof-note{font-size:.8rem;color:var(--muted-soft);line-height:1.7;margin-top:.6rem}

/* 分享层：固定高度的滚动容器 + 始终可见的返回条 */
.modal-wide{max-width:880px;max-height:calc(100vh - 8vw);padding:0;overflow:hidden;display:flex;flex-direction:column;min-width:0}
.modal-wide>.modal-x{z-index:9;top:10px;right:12px}
.share-content{position:relative;flex:1;min-width:0;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;padding:0 2.2rem 1.8rem}
.share-content>*{max-width:100%}
.share-content h2{font-family:var(--serif);font-size:clamp(1.2rem,2.1vw,1.52rem);line-height:1.4;letter-spacing:-.01em;margin:.15rem 0 .55rem;word-break:break-word}
.share-content .kicker{margin-bottom:.55rem;font-size:9.5px;letter-spacing:.14em}
.share-content .hero-sub{font-size:.88rem;line-height:1.7;color:var(--muted)}
.share-topbar{position:sticky;top:0;z-index:4;display:flex;align-items:center;justify-content:space-between;gap:.8rem;margin:0 -2.2rem 1.1rem;padding:1.05rem 3.2rem .8rem 2.2rem;background:var(--canvas);border-bottom:1px solid var(--hairline)}
.share-topbar-tip{font-size:.7rem;color:var(--muted-soft);font-family:var(--mono);letter-spacing:.04em;text-align:right;line-height:1.4}
.share-back{display:inline-flex;align-items:center;gap:.35rem;background:var(--surface-soft);border:1px solid var(--hairline);color:var(--body-strong);border-radius:var(--radius-md);padding:7px 12px;font-size:.82rem;cursor:pointer;margin:0;font-family:var(--sans);flex:none;line-height:1.2}
.share-back:hover{border-color:var(--primary);color:var(--primary)}
.share-back.is-hint{border-color:var(--primary);color:var(--primary);animation:shareHint 1.1s ease 2}
@keyframes shareHint{0%,100%{box-shadow:0 0 0 0 rgba(204,120,92,0)}50%{box-shadow:0 0 0 4px rgba(204,120,92,.2)}}
.share-content .map-container{margin-top:1.2rem;height:min(46vh,400px);min-width:0}
.share-link-row{display:flex;gap:.6rem;margin:.9rem 0;max-width:620px;flex-wrap:wrap}
.share-link-row input{flex:1;background:var(--surface-soft);border:1px solid var(--hairline);border-radius:var(--radius-md);padding:10px 12px;font-family:var(--mono);font-size:.8rem;color:var(--body-strong);outline:none;min-width:0}
.share-copy-state{margin:.2rem 0 .5rem;font-size:.78rem;color:var(--muted);font-family:var(--mono);line-height:1.6}
.share-copy-state.ok{color:#2f6b5f}
.share-copy-state.error{color:#b4553f}
.share-meta{font-size:.78rem;color:var(--muted);font-family:var(--mono);letter-spacing:.02em;line-height:1.6}
.share-hint{font-size:.8rem;color:var(--muted-soft);margin-top:.5rem;line-height:1.6}

/* 结论正文：深色面板上必须是浅色字（分享快照 / 历史详情同样适用） */
.conclusion-text{color:rgba(250,249,245,.92)}
.conclusion-text p{color:inherit;margin:0}

/* 低分反馈的原因芯片 */
.fb-reasons{display:flex;flex-direction:column;gap:.45rem;margin:.35rem 0 .7rem}
.fb-reasons[hidden]{display:none}
.fb-reasons-label{font-size:.72rem;color:var(--muted);font-family:var(--mono);letter-spacing:.04em}
.fb-reason-list{display:flex;flex-wrap:wrap;gap:.4rem}
.fb-reason{background:var(--canvas);border:1px solid var(--hairline);color:var(--muted);border-radius:999px;padding:5px 11px;font-size:.78rem;cursor:pointer;font-family:var(--sans);transition:all .15s}
.fb-reason:hover{border-color:var(--primary);color:var(--ink)}
.fb-reason.on{background:var(--primary-soft);border-color:var(--primary);color:var(--ink)}

/* 按反馈做的呈现调整 */
.tuning-note{display:flex;flex-direction:column;gap:.3rem;margin-top:1.1rem;padding:.75rem .95rem;border-radius:10px;background:rgba(250,249,245,.07);border:1px solid rgba(250,249,245,.16)}
.tuning-note b{color:#f0e3c4;font-size:.74rem;font-family:var(--mono);letter-spacing:.06em;font-weight:500}
.tuning-note span{color:rgba(250,249,245,.8);font-size:.82rem;line-height:1.75}
.next-steps{margin-top:.95rem;border-top:1px dashed rgba(250,249,245,.16);padding-top:.85rem}
.next-steps h4{color:rgba(250,249,245,.92);font-family:var(--serif);font-size:.9rem;margin-bottom:.45rem}
.next-steps ul{display:flex;flex-direction:column;gap:.35rem}
.next-steps li{color:rgba(250,249,245,.76);font-size:.8rem;line-height:1.7;list-style:none;padding-left:.85rem;position:relative}
.next-steps li:before{content:'·';position:absolute;left:.15rem;color:var(--primary)}
.next-steps li b{color:rgba(250,249,245,.92);font-weight:600}
.next-steps p{color:rgba(250,249,245,.76);font-size:.82rem;line-height:1.75}

body.no-scroll{overflow:hidden}

@media (max-width:720px){
  .me-nav{gap:1rem;flex-direction:column}
  .list-item{flex-direction:column;align-items:stretch}
  .li-actions{justify-content:flex-end;flex-wrap:wrap}
  .insight-strip{flex-direction:column;align-items:stretch}
  .is-hot{white-space:normal}
  .is-more{align-self:flex-end}
  /* 反馈队列：手机上把「类型 + 去向」单独一行，条数与状态放到下一行两侧，避免挤在一起 */
  .fb-row{flex-wrap:wrap;row-gap:.2rem}
  .fb-row-main{flex:1 1 100%}
  .fb-state{margin-left:auto}
  /* 手机上分享层改为整屏，避免弹窗被内容撑宽、标题与地图被裁 */
  .overlay{padding:0;overflow:hidden;align-items:stretch}
  .modal-wide{max-width:none;width:100%;max-height:100vh;height:100%;border-radius:0;border:0;box-shadow:none}
  .share-content{padding:0 1.05rem 1.6rem}
  .share-topbar{margin:0 -1.05rem 1rem;padding:.85rem 3.1rem .7rem 1.05rem}
  .share-topbar-tip{display:none}
  .share-content h2{font-size:1.16rem;line-height:1.45}
  .share-content .hero-sub{font-size:.83rem}
  .share-content .map-container{height:min(40vh,320px)}
}

/* 历史记录：说明与删除 */
.list-note{font-size:.78rem;color:var(--muted-soft);line-height:1.7;margin:-.1rem 0 .8rem}
.li-btn.danger{border-color:var(--error);color:var(--error);background:#fbeee8}
.li-btn[disabled]{opacity:.55;cursor:default}

/* 反馈类型 */
.fb-cats{display:flex;flex-direction:column;gap:.45rem;margin:.2rem 0 .7rem}
.fb-cat{background:var(--canvas)}
.fb-cat.on{background:var(--surface-soft);border-color:var(--body-strong);color:var(--body-strong)}

/* 反馈去向 */
.fb-row{display:flex;align-items:center;gap:.7rem;padding:.55rem 0;border-bottom:1px solid var(--hairline)}
.fb-row:last-child{border-bottom:0}
.fb-row-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:.1rem}
.fb-row-main b{font-size:.84rem;color:var(--body-strong);font-weight:600}
.fb-row-main em{font-style:normal;font-size:.72rem;color:var(--muted-soft)}
.fb-row-count{font-family:var(--mono);font-size:.78rem;color:var(--body);flex:none;min-width:44px;text-align:right}
.fb-state{font-family:var(--mono);font-size:.7rem;color:var(--muted-soft);white-space:nowrap;flex:none;min-width:82px;text-align:right}
.fb-state.on{color:#2f6b5f}

/* 实时额度不可用时，提示去看精选话题 */
.chips.flash-hint{animation:chipPulse 1s ease 2;border-radius:12px}
@keyframes chipPulse{0%,100%{box-shadow:0 0 0 0 rgba(204,120,92,0)}50%{box-shadow:0 0 0 6px rgba(204,120,92,.14)}}
