/* All illustrations are existing authored assets. Layout and transforms stay in CSS. */
.batch-button { position:relative; isolation:isolate; padding:8px 16px; min-height:40px; color:#f9e5bd; background:none; font-family:inherit; font-size:18px; line-height:1.35; }
.batch-button:hover:not(:disabled) { filter:brightness(1.12); }
.batch-report-hud { position:absolute; left:491px; top:706px; width:105px; min-height:42px; padding:7px; font-size:18px; white-space:nowrap; }
.batch-report-hud:disabled { color:#baa786; }
.batch-report-overlay { position:absolute; inset:0; z-index:96; display:grid; place-items:center; background:rgba(22,24,18,.66); pointer-events:auto; color:#3c4635; }
.batch-report-panel { position:relative; isolation:isolate; width:666px; height:720px; padding:79px 60px 45px; display:flex; flex-direction:column; gap:10px; }
.batch-report-heading { flex:none; text-align:center; }
.batch-report-eyebrow { font-size:15px; color:#7d684b; letter-spacing:3px; }
.batch-report-heading h2 { margin:8px 0 5px; color:#803b29; font-size:37px; font-weight:600; line-height:1.2; letter-spacing:2px; }
.batch-report-date { margin:0; color:#7d684b; font-family:"PingFang SC","Microsoft YaHei",sans-serif; font-size:13px; font-variant-numeric:tabular-nums; }
.batch-report-history { display:flex; flex:none; gap:7px; padding:2px; overflow-x:auto; scrollbar-width:thin; scrollbar-color:#aa8350 transparent; }
.batch-history-button { flex:none; min-height:34px; padding:6px 11px; font-size:15px; }
.batch-history-button[aria-current="true"] { color:#ffdfa0; text-decoration:underline; text-underline-offset:4px; }
.batch-report-scroll { flex:1; min-height:0; overflow-y:auto; scrollbar-width:thin; scrollbar-color:#a18b61 transparent; padding:0 6px 5px; }
.batch-report-scroll:focus-visible,.batch-report-details summary:focus-visible { outline:2px solid #a17b43; outline-offset:2px; }
.batch-report-hero { display:flex; align-items:center; justify-content:center; gap:24px; padding:3px 0 12px; border-bottom:1px solid #b49c71; }
.batch-report-stamp { width:65px; height:65px; object-fit:contain; transform:rotate(-9deg); }
.batch-report-hero-copy { display:flex; flex-direction:column; gap:4px; min-width:0; }
.batch-report-kicker { font-size:17px; color:#725c3d; }
.batch-report-total { font-size:51px; line-height:1.12; font-weight:600; color:#9b432b; font-variant-numeric:tabular-nums; overflow-wrap:anywhere; }
.batch-report-caption { font-size:15px; color:#5d6048; }
.batch-report-facts { display:grid; grid-template-columns:1fr 1fr; margin:12px 0 10px; gap:12px 24px; }
.batch-report-fact dt { color:#7c684d; font-family:"PingFang SC","Microsoft YaHei",sans-serif; font-size:14px; margin-bottom:4px; }
.batch-report-fact dd { margin:0; color:#3b5743; font-size:26px; font-weight:600; line-height:1.2; font-variant-numeric:tabular-nums; overflow-wrap:anywhere; }
.batch-fact-net { grid-column:1 / -1; display:flex; align-items:baseline; justify-content:space-between; gap:16px; padding-block:9px; border-block:1px solid #c5b28a; }
.batch-fact-net dt { margin:0; }
.batch-fact-net[data-sign="positive"] dd { color:#98452d; }
.batch-fact-net[data-sign="negative"] dd { color:#65584a; }
.batch-report-summary { margin:6px 0 10px; font-size:16px; line-height:1.5; color:#6d5940; }
.batch-report-details { border-top:1px solid #b49c71; }
.batch-report-details summary { padding:10px 2px; font-size:17px; color:#476148; cursor:pointer; }
.batch-report-row { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:14px; padding:11px 0; border-top:1px solid #c5b28a; font-family:"PingFang SC","Microsoft YaHei",sans-serif; }
.batch-row-name,.batch-row-result { display:flex; flex-direction:column; gap:5px; min-width:0; }
.batch-row-result { text-align:right; }
.batch-report-row b { font-size:16px; line-height:1.4; font-weight:500; overflow-wrap:anywhere; }
.batch-report-row small { color:#7b694e; font-size:12px; line-height:1.5; overflow-wrap:anywhere; }
.batch-row-result b { color:#91442d; font-variant-numeric:tabular-nums; }
.batch-report-footer { flex:none; text-align:center; }
.batch-report-footer p { margin:0 0 10px; color:#79684b; font-family:"PingFang SC","Microsoft YaHei",sans-serif; font-size:13px; line-height:1.4; }
.batch-report-close { min-width:280px; min-height:48px; font-size:21px; }
.batch-wave { position:absolute; left:57px; top:347px; width:485px; height:295px; z-index:35; pointer-events:none; }
.batch-wave-label { position:absolute; isolation:isolate; left:25px; top:0; min-width:410px; padding:11px 16px; text-align:center; color:#40533d; font-size:21px; line-height:1.3; font-variant-numeric:tabular-nums; }
.batch-wave-tray { position:absolute; left:240px; top:115px; }
.batch-wave-card { position:absolute; left:-48px; top:-24px; width:96px; height:128px; transform-origin:50% 80%; will-change:transform; filter:drop-shadow(2px 6px 3px rgba(25,20,12,.33)); }
.batch-wave-ticket { position:absolute; inset:0; width:100%; height:100%; object-fit:contain; }
.batch-wave-foil { position:absolute; left:10%; top:30%; width:80%; height:51%; object-fit:cover; }
.batch-wave-done { position:absolute; padding:3px 4px; color:#9f422b; background:#f1dfb5e8; font-size:16px; white-space:nowrap; transform:translate(-50%,-50%) rotate(-9deg); opacity:0; }
.batch-wave-scraper { position:absolute; left:2px; top:116px; width:78px; height:64px; object-fit:contain; z-index:10; }
.batch-wave.is-paused { visibility:hidden; }
body.batch-scratching #boss-dialogue { visibility:hidden; }
.ticket-win-note { position:absolute; isolation:isolate; z-index:32; left:140px; top:287px; width:338px; min-height:119px; padding:17px 24px 16px; display:flex; flex-direction:column; align-items:center; gap:4px; pointer-events:none; color:#8d402a; }
.ticket-win-kicker { font-size:21px; letter-spacing:3px; line-height:1.25; }
.ticket-win-amount { font-size:43px; line-height:1.1; font-weight:700; font-variant-numeric:tabular-nums; overflow-wrap:anywhere; }
.ticket-win-net { font-size:14px; color:#6d6047; line-height:1.4; }
.ticket-win-breakdown { font-size:14px; color:#4e6146; line-height:1.4; text-align:center; font-variant-numeric:tabular-nums; }
.ticket-win-note[data-tier="0"] { color:#365e46; }
.ticket-win-note[data-tier="0"] .ticket-win-kicker { letter-spacing:1px; }
.ticket-win-note[data-tier="3"],.ticket-win-note[data-tier="4"] { width:370px; left:124px; }
.ticket-win-note[data-tier="3"] .ticket-win-amount,.ticket-win-note[data-tier="4"] .ticket-win-amount { font-size:51px; }
.ticket-win-note.is-arriving { animation:ticket-win-arrive 400ms cubic-bezier(.2,.85,.3,1.15) both; }
@keyframes ticket-win-arrive { from { opacity:0; transform:translateY(12px) scale(.86); } 70% { opacity:1; transform:translateY(-3px) scale(1.035); } to { opacity:1; transform:translateY(0) scale(1); } }
.batch-report-panel.is-new-report .batch-report-stamp { animation:batch-stamp-land 430ms cubic-bezier(.23,.8,.3,1) both; }
@keyframes batch-stamp-land { from { opacity:0; transform:translateY(-21px) rotate(-15deg) scale(1.55); } 65% { opacity:1; transform:translateY(2px) rotate(-9deg) scale(.94); } to { opacity:1; transform:translateY(0) rotate(-9deg) scale(1); } }
body.reduced-motion .ticket-win-note,body.reduced-motion .batch-report-stamp { animation:none; }
@media (prefers-reduced-motion:reduce) { .ticket-win-note,.batch-report-stamp { animation:none!important; } }
@container (max-width:800px) {
  .batch-report-panel { width:744px; height:726px; padding:81px 67px 48px; gap:9px; }
  .batch-report-eyebrow,.batch-report-date { font-size:18px; }
  .batch-report-heading h2 { font-size:41px; }
  .batch-history-button { font-size:20px; min-height:39px; }
  .batch-report-kicker,.batch-report-caption,.batch-report-fact dt,.batch-report-summary,.batch-report-details summary { font-size:20px; }
  .batch-report-total { font-size:54px; }
  .batch-report-hero { padding-block:0 5px; }
  .batch-report-fact { display:flex; flex-direction:row; align-items:baseline; justify-content:space-between; gap:10px; }
  .batch-report-fact dt { flex:none; margin:0; font-size:18px; }
  .batch-report-facts { gap:10px 24px; margin-block:10px; }
  .batch-report-fact dd { font-size:32px; }
  .batch-report-row b { font-size:21px; }
  .batch-report-row small,.batch-report-footer p { font-size:17px; }
  .batch-report-close { font-size:25px; min-height:53px; }
  .batch-report-hud { font-size:21px; padding-inline:3px; }
  .ticket-win-net,.ticket-win-breakdown { font-size:19px; }
}
