.result-screen { --result-light:#f8d38e;--result-accent:#94eed7;position:absolute;
  background:radial-gradient(ellipse at 18% 45%,#583c2433,transparent 65%),#101720; }
.result-screen[data-outcome=fail] { --result-light:#ffadad;--result-accent:#e59898; }
.result-atmosphere { position:absolute;inset:-20px;pointer-events:none;
  background:linear-gradient(110deg,#10172092,#101720fa 82%),var(--stage) center/cover;filter:blur(9px);opacity:.45; }
.result-screen::before { content:"";position:absolute;width:66%;height:70%;top:12%;left:-15%;
  background:radial-gradient(ellipse,#e8b75c32,transparent 65%);pointer-events:none; }
.result-screen[data-outcome=fail]::before { background:radial-gradient(ellipse,#e35c6a26,transparent 65%); }
.result-inner { position:relative;z-index:1;padding:24px 7% max(20px,var(--safe-b));gap:0; }
.result-screen .section-line { border-bottom:1px solid #e9e3cc25;padding-bottom:10px;margin-bottom:12px; }
.result-screen .result-track { margin:2px 0 18px; }
.result-screen .result-track img { border:1px solid #e4c89e80;box-shadow:0 4px 18px #0007;border-radius:7px; }
.result-screen .result-track h2 { font-size:21px; }.result-track small { color:var(--result-light); }
.result-summary { position:relative;margin:auto 0 16px; }
.result-verdict { position:relative;margin:0 0 14px;padding:15px 0 10px;border-left:3px solid var(--result-light);padding-left:17px; }
.result-verdict .eyebrow { color:var(--result-accent);font-size:9px;letter-spacing:.2em; }
.result-verdict h1 { margin:10px 0 7px;line-height:1;white-space:normal; }
.result-verdict h1 span { display:block;font:650 13px/1.4 Manrope,sans-serif;letter-spacing:.34em;color:#f5ead7; }
.result-verdict h1 strong { display:block;font:400 clamp(54px,17cqw,91px)/1.04 TicketDisplay,Impact,sans-serif;letter-spacing:.015em;
  color:var(--result-light);background:linear-gradient(#fffbed 15%,#ffe4a5 48%,#e3ae61 52%,#ffe6b2 82%);
  background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 3px 0 #704b254d) drop-shadow(0 0 15px #edbe6a33); }
[data-outcome=fail] .result-verdict h1 strong { background-image:linear-gradient(#fff1ee 10%,#ffb9b2 46%,#e78088 51%,#fbbfc2 88%);filter:drop-shadow(0 3px 0 #69323c80); }
.result-verdict>span { display:inline-block;color:var(--result-light);font-size:11px;letter-spacing:.14em; }
.result-stats { padding:15px 18px 16px;border:1px solid #adc2cb3b;border-radius:12px;
  background:linear-gradient(125deg,#34404c88,#121c27b8);box-shadow:inset 0 1px 0 #ffffff15,0 9px 24px #0003; }
.result-stats .score-card { border-top:0;padding-top:0;border-bottom:1px solid #e4e6e82a; }
.result-stats .score-card>small { color:#acb9c6;font-size:9px; }.result-stats .score-card>strong { color:#fff9e9;font-size:clamp(39px,12cqw,64px); }
.result-stats .score-card>span { color:var(--result-accent); }
.result-stats #result-counts { margin-bottom:0; }.result-stats #result-metrics b { color:#f7f1e2; }
.result-stats #result-counts div:first-child b { color:#ffe3a7; }.result-stats #result-counts div:last-child b { color:#ecaaaa; }
.result-actions { margin-top:auto;padding-top:14px; }.result-actions .primary { margin-top:0!important; }
[data-outcome=clear] .result-actions .primary { background:linear-gradient(105deg,#ffe4ae,#edba76);color:#34231c;box-shadow:0 0 18px #ffcf7720; }
[data-outcome=fail] .result-actions .primary { background:linear-gradient(105deg,#f1d1c9,#dda1a1);color:#372227; }
.result-actions .text-action { width:100%;min-height:44px;margin-top:6px; }
.result-summary .unlock-stamp { margin:8px 0 0;min-height:44px;box-shadow:0 0 14px #dcb66b18; }
.result-summary #result-progress { margin:4px 0 0;font-size:12px;line-height:1.5; }
#result-effects { position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0; }
.result-particle { position:absolute;left:var(--origin);top:48%;width:6px;height:11px;border-radius:1px;background:var(--tint);opacity:0; }
.result-particle:nth-child(3n) { width:5px;height:5px;border-radius:50%;box-shadow:0 0 7px var(--tint); }
[data-outcome=clear] .result-particle { animation:clear-particles 1.55s var(--delay) cubic-bezier(.18,.72,.37,1) both; }
[data-outcome=fail] .result-particle { top:27%;height:25px;width:1px;background:linear-gradient(transparent,#e99494);
  animation:fail-particles .95s var(--delay) ease-out both; }
[data-outcome=fail] .result-particle:nth-child(n+13) { display:none; }
[data-outcome=clear] .result-verdict { animation:clear-arrive .75s cubic-bezier(.16,1,.3,1) both; }
[data-outcome=fail] .result-verdict { animation:fail-arrive .55s ease-out both; }
.result-stats { animation:result-card .65s .12s both; }
@keyframes clear-arrive { 0%{opacity:0;transform:translateY(16px) scale(.91);filter:brightness(1.6)} 55%{opacity:1;transform:translateY(-2px) scale(1.025)} 100%{opacity:1;transform:none;filter:none} }
@keyframes fail-arrive { 0%{opacity:0;transform:translateY(-13px)} 55%{opacity:1;transform:translateX(-3px)} 72%{transform:translateX(3px)} 100%{opacity:1;transform:none} }
@keyframes result-card { from{opacity:0;transform:translateY(9px)} to{opacity:1;transform:none} }
@keyframes clear-particles {
  0%{opacity:0;transform:translate(0,0) rotate(0)}
  12%{opacity:1}
  48%{opacity:.95;transform:translate(var(--mid-x),var(--rise)) rotate(var(--spin))}
  100%{opacity:0;transform:translate(var(--dx),var(--fall)) rotate(var(--spin))}
}
@keyframes fail-particles { 0%{opacity:0;transform:translateY(-10px)} 25%{opacity:.55} 100%{opacity:0;transform:translateY(75px)} }
.landscape .result-inner { display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);
  grid-template-rows:auto auto 1fr auto;gap:0 25px;align-content:stretch;padding:10px 4% max(10px,var(--safe-b)); }
.landscape .result-screen .section-line { grid-column:1/3;grid-row:1;padding-bottom:6px;margin:0 0 7px; }
.landscape .result-screen .result-track { grid-column:1/3;grid-row:2;margin:0 0 9px;gap:12px; }
.landscape .result-screen .result-track img { width:36px; }.landscape .result-screen .result-track h2 { font-size:17px; }
.landscape .result-track small { font-size:9px; }
.landscape .result-summary { grid-column:1;grid-row:3;align-self:center;margin:0; }
.landscape .result-verdict { margin:0;padding:7px 0 7px 14px; }
.landscape .result-verdict h1 { margin:6px 0; }.landscape .result-verdict h1 span { font-size:11px; }
.landscape .result-verdict h1 strong { font-size:clamp(42px,8cqw,72px); }
.landscape .result-stats { grid-column:2;grid-row:3;align-self:center;padding:10px 14px;border-radius:10px; }
.landscape .result-stats .score-card { margin:0;padding:0 0 5px; }.landscape .result-stats .score-card>strong { font-size:36px; }
.landscape .result-stats #result-metrics { margin:7px 0; }.landscape .result-stats #result-metrics b { font-size:15px; }
.landscape .result-stats #result-counts { padding-top:6px;margin:4px 0 0; }.landscape .result-stats #result-counts b { font-size:14px; }
.landscape .result-actions { grid-column:1/3;grid-row:4;display:grid;grid-template-columns:1fr 1.05fr;gap:25px;padding-top:10px;margin-top:0; }
.landscape .result-actions #retry { grid-column:2;grid-row:1;min-height:43px;margin:0;padding:9px 14px; }
.landscape .result-actions #result-library { grid-column:1;grid-row:1;min-height:43px;margin:0; }
.landscape .result-summary .unlock-stamp { margin-top:8px;font-size:12px;min-height:39px;padding:7px 10px; }
.landscape .result-summary .unlock-stamp strong { font-size:14px; }
.landscape .result-summary #result-progress { font-size:10px;margin-top:8px; }
@container (max-height:350px){
  .landscape .result-inner { padding:7px 4% 8px;column-gap:18px; }
  .landscape .result-screen .section-line { padding-bottom:4px;margin-bottom:4px; }
  .landscape .result-screen .result-track { margin-bottom:6px; }
  .landscape .result-screen .result-track img { width:30px; }
  .landscape .result-screen .result-track h2 { font-size:15px; }
  .landscape .result-stats { padding:8px 12px; }
  .landscape .result-stats .score-card>strong { font-size:30px; }
  .landscape .result-stats .score-card>span { font-size:9px;min-height:11px; }
  .landscape .result-stats #result-metrics { margin:5px 0; }
  .landscape .result-stats #result-counts { margin-top:3px;padding-top:5px; }
  .landscape .result-actions { gap:18px;padding-top:7px; }
  .landscape .result-summary .unlock-stamp { margin-top:6px; }
}
@media(prefers-reduced-motion:reduce){
  .result-screen .result-particle { display:none; }
  .result-screen .result-verdict,.result-screen .result-stats { animation:none; }
}
