/* V9: outcome feedback turns into an evidence freeze, not an abrupt page jump. */
:root {
  --v9-night:#061d24;
  --v9-teal:#113d44;
  --v9-paper:#f3ecde;
  --v9-gold:#e2bc6c;
  --v9-red:#a54841;
  --v9-green:#377666;
  --v9-ease:cubic-bezier(.2,.84,.22,1);
}

.outcome-screen,.analysis-freeze-screen {
  height:100%; min-height:0!important; padding:103px 16px max(40px,env(safe-area-inset-bottom));
  display:grid; grid-template-rows:auto minmax(0,1fr) auto; gap:10px; overflow:hidden; color:#fff;
}
.outcome-screen::after,.analysis-freeze-screen::after {
  background:linear-gradient(180deg,rgba(4,18,23,.18),rgba(4,18,23,.44) 38%,rgba(4,18,23,.92) 75%,rgba(4,18,23,.99)),repeating-linear-gradient(0deg,transparent 0 3px,rgba(255,255,255,.018) 4px);
}
.outcome-head,.freeze-head {
  position:relative; z-index:3; min-height:28px; display:flex; align-items:center; justify-content:space-between;
  border-bottom:1px solid rgba(255,255,255,.24); color:rgba(255,255,255,.72); font-size:11px;
}
.outcome-head span,.freeze-head span { color:var(--v9-gold); font-weight:800; letter-spacing:.08em; }
.outcome-head b,.freeze-head b { font:700 11px/1 "Times New Roman",serif; }
.outcome-stage,.freeze-analysis { position:relative; z-index:3; min-height:0; display:flex; flex-direction:column; justify-content:center; }

.outcome-status {
  align-self:flex-start; margin-bottom:10px; display:grid; grid-template-columns:28px auto; grid-template-rows:auto auto; column-gap:8px; align-items:center;
}
.outcome-status i { grid-row:1/3; position:relative; width:28px; height:28px; border:1px solid rgba(255,255,255,.5); border-radius:50%; }
.outcome-status i::after { content:""; position:absolute; left:7px; top:7px; width:10px; height:5px; border-left:2px solid var(--v9-gold); border-bottom:2px solid var(--v9-gold); transform:rotate(-45deg); }
.outcome-status span { color:rgba(255,255,255,.6); font-size:9px; }
.outcome-status b { font-size:13px; }

