.result{position:absolute;inset:0;z-index:30;display:grid;place-items:center;overflow:auto;padding:clamp(12px,2.4vw,34px);background:radial-gradient(circle at 50% 28%,#273a70d9,#070b1af2 68%);text-align:left;color:#fff}
.result[hidden]{display:none!important}
.result-shell{--result-accent:#62e6ff;position:relative;width:min(920px,96%);border:3px solid #dff9ff;border-radius:20px;background:linear-gradient(160deg,#151d42 0%,#080d22 78%);box-shadow:0 0 0 6px #1769a7,0 0 0 9px #ffd75b,0 26px 70px #02030bbf;overflow:hidden}
.result-shell::before{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(120deg,transparent 0 34%,#ffffff0d 34.2% 35%,transparent 35.2% 67%,#ffffff09 67.2% 68%,transparent 68.2%)}
.result-heading{position:relative;z-index:2;padding:17px 28px 13px;background:linear-gradient(100deg,#11275b,#274b9b 58%,#101a46);border-bottom:3px solid var(--result-accent);transform:skewX(-5deg);transform-origin:left bottom}
.result-heading>*{transform:skewX(5deg)}
.result-heading p{margin:0;color:#b8eaff;font:800 12px/1 Arial,sans-serif;letter-spacing:.2em}
.result-heading h2{margin:5px 0 0;color:#fff;font:900 clamp(31px,5vw,62px)/.92 BarlowCondensed,Barlow,"Arial Narrow",sans-serif;letter-spacing:.025em;text-transform:uppercase;text-shadow:3px 4px 0 #07102a}
.result-scene{position:relative;height:clamp(210px,31vw,350px);overflow:hidden;border-bottom:3px solid var(--result-accent);background:#11182d;isolation:isolate}
.result-victory-art,.result-defeat-map{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.result-victory-art{object-position:center 67%}
.result-defeat-map{display:none;filter:grayscale(.25) brightness(.38) contrast(1.16) sepia(.15);transform:scale(1.03)}
.result-scene::after{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,#0712264d,transparent 45%,#07122669),linear-gradient(0deg,#061028c4,transparent 48%)}
.result-guardian,.result-threat{display:none;position:absolute;z-index:1;bottom:0;height:96%;max-height:96%;width:46%;object-fit:contain;object-position:center bottom;filter:drop-shadow(7px 6px 0 #070813)}
.result-guardian{left:2%;transform:none}
.result-threat{right:2%}
.result-stamp{position:absolute;z-index:3;left:24px;bottom:18px;max-width:74%;padding:8px 18px 9px;background:var(--result-accent);clip-path:polygon(0 0,96% 0,100% 50%,96% 100%,0 100%,3% 50%);color:#071427;font:900 clamp(17px,2.35vw,28px)/1 BarlowCondensed,Barlow,"Arial Narrow",sans-serif;letter-spacing:.045em;text-transform:uppercase;filter:drop-shadow(4px 5px 0 #070b1b)}
.result-summary{position:relative;z-index:2;display:grid;grid-template-columns:minmax(220px,.9fr) minmax(390px,1.15fr);gap:22px;align-items:center;padding:20px 26px 17px}
.result-summary>p{margin:0;color:#dfeaff;font-size:16px;line-height:1.5}
.result-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:0}
.result-stats div{display:grid;min-width:0;min-height:66px;align-content:center;padding:9px 10px;border:1px solid #4f6695;background:#0e1733;text-align:center;clip-path:polygon(7px 0,100% 0,100% calc(100% - 7px),calc(100% - 7px) 100%,0 100%,0 7px)}
.result-stats dt{color:#9eb2d7;font:700 11px/1.2 Arial,sans-serif;letter-spacing:.07em;text-transform:uppercase}
.result-stats dd{min-width:0;margin:5px 0 0;color:#fff;font:900 clamp(19px,2.1vw,24px)/1.05 BarlowCondensed,Barlow,"Arial Narrow",sans-serif;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
#result-round[data-mode]::after{content:attr(data-mode);display:block;margin-top:3px;color:#cad8ef;font:700 11px/1.1 Arial,sans-serif;letter-spacing:.06em;text-transform:uppercase}
.result-actions{position:relative;z-index:2;display:flex;justify-content:center;gap:10px;padding:0 24px 24px}
.result-button{min-width:150px;min-height:48px;padding:10px 22px;border:2px solid #7b94c5;clip-path:polygon(10px 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%,0 10px);background:#1b2851;color:#fff;font:900 17px/1 BarlowCondensed,Barlow,"Arial Narrow",sans-serif;letter-spacing:.04em;text-transform:uppercase;cursor:pointer}
.result-button:hover,.result-button:focus-visible{filter:brightness(1.16);outline:3px solid #fff;outline-offset:3px}
.result-primary{border-color:#fff1a0;background:linear-gradient(#ffe46b,#eea918);color:#111b3d}
.result-quiet{background:#10162c;color:#c4d0e6}
.result.is-defeat{background:radial-gradient(circle at 50% 30%,#5b172fd9,#070912f5 70%)}
.result.is-defeat .result-shell{--result-accent:#ff5267;box-shadow:0 0 0 6px #8d172b,0 0 0 9px #f2b346,0 26px 70px #02030bdf}
.result.is-defeat .result-heading{background:linear-gradient(100deg,#3d0d21,#a31c36 58%,#360d22)}
.result.is-defeat .result-heading p{color:#ffd4d9}
.result.is-defeat .result-victory-art{display:none}
.result.is-defeat .result-defeat-map,.result.is-defeat .result-guardian,.result.is-defeat .result-threat{display:block}
.result.is-defeat .result-scene::after{background:radial-gradient(circle at 52% 30%,transparent,#16030bd6 88%),linear-gradient(0deg,#260510e0,transparent 62%)}
.result.is-defeat .result-stats div{border-color:#7d3848;background:#260d1b}
@media(max-width:760px){.result{padding:10px}.result-shell{width:100%;border-radius:12px}.result-heading{padding:13px 18px 11px}.result-scene{height:clamp(190px,45vw,280px)}.result-summary{grid-template-columns:1fr;padding:15px 18px 12px;gap:13px}.result-stats{grid-template-columns:repeat(2,1fr)}.result-actions{flex-wrap:wrap;padding:0 16px 18px}.result-button{min-width:calc(50% - 6px);flex:1}.result-stamp{left:14px;bottom:12px;max-width:88%}}
@media(max-width:430px){.result-heading h2{font-size:30px}.result-scene{height:170px}.result-summary>p{font-size:14px}.result-stats dd{font-size:18px}.result-button{width:100%;min-width:100%;min-height:43px}.result-actions{gap:7px}.result-guardian,.result-threat{height:100%}}
@media(prefers-reduced-motion:no-preference){.result:not([hidden]) .result-shell{animation:result-arrive .32s cubic-bezier(.2,.8,.2,1)}.result:not([hidden]) .result-stamp{animation:stamp-arrive .42s .12s both cubic-bezier(.2,.8,.2,1)}}
@keyframes result-arrive{from{opacity:0;transform:scale(.94) translateY(18px)}to{opacity:1;transform:none}}
@keyframes stamp-arrive{from{opacity:0;transform:translateX(-28px)}to{opacity:1;transform:none}}
