/* ─────────────────────────────────────────────────────────────
   league.css — the AI Stock League, in Stock Miners' own voice

   Everything is scoped under body.lg or a .lg- class. This file never styles
   a bare element, so dropping /league/ into the main site cannot move a
   pixel on the mine, the mint or the Foundry. The header is NOT styled here:
   it is the site's own /lib/chrome.css and the site's own markup.

   Colours are the ones already on stockminers.xyz. Arcade face for anything
   that acts like a control or a title, Silkscreen for short labels, a plain
   monospace for everything a person actually has to read.
   ───────────────────────────────────────────────────────────── */
body.lg{
  --void:#070A0F;--bg:#0B0E15;--panel:#141A26;--raise:#1D2534;--sunk:#080B11;
  --ink:#E2E9F4;--dim:#7F8EA6;--line:#2E3849;--ember:#FF7A34;--ore:#FFC24A;--amber:#FFC24A;
  --term:#67D5E8;--up:#5BD08A;--down:#FF6A5E;
  --arcade:"Press Start 2P",monospace;--label:"Silkscreen",monospace;
  --read:"JetBrains Mono",ui-monospace,"SF Mono",Menlo,Consolas,monospace;
  --arena-art:url("/brand/league/arena-hero.svg?v=2");   /* the arena header's art: ONE file, swap it here */
  margin:0;color:var(--ink);font-family:var(--read);font-size:14px;line-height:1.65;
  background-color:var(--bg);
  background-image:
    radial-gradient(900px 360px at 88% -140px,rgba(255,194,74,.055),transparent 70%),
    linear-gradient(rgba(255,255,255,.014) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.014) 1px,transparent 1px);
  background-size:auto,48px 48px,48px 48px;
  -webkit-font-smoothing:antialiased;
}
body.lg *{box-sizing:border-box}
body.lg a{color:var(--term)}
body.lg a:hover{color:#9BE6F3}
body.lg .lg-pilotcell a{color:var(--ink)}
body.lg .lg-pilotcell a:hover{color:var(--ore)}
body.lg a.lg-btn,body.lg a.lg-btn:hover{color:var(--ink)}
body.lg a.lg-btn.primary,body.lg a.lg-btn.primary:hover{color:#1A0A00}
body.lg a.lg-btn.amber,body.lg a.lg-btn.amber:hover{color:#1A1000}
body.lg :focus-visible{outline:2px solid var(--ore);outline-offset:2px}
.lg-skip{position:absolute;left:-9999px;top:0;background:var(--ore);color:#1A1000;padding:10px 14px;font-family:var(--label);z-index:10}
.lg-skip:focus{left:8px;top:8px}

.lg-wrap{max-width:1180px;margin:0 auto;padding:0 18px 80px}
.lg-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:22px;align-items:start}
.lg-col{min-width:0}

/* ── league sub navigation and season tabs ── */
.lg-sub{display:flex;gap:4px;flex-wrap:wrap;margin:18px 0 18px;border-bottom:2px solid var(--line)}
.lg-sub a{font-family:var(--label);font-size:13px;letter-spacing:.05em;text-transform:uppercase;text-decoration:none;color:var(--dim);padding:0 14px;min-height:44px;display:flex;align-items:center;border:2px solid transparent;border-bottom:0;margin-bottom:-2px}
.lg-sub a:hover{color:var(--ink)}
.lg-sub a[aria-current=page]{color:var(--ore);border-color:var(--line);background:var(--bg)}
.lg-seasons{margin:0 0 12px}
.lg-tab{min-height:44px;padding:6px 14px;background:var(--sunk);border:2px solid var(--line);color:var(--ink);font-family:var(--label);font-size:13px;letter-spacing:.04em;cursor:pointer;text-align:left;line-height:1.3}
.lg-tab small{display:block;color:var(--dim);font-size:11px;font-family:var(--read);letter-spacing:0}
.lg-tab[aria-selected=true]{border-color:var(--ore);color:var(--ore)}
.lg-bar{display:block;height:10px;background:var(--sunk);border:1px solid var(--line);margin-top:6px}
.lg-bar i{display:block;height:100%;background:var(--term)}
.lg-bar.w0 i{width:0}.lg-bar.w10 i{width:10%}.lg-bar.w20 i{width:20%}.lg-bar.w25 i{width:25%}.lg-bar.w30 i{width:30%}.lg-bar.w40 i{width:40%}.lg-bar.w50 i{width:50%}.lg-bar.w60 i{width:60%}.lg-bar.w70 i{width:70%}.lg-bar.w75 i{width:75%}.lg-bar.w80 i{width:80%}.lg-bar.w90 i{width:90%}.lg-bar.w100 i{width:100%}
.lg-share{display:block;width:100%;height:auto;border:2px solid var(--line);background:var(--sunk);aspect-ratio:1200/675}
.lg-mt{margin-top:14px}

/* ── banners: what kind of data this is, said before anything else ── */
.lg-flag{display:none;border:2px solid var(--down);background:#1A0B0A;color:#FFD9D5;padding:10px 14px;margin:0 0 18px;font-family:var(--label);font-size:13px;letter-spacing:.04em}
.lg-flag.on{display:block}
.lg-flag b{font-family:var(--arcade);font-size:9px;background:var(--down);color:#1A0400;padding:4px 7px;margin-right:10px;font-weight:400}
.lg-flag.preview{border-color:var(--ore);background:#1A1206;color:#FFE9BD}
.lg-flag.preview b{background:var(--ore);color:#1A1000}

/* ── hero ── */
.lg-hero{padding:6px 0 22px}
.lg-hero h1{font-family:var(--arcade);font-size:26px;line-height:1.35;margin:0 0 14px;color:var(--ink);font-weight:400;letter-spacing:.01em}
.lg-hero h1 em{font-style:normal;color:var(--ember)}
.lg-hero p{margin:0 0 16px;max-width:64ch;color:#C5D0E0;font-size:15px}
.lg-tag{display:inline-block;font-family:var(--arcade);font-size:9px;letter-spacing:.06em;padding:7px 10px;background:var(--ore);color:#1A1000;margin:0 0 16px}
.lg-tag.dim{background:var(--raise);color:var(--dim);border:2px solid var(--line)}

/* ── the strip of facts under the hero ── */
.lg-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border:2px solid var(--line);background:var(--sunk);margin:0 0 22px}
.lg-strip div{padding:13px 14px;border-right:2px solid var(--line);min-width:0}
.lg-strip div:last-child{border-right:0}
.lg-strip dt{font-family:var(--label);font-size:11px;color:var(--dim);text-transform:uppercase;letter-spacing:.06em;margin:0 0 5px}
.lg-strip dd{margin:0;font-family:var(--arcade);font-size:11px;line-height:1.5;color:var(--ink);overflow-wrap:anywhere}
.lg-strip dd.ore{color:var(--ore)}
.lg-strip dl{margin:0;display:contents}

/* ── panels ── */
.lg-panel{background:var(--panel);border:2px solid var(--line);box-shadow:4px 4px 0 #04060A;margin:0 0 22px}
.lg-panel>header{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:12px 16px;border-bottom:2px solid var(--line);background:var(--raise)}
.lg-panel>header h2{font-family:var(--arcade);font-size:11px;line-height:1.5;margin:0;font-weight:400;color:var(--ink);letter-spacing:.03em}
.lg-panel>header span{font-family:var(--label);font-size:11px;color:var(--dim);letter-spacing:.05em;text-transform:uppercase}
.lg-body{padding:16px}
.lg-body p{margin:0 0 12px}
.lg-body p:last-child{margin-bottom:0}
.lg-note{color:var(--dim);font-size:13px}
.lg-h3{font-family:var(--label);font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--ore);margin:18px 0 8px;font-weight:400}
.lg-h3:first-child{margin-top:0}

/* ── buttons: the site's raised pixel button ── */
.lg-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 16px;font-family:var(--arcade);font-size:10px;letter-spacing:.04em;text-transform:uppercase;text-decoration:none;cursor:pointer;border:2px solid var(--sunk);background:var(--raise);color:var(--ink);box-shadow:0 3px 0 #04060A;line-height:1.3;text-align:center}
.lg-btn:hover{background:#273246;color:var(--ink)}
.lg-btn:active{transform:translateY(2px);box-shadow:0 1px 0 #04060A}
.lg-btn.primary{background:var(--ember);color:#1A0A00;box-shadow:0 3px 0 #8A3A10}
.lg-btn.primary:hover{background:#FF9457;color:#1A0A00}
.lg-btn.amber{background:var(--ore);color:#1A1000;box-shadow:0 3px 0 #8A5F10}
.lg-btn[disabled],.lg-btn.off{opacity:.45;cursor:not-allowed;pointer-events:none}
.lg-btn.block{display:flex;width:100%}
.lg-row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.lg-row.end{justify-content:flex-end}

/* ── leaderboard ── */
.lg-tablewrap{overflow-x:auto}
.lg-table{width:100%;border-collapse:collapse;font-size:13px}
.lg-table caption{text-align:left;padding:0 16px 10px;color:var(--dim);font-size:12px;caption-side:bottom;padding-top:10px}
.lg-table th{font-family:var(--label);font-size:11px;font-weight:400;letter-spacing:.06em;text-transform:uppercase;color:var(--dim);text-align:left;padding:10px 12px;border-bottom:2px solid var(--line);white-space:nowrap}
.lg-table td{padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:middle}
.lg-table tr:last-child td{border-bottom:0}
.lg-table td.num,.lg-table th.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.lg-table tbody tr:hover{background:#182030}
.lg-table tr.me{background:#1E1A10}
.lg-table tr.bench td{color:var(--dim);border-top:2px solid var(--line)}
.lg-rank{font-family:var(--arcade);font-size:10px;color:var(--ore)}
.lg-pilotcell{display:flex;align-items:center;gap:10px;min-width:0}
.lg-pilotcell .lg-face{width:32px;height:32px;border:1px solid var(--line);flex:0 0 auto}
.lg-pilotcell a{color:var(--ink);text-decoration:none;overflow-wrap:break-word;min-width:0}
.lg-table td.pilot{min-width:170px}
.lg-table td.rules{min-width:150px;color:#B7C3D6}
.lg-table td.hold{min-width:150px}
.lg-pilotcell a:hover{color:var(--ore)}
.lg-up{color:var(--up)}.lg-down{color:var(--down)}.lg-flat{color:var(--dim)}
.lg-chip{display:inline-block;font-family:var(--label);font-size:11px;letter-spacing:.04em;padding:2px 7px;border:1px solid var(--line);color:var(--term);margin:1px 3px 1px 0;white-space:nowrap}
.lg-chip.cash{color:var(--dim)}
.lg-empty{padding:26px 16px;text-align:center;color:var(--dim)}
.lg-empty strong{display:block;font-family:var(--arcade);font-size:10px;color:var(--ink);margin-bottom:10px;font-weight:400;line-height:1.6}

/* ── onboarding steps ── */
.lg-steps{list-style:none;margin:0;padding:0;counter-reset:s}
.lg-steps li{counter-increment:s;display:grid;grid-template-columns:34px 1fr;gap:12px;padding:0 0 14px}
.lg-steps li::before{content:counter(s);font-family:var(--arcade);font-size:11px;color:#1A1000;background:var(--ore);width:30px;height:30px;display:flex;align-items:center;justify-content:center}
.lg-steps b{font-family:var(--label);font-size:13px;letter-spacing:.04em;text-transform:uppercase;color:var(--ink);font-weight:400;display:block;margin-bottom:2px}
.lg-steps span{color:#B7C3D6;font-size:13px}

/* ── feed ── */
.lg-feed{list-style:none;margin:0;padding:0}
.lg-feed li{padding:11px 16px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:auto 1fr;gap:4px 12px}
.lg-feed li:last-child{border-bottom:0}
.lg-feed time{font-family:var(--label);font-size:11px;color:var(--dim);letter-spacing:.04em;grid-row:span 2;padding-top:2px;white-space:nowrap}
.lg-feed b{font-weight:500;color:var(--ink);overflow-wrap:anywhere}
.lg-feed span{color:#B7C3D6;font-size:13px}

/* ── wizard ── */
.lg-wizard{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:2px solid var(--line);margin:0 0 22px;background:var(--sunk)}
.lg-wizard li{list-style:none;padding:12px 10px;text-align:center;font-family:var(--label);font-size:12px;letter-spacing:.05em;text-transform:uppercase;color:var(--dim);border-right:2px solid var(--line)}
.lg-wizard li:last-child{border-right:0}
.lg-wizard li[aria-current=step]{background:var(--ore);color:#1A1000}
.lg-wizard li.done{color:var(--up)}
ol.lg-wizard{padding:0}
.lg-field{margin:0 0 18px}
.lg-field label,.lg-legend{display:block;font-family:var(--label);font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--ore);margin:0 0 7px}
.lg-field small{display:block;color:var(--dim);font-size:12px;margin-top:6px}
.lg-input,.lg-textarea{width:100%;background:var(--sunk);border:2px solid var(--line);color:var(--ink);font-family:var(--read);font-size:15px;padding:12px;min-height:44px}
.lg-textarea{min-height:120px;resize:vertical;line-height:1.6}
.lg-input:focus,.lg-textarea:focus{border-color:var(--ore);outline:0}
.lg-count{float:right;color:var(--dim);font-size:12px;font-family:var(--read);letter-spacing:0;text-transform:none}
.lg-portraits{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.lg-portraits button{position:relative;background:var(--void);border:3px solid var(--line);padding:4px;cursor:pointer;min-height:44px;display:flex;align-items:center;justify-content:center}
.lg-portraits button:hover{border-color:#4A5870}
/* the chosen one: a thick ember frame, a glow and a tick, so it reads without colour vision too */
.lg-portraits button[aria-checked=true]{border-color:var(--ember);box-shadow:0 0 0 3px var(--ember),0 0 18px rgba(255,122,52,.45)}
.lg-portraits button[aria-checked=true]::after{content:"\2713";position:absolute;top:0;right:0;width:22px;height:22px;display:grid;place-items:center;background:var(--ember);color:#1A0A00;font:700 13px/1 var(--read)}
/* keyboard focus is a separate signal from selection: a cyan ring outside the frame */
body.lg .lg-portraits button:focus-visible{outline:3px solid var(--term);outline-offset:4px}
.lg-portraits .lg-face{width:100%;max-width:112px;height:auto}

/* ── portraits everywhere: the box is sized before the file arrives, nothing is cropped or stretched ── */
.lg-face{display:block;background:var(--void);object-fit:contain;aspect-ratio:1/1;max-width:100%}
.lg-face.drawn{image-rendering:pixelated}

/* ── build a pilot: the steps, and the pilot card that follows them ── */
.lg-build{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:22px;align-items:start}
.lg-build-main{min-width:0}
.lg-preview{position:sticky;top:16px;margin:0}
.lg-preview .lg-face{width:100%;height:auto;border:3px solid var(--ember)}
.lg-pv-text{min-width:0}
.lg-pv-name{font-family:var(--arcade);font-size:13px;line-height:1.5;overflow-wrap:anywhere;color:var(--ink);margin:12px 0 4px}
.lg-pv-name.empty{color:var(--dim)}
.lg-pv-sub{font-family:var(--label);font-size:11px;color:var(--dim);text-transform:uppercase;letter-spacing:.05em;margin:0}
.lg-pv-rules{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0 0;padding:0;list-style:none}
.lg-pv-rules li{font-family:var(--label);font-size:11px;letter-spacing:.04em;padding:3px 7px;border:1px solid var(--line);background:var(--sunk);color:#B7C3D6}
.lg-pv-rules li.lead{border-color:var(--ore);color:var(--ore)}
.lg-pv-rules li.wait{border-style:dashed;color:var(--dim)}
.lg-presets{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:0 0 18px}
.lg-preset{text-align:left;background:var(--sunk);border:2px solid var(--line);color:var(--ink);padding:12px;cursor:pointer;font-family:var(--read);min-height:44px}
.lg-preset[aria-pressed=true]{border-color:var(--ore)}
.lg-preset b{display:block;font-family:var(--label);font-size:13px;letter-spacing:.05em;text-transform:uppercase;font-weight:400;margin-bottom:4px;color:var(--ore)}
.lg-preset span{font-size:12px;color:#B7C3D6}
.lg-seg{display:flex;flex-wrap:wrap;gap:6px}
.lg-seg button{min-height:44px;min-width:56px;padding:0 12px;background:var(--sunk);border:2px solid var(--line);color:var(--ink);font-family:var(--label);font-size:13px;cursor:pointer;letter-spacing:.04em}
.lg-seg button[aria-pressed=true]{background:var(--ore);border-color:var(--ore);color:#1A1000}
.lg-two{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.lg-rules{list-style:none;margin:0;padding:0}
.lg-rules li{padding:9px 0 9px 20px;border-bottom:1px solid var(--line);position:relative}
.lg-rules li:last-child{border-bottom:0}
.lg-results{list-style:none;margin:0 0 12px;padding:0}
.lg-results li{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:10px;align-items:center;padding:8px 0;border-bottom:1px solid var(--line)}
.lg-results li:last-child{border-bottom:0}
@media (max-width:560px){.lg-results li{grid-template-columns:36px minmax(0,1fr)}.lg-results li>.lg-note{grid-column:2}}
.lg-rules li::before{content:"";position:absolute;left:2px;top:17px;width:8px;height:8px;background:var(--ore)}
.lg-code{background:var(--sunk);border:2px solid var(--line);padding:12px;font-size:12px;line-height:1.6;overflow-x:auto;white-space:pre-wrap;overflow-wrap:anywhere;margin:0;color:#B7C3D6}
.lg-warn{border-left:4px solid var(--ore);background:#1A1206;padding:10px 14px;margin:0 0 14px;color:#FFE9BD;font-size:13px}
.lg-err{border-left:4px solid var(--down);background:#1A0B0A;padding:10px 14px;margin:0 0 14px;color:#FFD9D5;font-size:13px;display:none}
.lg-err.on{display:block}
.lg-ok{border-left:4px solid var(--up);background:#0B1A11;padding:10px 14px;margin:0 0 14px;color:#D2F5DF;font-size:13px}
.lg-check{display:flex;gap:10px;align-items:flex-start;margin:0 0 10px;min-height:44px}
.lg-check input{width:22px;height:22px;margin-top:2px;accent-color:#FFC24A;flex:0 0 auto}
.lg-kv{display:grid;grid-template-columns:auto 1fr;gap:6px 16px;margin:0;font-size:13px}
.lg-kv dt{color:var(--dim);font-family:var(--label);font-size:11px;letter-spacing:.05em;text-transform:uppercase;padding-top:2px}
.lg-kv dd{margin:0;overflow-wrap:anywhere}
.lg-hash{font-size:12px;color:var(--dim);overflow-wrap:anywhere}

/* ── pilot page ── */
.lg-pilothead{display:grid;grid-template-columns:132px 1fr;gap:18px;align-items:center;margin:0 0 22px}
.lg-pilothead .lg-face{width:128px;height:128px;border:2px solid var(--line)}
.lg-pilothead h1{font-family:var(--arcade);font-size:20px;line-height:1.4;margin:0 0 8px;font-weight:400;overflow-wrap:anywhere}
.lg-big{font-family:var(--arcade);font-size:22px;line-height:1.3}
.lg-chart{width:100%;height:auto;display:block;background:var(--sunk);border:2px solid var(--line)}
.lg-chart text{font-family:var(--read);font-size:11px;fill:var(--dim)}
.lg-session{border-bottom:2px solid var(--line)}
.lg-session:last-child{border-bottom:0}
.lg-session summary{cursor:pointer;padding:12px 16px;display:flex;gap:12px;align-items:center;flex-wrap:wrap;min-height:44px;list-style:none}
.lg-session summary::-webkit-details-marker{display:none}
.lg-session summary::before{content:"+";font-family:var(--arcade);font-size:10px;color:var(--ore);width:14px}
.lg-session details[open] summary::before{content:"-"}
.lg-session summary b{font-family:var(--label);font-size:13px;letter-spacing:.05em;text-transform:uppercase;font-weight:400}
.lg-remark{padding:0 16px 12px 42px;color:#C5D0E0;font-size:13px}
.lg-remark i{font-style:normal;font-family:var(--label);font-size:10px;letter-spacing:.06em;color:var(--dim);border:1px solid var(--line);padding:1px 5px;margin-left:8px;text-transform:uppercase;white-space:nowrap}

.lg-foot{border-top:1px solid var(--line);margin-top:30px;padding:22px 18px 40px;color:var(--dim);font-size:12px;max-width:1180px;margin-left:auto;margin-right:auto}
.lg-foot a{color:var(--dim)}
.lg-hidden{display:none !important}
.lg-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;margin:-1px;padding:0;border:0}
/* a hidden label inside a sideways-scrolling table must be clipped by that table, not stretch the page on a phone */
.lg-tablewrap{position:relative}

@media (max-width:1100px){
  .lg-grid{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:900px){
  .lg-strip{grid-template-columns:repeat(2,minmax(0,1fr))}
  .lg-strip div{border-bottom:2px solid var(--line)}
  .lg-strip div:nth-child(2n){border-right:0}
  .lg-strip div:last-child{border-bottom:0;grid-column:span 2}
  .lg-two,.lg-presets{grid-template-columns:1fr}
  /* on a phone the card becomes one compact row above the steps: the face, the name, the rules in a line */
  .lg-build{grid-template-columns:minmax(0,1fr);gap:0}
  .lg-preview{position:static;order:-1;margin:0 0 14px}
  .lg-preview>header{display:none}
  .lg-preview .lg-body{display:grid;grid-template-columns:72px minmax(0,1fr);gap:12px;align-items:start;padding:10px}
  .lg-pv-sub{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .lg-preview .lg-face{width:72px;height:72px;border-width:2px}
  .lg-pv-name{margin:0 0 2px;font-size:11px}
  /* the chips become one short sentence, so the card stays two or three lines tall */
  .lg-pv-rules{display:block;margin-top:6px;font-family:var(--label);font-size:10px;line-height:1.6;letter-spacing:.02em;color:#B7C3D6}
  .lg-pv-rules li{display:inline;padding:0;border:0;background:none;font-size:inherit;letter-spacing:inherit}
  .lg-pv-rules li+li::before{content:" \00B7  ";color:var(--dim)}
  .lg-pv-rules li.wait{border:0}
}
@media (max-width:560px){
  /* The site header wraps into three rows of buttons on a phone. On league pages only, and without touching its markup
     or /lib/chrome.css, the same links become one row that scrolls sideways, so the first screen belongs to the league. */
  body.lg header.sm-head .sm-head-in{min-width:0;max-width:100vw;overflow:hidden}
  body.lg header.sm-head .sm-nav{min-width:0;max-width:100%;flex:1 1 100%;flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:4px}
  body.lg header.sm-head .sm-nav::-webkit-scrollbar{display:none}
  body.lg header.sm-head .sm-nav>*{flex:0 0 auto}
  body.lg header.sm-head .sm-status{display:none}
  .lg-hero p{margin-bottom:12px}
  .lg-sub{margin:12px 0}
  .lg-sub a{font-size:12px;padding:0 9px;min-height:44px}
  .lg-flag{font-size:11px;padding:8px 10px;margin-bottom:10px;letter-spacing:.02em;line-height:1.5}
  .lg-flag b{font-size:8px;display:inline-block;margin-bottom:4px}
  .lg-hero{padding-bottom:14px}
  .lg-tag{margin-bottom:10px}
  .lg-hero h1{font-size:17px}
  .lg-hero p{font-size:14px}
  .lg-wizard li{font-size:10px;padding:10px 4px}
  .lg-portraits{grid-template-columns:repeat(3,1fr)}
  .lg-pilothead{grid-template-columns:84px 1fr;gap:12px}
  .lg-pilothead .lg-face{width:80px;height:80px}
  .lg-pilothead h1{font-size:14px}
  .lg-big{font-size:16px}
  .lg-hide-sm{display:none}
  .lg-table td.pilot{min-width:0}
  .lg-pilotcell .lg-face{width:24px;height:24px}
  .lg-table td,.lg-table th{padding:9px 8px}
  .lg-btn{font-size:9px;padding:0 12px}
}
@media (prefers-reduced-motion:reduce){body.lg *{transition:none !important;animation:none !important}}

/* ── paid entry ── */
.lg-checks{list-style:none;margin:0;padding:0}
.lg-checks li{padding:7px 0;display:flex;gap:10px;align-items:flex-start;font-size:13px;color:#B7C3D6}
.lg-checks b{font-family:var(--label);font-size:11px;letter-spacing:.05em;padding:1px 6px;border:1px solid var(--line);flex:0 0 auto}
.lg-checks li.lg-ok-line b{color:var(--up);border-color:var(--up)}
.lg-checks li.lg-warn-line b{color:var(--ore);border-color:var(--ore)}
.lg-money{font-family:var(--arcade);font-size:12px;color:var(--ore);line-height:1.6}
.lg-tx{font-size:12px;color:var(--dim);overflow-wrap:anywhere}

/* collapsed technical sections: the details live behind a click, the summary reads like a button */
.lg-details{border:1px solid var(--line);padding:8px 12px}
.lg-details summary{cursor:pointer;font-family:inherit;letter-spacing:.04em;text-transform:uppercase;font-size:12px;color:var(--ore);padding:4px 0}
.lg-details[open] summary{margin-bottom:8px}


/* ── arena header: art on the right, words and buttons in HTML on the left ── */
.lg-hero.arena{position:relative;padding:34px 30px 30px;margin:0 0 20px;border:2px solid var(--line);overflow:hidden;
  background:linear-gradient(90deg,#0B0E15 0%,rgba(11,14,21,.94) 34%,rgba(11,14,21,.45) 64%,rgba(11,14,21,.12) 100%),var(--arena-art) right center/cover no-repeat,#0D121C}
.lg-hero.arena .lg-hero-in{position:relative;max-width:560px}
.lg-hero.arena p{max-width:52ch}

/* ── your pilot ── */
.lg-you{border-color:var(--ember);box-shadow:4px 4px 0 #04060A,0 0 0 1px rgba(255,122,52,.25)}
.lg-you>header{background:#22170F}
.lg-you>header h2{color:var(--ore)}
.lg-you-body{display:grid;grid-template-columns:112px minmax(0,1fr) 230px;gap:18px;padding:16px;align-items:start}
.lg-you-body>.lg-face{width:112px;height:112px;border:3px solid var(--ember)}
.lg-you-name{font-family:var(--arcade);font-size:14px;line-height:1.5;color:var(--ink);text-decoration:none;overflow-wrap:anywhere}
body.lg a.lg-you-name{color:var(--ink)}
body.lg a.lg-you-name:hover{color:var(--ore)}
.lg-you-main .lg-note{margin:4px 0 10px}
.lg-you-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:0;border:2px solid var(--line);background:var(--sunk)}
.lg-you-stat{padding:10px 12px;border-right:2px solid var(--line);min-width:0}
.lg-you-stat:last-child{border-right:0}
.lg-you-stat dt{font-family:var(--label);font-size:11px;color:var(--dim);text-transform:uppercase;letter-spacing:.06em;margin:0 0 4px}
.lg-you-stat dd{margin:0;font-family:var(--arcade);font-size:11px;line-height:1.5;overflow-wrap:anywhere}
.lg-you-stat dd.ore{color:var(--ore)} .lg-you-stat dd.dim{color:var(--dim)}
.lg-you-stat small{display:block;color:var(--dim);font-size:11px;margin-top:3px}
.lg-you-side{display:flex;flex-direction:column;gap:10px}
.lg-you-prize{border:2px dashed var(--line);padding:10px 12px;font-size:12px;color:#B7C3D6}
.lg-you-prize b{display:block;font-family:var(--label);font-size:11px;letter-spacing:.06em;color:var(--dim);margin-bottom:3px}
.lg-btn.block{display:flex;width:100%}
.lg-you.empty{border-color:var(--line)}
.lg-you.empty>header{background:var(--raise)}

/* ── five sessions and the result ── */
.lg-progress{list-style:none;margin:0 0 22px;padding:0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));border:2px solid var(--line);background:var(--sunk)}
.lg-step{padding:10px 12px;border-right:2px solid var(--line);min-width:0;position:relative}
.lg-step:last-child{border-right:0}
.lg-step b{display:block;font-family:var(--arcade);font-size:10px;line-height:1.5;color:var(--dim)}
.lg-step .d{display:block;font-family:var(--label);font-size:11px;color:var(--dim);letter-spacing:.04em}
.lg-step .s{display:block;font-size:12px;line-height:1.4;margin-top:4px;color:#B7C3D6;overflow-wrap:anywhere}
.lg-step::before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:transparent}
.lg-step.done::before{background:var(--up)} .lg-step.done b{color:var(--up)}
.lg-step.next::before,.lg-step.locked::before,.lg-step.trading::before{background:var(--ore)}
.lg-step.next,.lg-step.locked,.lg-step.trading{background:#1A1406} .lg-step.next b,.lg-step.locked b,.lg-step.trading b{color:var(--ore)}
.lg-step.waiting{background:#1A1406;outline:2px dashed var(--ore);outline-offset:-2px} .lg-step.waiting b{color:var(--ore)}
.lg-step.void .s{text-decoration:line-through;color:var(--dim)}
.lg-step.result.review::before,.lg-step.result.hold::before,.lg-step.result.preparing::before{background:var(--ore)}
.lg-step.result.review,.lg-step.result.hold,.lg-step.result.preparing{background:#1A1406} .lg-step.result.review b,.lg-step.result.hold b,.lg-step.result.preparing b{color:var(--ore)}
.lg-step.result.final::before{background:var(--up)} .lg-step.result.final b{color:var(--up)}
.lg-step.result.cancelled::before{background:var(--down)} .lg-step.result.cancelled b{color:var(--down)}

/* ── places 1 to 3 ── */
.lg-podium.provisional{border-color:var(--ore)}
.lg-provisional{margin:14px 16px 0;padding:10px 12px;border:2px dashed var(--ore);background:#1A1406;color:#FFE9BD;font-size:13px}
.lg-provisional b{font-family:var(--arcade);font-size:9px;background:var(--ore);color:#1A1000;padding:4px 7px;margin-right:10px;font-weight:400}
.lg-places{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;padding:16px}
.lg-place{border:2px solid var(--line);background:var(--sunk);padding:12px}
.lg-place.p1{border-color:var(--ore)}
.lg-place-h{display:flex;align-items:baseline;gap:8px;margin-bottom:10px}
.lg-place-h b{font-family:var(--arcade);font-size:14px;color:var(--ore)}
.lg-place-h span{font-family:var(--label);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--dim);border:1px solid var(--line);padding:1px 6px}
.lg-place ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:14px}
.lg-place li{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1 1 104px}
.lg-place li .lg-face{border:2px solid var(--line)}
.lg-place.p1 li .lg-face{border-color:var(--ore)}
.lg-place li a{font-family:var(--label);font-size:13px;color:var(--ink);text-decoration:none;overflow-wrap:anywhere}
body.lg .lg-place li a{color:var(--ink)} body.lg .lg-place li a:hover{color:var(--ore)}
.lg-place .v{font-family:var(--arcade);font-size:10px;line-height:1.5}
.lg-place .v small{font-family:var(--read);font-size:11px;color:var(--dim)}
.lg-place .r{font-size:12px}
.lg-podium-foot{padding:0 16px 16px;margin:0}

@media (max-width:900px){
  .lg-you-body{grid-template-columns:88px minmax(0,1fr)}
  .lg-you-body>.lg-face{width:88px;height:88px}
  .lg-you-side{grid-column:1 / -1}
  .lg-you-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .lg-you-stat:nth-child(2){border-right:0}
  .lg-you-stat:nth-child(-n+2){border-bottom:2px solid var(--line)}
  .lg-progress{grid-template-columns:repeat(3,minmax(0,1fr))}
  .lg-step:nth-child(3){border-right:0}
  .lg-step:nth-child(-n+3){border-bottom:2px solid var(--line)}
}
@media (max-width:560px){
  .lg-hero.arena{padding:20px 16px 18px;background:linear-gradient(180deg,rgba(11,14,21,.55) 0%,#0B0E15 78%),var(--arena-art) right top/auto 100% no-repeat,#0D121C}
  /* face and name side by side, then the four numbers across the card's full width, then the prize and the button */
  .lg-you-body{grid-template-columns:64px minmax(0,1fr);grid-template-areas:"face name" "face note" "stats stats" "side side";gap:4px 12px;padding:12px}
  .lg-you-main{display:contents}
  .lg-you-body>.lg-face{grid-area:face;width:64px;height:64px;border-width:2px}
  .lg-you-name{grid-area:name;font-size:12px;align-self:end}
  .lg-you-main>.lg-note{grid-area:note;margin:0}
  .lg-you-stats{grid-area:stats;margin-top:8px}
  .lg-you-side{grid-area:side;margin-top:8px}
  .lg-you-stat{padding:8px}
  .lg-you-stat:not(:last-child) dd{white-space:nowrap}
  .lg-you-stat dd{font-size:10px}
  .lg-step{padding:8px}
  .lg-step .s{font-size:11px}
  .lg-places{grid-template-columns:1fr;padding:12px}
  .lg-place li .lg-face{width:64px;height:64px}
  .lg-place li{display:grid;grid-template-columns:64px minmax(0,1fr);column-gap:12px;row-gap:2px;align-items:center;flex-basis:100%}
  .lg-place li .lg-face{grid-row:1 / span 3}
  .lg-place-h{margin-bottom:8px}
}