.settlement-slip {
  position:relative; padding:18px 18px 14px; overflow:hidden; border:1px solid rgba(255,255,255,.3); border-radius:12px;
  color:#17383d; background:rgba(246,240,228,.97); box-shadow:0 18px 42px rgba(0,0,0,.3);
  transform:translateY(14px); opacity:0; animation:v9SlipIn .5s .16s var(--v9-ease) forwards;
}
.settlement-slip::before { content:""; position:absolute; left:0; right:0; top:0; height:4px; background:var(--v9-green); }
.settlement-slip > small { display:block; color:#6f7f81; font-size:10px; letter-spacing:.05em; }
.settlement-slip > strong { display:block; margin:8px 0 14px; color:#17383d; font:700 45px/.95 "Times New Roman",serif; letter-spacing:-.04em; }
.settlement-slip > strong em { color:var(--v9-green); font-size:29px; font-style:normal; vertical-align:6px; }
.settlement-slip > div { min-height:25px; display:flex; align-items:center; justify-content:space-between; border-top:1px dashed rgba(23,56,61,.18); font-size:11px; }
.settlement-slip > div span { color:#748184; }
.settlement-slip > div b { font-family:"Times New Roman","Microsoft YaHei",sans-serif; }
.outcome-facts { margin:9px 2px 0; display:grid; grid-template-columns:1fr 1fr; gap:7px; }
.outcome-facts span { min-height:35px; padding:7px 8px; display:flex; align-items:center; gap:7px; border:1px solid rgba(255,255,255,.18); background:rgba(7,35,41,.7); font-size:11px; }
.outcome-facts i { position:relative; flex:0 0 15px; width:15px; height:15px; border:1px solid var(--v9-gold); border-radius:50%; }
.outcome-facts i::after { content:""; position:absolute; left:4px; top:3px; width:5px; height:3px; border-left:1.5px solid var(--v9-gold); border-bottom:1.5px solid var(--v9-gold); transform:rotate(-45deg); }
.outcome-question { margin-top:13px; padding-left:12px; border-left:2px solid var(--v9-gold); }
.outcome-question small { color:var(--v9-gold); font-size:10px; font-weight:800; }
.outcome-question h2 { margin:4px 0 0; font-family:"STSong","Songti SC",serif; font-size:24px; line-height:1.25; letter-spacing:-.02em; }

.stop-marker { position:relative; padding-left:14px; border-left:2px solid var(--v9-red); }
.stop-marker span { display:block; color:rgba(255,255,255,.62); font-size:10px; }
.stop-marker b { display:block; margin-top:3px; font-family:"STSong","Songti SC",serif; font-size:31px; line-height:1.1; }
.stop-marker i { position:absolute; right:0; top:3px; width:34px; height:34px; border:1px solid rgba(229,188,108,.55); border-radius:50%; }
.stop-marker i::before,.stop-marker i::after { content:""; position:absolute; left:8px; top:15px; width:17px; height:2px; background:var(--v9-gold); transform:rotate(45deg); }
.stop-marker i::after { transform:rotate(-45deg); }
.stop-receipt { margin-top:15px; padding:15px 16px; border:1px solid rgba(255,255,255,.25); border-radius:10px; color:#17383d; background:rgba(246,240,228,.97); box-shadow:0 16px 38px rgba(0,0,0,.26); }
.stop-receipt small { color:#8a5c50; font-size:10px; font-weight:800; }
.stop-receipt strong { display:block; margin:5px 0 8px; font-size:20px; line-height:1.3; }
.stop-receipt p { margin:0; color:#627477; font-size:12px; line-height:1.55; }
.stop-chain { margin-top:10px; padding:9px; display:grid; grid-template-columns:1fr 9px 1fr 9px 1fr 9px 1fr; align-items:center; border:1px solid rgba(255,255,255,.18); background:rgba(7,35,41,.7); font-size:9px; text-align:center; }
.stop-chain i { height:1px; background:rgba(255,255,255,.3); }
.stop-chain b { color:var(--v9-gold); }

.outcome-action,.freeze-action {
  position:relative; z-index:4; min-height:52px; padding:0 14px 0 18px; display:flex; align-items:center; justify-content:space-between;
  border:1px solid rgba(255,255,255,.32); border-radius:10px; color:#17383d; background:var(--v9-gold); cursor:pointer;
  font-size:14px; font-weight:800; box-shadow:0 12px 30px rgba(0,0,0,.28); opacity:0; transform:translateY(18px); pointer-events:none;
  transition:opacity .25s ease,transform .4s var(--v9-ease),filter .16s ease;
}
.outcome-screen.is-result-ready .outcome-action,.analysis-freeze-screen.is-analysis-ready .freeze-action { opacity:1; transform:none; pointer-events:auto; }
.outcome-action svg,.freeze-action svg { width:20px; height:20px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
.outcome-action::after,.freeze-action::after { content:none; }
.outcome-action:focus-visible,.freeze-action:focus-visible { outline:3px solid #fff; outline-offset:2px; }
.outcome-action:active,.freeze-action:active { filter:brightness(.92); }

.freeze-analysis { justify-content:center; }
.freeze-kicker { display:flex; align-items:center; gap:9px; color:var(--v9-gold); font-size:11px; font-weight:800; }
.freeze-kicker i { width:34px; height:1px; background:currentColor; }
.truth-strips { margin-top:14px; display:grid; gap:7px; }
.truth-strips > div {
  min-height:61px; padding:8px 12px; display:grid; grid-template-columns:32px 1fr; grid-template-rows:auto auto; align-content:center;
  border:1px solid rgba(255,255,255,.22); border-left:3px solid var(--v9-green); background:rgba(7,34,40,.76); backdrop-filter:blur(8px);
  opacity:0; transform:translateX(-12px); animation:v9StripIn .36s var(--v9-ease) forwards;
}
.truth-strips > div:nth-child(2) { animation-delay:.38s; }
.truth-strips > div:nth-child(3) { animation-delay:.76s; }
.truth-strips span { grid-row:1/3; align-self:center; color:rgba(255,255,255,.4); font:700 11px/1 "Times New Roman",serif; }
.truth-strips b { font-size:15px; }
.truth-strips small { margin-top:2px; color:#e9c886; font-size:10px; }
.missing-question { position:relative; margin-top:16px; padding:14px 14px 13px; border:1px solid rgba(229,188,108,.52); background:rgba(91,36,38,.76); }
.missing-question::before { content:"?"; position:absolute; right:10px; top:-9px; color:rgba(229,188,108,.24); font:700 66px/1 "Times New Roman",serif; }
.missing-question small { color:#edcc8c; font-size:10px; font-weight:800; }
.missing-question h2 { position:relative; margin:5px 0 0; font-family:"STSong","Songti SC",serif; font-size:25px; line-height:1.25; letter-spacing:-.02em; }

@keyframes v9SlipIn { to{opacity:1;transform:none} }
@keyframes v9StripIn { to{opacity:1;transform:none} }

@media (max-height:740px) {
  .outcome-screen,.analysis-freeze-screen { padding-top:96px; padding-bottom:max(40px,env(safe-area-inset-bottom)); gap:7px; }
  .outcome-status { margin-bottom:6px; }
  .settlement-slip { padding:13px 14px 10px; }
  .settlement-slip > strong { margin:5px 0 9px; font-size:37px; }
  .settlement-slip > div { min-height:22px; }
  .outcome-facts { margin-top:6px; }
  .outcome-facts span { min-height:30px; padding-top:5px; padding-bottom:5px; }
  .outcome-question { margin-top:8px; }
  .outcome-question h2 { font-size:20px; line-height:1.2; }
  .stop-marker b { font-size:27px; }
  .stop-receipt { margin-top:9px; padding:11px 13px; }
  .stop-receipt strong { margin:3px 0 5px; font-size:17px; }
  .stop-chain { margin-top:7px; padding-top:7px; padding-bottom:7px; }
  .truth-strips { margin-top:9px; gap:5px; }
  .truth-strips > div { min-height:49px; padding-top:5px; padding-bottom:5px; }
  .missing-question { margin-top:9px; padding-top:9px; padding-bottom:9px; }
  .missing-question h2 { font-size:21px; }
  .outcome-action,.freeze-action { min-height:49px; }
}

@media (max-width:370px) {
  .outcome-screen,.analysis-freeze-screen { padding-left:12px; padding-right:12px; }
  .settlement-slip > strong { font-size:40px; }
  .stop-chain { font-size:8px; }
  .missing-question h2 { font-size:22px; }
}

@media (hover:hover) and (pointer:fine) {
  .outcome-action:hover,.freeze-action:hover { filter:brightness(1.05); }
}

@media (prefers-reduced-motion:reduce) {
  .settlement-slip,.truth-strips > div,.outcome-action,.freeze-action { animation:none!important; transition:none!important; opacity:1!important; transform:none!important; }
  .outcome-action,.freeze-action { pointer-events:auto; }
}
