:root {
  --ink: #07143f;
  --cream: #f6f4ef;
  --blue: #2457f5;
  --red: #f23b43;
  --green: #00a86b;
  --gold: #f4c64e;
  --sky: #75c9ff;
  --line: rgba(7, 20, 63, .14);
}

[hidden] { display:none !important; }

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--ink);
  background: var(--cream);
  font-family: Inter, "PingFang SC", "Microsoft YaHei", sans-serif;
}

.topbar {
  height: 72px;
  padding: 0 clamp(24px, 5vw, 76px);
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: white;
  background:
    linear-gradient(90deg, var(--red) 0 4%, transparent 4% 96%, var(--green) 96%),
    var(--ink);
  border-bottom: 1px solid rgba(255,255,255,.13);
}
.brand { display: flex; gap: 12px; align-items: center; color: inherit; text-decoration: none; font-weight: 800; letter-spacing: .08em; }
.brand>span:last-child b,.brand>span:last-child small{display:block}.brand>span:last-child b{font-size:13px}.brand>span:last-child small{margin-top:3px;color:#91a2d5;font-size:7px;letter-spacing:.12em;text-transform:uppercase}
.brand-mark { width: 34px; height: 34px; display: grid; place-items: center; color: var(--ink); background: var(--gold); border-radius: 50%; font: 900 13px/1 Georgia, serif; box-shadow:0 0 0 4px rgba(244,198,78,.14); }
.server-identity{margin-left:18px;margin-right:auto;padding:6px 12px;border:1px solid rgba(117,201,255,.72);border-radius:999px;color:#dff4ff;background:rgba(36,87,245,.24);box-shadow:inset 0 0 0 1px rgba(255,255,255,.06),0 0 18px rgba(36,87,245,.22);font-size:11px;font-weight:900;letter-spacing:.12em;line-height:1;white-space:nowrap}
.server-identity[data-server-kind="mainland"]{border-color:rgba(0,168,107,.85);color:#d8fff0;background:rgba(0,168,107,.2);box-shadow:inset 0 0 0 1px rgba(255,255,255,.05),0 0 16px rgba(0,168,107,.2)}
.server-identity[data-server-kind="international"]{border-color:rgba(244,198,78,.85);color:#fff1b8;background:rgba(242,59,67,.2);box-shadow:inset 0 0 0 1px rgba(255,255,255,.06),0 0 16px rgba(242,59,67,.18)}
.server-identity[data-server-kind="development"]{color:#d7dded;background:rgba(102,114,143,.22);border-color:rgba(145,162,213,.58);font-size:10px}
.status { font-size: 12px; color: #c2cced; }
.status i { display: inline-block; width: 7px; height: 7px; margin-right: 8px; background: var(--green); border-radius: 50%; box-shadow: 0 0 12px var(--green); }
.top-actions { display:flex;align-items:center;gap:20px; }
.account-button { padding:9px 14px;border:1px solid rgba(255,255,255,.3);color:white;background:transparent;cursor:pointer;font-size:10px;font-weight:800;letter-spacing:.06em; }
.account-button:hover,.account-button:focus-visible,.account-button.signed-in { color:var(--ink);background:var(--gold);outline:0;border-color:var(--gold); }
@media(max-width:620px){.server-identity{margin-left:10px;padding:5px 8px;font-size:10px;letter-spacing:.06em}.status{display:none}}

.hero {
  min-height: 590px;
  padding: 72px clamp(24px, 7vw, 110px);
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  gap: clamp(48px, 8vw, 120px);
  align-items: center;
  color: white;
  background:
    radial-gradient(circle at 78% 23%, rgba(36,87,245,.58), transparent 29%),
    radial-gradient(circle at 95% 78%, rgba(0,168,107,.40), transparent 28%),
    radial-gradient(circle at 6% 90%, rgba(242,59,67,.29), transparent 25%),
    var(--ink);
  position:relative;
  overflow:hidden;
}
.hero::after {
  content:"";
  position:absolute;
  width:62%;
  height:18px;
  left:54%;
  bottom:34px;
  background:linear-gradient(90deg,var(--red) 0 33%,var(--gold) 33% 42%,var(--green) 42% 69%,var(--blue) 69%);
  transform:rotate(-7deg);
  opacity:.9;
}
.hero > * { position:relative;z-index:1; }
.eyebrow { margin: 0 0 18px; color: var(--gold); font-size: 11px; font-weight: 800; letter-spacing: .24em; }
h1 { margin: 0; max-width: 730px; font: 700 clamp(46px, 6.3vw, 88px)/.98 Georgia, "Songti SC", serif; letter-spacing: -.045em; }
.hero-slogan{margin:18px 0 0;color:var(--gold);font:700 clamp(22px,2.4vw,34px)/1.35 Georgia,"Songti SC",serif;letter-spacing:.02em}
h1 em { color: var(--sky); font-weight: inherit; }
.intro { max-width: 610px; margin: 28px 0 34px; color: #c4ceec; font-size: 16px; line-height: 1.9; }
.private-test-notice{display:flex;align-items:center;gap:9px;width:max-content;max-width:100%;margin:0;font-size:10px;font-weight:800;letter-spacing:.08em}.private-test-notice span{display:grid;place-items:center;width:22px;height:22px;flex:0 0 auto;border-radius:50%}.private-test-notice strong,.private-test-notice small{font:inherit}.private-test-notice small{opacity:.72}
.private-test-notice-home{margin:-12px 0 30px;padding:8px 13px 8px 8px;border:1px solid rgba(244,198,78,.42);color:#f7e8b3;background:rgba(4,18,52,.42);box-shadow:0 8px 24px rgba(0,0,0,.12)}.private-test-notice-home span{color:var(--ink);background:var(--gold)}
.hero-actions { display:flex;flex-wrap:wrap;gap:14px;align-items:center; }
.button { padding: 14px 22px; color: white; background: var(--red); text-decoration: none; font-size: 13px; font-weight: 800; border-radius: 2px; box-shadow:5px 5px 0 var(--gold); }
.phase { color: #8fa2dd; font-size: 11px; text-transform: uppercase; letter-spacing: .08em; }
.phase b { display: block; margin-top: 5px; color: white; font-size: 12px; }

.formation-viewer { width:min(100%,360px); margin:auto; }
.pitch-card { position: relative; aspect-ratio: 4/5; max-height: 450px; width: 100%; border: 1px solid rgba(255,255,255,.42); background: linear-gradient(145deg, rgba(0,168,107,.88), rgba(36,87,245,.45)); box-shadow:18px 18px 0 rgba(242,59,67,.82); }
.pitch-card::before { content: ""; position: absolute; inset: 4%; border: 1px solid rgba(255,255,255,.22); }
.pitch-lines::before { content: ""; position: absolute; top: 50%; left: 4%; right: 4%; border-top: 1px solid rgba(255,255,255,.22); }
.pitch-lines::after { content: ""; position: absolute; width: 72px; height: 72px; left: calc(50% - 36px); top: calc(50% - 36px); border: 1px solid rgba(255,255,255,.22); border-radius: 50%; }
.player { position: absolute; width: 32px; height: 32px; display: grid; place-items: center; color: var(--ink); background: var(--gold); border: 3px solid var(--ink); outline: 1px solid white; border-radius: 50%; font-size: 8px; font-weight: 900; transform: translate(-50%,-50%); transition:left .28s ease,top .28s ease; }
.formation-label { position: absolute; top: 16px; right: -34px; padding: 12px 15px; color: var(--ink); background: white; box-shadow: 0 10px 30px rgba(0,0,0,.2); }
.formation-label b, .formation-label span { display: block; }
.formation-label b { font: 700 20px Georgia,serif; }.formation-label span { margin-top: 3px; color: #688078; font-size: 9px; }
.formation-picker { display:grid; grid-template-columns:40px 1fr 40px; align-items:center; gap:12px; margin-top:18px; }
.formation-picker button { width:40px;height:36px;border:1px solid rgba(117,201,255,.55);color:var(--sky);background:transparent;cursor:pointer;font-size:17px; }
.formation-picker button:hover,.formation-picker button:focus-visible { color:white;background:var(--blue);outline:0; }
.formation-picker div { display:flex;justify-content:space-between;align-items:center;color:#9babe0;font-size:10px;letter-spacing:.08em; }
.formation-picker strong { color:white;font:700 11px Georgia,serif; }

.metrics { display: grid; grid-template-columns: repeat(4,1fr); margin: 0 clamp(24px,7vw,110px); transform: translateY(-28px); background: white; box-shadow: 0 18px 45px rgba(7,20,63,.12); border-top:5px solid transparent; border-image:linear-gradient(90deg,var(--red),var(--gold),var(--green),var(--blue)) 1; }
.metrics article { padding: 25px 30px; border-right: 1px solid var(--line); }
.metrics article:last-child { border-right: 0; }
.metrics span,.metrics small { display:block; color:#73817c; font-size:10px; letter-spacing:.1em; }
.metrics strong { display:block; margin: 8px 0 4px; color:var(--blue); font:700 36px Georgia,serif; }

.play-section { margin:34px clamp(24px,7vw,110px) 10px;padding:34px 38px;display:grid;grid-template-columns:1fr auto;gap:40px;align-items:center;color:white;background:radial-gradient(circle at 85% 20%,rgba(36,87,245,.65),transparent 34%),var(--ink);box-shadow:10px 10px 0 var(--red); }
.play-section h2 { font-size:38px; }
.play-section > div:first-child > p:last-child { max-width:650px;margin:13px 0 0;color:#aebbe3;font-size:12px;line-height:1.8; }
.home-ranking-section{margin:34px clamp(24px,7vw,110px);padding:30px 34px;display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.8fr);gap:35px;border:1px solid var(--line);background:white;box-shadow:8px 8px 0 rgba(36,87,245,.14)}.home-ranking-copy>p:not(.eyebrow){margin-top:10px;color:#768198;font-size:10px}.scoring-rules{margin-top:18px;display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.scoring-rules span{padding:9px;border:1px solid var(--line);color:#57637c;font-size:8px}.scoring-rules b,.scoring-rules small{display:block}.scoring-rules b{margin-bottom:3px;color:var(--green);font:700 18px Georgia,serif}.scoring-rules small{margin-top:3px;color:#9aa2b3;font-size:7px}.home-leaderboard-list article{padding:9px;display:grid;grid-template-columns:30px 1fr auto;gap:9px;align-items:center;border-bottom:1px solid var(--line)}.home-leaderboard-list article>strong{color:var(--blue);font:700 19px Georgia,serif;text-align:center}.home-leaderboard-list b,.home-leaderboard-list small{display:block}.home-leaderboard-list b{font-size:11px}.home-leaderboard-list small{margin-top:3px;color:#8c96aa;font-size:8px}.home-leaderboard-list em{color:var(--green);font-size:12px;font-style:normal;font-weight:900}

/* v77 积分榜改为上方规则、下方双列名册，消除左栏下方的大面积空白。 */
@media(min-width:901px){.home-ranking-section{display:block}.home-ranking-copy{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(620px,1.28fr);column-gap:34px;align-items:end}.home-ranking-copy>.eyebrow,.home-ranking-copy>h2,.home-ranking-copy>p:not(.eyebrow){grid-column:1}.home-ranking-copy>.scoring-rules{grid-column:2;grid-row:1/4;margin-top:0;grid-template-columns:repeat(3,minmax(0,1fr));align-self:stretch}.home-leaderboard-list{margin-top:24px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px;border-top:2px solid var(--ink)}.home-leaderboard-list article{min-height:112px;padding:14px 10px;border-bottom:1px solid var(--line)}.home-leaderboard-list article:nth-child(odd){border-right:1px solid var(--line);padding-right:24px}.home-leaderboard-list article:nth-child(even){padding-left:18px}}
.admin-home-tools[hidden]{display:none}.admin-home-tools{margin:34px clamp(24px,7vw,110px);padding:25px 30px;display:grid;grid-template-columns:minmax(240px,.7fr) minmax(480px,1.3fr);gap:28px;align-items:center;color:white;background:linear-gradient(120deg,#092f27,#145345);box-shadow:8px 8px 0 #bd9550}.admin-home-tools h2{margin-top:4px;font-size:28px}.admin-home-tools>div>p:last-child{margin-top:7px;color:#c4d9d1;font-size:10px}.admin-home-tools .eyebrow{color:#e4c77e}.admin-home-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.admin-home-actions button,.admin-home-actions a{min-height:42px;padding:10px 12px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.27);color:white;background:rgba(255,255,255,.07);cursor:pointer;font:900 9px/1.35 inherit;text-align:center;text-decoration:none}.admin-home-actions button:hover,.admin-home-actions a:hover{border-color:#e4c77e;color:#fff0c5;background:rgba(255,255,255,.13)}
.admin-home-tools-top{margin-top:22px;margin-bottom:0}

/* 管理员工具融入第十一签主横幅 */
body:has(#admin-home-tools:not([hidden])) .hero{padding-bottom:190px}
.hero>.admin-home-tools{position:absolute;z-index:4;left:clamp(24px,7vw,110px);right:clamp(24px,7vw,110px);bottom:28px;margin:0;padding:14px 16px;display:grid;grid-template-columns:210px minmax(0,1fr);gap:16px;align-items:center;border:1px solid rgba(244,198,78,.34);color:white;background:linear-gradient(90deg,rgba(6,36,32,.94),rgba(7,20,63,.88));box-shadow:0 10px 28px rgba(0,0,0,.24);backdrop-filter:blur(9px)}
.hero>.admin-home-tools h2{margin:2px 0 0;font-size:17px}.hero>.admin-home-tools>div>p:last-child{margin-top:3px;color:#b8cbc7;font-size:8px}.hero>.admin-home-tools .eyebrow{margin:0;color:#e4c77e;font-size:7px}.hero>.admin-home-tools .admin-home-actions{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.hero>.admin-home-tools .admin-home-actions button,.hero>.admin-home-tools .admin-home-actions a{min-height:36px;padding:7px 8px;border-color:rgba(228,199,126,.33);background:rgba(255,255,255,.055);font-size:8px}.hero>.admin-home-tools .admin-home-actions button:hover,.hero>.admin-home-tools .admin-home-actions a:hover{color:#fff1bd;border-color:#e4c77e;background:rgba(228,199,126,.13)}
@media(max-width:900px){body:has(#admin-home-tools:not([hidden])) .hero{padding-bottom:250px}.hero>.admin-home-tools{grid-template-columns:1fr;bottom:22px}.hero>.admin-home-tools .admin-home-actions{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:560px){body:has(#admin-home-tools:not([hidden])) .hero{padding-bottom:350px}.hero>.admin-home-tools{left:14px;right:14px}.hero>.admin-home-tools .admin-home-actions{grid-template-columns:repeat(2,minmax(0,1fr))}}
.room-lobby-section{margin:28px clamp(24px,7vw,110px) 50px}.room-lobby-heading{display:flex;justify-content:space-between;align-items:end}.room-lobby-heading h2{font-size:34px}.room-lobby-heading button{padding:9px 13px;border:1px solid var(--line);background:white;cursor:pointer;font-weight:800}.room-lobby-list{margin-top:16px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.room-lobby-card{padding:16px;border:1px solid var(--line);background:white;box-shadow:3px 3px 0 rgba(36,87,245,.1)}.room-lobby-card>div:first-child b,.room-lobby-card>div:first-child small{display:block}.room-lobby-card>div:first-child b{font-size:13px}.room-lobby-card>div:first-child small{margin:5px 0 0 14px;color:#8790a5;font-size:9px}.room-live-dot{float:left;width:7px;height:7px;margin:4px 7px 0 0;border-radius:50%;background:var(--green);box-shadow:0 0 8px var(--green)}.room-lobby-card>p{display:flex;justify-content:space-between;margin:14px 0;color:#59657f;font-size:9px}.room-lobby-card>p strong{color:var(--blue)}.room-lobby-actions{display:flex;gap:5px}.room-lobby-actions button{flex:1;padding:8px 4px;border:1px solid var(--line);background:#f5f6f8;cursor:pointer;font-size:8px;font-weight:900}.room-lobby-actions button:last-child{color:white;border-color:var(--blue);background:var(--blue)}
.room-actions { display:flex;align-items:center;gap:10px; }
.duration-select{display:flex;flex-direction:column;gap:4px;color:#aebbe3;font-size:8px}.duration-select select{padding:10px 28px 10px 10px;border:1px solid rgba(255,255,255,.25);color:white;background:#102540;cursor:pointer;font-size:10px}
@media(max-width:640px){.duration-select{font-size:13px}.duration-select select{min-height:52px;font-size:17px}.duration-select select option{font-size:18px}}
.room-ai-toggle{display:flex;align-items:center;gap:8px;color:#fff;font-size:9px;line-height:1.35;cursor:pointer}.room-ai-toggle input{width:17px;height:17px;accent-color:var(--gold)}.room-ai-toggle small{color:#aebbe3;font-size:7px}
.create-room-button { padding:13px 18px;border:0;color:var(--ink);background:var(--gold);cursor:pointer;font-weight:900;white-space:nowrap; }
.join-room-form { display:flex; }
.join-room-form input { width:150px;padding:12px;border:1px solid rgba(255,255,255,.34);border-right:0;color:white;background:rgba(255,255,255,.07);outline:0;text-transform:uppercase;font-size:11px;letter-spacing:.08em; }
.join-room-form input::placeholder { color:#8e9cc9; }
.join-room-form button { padding:12px 14px;border:1px solid var(--blue);color:white;background:var(--blue);cursor:pointer;font-weight:800; }

.content-section { padding: 55px clamp(24px,7vw,110px) 90px; }
.section-heading { display:flex; justify-content:space-between; align-items:end; gap:24px; margin-bottom:28px; }
.eyebrow.dark { color: var(--red); }
h2 { margin:0; font:700 clamp(32px,4vw,52px) Georgia,"Songti SC",serif; }
.search { width:min(340px,100%); padding:12px 0; display:flex; gap:10px; border-bottom:1px solid var(--ink); }
.search input { width:100%; border:0; outline:0; background:transparent; color:var(--ink); font-size:13px; }
.filters { display:flex; gap:8px; flex-wrap:wrap; margin-bottom:24px; }
.filter { padding:8px 13px; border:1px solid var(--line); background:transparent; color:#66746f; cursor:pointer; font-size:10px; font-weight:700; letter-spacing:.06em; }
.filter.active { color:white; border-color:var(--blue); background:var(--blue); }
.nation-grid { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid var(--ink); }
.nation { min-height:118px; padding:20px 16px; color:inherit; text-align:left; border:0; border-right:1px solid var(--line); border-bottom:1px solid var(--line); background:transparent; cursor:pointer; }
.nation:nth-child(4n) { border-right:0; }
.nation { transition:background .18s ease,transform .18s ease; }
.nation:hover { background:#fff; transform:translateY(-2px); box-shadow:0 8px 24px rgba(7,20,63,.08); }
.nation-code { display:flex; justify-content:space-between; color:var(--blue); font:700 10px/1 sans-serif; letter-spacing:.14em; }
.nation h3 { margin:18px 0 4px; font:700 18px Georgia,"Songti SC",serif; }
.country-flag{display:inline-flex;width:30px;height:22px;margin-right:8px;align-items:center;justify-content:center;font-family:system-ui;font-size:24px;line-height:1;vertical-align:-5px}.flag-emoji{display:inline-flex;width:28px;height:20px;align-items:center;justify-content:center;overflow:visible;font-family:system-ui;line-height:1;white-space:nowrap}.flag-icon{position:relative;display:inline-block;width:24px;height:16px;box-sizing:border-box;overflow:hidden;border:1px solid rgba(7,20,63,.18);vertical-align:-2px}.flag-eng{background:linear-gradient(transparent 38%,#ce2635 38% 62%,transparent 62%),linear-gradient(90deg,#fff 38%,#ce2635 38% 62%,#fff 62%)}.flag-sco{background:linear-gradient(34deg,transparent 42%,white 42% 58%,transparent 58%),linear-gradient(-34deg,#1764b0 42%,white 42% 58%,#1764b0 58%)}
.flag-image{width:28px;height:19px;display:inline-block;object-fit:cover;border:1px solid rgba(7,20,63,.16);box-shadow:0 1px 2px rgba(7,20,63,.15);vertical-align:middle}.country-flag>.flag-image{width:28px;height:19px}
.nation h3 .country-flag{visibility:visible;overflow:visible}.nation h3 .flag-emoji{display:inline-flex!important;overflow:visible!important}
.nation p { margin:0; color:#80908a; font-size:10px; }
.nation-open { display:block; margin-top:15px; color:var(--red); font-size:9px; font-weight:800; letter-spacing:.08em; opacity:0; transform:translateY(4px); transition:.18s ease; }
.nation:hover .nation-open,.nation:focus-visible .nation-open { opacity:1;transform:none; }
.nation:focus-visible { outline:3px solid var(--gold);outline-offset:-3px; }
.count.ready { color:var(--green); }.count.empty { color:#9ca7a3; }
.loading { grid-column:1/-1; padding:40px 0; color:#71807a; }
footer { padding:28px clamp(24px,7vw,110px); display:flex; justify-content:space-between; color:#95a5d7; background:var(--ink); border-top:4px solid var(--red); font-size:10px; letter-spacing:.12em; }
footer b { color:white; }

.squad-dialog { width:min(1120px,calc(100vw - 32px)); height:min(820px,calc(100vh - 32px)); max-width:none; max-height:none; padding:0; border:0; color:var(--ink); background:var(--cream); box-shadow:0 30px 90px rgba(3,10,39,.42); }
.squad-dialog::backdrop { background:rgba(3,10,39,.78);backdrop-filter:blur(5px); }
.squad-shell { min-height:100%; }
.squad-header { position:sticky;top:0;z-index:2;display:flex;justify-content:space-between;align-items:flex-start;padding:32px 38px 26px;color:white;background:radial-gradient(circle at 82% 10%,rgba(36,87,245,.65),transparent 30%),var(--ink); }
.squad-header .eyebrow { margin-bottom:10px; }
.squad-header h2 { font-size:42px; }
.squad-header p:last-child { margin:5px 0 0;color:#aebbe3;font-size:12px; }
.dialog-close { width:42px;height:42px;border:1px solid rgba(255,255,255,.35);border-radius:50%;color:white;background:transparent;cursor:pointer;font-size:25px;line-height:1; }
.dialog-close:hover,.dialog-close:focus-visible { color:var(--ink);background:var(--gold);outline:0; }
.squad-toolbar { position:sticky;top:139px;z-index:2;display:flex;justify-content:space-between;align-items:center;padding:15px 38px;border-bottom:1px solid var(--line);background:rgba(246,244,239,.96);backdrop-filter:blur(8px); }
.position-filters { display:flex;gap:7px; }
.position-filters button { padding:7px 13px;border:1px solid var(--line);color:#657096;background:transparent;cursor:pointer;font-size:10px;font-weight:800; }
.position-filters button.active { color:white;border-color:var(--blue);background:var(--blue); }
.squad-toolbar > span { color:#7d87a5;font-size:11px; }
.player-list { padding:12px 38px 38px; }
.player-row { min-height:76px;display:grid;grid-template-columns:42px 38px minmax(180px,1.25fr) 48px minmax(180px,1fr) minmax(250px,1fr);gap:14px;align-items:center;border-bottom:1px solid var(--line); }
.shirt-number { color:var(--blue);font:700 23px Georgia,serif; }
.position-badge { width:34px;height:24px;display:grid;place-items:center;color:white;background:var(--blue);font-size:9px;font-weight:900; }
.pos-gk{background:var(--gold);color:var(--ink)}.pos-df{background:var(--green)}.pos-mf{background:var(--blue)}.pos-fw{background:var(--red)}
.player-identity h3 { margin:0;font:700 16px Georgia,"Songti SC",serif; }
.player-identity p { margin:4px 0 0;color:#8992aa;font-size:9px;letter-spacing:.06em; }
.position-detail{margin-top:7px;display:flex;align-items:center;gap:6px;font-size:8px}.position-detail b{padding:3px 5px;color:white;background:var(--blue)}.position-detail span{color:#69748f}.position-detail small{color:var(--green)}.position-detail small.estimated{color:#8b7381}
.player-club span { display:block;color:#929ab0;font-size:8px;letter-spacing:.08em; }
.player-club b { display:block;margin-top:5px;font-size:11px; }
.player-club small { display:block;margin-top:4px;color:#9099af;font-size:8px;line-height:1.35; }
.player-overall{min-width:40px;height:40px;display:grid;place-items:center;border-radius:11px;color:#071b34;background:linear-gradient(145deg,#f6dc78,#d9a62e);font-size:18px;font-weight:900}
.rating-stack{text-align:center}.rating-source{display:block;margin-top:4px;color:var(--green);font-size:7px;white-space:nowrap}.rating-source.estimated{color:#8b7381}
.player-attributes{grid-column:3/-1;color:#929ab0;font-size:9px;line-height:1.5;padding:7px 0;border-top:1px solid var(--line)}
.player-facts { display:grid;grid-template-columns:repeat(4,1fr);gap:8px; }
.player-facts span { color:#929ab0;font-size:9px; }
.player-facts b { display:block;margin-bottom:2px;color:var(--ink);font:700 14px Georgia,serif; }

.auth-dialog { width:min(560px,calc(100vw - 28px));max-width:none;max-height:calc(100vh - 28px);overflow:auto;padding:0 44px 42px;border:0;color:var(--ink);background:var(--cream);box-shadow:0 30px 90px rgba(3,10,39,.5); }
.auth-pending>main,.auth-pending>.topbar{visibility:hidden}
.auth-required .auth-close{display:none}
.auth-welcome-banner{margin:0 -44px 25px;padding:38px 44px 34px;color:white;background:radial-gradient(circle at 85% 15%,rgba(244,198,78,.28),transparent 32%),linear-gradient(135deg,#071b34,#0c674d)}
.auth-welcome-banner small,.auth-welcome-banner strong,.auth-welcome-banner span{display:block}.auth-welcome-banner small{color:var(--gold);font-size:9px;font-weight:900;letter-spacing:.18em}.auth-welcome-banner strong{margin-top:8px;font-size:33px}.auth-welcome-banner span{margin-top:8px;color:#dce9e4;font-size:11px}
.tournament-awards{margin:0 28px 22px;padding:24px;border:1px solid #d8c27a;background:linear-gradient(135deg,#fffdf4,#fff6d8)}.tournament-awards h3{font-size:22px}.tournament-awards>div{margin-top:15px;display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.tournament-awards article{padding:16px;border:1px solid #eadb9f;background:white}.tournament-awards small,.tournament-awards b,.tournament-awards span{display:block}.tournament-awards small{color:#9a7621;font-size:9px;font-weight:900}.tournament-awards b{margin-top:8px;font-size:14px}.tournament-awards span{margin-top:5px;color:#78839a;font-size:9px}
@media(max-width:600px){.auth-dialog{padding:0 22px 28px}.auth-welcome-banner{margin:0 -22px 20px;padding:30px 22px 27px}.auth-welcome-banner strong{font-size:27px}.tournament-awards{margin:0 14px 18px;padding:16px}.tournament-awards>div{grid-template-columns:1fr}}
.auth-dialog::backdrop { background:rgba(3,10,39,.8);backdrop-filter:blur(6px); }
.auth-close { position:absolute;right:18px;top:18px;color:var(--ink);border-color:var(--line);z-index:2; }
.auth-brand { margin:0 -44px 34px;padding:25px 44px;display:flex;align-items:center;gap:10px;color:white;background:radial-gradient(circle at 85% 20%,rgba(36,87,245,.8),transparent 34%),var(--ink); }
.auth-brand span { width:34px;height:34px;display:grid;place-items:center;color:var(--ink);background:var(--gold);border-radius:50%;font:900 12px Georgia,serif; }
.auth-brand b { font-size:12px;letter-spacing:.12em; }
.auth-copy h2 { font-size:38px; }
.auth-copy > p:last-child { margin:9px 0 24px;color:#737e9b;font-size:12px;line-height:1.7; }
.auth-tabs { display:grid;grid-template-columns:1fr 1fr;margin-bottom:22px;border-bottom:1px solid var(--line); }
.auth-tabs button { padding:11px;border:0;border-bottom:3px solid transparent;color:#8a93aa;background:transparent;cursor:pointer;font-weight:800; }
.auth-tabs button.active { color:var(--blue);border-color:var(--blue); }
.auth-form { display:grid;gap:16px; }
.auth-form label span { display:block;margin-bottom:7px;color:#717b96;font-size:10px;font-weight:800;letter-spacing:.08em; }
.auth-form .captcha-field{padding:12px;border:1px solid rgba(36,87,245,.28);background:#eef3ff}.auth-form .captcha-field span b{color:var(--blue);font-size:14px;letter-spacing:.04em}
.auth-form input { width:100%;padding:13px;border:1px solid var(--line);border-radius:0;color:var(--ink);background:white;outline:0;font-size:13px; }
.auth-form input:focus { border-color:var(--blue);box-shadow:0 0 0 2px rgba(36,87,245,.12); }
.auth-error { min-height:18px;margin:0;color:var(--red);font-size:11px; }
.auth-submit { padding:14px;border:0;color:white;background:var(--blue);cursor:pointer;font-weight:900;letter-spacing:.06em;box-shadow:5px 5px 0 var(--gold); }
.auth-submit:disabled { opacity:.55;cursor:wait; }
.account-panel { text-align:center; }
.account-avatar { width:74px;height:74px;margin:auto;display:grid;place-items:center;color:white;background:linear-gradient(145deg,var(--blue),var(--green));border-radius:50%;font:700 30px Georgia,serif;box-shadow:0 0 0 7px white; }
.account-panel h3 { margin:20px 0 4px;font:700 26px Georgia,"Songti SC",serif; }
.account-panel > p { margin:0;color:#8b94aa;font-size:11px; }
.account-approval-status{display:inline-block!important;margin-top:9px!important;padding:6px 9px;color:white!important;background:#8a93aa;font-weight:900}.account-approval-status.approved{background:var(--green)}.account-approval-status.pending{background:#c48a00}.account-approval-status.rejected{background:var(--red)}
.leaderboard-panel,.admin-panel{margin:18px 0;padding:13px;border:1px solid var(--line);background:white;text-align:left}.leaderboard-panel h4,.admin-panel h4{margin:0 0 9px;font-size:11px}.leaderboard-panel article{padding:6px 0;display:grid;grid-template-columns:24px 1fr auto;border-bottom:1px solid var(--line);font-size:9px}.leaderboard-panel article span{color:#8c95aa}.leaderboard-panel article strong{color:var(--blue)}.admin-panel{max-height:250px;overflow:auto}.admin-hint{margin:-3px 0 7px;color:#8992a7;font-size:7px}.admin-panel article{padding:7px 0;display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid var(--line)}.admin-panel b,.admin-panel small{display:block}.admin-panel b{font-size:9px}.admin-panel small,.admin-user-actions>span{margin-top:3px;color:#8992a7;font-size:7px}.admin-user-actions{text-align:right}.admin-user-actions button{display:block;margin:5px 0 0 auto;padding:4px 7px;border:1px solid var(--red);color:var(--red);background:white;font-size:7px;font-weight:900;cursor:pointer}.admin-user-actions button:disabled{opacity:.45}
.account-preview { display:grid;grid-template-columns:repeat(3,1fr);margin:26px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line); }
.admin-room-title{margin-top:18px!important;padding-top:12px;border-top:2px solid var(--ink)}.admin-room-list article{align-items:center}.admin-room-actions button{padding:5px 8px;border:1px solid var(--blue);color:var(--blue);background:white;font-size:7px;font-weight:900;cursor:pointer}.admin-room-actions button.danger{border-color:var(--red);color:white;background:var(--red)}.admin-room-actions button:disabled{opacity:.45}
.admin-panel{max-height:420px}
.account-preview span { padding:16px 7px;color:#8b94aa;border-right:1px solid var(--line);font-size:9px; }
.account-preview span:last-child { border-right:0; }
.account-preview b { display:block;margin-bottom:5px;color:var(--ink);font:700 18px Georgia,serif; }
.logout-button { padding:10px 16px;border:1px solid var(--line);color:#6f7891;background:transparent;cursor:pointer;font-size:10px;font-weight:800; }
.logout-button.danger{color:#9e3030;border-color:#d8aaaa}
.privacy-dialog{width:min(620px,calc(100vw - 28px));padding:34px;border:0;color:var(--ink);background:var(--cream);box-shadow:0 30px 90px rgba(3,10,39,.55)}.privacy-dialog::backdrop{background:rgba(3,10,39,.86);backdrop-filter:blur(6px)}.privacy-dialog h2{font-size:34px}.privacy-dialog>p:not(.eyebrow):not(.auth-error),.privacy-dialog li{color:#68738a;font-size:11px;line-height:1.8}.privacy-dialog ul{margin:18px 0;padding:17px 20px 17px 34px;background:white;border-left:4px solid #b48a42}.privacy-confirm{display:flex;gap:9px;align-items:flex-start;color:#4d584f;font-size:10px;line-height:1.6}.privacy-confirm input{margin-top:2px}.privacy-dialog>button{width:100%;margin-top:10px;padding:13px;border:0;color:white;background:#143e34;cursor:pointer;font-weight:900}
.admin-console-button{width:100%;margin:0 0 10px;padding:12px;border:0;color:white;background:var(--ink);cursor:pointer;font-weight:900}.admin-console{position:fixed;inset:0;z-index:130;width:100vw;height:100vh;max-width:none;max-height:none;margin:0;padding:0;border:0;color:var(--ink);background:var(--cream)}.admin-console>header{height:92px;padding:20px 42px;display:flex;align-items:center;justify-content:space-between;color:white;background:radial-gradient(circle at 75% 0,rgba(36,87,245,.65),transparent 38%),var(--ink)}.admin-console>header h2{font-size:32px}.admin-console>header .dialog-close{position:static}.admin-console-grid{height:calc(100vh - 92px);padding:24px 38px;display:grid;grid-template-columns:minmax(360px,.8fr) minmax(540px,1.2fr);gap:18px}.admin-console-grid>section{min-width:0;padding:20px;overflow:auto;border:1px solid var(--line);background:white;box-shadow:5px 5px 0 rgba(36,87,245,.1)}.admin-section-title{min-height:56px;margin-bottom:12px;padding-bottom:12px;display:flex;align-items:flex-start;justify-content:space-between;gap:15px;border-bottom:3px solid var(--ink)}.admin-section-title h3{font-size:18px}.admin-section-title p{margin-top:5px;color:#7c879c;font-size:9px}.admin-clean-all{padding:10px 13px;border:0;color:white;background:var(--red);cursor:pointer;font-size:9px;font-weight:900;white-space:nowrap}.admin-clean-all:disabled{opacity:.5}.admin-table article{min-height:58px;padding:10px;display:flex;align-items:center;justify-content:space-between;gap:14px;border-bottom:1px solid var(--line)}.admin-table b,.admin-table small{display:block}.admin-table b{font-size:11px}.admin-table small,.admin-user-actions>span{margin-top:4px;color:#7e899e;font-size:8px}.admin-user-actions{text-align:right}.admin-user-actions button,.admin-room-actions button{margin-top:5px;padding:6px 9px;border:1px solid var(--blue);color:var(--blue);background:white;cursor:pointer;font-size:8px;font-weight:900}.admin-user-actions button,.admin-room-actions button.danger{border-color:var(--red);color:var(--red)}.admin-room-actions button.danger{color:white;background:var(--red)}

.room-dialog { width:min(900px,calc(100vw - 28px));max-width:none;padding:0;border:0;color:var(--ink);background:var(--cream);box-shadow:0 30px 90px rgba(3,10,39,.55); }
.room-dialog::backdrop { background:rgba(3,10,39,.82);backdrop-filter:blur(6px); }
.room-close { position:absolute;right:20px;top:20px;z-index:3; }
.room-header { padding:32px 38px 28px;display:flex;justify-content:space-between;align-items:end;color:white;background:radial-gradient(circle at 82% 10%,rgba(0,168,107,.5),transparent 30%),radial-gradient(circle at 20% 90%,rgba(36,87,245,.55),transparent 35%),var(--ink); }
.room-header h2 { font-size:40px; }
.room-header > div > p:last-child { margin:9px 0 0;color:#9fadd7;font-size:10px;letter-spacing:.08em; }
#room-code { padding:4px 7px;border:1px solid rgba(255,255,255,.25);color:var(--gold);font:700 13px Georgia,serif;letter-spacing:.15em}.room-code-line{display:flex;align-items:center;gap:7px}.copy-room-code{padding:6px 9px;border:1px solid var(--gold);color:var(--ink);background:var(--gold);cursor:pointer;font-size:8px;font-weight:900}
.room-state { padding:9px 12px;color:var(--ink);background:var(--gold);font-size:10px;font-weight:900; }
.room-config { padding:14px 38px;display:grid;grid-template-columns:repeat(5,1fr);border-bottom:1px solid var(--line);background:white; }
.room-config span { color:#8a93aa;border-right:1px solid var(--line);text-align:center;font-size:9px; }
.room-config span:last-child { border-right:0; }.room-config b{display:block;margin-top:5px;color:var(--ink);font-size:11px;}
.seat-grid { padding:22px 38px 10px;display:grid;grid-template-columns:1fr 1fr;gap:9px; }
.room-seat { min-height:68px;padding:11px 13px;display:grid;grid-template-columns:30px 38px 1fr auto;gap:10px;align-items:center;border:1px solid var(--line);background:white; }
.room-seat.empty { grid-template-columns:30px 1fr auto;background:transparent;border-style:dashed; }
.room-seat.me { border-color:var(--blue);box-shadow:inset 3px 0 var(--blue); }
.seat-number { color:#8c95ab;font:700 11px Georgia,serif; }
.seat-avatar { width:34px;height:34px;display:grid;place-items:center;color:white;background:var(--blue);border-radius:50%;font:700 13px Georgia,serif; }
.room-seat.ai .seat-avatar { color:var(--ink);background:var(--gold); }
.room-seat h3 { margin:0;font:700 13px Georgia,"Songti SC",serif; }.room-seat p{margin:4px 0 0;color:#9199ac;font-size:8px;}
.room-seat h3{display:flex;align-items:center;gap:7px;min-width:0}
.player-latency{display:inline-flex;align-items:center;gap:4px;flex:0 0 auto;padding:3px 6px;border:1px solid #b9c2d5;border-radius:999px;color:#758099;background:#f5f7fb;font:800 7px/1 Inter,"PingFang SC",sans-serif;letter-spacing:0;white-space:nowrap}
.player-latency>i{width:6px;height:6px;display:block;border-radius:50%;background:#8d96a9;box-shadow:0 0 5px rgba(141,150,169,.45)}
.player-latency.good{border-color:#9bd8bd;color:#17754f;background:#effbf6}.player-latency.good>i{background:#00a86b;box-shadow:0 0 6px rgba(0,168,107,.55)}
.player-latency.fair{border-color:#e6cd84;color:#816313;background:#fff9e8}.player-latency.fair>i{background:#d5a51f;box-shadow:0 0 6px rgba(213,165,31,.5)}
.player-latency.poor{border-color:#efaaaa;color:#a72d36;background:#fff1f2}.player-latency.poor>i,.player-latency.offline>i{background:#e04b56;box-shadow:0 0 6px rgba(224,75,86,.45)}
.turn-player>b{display:flex;align-items:center;gap:6px;min-width:0}.turn-player .player-latency{margin-left:2px}
.room-seat i { color:var(--green);font-size:8px;font-style:normal;font-weight:800; }.room-seat.empty i{color:#a5abb9;}
@media(max-width:620px){.room-seat .player-latency{padding:3px}.room-seat .player-latency>span{display:none}}
.room-message { min-height:20px;margin:8px 38px;color:#737d98;font-size:10px; }
.room-footer { padding:18px 38px;display:flex;justify-content:flex-end;gap:9px;border-top:1px solid var(--line);background:white; }
.room-footer button { padding:11px 15px;cursor:pointer;font-size:10px;font-weight:900; }
.leave-room { margin-right:auto;border:1px solid var(--line);color:#7e879e;background:transparent; }
.ready-room { border:1px solid var(--green);color:var(--green);background:white; }
.start-room { border:1px solid var(--blue);color:white;background:var(--blue); }
.start-room:disabled { opacity:.55;cursor:not-allowed; }

.draft-active{overflow:hidden}.draft-dialog{position:fixed;inset:0;z-index:100;width:100vw;height:100vh;max-width:none;max-height:none;margin:0;padding:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;border:0;color:var(--ink);background:var(--cream)}
.draft-dialog::backdrop{background:var(--ink)}.draft-close{position:absolute;right:20px;top:20px;z-index:4}
.draft-header{padding:27px 38px 23px;display:flex;justify-content:space-between;align-items:end;color:white;background:radial-gradient(circle at 75% 0,rgba(36,87,245,.7),transparent 35%),var(--ink)}.draft-header h2{font-size:36px}.draft-round{margin-right:58px;padding:9px 13px;color:var(--ink);background:var(--gold);font-weight:900}
.formation-lock{padding:34px 38px}.formation-lock>p{color:#78829b;font-size:11px}.draft-formations{margin:25px 0;display:grid;grid-template-columns:repeat(5,1fr);gap:9px}.draft-formations button{padding:18px 10px;border:1px solid var(--line);background:white;cursor:pointer;text-align:left}.draft-formations button.active{color:white;border-color:var(--blue);background:var(--blue);box-shadow:4px 4px 0 var(--gold)}.draft-formations b,.draft-formations span{display:block}.draft-formations b{font:700 18px Georgia,serif}.draft-formations span{margin-top:6px;font-size:8px;opacity:.72}.lock-formation{padding:13px 20px;border:0;color:white;background:var(--green);cursor:pointer;font-weight:900}
.formation-mini-pitch{position:relative;width:100%;margin-top:12px;aspect-ratio:1.55;overflow:hidden;border:2px solid rgba(255,255,255,.9);border-radius:3px;background:linear-gradient(90deg,#16865c 0 25%,#0d9664 25% 50%,#16865c 50% 75%,#0d9664 75%);box-shadow:inset 0 0 0 1px rgba(7,20,63,.12)}.formation-mini-lines{position:absolute;inset:5px;border:1px solid rgba(255,255,255,.6)}.formation-mini-lines::before{content:"";position:absolute;left:0;right:0;top:50%;border-top:1px solid rgba(255,255,255,.6)}.formation-mini-lines::after{content:"";position:absolute;left:50%;top:50%;width:30px;height:30px;border:1px solid rgba(255,255,255,.6);border-radius:50%;transform:translate(-50%,-50%)}.formation-mini-pitch em{position:absolute;width:24px;height:16px;display:grid;place-items:center;border:1px solid white;border-radius:8px;color:var(--ink);background:var(--gold);box-shadow:0 2px 4px rgba(0,0,0,.25);font-size:6px;font-style:normal;font-weight:900;transform:translate(-50%,-50%)}.draft-formations button.active .formation-mini-pitch{box-shadow:0 0 0 2px var(--gold),inset 0 0 0 1px rgba(255,255,255,.2)}.draft-formations button.active .formation-mini-pitch em{color:white;background:var(--red)}
.draft-status{padding:12px 38px;display:grid;grid-template-columns:1fr auto minmax(260px,.7fr) 1fr;gap:16px;align-items:center;border-bottom:1px solid var(--line);background:white}.draft-status span,.draft-status small{display:block;color:#8a93aa;font-size:10px}.draft-status strong{display:block;margin:3px 0;font:700 24px Georgia,serif}.draft-status p{color:var(--blue);font-size:12px;font-weight:800}.draft-countdown{text-align:center}.draft-countdown strong{min-width:86px;color:var(--blue);font-size:42px;line-height:.85}.draft-countdown strong.urgent{color:var(--red);animation:orderPulse .55s ease-in-out infinite alternate}.draft-guarantee{padding:11px 13px;border:2px solid var(--red);color:var(--red);background:#fff1f2;font-size:11px;font-weight:900;line-height:1.45;text-align:center}.draft-guarantee.urgent{color:white;background:var(--red);animation:orderPulse .55s ease-in-out infinite alternate}.draft-turn-panel{text-align:right}
.change-formation{padding:7px 10px;border:1px solid var(--blue);color:var(--blue);background:white;cursor:pointer;font-size:8px;font-weight:900}
.save-lineup{padding:8px 11px;border:0;color:white;background:var(--green);cursor:pointer;font-size:8px;font-weight:900}.save-lineup:disabled{opacity:.5}
.my-order-banner{padding:9px 38px;color:#59637d;background:#eceff5;font-size:11px;font-weight:900;text-align:center}.my-order-banner.active{color:#071b34;background:var(--gold);font-size:14px;animation:orderPulse 1s ease-in-out infinite alternate}@keyframes orderPulse{to{filter:brightness(1.12)}}
.my-order-banner.lineup-guide{min-height:42px;padding:12px 38px;border-top:3px solid var(--gold);border-bottom:3px solid var(--gold);color:white;background:var(--blue);font-size:13px;line-height:1.45}.my-order-banner.lineup-guide.active{color:var(--ink);background:var(--gold)}
.match-strategy-picker{padding:17px 38px;display:grid;grid-template-columns:minmax(250px,300px) 1fr;gap:20px;align-items:center;border-bottom:1px solid var(--line);background:#f4f1e8}.match-strategy-picker h3{margin:3px 0;font:700 21px Georgia,"Songti SC",serif}.match-strategy-picker>div>span{display:block;color:#566277;font-size:11px;line-height:1.55}.match-strategy-picker>div:last-child{display:grid;grid-template-columns:repeat(3,minmax(150px,1fr));gap:8px}.match-strategy-picker button{min-height:76px;padding:11px 12px;border:1px solid var(--line);color:var(--ink);background:white;cursor:pointer;text-align:left}.match-strategy-picker button b,.match-strategy-picker button small{display:block}.match-strategy-picker button b{font-size:12px}.match-strategy-picker button small{margin-top:5px;color:#667187;font-size:10px;line-height:1.45}.match-strategy-picker button.active{color:white;border-color:var(--blue);background:var(--blue);box-shadow:3px 3px 0 var(--gold)}.match-strategy-picker button.active small{color:#e4ebff}
.match-strategy-picker button.recommended:not(.active){border-color:var(--gold);box-shadow:inset 0 3px 0 var(--gold)}
.match-strategy-picker button em{display:block;margin-top:6px;color:#765713;font-size:9px;font-style:normal;font-weight:800;line-height:1.4}.match-strategy-picker button.active em{color:#ffe39a}
.turn-order{padding:9px 38px;display:grid;grid-template-columns:repeat(8,1fr);gap:5px;border-bottom:1px solid var(--line)}.turn-order article{min-width:0;padding:7px;border:1px solid var(--line);background:white}.turn-order article.active{color:white;border-color:var(--blue);background:var(--blue);box-shadow:inset 0 -3px var(--gold)}.turn-order article.done{opacity:.62}.turn-order span{float:left;margin-right:5px;font:700 12px Georgia,serif}.turn-order b,.turn-order small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.turn-order b{font-size:8px}.turn-order small{margin-top:3px;font-size:6px;opacity:.75}
.draft-columns{height:545px;min-height:545px;display:grid;grid-template-columns:1fr 310px}.draft-columns>div,.draft-columns aside{min-height:0;padding:20px 28px;overflow:auto}.draft-columns aside{border-left:1px solid var(--line);background:white}.draft-columns h3{margin:0 0 13px;font-size:12px}.draft-columns aside h3:not(:first-child){margin-top:24px}.draft-player-list{display:grid;grid-template-columns:1fr 1fr;gap:7px}.draft-player{min-width:0;padding:9px;display:grid;grid-template-columns:42px minmax(0,1fr) 62px auto;gap:8px;align-items:center;border:1px solid var(--line);background:white;cursor:pointer;text-align:left}.draft-player>strong{width:40px;height:40px;display:grid;place-items:center;color:var(--ink);background:var(--gold);font:900 18px Georgia,serif}.draft-player-copy{min-width:0}.draft-player b,.draft-player span,.draft-player small{display:block}.draft-player b{font-size:13px}.draft-player span,.draft-player small{margin-top:3px;color:#77839b;font-size:9px}.draft-player i{max-width:54px;color:var(--blue);font-size:9px;font-style:normal;font-weight:900;text-align:right}.player-radar{width:62px;height:62px}.draft-player:disabled{opacity:.6;cursor:not-allowed}.draft-player.picked{filter:grayscale(1);background:#e5e5e5;opacity:.55}.draft-player.picked>strong{background:#bbb}.draft-player.picked i{color:#555}.draft-roster article,.pick-feed article{padding:10px 0;display:grid;grid-template-columns:40px 1fr 30px;gap:8px;align-items:center;border-bottom:1px solid var(--line)}.draft-roster article>span,.pick-feed article>span{color:#9aa1b2;font-size:8px}.draft-roster b,.draft-roster small,.pick-feed b,.pick-feed small{display:block}.draft-roster b,.pick-feed b{font-size:10px}.draft-roster small,.pick-feed small{margin-top:3px;color:#9098aa;font-size:7px}.draft-roster article>strong,.pick-feed article>strong{font:700 15px Georgia,serif}.pick-feed{max-height:190px;overflow:auto}.draft-message{position:sticky;left:32px;right:32px;bottom:7px;z-index:8;margin:0 32px 7px;padding:8px 12px;border:1px solid rgba(242,59,67,.35);color:var(--red);background:#fff1f2;box-shadow:0 3px 12px rgba(7,20,63,.12);font-size:12px;font-weight:900;text-align:center}
.draft-attributes{margin-top:6px;color:#536078;font-size:7px;font-weight:800;white-space:nowrap}.lineup-preview{margin-bottom:18px}.lineup-pitch{position:relative;height:400px;overflow:hidden;border:3px solid white;border-radius:5px;background:linear-gradient(90deg,#087c50 0 12.5%,#0a8959 12.5% 25%,#087c50 25% 37.5%,#0a8959 37.5% 50%,#087c50 50% 62.5%,#0a8959 62.5% 75%,#087c50 75% 87.5%,#0a8959 87.5%);box-shadow:0 5px 16px rgba(3,30,25,.25)}.lineup-pitch-lines{position:absolute;inset:6px;border:1px solid rgba(255,255,255,.72)}.lineup-pitch-lines::before{content:"";position:absolute;left:10%;right:10%;top:50%;border-top:1px solid rgba(255,255,255,.72)}.lineup-pitch-lines::after{content:"";position:absolute;width:72px;height:72px;left:50%;top:50%;border:1px solid rgba(255,255,255,.72);border-radius:50%;transform:translate(-50%,-50%)}.lineup-pitch article{position:absolute;width:72px;min-height:46px;padding:5px 3px;border:2px solid white;border-radius:7px;color:white;background:#092c47;box-shadow:0 3px 9px rgba(0,0,0,.3);text-align:center;transform:translate(-50%,-50%)}.lineup-pitch article.perfect{background:var(--green)}.lineup-pitch article.secondary{background:var(--blue)}.lineup-pitch article.empty{background:#8b3140}.lineup-pitch b,.lineup-pitch span,.lineup-pitch small{display:block}.lineup-pitch b{font-size:7px}.lineup-pitch b small{display:inline;margin-left:2px;font-size:6px;opacity:.7}.lineup-pitch span{margin-top:3px;overflow:hidden;font-size:7px;text-overflow:ellipsis;white-space:nowrap}.lineup-pitch i{position:absolute;right:-5px;top:-7px;width:20px;height:20px;display:grid;place-items:center;border-radius:50%;color:var(--ink);background:var(--gold);font-size:8px;font-style:normal;font-weight:900}
.draft-player.position-blocked{border-style:dashed;background:#edf0f4;opacity:.48}.lineup-pitch article.emergency{background:#c56a16}
.draft-player .draft-attributes{margin-top:6px;color:#34425d;font-size:9px;font-weight:900}
.draft-player-toolbar{min-height:23px;display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.draft-position-highlights{display:flex;gap:3px}.draft-position-highlights button{padding:3px 8px;border:1px solid var(--line);color:#6c7690;background:white;cursor:pointer;font-size:7px;font-weight:900}.draft-position-highlights button.active{color:white;border-color:var(--blue);background:var(--blue)}.draft-player.position-muted{opacity:.24}.draft-player.position-highlighted{border-color:rgba(36,87,245,.5);box-shadow:inset 3px 0 var(--blue)}
.formation-fit{position:absolute;right:8px;top:8px;padding:3px 5px;color:white;background:var(--green);font-size:7px;font-weight:900}.draft-formations button{position:relative}.draft-formations button.fit-emergency .formation-fit{background:#c56a16}.draft-formations button.fit-universal .formation-fit,.draft-formations button.fit-incompatible .formation-fit{background:var(--red)}.draft-formations button:disabled{opacity:.45;cursor:not-allowed}
.turn-player{display:flex;align-items:center;gap:5px;min-width:0}.turn-player span{flex:0 0 auto}.turn-player b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.turn-pick-label{height:29px;margin-top:5px;padding:6px 8px;overflow:hidden;color:#7c879e;background:#edf0f5;font-size:9px;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.turn-pick-label.selected{color:white;background:var(--green)}.turn-pick-label strong{float:right;margin-left:5px;color:var(--ink);font:900 12px Georgia,serif}.lineup-country-flag{position:absolute;left:3px;top:3px;z-index:2;width:20px;height:15px;font-size:15px;line-height:1;filter:drop-shadow(0 2px 2px rgba(0,0,0,.35))}.draft-country-flag{margin-right:6px}
.lineup-pitch .lineup-country-flag{display:inline-flex!important;margin:0!important;align-items:center;justify-content:center;overflow:visible!important;visibility:visible;white-space:nowrap}
.lineup-pitch article{width:88px;min-height:55px;padding:7px 4px}.lineup-pitch b{font-size:10px}.lineup-pitch b small{font-size:8px}.lineup-pitch span{font-size:10px}.lineup-pitch .lineup-country-flag{width:23px;height:16px;object-fit:cover}
.lineup-pitch.editable article{cursor:grab;touch-action:manipulation}.lineup-pitch.editable article:active{cursor:grabbing}.lineup-pitch article.swap-selected{z-index:3;outline:4px solid var(--gold);transform:translate(-50%,-50%) scale(1.08)}.lineup-pitch article.swap-incompatible{opacity:.38;cursor:not-allowed;filter:grayscale(.75)}.lineup-pitch .lineup-fit-note{margin-top:2px;color:rgba(255,255,255,.84);font-size:7px}.lineup-pitch article.emergency .lineup-fit-note{color:white}
.drawn-country-strip{min-height:32px;padding:5px 38px;display:flex;align-items:center;gap:7px;overflow-x:auto;border-bottom:1px solid var(--line);background:#f0f3fa;white-space:nowrap}.drawn-country-strip>b{margin-right:5px;color:#69748d;font-size:8px}.drawn-country-strip>span{position:relative;width:27px;height:20px;display:inline-flex;flex:0 0 27px;align-items:center;justify-content:center}.drawn-country-strip .flag-emoji{font-size:18px}.drawn-country-strip small{position:absolute;right:-3px;bottom:-2px;width:12px;height:12px;display:grid;place-items:center;border-radius:50%;color:white;background:var(--blue);font-size:6px;font-weight:900}.drawn-country-strip em{color:#919aaf;font-size:8px;font-style:normal}
.view-all-lineups{margin-left:6px;padding:8px 12px;border:0;color:white;background:var(--ink);cursor:pointer;font-size:9px;font-weight:900}
.draft-board #view-all-lineups:not([hidden]){margin-top:8px;padding:11px 16px;border:2px solid var(--gold);color:white;background:var(--blue);box-shadow:4px 4px 0 var(--gold);font-size:11px}
@media(max-width:1000px){.draft-board #view-all-lineups:not([hidden]){width:100%;margin:8px 0 0;min-height:44px}}
.all-lineups-dialog{width:min(1180px,94vw);height:min(820px,92vh);max-width:none;max-height:none;padding:0;border:0;color:var(--ink);background:var(--cream)}.all-lineups-dialog>header{padding:24px 34px;color:white;background:var(--ink)}.all-lineups-dialog>header h2{font-size:34px}.all-lineups-dialog>header>p:last-child{margin-top:6px;color:#9eaed5;font-size:10px}.all-lineups-dialog>.dialog-close{position:absolute;right:18px;top:18px}.all-lineups-grid{height:calc(100% - 126px);padding:18px 24px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;overflow:auto}.all-lineup-team{padding:11px;border:1px solid var(--line);background:white}.all-lineup-team>header{padding-bottom:8px;display:grid;grid-template-columns:24px 1fr auto;gap:7px;align-items:center;border-bottom:2px solid var(--ink)}.all-lineup-team>header>span{width:24px;height:24px;display:grid;place-items:center;color:white;background:var(--blue);font:700 12px Georgia,serif}.all-lineup-team header b,.all-lineup-team header small{display:block}.all-lineup-team header b{font-size:10px}.all-lineup-team header small{margin-top:2px;color:#8992a6;font-size:7px}.all-lineup-team header strong{color:var(--blue);font:700 18px Georgia,serif}.all-lineup-team p{margin:0;padding:5px 0;display:grid;grid-template-columns:20px 29px 1fr auto;gap:5px;align-items:center;border-bottom:1px solid var(--line)}.overview-player-flag{width:19px;height:14px;font-size:13px}.all-lineup-team p>span{color:#7c879c;font-size:7px}.all-lineup-team p>b{overflow:hidden;font-size:8px;text-overflow:ellipsis;white-space:nowrap}.all-lineup-team p>em{color:var(--blue);font:700 11px Georgia,serif}
.turn-order article.done{opacity:1}
.pick-confirm-dialog{width:min(520px,calc(100vw - 30px));padding:30px;border:0;color:var(--ink);background:white;box-shadow:0 24px 80px rgba(3,10,39,.5)}.pick-confirm-dialog::backdrop{background:rgba(3,10,39,.72);backdrop-filter:blur(3px)}.pick-confirm-dialog .dialog-close{position:absolute;right:16px;top:14px}.pick-confirm-dialog h2{margin:0;font:700 28px Georgia,"Songti SC",serif}.pick-confirm-dialog>p:not(.eyebrow){margin:8px 0 20px;color:#7d879d;font-size:10px}.pick-position-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.pick-position-options button{padding:13px;border:1px solid var(--line);background:#f5f6f8;cursor:pointer;text-align:left}.pick-position-options button.active{color:white;border-color:var(--blue);background:var(--blue);box-shadow:3px 3px 0 var(--gold)}.pick-position-options b,.pick-position-options span{display:block}.pick-position-options b{font-size:11px}.pick-position-options span{margin-top:5px;font-size:8px;opacity:.75}.pick-confirm-preview{margin:18px 0;padding:12px;color:#536078;background:#eef2fa;font-size:9px;line-height:1.7}.pick-confirm-actions{display:grid;grid-template-columns:1fr 2fr;gap:8px}.pick-confirm-actions button{padding:13px;cursor:pointer;font-weight:900}.pick-confirm-back{border:1px solid var(--line);color:#68738b;background:white}.pick-confirm-submit{border:0;color:white;background:var(--green)}.pick-confirm-submit:disabled{opacity:.55;cursor:wait}
.enter-tournament{margin-left:6px;padding:8px 12px;border:0;color:white;background:var(--green);cursor:pointer;font-size:9px;font-weight:900}.tournament-dialog{position:fixed;inset:0;z-index:110;width:100vw;height:100vh;max-width:none;max-height:none;margin:0;padding:0;border:0;color:var(--ink);background:var(--cream)}.tournament-close{position:absolute;right:22px;top:20px;z-index:2}.tournament-header{height:112px;padding:24px 54px;display:flex;justify-content:space-between;align-items:center;color:white;background:radial-gradient(circle at 75% 0,rgba(36,87,245,.7),transparent 35%),var(--ink)}.tournament-header h2{font-size:38px}.tournament-header>div:last-child{text-align:right}.tournament-header>div:last-child strong,.tournament-header>div:last-child span{display:block}.tournament-header>div:last-child strong{color:var(--gold);font:700 38px Georgia,serif}.tournament-header>div:last-child span{font-size:9px}.tournament-summary{height:58px;padding:10px 54px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:white}.tournament-summary p{font-size:10px}.tournament-summary button{padding:9px 12px;border:0;color:white;background:var(--blue);font-weight:900}.tournament-summary button:disabled{opacity:.5}.world-cup-groups{height:calc(100vh - 170px);padding:18px 54px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:10px}.world-cup-group{min-width:0;padding:13px;border:1px solid var(--line);background:white;box-shadow:4px 4px 0 rgba(36,87,245,.11)}.world-cup-group h3{margin:0 0 9px;padding-bottom:8px;border-bottom:2px solid var(--ink);font-size:8px;letter-spacing:.14em}.world-cup-group h3 b{float:right;color:var(--blue);font:700 20px Georgia,serif}.world-cup-group>div{height:calc((100% - 40px)/4);min-height:34px;padding:6px;display:grid;grid-template-columns:18px 29px 1fr auto;gap:7px;align-items:center;border-bottom:1px solid var(--line)}.world-cup-group>div.my-team{color:white;background:var(--blue)}.world-cup-group>div>span{color:#929aae;font:700 11px Georgia,serif}.world-cup-group>div>b{overflow:hidden;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.world-cup-group>div>small{font-size:7px;opacity:.7}.world-cup-group>div>.group-flag{display:inline-flex;width:28px;height:20px;align-items:center;justify-content:center;overflow:visible;color:inherit;font-family:system-ui;font-size:18px;line-height:1}.manager-team-mark{width:22px;height:22px;display:grid;place-items:center;border-radius:50%;color:var(--ink);background:var(--gold);font-size:7px;font-style:normal;font-weight:900}
.world-cup-group h3>small{float:right;margin:7px 12px 0 0;color:#8b94a9;font-size:6px;letter-spacing:.05em}.world-cup-group>div>small b{font-size:10px}
.knockout-board{height:calc(100vh - 170px);padding:20px 42px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;background:linear-gradient(90deg,rgba(36,87,245,.04),transparent)}.knockout-round{min-width:0;display:flex;flex-direction:column;justify-content:space-around}.knockout-round>h3{margin:0 0 9px;padding:9px;color:white;background:var(--ink);font-size:11px;text-align:center}.knockout-round>div{display:flex;justify-content:space-around;flex:1;flex-direction:column;gap:7px}.knockout-round article{padding:9px;border:1px solid var(--line);background:white;box-shadow:3px 3px 0 rgba(36,87,245,.1)}.knockout-round article p{margin:0;padding:5px;display:flex;justify-content:space-between;gap:8px;color:#69738a;font-size:9px}.knockout-round article p.winner{color:var(--ink);background:#e7f7ef;font-weight:900}.knockout-round article p span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.knockout-round article p b{font:700 13px Georgia,serif}.knockout-round article>small{display:block;margin-top:4px;color:var(--red);font-size:7px;text-align:center}.knockout-round.pending{opacity:.45}.knockout-placeholder{padding:18px;color:#929bad;background:white;font-size:9px;text-align:center}
.tournament-results{height:calc(100vh - 170px);overflow:auto;background:var(--cream)}.champion-ceremony{min-height:230px;padding:30px;text-align:center;color:white;background:radial-gradient(circle at 50% 0,rgba(255,208,76,.32),transparent 42%),linear-gradient(135deg,#07194b,#2457f5)}.trophy-mark{display:block;font-size:58px}.champion-ceremony .eyebrow{margin:7px 0;color:var(--gold)}.champion-ceremony h2{font:700 clamp(34px,5vw,62px) Georgia,"Songti SC",serif}.champion-ceremony>p:last-child{margin-top:8px;color:#c8d4f6;font-size:11px}.result-content{max-width:1120px;margin:-22px auto 0;padding:0 32px 40px;display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.7fr);gap:18px}.result-content>div,.personal-report{padding:20px;border:1px solid var(--line);background:white;box-shadow:6px 6px 0 rgba(36,87,245,.12)}.result-content h3{margin-bottom:12px;font-size:17px}.final-ranking-list article{min-height:55px;padding:8px 10px;display:grid;grid-template-columns:38px minmax(0,1fr) auto auto;gap:11px;align-items:center;border-bottom:1px solid var(--line)}.final-ranking-list article.is-me{background:#eef2ff;border-left:4px solid var(--blue)}.final-ranking-list article>strong{color:var(--blue);font:700 23px Georgia,serif;text-align:center}.final-ranking-list b,.final-ranking-list small{display:block}.final-ranking-list b{font-size:11px}.final-ranking-list small{margin-top:3px;color:#818ba0;font-size:8px}.final-ranking-list article>span{color:#68738c;font-size:8px}.final-ranking-list article>em{color:var(--green);font-size:10px;font-style:normal;font-weight:900}.personal-report{align-self:start}.report-rank{padding:14px;color:white;background:var(--ink)}.report-rank strong,.report-rank span{display:block}.report-rank strong{color:var(--gold);font:700 28px Georgia,serif}.report-rank span{margin-top:4px;font-size:9px}.personal-report dl{margin:10px 0;display:grid;grid-template-columns:1fr 1fr;gap:7px}.personal-report dl div{padding:10px;background:#f1f4fb}.personal-report dt{color:#818ba0;font-size:7px}.personal-report dd{margin:4px 0 0;color:var(--blue);font:700 20px Georgia,serif}.report-player{padding-top:12px;border-top:1px solid var(--line)}.report-player small,.report-player b,.report-player span{display:block}.report-player small{color:#818ba0;font-size:7px}.report-player b{margin-top:5px;font-size:14px}.report-player span,.report-player p{margin-top:4px;color:#68738c;font-size:8px}.report-player p{line-height:1.7}
.match-dialog{position:fixed;inset:0;z-index:120;width:100vw;height:100vh;max-width:none;max-height:none;margin:0;padding:0;border:0;color:white;background:radial-gradient(circle at 50% 35%,rgba(36,87,245,.28),transparent 34%),var(--ink)}.match-header{height:82px;padding:18px 44px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(255,255,255,.14)}.match-header h2{font-size:26px}.match-header .dialog-close{position:static}.match-scoreboard{height:128px;padding:12px max(45px,9vw);display:grid;grid-template-columns:1fr auto 1fr;gap:35px;align-items:center}.match-team small,.match-team strong{display:block}.match-team small{color:#8297d1;font-size:9px;letter-spacing:.2em}.match-team strong{margin-top:8px;font:700 clamp(22px,3vw,42px) Georgia,"Songti SC",serif}.match-team.away{text-align:right}.match-score{position:relative;display:flex;align-items:center;gap:16px;font:700 58px Georgia,serif}.match-score i{color:var(--gold);font-style:normal}.match-score b{position:absolute;left:50%;top:100%;padding:4px 8px;color:var(--ink);background:var(--gold);font:900 10px Inter,sans-serif;transform:translateX(-50%)}.match-timeline-panel{padding:12px max(45px,7vw)}.match-progress{position:relative;height:8px;background:rgba(255,255,255,.16)}.match-progress i{position:absolute;left:0;top:0;height:100%;width:0;background:linear-gradient(90deg,var(--red),var(--gold),var(--green))}.match-progress span{position:absolute;left:0;top:50%;font-size:20px;transform:translate(-50%,-50%);transition:left .1s linear}.match-minute-labels{margin-top:8px;display:flex;justify-content:space-between;color:#7f91c2;font-size:8px}.match-content{height:calc(100vh - 372px);padding:14px 24px;display:grid;grid-template-columns:minmax(220px,.65fr) minmax(400px,1.1fr) minmax(390px,1fr);gap:16px}.match-live-copy{min-width:0;display:flex;justify-content:center;flex-direction:column;overflow:auto}.match-live-copy>span{color:var(--gold);font-size:12px;font-weight:900;letter-spacing:.12em}.match-live-copy h3{margin:13px 0 10px;font:700 clamp(24px,3vw,48px) Georgia,"Songti SC",serif}.match-live-copy p{color:#aebbe1;font-size:13px}.match-event-feed{padding:8px;display:grid;grid-template-columns:1fr 1fr;gap:8px;overflow:hidden;border-left:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.04)}.match-event-column{min-width:0;padding:8px;overflow:auto}.match-event-column.away{text-align:right;border-left:1px solid rgba(255,255,255,.12)}.match-event-column h4{position:sticky;top:0;z-index:1;margin:0;padding:7px;color:var(--gold);background:var(--ink);font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.match-event-feed article{padding:10px 0;display:grid;grid-template-columns:32px 1fr;gap:7px;border-bottom:1px solid rgba(255,255,255,.1);text-align:left}.match-event-column.away article{grid-template-columns:1fr 32px;text-align:right}.match-event-column.away article>span{grid-column:2;grid-row:1}.match-event-column.away article>div{grid-column:1;grid-row:1}.match-event-feed article>span{color:var(--gold);font:700 11px Georgia,serif}.match-event-feed b{font-size:9px}.match-event-feed p{margin:4px 0 0;color:#9dadd7;font-size:8px}.match-event-feed .event-goal b{color:var(--green)}.match-event-feed .event-red_card b{color:var(--red)}.match-controls{height:76px;padding:15px max(45px,7vw);display:flex;align-items:center;gap:9px;border-top:1px solid rgba(255,255,255,.13)}.match-controls>span{margin-right:auto;color:#8d9dcc;font-size:10px}.match-controls button{padding:11px 16px;border:1px solid rgba(255,255,255,.25);color:white;background:transparent;cursor:pointer;font-weight:900}.match-controls #start-match,.match-controls #next-match{color:var(--ink);border-color:var(--gold);background:var(--gold)}.match-controls button:disabled{opacity:.4;cursor:not-allowed}.match-lineups-panel{min-width:0;padding:10px;overflow:hidden;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.04)}.match-lineups-panel-title{height:34px;display:flex;align-items:center;justify-content:space-between}.match-lineups-panel-title span{color:#8495c4;font-size:8px;letter-spacing:.14em}.match-lineups-panel-title strong{color:var(--gold);font-size:11px}.match-lineups-panel .match-lineups-grid{height:calc(100% - 34px);padding:0;display:grid;grid-template-columns:1fr 1fr;gap:7px;overflow:hidden}.match-lineups-panel .match-lineup-side{min-width:0;padding:8px;overflow:auto;color:var(--ink)}.match-lineups-panel .match-lineup-side>header{padding-bottom:6px}.match-lineups-panel .match-lineup-side header h3{font-size:13px}.match-lineups-panel .match-lineup-side p{padding:5px 0;grid-template-columns:20px 46px minmax(0,1fr) auto;gap:4px}.match-lineups-panel .match-player-flag{width:18px;height:12px}.match-lineups-panel .match-lineup-side p>span{font-size:6px}.match-lineups-panel .match-lineup-side p>b{overflow:hidden;font-size:8px;text-overflow:ellipsis;white-space:nowrap}.match-lineups-panel .match-lineup-side p>em{font-size:8px}
.match-flow{margin-top:5px;display:grid;grid-template-columns:72px 1fr 72px;gap:9px;align-items:center}.match-flow>b{color:#aebbe1;font-size:8px}.match-flow>b:last-child{text-align:right}.match-flow-track{position:relative;height:5px;border-radius:3px;background:linear-gradient(90deg,var(--blue),rgba(255,255,255,.2) 50%,var(--red))}.match-flow-track>i{position:absolute;left:50%;top:-3px;height:11px;border-left:1px solid rgba(255,255,255,.55)}.match-flow-track>span{position:absolute;left:50%;top:50%;width:10px;height:10px;border:2px solid var(--ink);border-radius:50%;background:var(--gold);box-shadow:0 0 8px rgba(255,209,74,.7);transform:translate(-50%,-50%);transition:left .35s ease}.match-flow-labels{margin-top:3px;display:grid;grid-template-columns:1fr auto 1fr;color:#7f91c2;font-size:7px}.match-flow-labels strong{color:#9eabd0;font-size:7px}.match-flow-labels span:last-child{text-align:right}.match-story{margin-top:10px;padding-top:9px;border-top:1px solid rgba(255,255,255,.14)}.match-story>p{color:#dbe2f7;font-size:9px;line-height:1.55}.match-turning-points{margin-top:7px;display:grid;gap:4px}.match-turning-points span{padding:5px 7px;color:#aebbe1;background:rgba(255,255,255,.05);font-size:8px}
.match-player-performance{margin-top:10px;padding-top:9px;border-top:1px solid rgba(255,255,255,.14)}.match-player-performance>div{display:grid;grid-template-columns:1fr 1fr;gap:6px}.match-player-performance article{min-width:0;padding:6px;background:rgba(255,255,255,.04)}.match-player-performance article>b{display:block;margin-bottom:4px;color:var(--gold);font-size:8px}.match-player-performance article>p{margin:0;padding:4px 0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 5px;border-bottom:1px solid rgba(255,255,255,.07)}.match-player-performance article>p span{overflow:hidden;color:white;font-size:7px;text-overflow:ellipsis;white-space:nowrap}.match-player-performance article>p small{grid-row:2;color:#8595bf;font-size:6px}.match-player-performance article>p strong{grid-column:2;grid-row:1/3;align-self:center;color:var(--gold);font-size:9px}

.match-event-feed .event-own_goal b,.match-event-feed .event-spot_kick_goal b{color:var(--green)}

/* Desktop single-screen draft table */
@media(min-width:1001px){
  .draft-dialog{width:100vw;height:100vh}
  .formation-lock{padding:16px 32px}.draft-formations{margin:12px 0;gap:7px}.draft-formations button{padding:8px}.formation-mini-pitch{margin-top:7px;aspect-ratio:1.75}.lock-formation{padding:10px 18px}
  .draft-header{height:64px;padding:8px 32px;align-items:center}.draft-header h2{font-size:24px}.draft-header .eyebrow{margin-bottom:2px}.draft-round{padding:6px 10px;font-size:9px}
  .draft-status{height:68px;padding:5px 32px}.draft-status>div:first-child>strong{margin:1px 0;font-size:20px}.draft-status p{margin:0;font-size:10px}.draft-countdown strong{font-size:40px}
  .my-order-banner{height:27px;padding:5px 32px;font-size:9px}.my-order-banner.active{font-size:11px}
  .turn-order{height:74px;padding:5px 32px;gap:5px}.turn-order article{padding:5px 7px}.turn-order span{font-size:14px}.turn-order b{font-size:11px}
  .draft-columns{height:calc(100vh - 265px);grid-template-columns:minmax(0,1fr) 430px;overflow:hidden}
  .draft-columns>div,.draft-columns aside{padding:7px 11px;overflow:auto}.draft-columns h3{margin:0 0 4px;font-size:10px}.draft-columns aside h3:not(:first-child){margin-top:7px}
  .draft-player-list{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}
  .draft-player{min-width:0;min-height:78px;padding:6px;grid-template-columns:36px minmax(0,1fr) 58px;gap:6px}
  .draft-player>strong{width:35px;height:35px;font-size:17px}.draft-player b,.draft-player span,.draft-player small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.draft-player b{font-size:12px}.draft-player span{margin-top:2px;font-size:9px}.draft-player small{margin-top:2px;font-size:9px;font-weight:700}.draft-player i{grid-column:1/-1;max-width:none;font-size:8px;text-align:right;white-space:nowrap}.player-radar{width:58px;height:58px}
  .draft-player .draft-attributes{margin-top:3px;font-size:8px}
  .lineup-preview{margin-bottom:6px}.lineup-pitch{height:calc(100vh - 265px);min-height:390px;max-height:620px}
  .lineup-pitch article{width:88px;min-height:55px;padding:7px 4px}.lineup-pitch span{font-size:10px}
  .roster-list-title,.draft-roster{display:none}.draft-message{bottom:2px;font-size:7px}
}

@media(max-width:1000px){
  .hero{grid-template-columns:1fr;padding-top:54px}.formation-viewer{width:290px}.metrics{grid-template-columns:repeat(2,1fr)}.metrics article:nth-child(2){border-right:0}
  .section-heading{align-items:start;flex-direction:column}.nation-grid{grid-template-columns:repeat(2,1fr)}.nation:nth-child(4n){border-right:1px solid var(--line)}.nation:nth-child(2n){border-right:0}
  .squad-header{padding:25px 22px 20px}.squad-header h2{font-size:34px}.squad-toolbar{top:119px;padding:12px 22px;align-items:flex-start;gap:12px;flex-direction:column}.position-filters{width:100%;overflow-x:auto}.player-list{padding:8px 22px 28px}.player-row{grid-template-columns:36px 34px 1fr 42px;gap:10px;padding:14px 0}.player-club{grid-column:3/5}.player-facts{grid-column:3/5}.player-attributes{grid-column:3/5}
  .play-section{grid-template-columns:1fr}.room-actions{align-items:stretch;flex-direction:column}.join-room-form input{width:100%}.room-lobby-list{grid-template-columns:1fr}.seat-grid{grid-template-columns:1fr}.room-config{grid-template-columns:repeat(2,1fr);gap:12px}.room-config span:nth-child(2){border-right:0}
  .draft-dialog{overflow:auto}.draft-header{position:sticky;top:0;z-index:6;padding:14px 20px}.draft-header h2{font-size:25px}.draft-round{margin-right:42px}.formation-lock{padding:22px 18px}.draft-formations{grid-template-columns:repeat(2,1fr);gap:7px}.draft-formations button{padding:9px}.formation-mini-pitch{margin-top:8px}.draft-status{padding:9px 18px;grid-template-columns:1fr auto 1fr}.draft-status strong{font-size:18px}.draft-countdown strong{font-size:36px}.draft-turn-panel p{font-size:9px}.my-order-banner{position:sticky;top:73px;z-index:5;padding:10px 18px}.drawn-country-strip{padding-left:14px;padding-right:14px}.turn-order{padding:7px 14px;display:flex;gap:6px;overflow-x:auto;scroll-snap-type:x mandatory}.turn-order article{min-width:148px;padding:7px;scroll-snap-align:start}.turn-player b{font-size:10px}.turn-pick-label{font-size:8px}.draft-columns{height:auto;display:flex;flex-direction:column}.draft-columns aside{order:-1;padding:14px 18px;border-left:0;border-top:1px solid var(--line)}.lineup-pitch{height:360px}.roster-list-title,.draft-roster{display:none}.draft-columns>div{padding:9px 14px;overflow:visible}.draft-player-toolbar{position:sticky;top:108px;z-index:4;padding:7px 0;background:var(--cream);align-items:center}.draft-player-toolbar h3{margin:0}.draft-position-highlights{overflow-x:auto}.draft-position-highlights button{min-width:48px;padding:7px 9px;font-size:9px}.draft-player-list{grid-template-columns:1fr;gap:7px}.draft-player{min-height:88px;padding:9px;grid-template-columns:44px minmax(0,1fr) 62px}.draft-player>strong{width:42px;height:42px;font-size:18px}.draft-player b{font-size:14px}.draft-player span,.draft-player small,.draft-attributes{font-size:10px}.draft-player i{grid-column:1/-1;max-width:none;font-size:9px;text-align:right}.pick-feed{display:block;max-height:190px;overflow:auto}.draft-message{position:sticky;left:auto;right:auto;bottom:0;margin:0 12px 8px;font-size:11px}.all-lineups-grid{height:auto;grid-template-columns:1fr 1fr}.all-lineups-dialog{overflow:auto}.all-lineups-dialog>header{padding:22px}.all-lineups-dialog>header h2{font-size:28px}
  .tournament-dialog{overflow:auto}.tournament-header{padding-left:24px;padding-right:24px}.tournament-header h2{font-size:28px}.tournament-summary{height:auto;padding:13px 24px;gap:10px;align-items:flex-start;flex-direction:column}.tournament-summary>div{width:100%;display:flex;gap:6px}.tournament-summary button{flex:1}.world-cup-groups{height:auto;padding:16px 24px;grid-template-columns:1fr;grid-template-rows:none}.world-cup-group{min-height:230px}.knockout-board{height:calc(100vh - 210px);padding:15px 18px;display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory}.knockout-round{min-width:270px;scroll-snap-align:start}.knockout-round article{padding:11px}.knockout-round article p{font-size:11px}
  .match-dialog{overflow:auto}.match-header{height:68px;padding:12px 18px}.match-header h2{font-size:20px}.match-scoreboard{height:150px;padding:18px;grid-template-columns:1fr auto 1fr;gap:10px}.match-team strong{font-size:19px;line-height:1.15}.match-score{gap:7px;font-size:39px}.match-timeline-panel{position:sticky;top:0;z-index:3;padding:14px 20px;background:var(--ink)}.match-content{height:auto;min-height:360px;padding:14px 20px;display:flex;flex-direction:column;gap:18px}.match-live-copy{min-height:160px;text-align:center}.match-live-copy h3{font-size:31px}.match-event-feed{max-height:280px;padding:5px 12px;border-left:0;border-top:1px solid rgba(255,255,255,.15)}.match-controls{position:sticky;bottom:0;z-index:4;height:auto;padding:10px 14px;background:var(--ink);flex-wrap:wrap}.match-controls>span{width:100%;margin:0 0 3px}.match-controls button{flex:1;min-height:46px}
}
@media(min-width:1001px) and (max-width:1250px){
  .draft-player-list{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:480px){
  .status{display:none}.top-actions{gap:8px}.hero{padding-left:22px;padding-right:22px}.hero-actions{align-items:flex-start;flex-direction:column}.formation-viewer{width:250px}.metrics{margin:0 14px}.metrics article{padding:19px}.play-section{margin-left:14px;margin-right:14px;padding:26px 20px}.content-section{padding-left:20px;padding-right:20px}.nation-grid{grid-template-columns:1fr}.nation{border-right:0!important}.auth-dialog{padding-left:24px;padding-right:24px}.auth-brand{margin-left:-24px;margin-right:-24px;padding-left:24px}.room-header{padding:28px 22px 22px}.room-header h2{font-size:30px}.room-config{padding:13px 18px}.seat-grid{padding:16px 18px 8px}.room-message{margin-left:18px;margin-right:18px}.room-footer{padding:15px 18px;flex-wrap:wrap}.draft-status{grid-template-columns:1fr auto}.draft-turn-panel{grid-column:1/-1;text-align:center}.draft-countdown strong{font-size:42px}.my-order-banner{top:70px}.draft-player-toolbar{top:105px}.lineup-pitch{height:320px}.pick-confirm-dialog{padding:24px 18px}.pick-position-options{grid-template-columns:1fr}.all-lineups-grid{grid-template-columns:1fr}
}
@media(max-width:1000px){
  .tournament-results{height:auto;min-height:calc(100vh - 210px)}
  .champion-ceremony{min-height:205px;padding:27px 18px}
  .trophy-mark{font-size:48px}
  .result-content{margin:-17px 14px 0;padding:0 0 28px;grid-template-columns:1fr}
  .final-ranking-list article{grid-template-columns:32px minmax(0,1fr) auto}
  .final-ranking-list article>span{display:none}
  .final-ranking-list b{font-size:12px}
  .final-ranking-list small{font-size:9px}
  .personal-report{order:-1}
}
.match-event-column h4{font-size:12px}.match-event-feed article{grid-template-columns:40px 1fr;gap:10px;padding:13px 0}.match-event-column.away article{grid-template-columns:1fr 40px}.match-event-feed article>span{font-size:14px}.match-event-feed b{font-size:12px}.match-event-feed p{font-size:11px;line-height:1.55}
@media(max-width:1000px){
  .home-ranking-section{margin:24px;grid-template-columns:1fr}.scoring-rules{grid-template-columns:repeat(3,1fr)}
  .admin-home-tools{margin:24px;grid-template-columns:1fr}.admin-home-actions{grid-template-columns:repeat(2,minmax(0,1fr))}
  .draft-guarantee{font-size:10px}
}
@media(max-width:480px){
  .home-ranking-section{margin:20px;padding:22px 18px}.scoring-rules{grid-template-columns:repeat(2,1fr)}
  .admin-home-tools{margin:20px;padding:22px 18px}.admin-home-actions{grid-template-columns:1fr}
  .draft-guarantee{grid-column:1/-1;font-size:11px}.draft-turn-panel{grid-column:1/-1}
}
.match-lineups-dialog{width:min(980px,94vw);height:min(760px,92vh);max-width:none;max-height:none;padding:0;border:0;color:var(--ink);background:var(--cream)}.match-lineups-dialog>header{padding:22px 30px;color:white;background:var(--ink)}.match-lineups-dialog>header h2{font-size:32px}.match-lineups-dialog>.dialog-close{position:absolute;right:18px;top:18px}.match-lineups-grid{height:calc(100% - 154px);padding:16px 22px;display:grid;grid-template-columns:1fr 1fr;gap:12px;overflow:auto}.match-lineup-side{padding:14px;border:1px solid var(--line);background:white}.match-lineup-side>header{padding-bottom:10px;border-bottom:3px solid var(--blue)}.match-lineup-side.away>header{text-align:right;border-color:var(--red)}.match-lineup-side header small{color:#7e899f;font-size:8px}.match-lineup-side header h3{margin:4px 0;font:700 20px Georgia,"Songti SC",serif}.match-lineup-side header strong{color:var(--green);font-size:9px}.match-lineup-side p{margin:0;padding:7px 0;display:grid;grid-template-columns:24px 75px 1fr auto;gap:7px;align-items:center;border-bottom:1px solid var(--line)}.match-player-flag{width:22px;height:15px}.match-lineup-side p>span{color:#7a869c;font-size:8px}.match-lineup-side p>b{font-size:10px}.match-lineup-side p>em{color:var(--blue);font-size:9px;font-style:normal;font-weight:900}.enter-match-button{display:block;margin:0 auto;padding:11px 28px;border:0;color:white;background:var(--blue);font-weight:900;cursor:pointer}.match-stats-summary{margin-top:14px;padding:12px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.06)}.match-stats-summary h4{margin:0 0 7px;color:var(--gold);font-size:11px}.match-stats-summary p{margin:0;padding:3px 0;display:grid;grid-template-columns:1fr 1fr 1fr;color:white;font-size:10px;text-align:center}.match-stats-summary p b:first-child{text-align:right}.match-stats-summary p b:last-child{text-align:left}.match-stats-summary p span{color:#93a2c9}.match-stats-summary>div{margin-top:8px;padding-top:8px;border-top:1px solid rgba(255,255,255,.14)}.match-stats-summary>div small,.match-stats-summary>div strong{display:block}.match-stats-summary>div small{color:#93a2c9;font-size:8px}.match-stats-summary>div strong{margin-top:3px;color:var(--gold);font-size:13px}
.pre-match-duels{grid-column:1/-1;padding:16px;border:1px solid #cfc7b6;background:#151d2e;color:white}.pre-match-duels header small{color:var(--gold);font-size:7px;letter-spacing:.16em}.pre-match-duels header h3{margin:3px 0 11px;font:700 19px Georgia,"Songti SC",serif}.pre-match-duels>div{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.pre-match-duels article{padding:9px;border-left:3px solid var(--gold);background:rgba(255,255,255,.07)}.pre-match-duels b,.pre-match-duels span,.pre-match-duels small{display:block}.pre-match-duels b{font-size:8px;color:#e5c86f}.pre-match-duels span{margin:4px 0;font-size:11px;font-weight:900}.pre-match-duels em{padding:0 4px;color:#91a1c9;font-size:7px;font-style:normal}.pre-match-duels small{color:#c8d0e3;font-size:8px;line-height:1.45}
.matchup-report{margin-top:10px;padding-top:10px;border-top:1px solid rgba(255,255,255,.16)}.matchup-report h4{margin-bottom:8px}.matchup-report article{padding:7px 9px;border-left:3px solid var(--blue);background:rgba(255,255,255,.06)}.matchup-report article+article{margin-top:6px;border-left-color:var(--red)}.matchup-report article b,.matchup-report article span{display:block}.matchup-report article b{color:white;font-size:10px}.matchup-report article span{margin-top:3px;color:#c7d0e9;font-size:9px;line-height:1.45}.matchup-report article span::before{content:"· ";color:var(--gold)}
@media(max-width:600px){
  .match-lineups-dialog{overflow:auto}.match-lineups-grid{height:auto;grid-template-columns:1fr}.match-lineup-side p{grid-template-columns:24px 66px 1fr auto}.pre-match-duels>div{grid-template-columns:1fr}.match-lineups-dialog>header h2{font-size:25px}.enter-match-button{position:sticky;bottom:0;width:100%}
}
@media(max-width:1000px){
  .admin-console{overflow:auto}.admin-console>header{position:sticky;top:0;z-index:2;height:76px;padding:15px 20px}.admin-console>header h2{font-size:24px}.admin-console-grid{height:auto;padding:14px;display:flex;flex-direction:column}.admin-console-grid>section{padding:14px;overflow:visible}.admin-section-title{flex-direction:column}.admin-clean-all{width:100%}
  .match-lineups-panel{order:-1;max-height:350px;overflow:hidden}.match-lineups-panel .match-lineups-grid{height:296px;grid-template-columns:1fr 1fr}.match-lineups-panel .match-lineup-side p{grid-template-columns:20px 48px minmax(0,1fr) auto}.match-live-copy{order:1}.match-event-feed{order:2}
}
@media(max-width:560px){
  .match-lineups-panel .match-lineups-grid{overflow-x:auto;grid-template-columns:repeat(2,minmax(280px,1fr))}.admin-table article{align-items:flex-start;flex-direction:column}.admin-user-actions,.admin-room-actions{width:100%;text-align:left}.admin-user-actions button,.admin-room-actions button{margin-left:0}

/* 独立注册审核 */
.registration-admin-page{min-height:100vh;background:#f3efe5}.registration-admin-topbar{height:76px;padding:0 clamp(18px,5vw,70px);display:flex;align-items:center;justify-content:space-between;color:white;background:#121827}.registration-admin-topbar>a{display:flex;align-items:center;gap:11px;color:white;text-decoration:none}.registration-admin-topbar>a>span{width:38px;height:38px;display:grid;place-items:center;color:#121827;background:#d8b85b;font:900 20px Georgia,serif}.registration-admin-topbar b,.registration-admin-topbar small{display:block}.registration-admin-topbar small{margin-top:3px;color:#929caf;font-size:7px;letter-spacing:.18em}.registration-admin-topbar nav{display:flex;gap:18px}.registration-admin-topbar nav a{color:#d7dbe4;font-size:9px;text-decoration:none}.registration-admin-shell{max-width:1120px;margin:auto;padding:45px 24px 80px}.registration-admin-heading{display:flex;align-items:end;justify-content:space-between}.registration-admin-heading p{margin:0;color:#9b7723;font-size:8px;font-weight:900;letter-spacing:.2em}.registration-admin-heading h1{margin:7px 0;font:700 42px Georgia,"Songti SC",serif}.registration-admin-heading span{color:#7c8492;font-size:9px}.registration-admin-heading button{padding:11px 16px;border:0;color:white;background:#202a40;cursor:pointer;font-weight:900}.registration-metrics{margin:25px 0 14px;display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.registration-metrics article{padding:18px;border:1px solid #d6d0c2;background:white}.registration-metrics span,.registration-metrics b{display:block}.registration-metrics span{color:#7c8492;font-size:8px}.registration-metrics b{margin-top:6px;font:700 27px Georgia,serif}.registration-toolbar{padding:11px;display:flex;justify-content:space-between;border:1px solid #d6d0c2;background:white}.registration-toolbar button{padding:8px 11px;border:1px solid #d6d0c2;color:#687184;background:white;cursor:pointer;font-size:8px}.registration-toolbar button.active{border-color:#202a40;color:white;background:#202a40}.registration-toolbar input{width:250px;padding:9px;border:1px solid #d6d0c2}.registration-list{margin-top:10px;border:1px solid #d6d0c2;background:white}.registration-list>p{padding:30px;text-align:center;color:#7c8492}.registration-list article{min-height:78px;padding:13px 16px;display:grid;grid-template-columns:42px minmax(220px,1fr) 90px auto;gap:12px;align-items:center;border-bottom:1px solid #e1ddd4}.registration-avatar{width:38px;height:38px;display:grid;place-items:center;color:#151a25;background:#d8b85b;font-weight:900}.registration-list b,.registration-list small{display:block}.registration-list small{margin-top:5px;color:#7c8492;font-size:8px}.registration-list i{padding:7px;text-align:center;font-size:8px;font-style:normal;font-weight:900}.registration-list i.pending{color:#45350d;background:#f1d985}.registration-list i.approved{color:#0d4229;background:#a8e5c7}.registration-list i.rejected{color:white;background:#a9414b}.registration-actions{display:flex;gap:6px}.registration-actions button{padding:8px 10px;border:1px solid #244fbd;color:#244fbd;background:white;cursor:pointer;font-size:8px;font-weight:900}.registration-actions button.danger{border-color:#a9414b;color:#a9414b}@media(max-width:650px){.registration-admin-topbar nav{display:none}.registration-admin-heading{align-items:flex-start;gap:18px;flex-direction:column}.registration-admin-heading button{width:100%}.registration-metrics{grid-template-columns:1fr 1fr 1fr}.registration-toolbar{gap:8px;flex-direction:column}.registration-toolbar>div{display:flex;overflow:auto}.registration-toolbar input{width:100%}.registration-list article{grid-template-columns:42px 1fr}.registration-list i,.registration-actions{grid-column:2}.registration-actions{flex-wrap:wrap}}
}

/* Keep the formation confirmation reachable with all 12 formations. */
.formation-lock{height:calc(100dvh - 96px);display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden}.formation-lock>.draft-formations{min-height:0;overflow:auto;overscroll-behavior:contain}.formation-lock>.lock-formation{position:relative;z-index:2;width:100%;min-height:48px;flex:none;box-shadow:0 -8px 20px rgba(7,20,63,.12)}

/* Single-screen match viewer: larger type, less page scrolling. */
.match-dialog{overflow:hidden}
.match-header{height:64px;padding:10px 30px}
.match-header h2{font-size:23px}
.match-scoreboard{height:96px;padding:7px max(32px,7vw)}
.match-team strong{margin-top:4px;font-size:clamp(21px,2.4vw,34px)}
.match-score{font-size:48px}
.match-timeline-panel{height:76px;padding:9px max(32px,6vw)}
.match-content{height:calc(100dvh - 300px);padding:10px 18px;grid-template-columns:minmax(230px,.72fr) minmax(420px,1.35fr) minmax(330px,1fr);gap:12px}
.match-live-copy>span{font-size:14px}
.match-live-copy h3{margin:9px 0 7px;font-size:clamp(24px,2.5vw,38px)}
.match-live-copy p{font-size:14px;line-height:1.5}
.match-event-column{padding:8px 10px}
.match-event-column h4{padding:8px;font-size:13px}
.match-event-feed article{grid-template-columns:42px 1fr;gap:10px;padding:12px 0}
.match-event-column.away article{grid-template-columns:1fr 42px}
.match-event-feed article>span{font-size:15px}
.match-event-feed b{font-size:13px}
.match-event-feed p{font-size:11px;line-height:1.5}
.match-lineups-panel .match-lineup-side p{padding:6px 0}
.match-lineups-panel .match-lineup-side p>span{font-size:8px}
.match-lineups-panel .match-lineup-side p>b{font-size:10px}
.match-lineups-panel .match-lineup-side p>em{font-size:10px}
.match-lineup-side footer{margin-top:8px;padding-top:7px;border-top:1px dashed var(--line)}.match-lineup-side footer strong{display:block;margin-bottom:4px;color:var(--green);font-size:9px}.match-lineup-side footer span{display:block;padding:2px 0;color:#59677d;font-size:8px;font-weight:800}
.match-controls{height:64px;padding:10px max(32px,6vw)}
.match-controls>span{font-size:12px}
.match-controls button{min-height:42px;font-size:12px}
.match-dialog.match-finished .match-content{display:block;padding:12px max(24px,8vw)}
.match-dialog.match-finished .match-live-copy{height:100%;display:block;overflow:auto}
.match-dialog.match-finished .match-event-feed,
.match-dialog.match-finished .match-lineups-panel{display:none}
.match-dialog.match-finished .match-live-copy h3{font-size:30px}
.match-dialog.match-finished .match-stats-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:16px}
.match-dialog.match-finished .match-stats-summary>h4,
.match-dialog.match-finished .match-stats-summary>p{grid-column:1/-1}
.match-dialog.match-finished .match-stats-summary h4{font-size:14px}
.match-dialog.match-finished .match-stats-summary p{font-size:12px}
.match-dialog.match-finished .match-stats-summary>div{margin:0;padding:10px}

@media(max-width:1000px){
  .match-dialog{overflow:hidden}
  .match-header{height:58px;padding:8px 14px}
  .match-scoreboard{height:86px;padding:8px 14px}
  .match-timeline-panel{position:static;height:70px;padding:8px 16px}
  .match-content{height:calc(100dvh - 276px);min-height:0;padding:8px 12px;display:grid;grid-template-columns:minmax(180px,.65fr) minmax(0,1.35fr);gap:9px}
  .match-live-copy{min-height:0;text-align:left}
  .match-live-copy h3{font-size:25px}
  .match-event-feed{max-height:none;height:100%;padding:5px;border-top:0}
  .match-lineups-panel{display:none}
  .match-controls{position:static;height:62px;padding:8px 12px;flex-wrap:nowrap}
  .match-controls>span{width:auto;margin-right:auto}
  .match-controls button{min-height:42px;flex:0 1 auto}
  .match-dialog.match-finished .match-content{display:block;height:calc(100dvh - 276px)}
}
@media(max-width:620px){
  .match-scoreboard{height:80px}
  .match-team strong{font-size:16px}
  .match-score{font-size:32px}
  .match-timeline-panel{height:66px}
  .match-content{height:calc(100dvh - 258px);display:block}
  .match-live-copy{height:92px;min-height:0}
  .match-live-copy h3{margin:4px 0;font-size:21px}
  .match-live-copy p{font-size:12px}
  .match-event-feed{height:calc(100% - 98px)}
  .match-controls{height:54px}
  .match-controls>span{display:none}
  .match-controls button{padding:8px 10px;font-size:11px}
  .match-dialog.match-finished .match-content{height:calc(100dvh - 258px)}
  .match-dialog.match-finished .match-live-copy{height:100%}
  .match-dialog.match-finished .match-stats-summary{grid-template-columns:1fr}
  .match-dialog.match-finished .match-stats-summary>*{grid-column:1!important}
}

.penalty-arena[hidden]{display:none}
.penalty-arena{position:absolute;inset:64px 0 64px;z-index:8;padding:28px clamp(24px,8vw,120px);display:flex;align-items:center;flex-direction:column;color:white;background:radial-gradient(circle at 50% 35%,rgba(216,184,91,.2),transparent 30%),linear-gradient(135deg,#07152c,#111c35 55%,#07152c)}
.penalty-arena>h3{margin:4px 0 14px;font:700 clamp(30px,4vw,54px) Georgia,"Songti SC",serif}
.penalty-arena-score{width:min(900px,100%);display:grid;grid-template-columns:1fr auto 1fr;gap:24px;align-items:center}
.penalty-arena-score article{display:flex;align-items:center;justify-content:flex-end;gap:24px}.penalty-arena-score article.away{justify-content:flex-start}.penalty-arena-score span{max-width:280px;font-size:20px;font-weight:900}.penalty-arena-score strong{font:700 68px Georgia,serif}.penalty-arena-score i{color:var(--gold);font:700 38px Georgia,serif}
.penalty-kick-focus{width:min(720px,100%);min-height:145px;margin:18px 0;padding:24px;display:flex;align-items:center;justify-content:center;flex-direction:column;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.06);text-align:center;transition:.25s}.penalty-kick-focus small{color:var(--gold);font-size:11px}.penalty-kick-focus b{margin:10px 0 7px;font:700 30px Georgia,"Songti SC",serif}.penalty-kick-focus span{color:#bbc7e5;font-size:14px}.penalty-kick-focus.pending{box-shadow:0 0 0 3px rgba(216,184,91,.12)}.penalty-kick-focus.scored{border-color:#36d58d;background:rgba(25,164,103,.16)}.penalty-kick-focus.missed{border-color:#ff6570;background:rgba(210,43,57,.16)}
.penalty-rounds{width:min(900px,100%);display:grid;grid-template-columns:1fr 1fr;gap:30px}.penalty-rounds>div{padding:13px 16px;border-top:2px solid var(--blue)}.penalty-rounds>div.away{border-color:var(--red);text-align:right}.penalty-rounds b{font-size:13px}.penalty-rounds>div>div{min-height:42px;margin-top:10px;display:flex;gap:8px}.penalty-rounds .away>div{justify-content:flex-end}.penalty-rounds i{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;font-size:20px;font-style:normal;font-weight:900}.penalty-rounds i.pending{color:#8393bc;border:1px dashed #8393bc}.penalty-rounds i.scored{color:#09271d;background:#3ed99a}.penalty-rounds i.missed{color:white;background:#db3847}
.match-dialog.penalty-active>.match-scoreboard,.match-dialog.penalty-active>.match-timeline-panel,.match-dialog.penalty-active>.match-content{visibility:hidden}
@media(max-width:620px){.penalty-arena{inset:58px 0 54px;padding:24px 16px}.penalty-arena-score{gap:10px}.penalty-arena-score article{gap:10px}.penalty-arena-score span{font-size:14px}.penalty-arena-score strong{font-size:48px}.penalty-kick-focus{min-height:132px;margin:14px 0;padding:18px}.penalty-kick-focus b{font-size:25px}.penalty-rounds{gap:10px}.penalty-rounds>div{padding:10px 4px}.penalty-rounds i{width:30px;height:30px;font-size:16px}}

/* v73 点球记录按球队分行并自动换行，超长骤死不再横向溢出。 */
.penalty-rounds{grid-template-columns:1fr;gap:12px}.penalty-rounds>div,.penalty-rounds>div.away{text-align:left}.penalty-rounds>div>div,.penalty-rounds .away>div{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:8px}
@media(max-width:620px){.penalty-arena{overflow-y:auto}.penalty-rounds{gap:8px}.penalty-rounds>div>div,.penalty-rounds .away>div{gap:6px}.penalty-rounds i{flex:0 0 30px}}
@media(min-width:1001px){
  .formation-lock{height:calc(100dvh - 64px)}.formation-lock>.draft-formations{grid-template-columns:repeat(4,minmax(0,1fr));padding:2px 5px 12px 2px}.formation-lock>.lock-formation{min-height:44px}
}
@media(max-width:1000px){
  .formation-lock{height:calc(100dvh - 73px);padding-bottom:max(14px,env(safe-area-inset-bottom))}.formation-lock>.draft-formations{padding:2px 5px 12px 2px}.formation-lock>.lock-formation{position:sticky;bottom:0}
}

.tournament-history-dialog{width:min(920px,92vw);max-height:86vh;padding:28px;border:0;color:var(--ink);background:var(--cream);box-shadow:0 28px 90px rgba(4,18,52,.38)}.tournament-history-dialog::backdrop{background:rgba(4,18,52,.72)}.tournament-history-dialog>header{padding:0 46px 20px 0;border-bottom:2px solid var(--ink)}.tournament-history-dialog>header h2{font-size:32px}.tournament-history-dialog>header>p:last-child{margin-top:7px;color:#667085;font-size:11px}.tournament-history-list{margin-top:14px;display:grid;gap:9px}.tournament-history-list article{padding:13px 15px;display:grid;grid-template-columns:1fr minmax(300px,1.5fr) auto auto;gap:14px;align-items:center;border:1px solid var(--line);background:white}.tournament-history-list article>div span,.tournament-history-list article>div small{display:block}.tournament-history-list article>div span{font-weight:900}.tournament-history-list article>div small{margin-top:4px;color:#667085;font-size:8px}.tournament-history-list article>p{display:grid;grid-template-columns:1fr auto 1fr;gap:10px;align-items:center;text-align:center}.tournament-history-list article>p b:first-child{text-align:right}.tournament-history-list article>p b:last-child{text-align:left}.tournament-history-list article>p strong{color:var(--blue);font:700 22px Georgia,serif}.tournament-history-list article>small{color:var(--red);font-weight:900}.tournament-history-list article>button{padding:9px 12px;border:0;color:white;background:var(--blue);font-weight:900}.history-empty{padding:35px;text-align:center;color:#667085;background:white}
.account-archives{margin:14px 0;max-height:190px;overflow:auto}.account-archives h4{position:sticky;top:0;z-index:1;padding:5px 0;background:var(--cream)}.account-archives article{padding:8px 0;display:grid;grid-template-columns:1fr auto auto;gap:8px;align-items:center;border-bottom:1px solid var(--line)}.account-archives article div b,.account-archives article div small{display:block}.account-archives article div small{margin-top:3px;color:#778198;font-size:8px}.account-archives article>span{font-size:8px;font-weight:900}.account-archives article>button{padding:6px 8px;border:0;color:white;background:var(--blue);font-size:8px;font-weight:900}
@media(max-width:600px){
  .tournament-history-dialog{width:100vw;max-width:none;height:100vh;max-height:none;margin:0;padding:22px 16px}.tournament-history-list article{grid-template-columns:1fr auto;gap:9px}.tournament-history-list article>div{grid-column:1/-1}.tournament-history-list article>p{grid-column:1/-1;grid-row:2}.tournament-history-list article>small{grid-column:1}.tournament-history-list article>button{grid-column:2}
}

/* Keep every knockout round reachable with a mouse wheel or touch gesture. */
.knockout-board{height:calc(100dvh - 170px);min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable}
@media(max-width:1000px){
  .tournament-summary>div{flex-wrap:wrap}
  .knockout-board{height:calc(100dvh - 210px);overflow:auto}
}
.tournament-summary #tournament-progress-status{display:inline-block;margin-left:10px;color:var(--red);font-size:10px;font-weight:900}
.tournament-leaders{padding:18px 30px;background:var(--cream);border-top:1px solid var(--line)}
.tournament-leaders>h3{margin-bottom:12px;font-size:18px}
#tournament-leader-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.leader-stat{padding:12px;background:white;border:1px solid var(--line)}
.leader-stat h4{margin-bottom:8px;color:var(--blue);font-size:12px}
.leader-stat p{padding:5px 0;display:grid;grid-template-columns:20px 1fr auto;gap:6px;border-top:1px solid #edf0f6;font-size:9px}
.leader-stat p small{color:#7b8498}.leader-stat p strong{color:var(--red)}
@media(max-width:700px){
  #tournament-leader-grid{grid-template-columns:1fr 1fr}
  .tournament-leaders{padding:14px}
}

/* Readability and result-page scrolling */
.hero .eyebrow{font-size:13px}.hero .intro{font-size:18px}
.hero .button{font-size:15px}.hero .phase{font-size:13px}.hero .phase b{font-size:14px}
.home-ranking-copy>p:not(.eyebrow){font-size:13px;line-height:1.7}
.scoring-rules span{font-size:11px}.scoring-rules small{font-size:10px}
.home-leaderboard-list b{font-size:14px}.home-leaderboard-list small{font-size:11px}
.nation p{font-size:12px}.nation-open{font-size:11px}
.tournament-dialog{overflow:hidden}
.tournament-results{height:calc(100dvh - 170px);min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-gutter:stable}
.result-content{align-items:start}
.result-content h3{font-size:21px}
.final-ranking-list article{min-height:68px;padding:11px 12px}
.final-ranking-list b{font-size:15px}.final-ranking-list small{font-size:11px}
.final-ranking-list article>span{font-size:11px}.final-ranking-list article>em{font-size:14px}
.personal-report h3{font-size:20px}.report-rank span{font-size:12px}
.personal-report dt{font-size:10px}.report-player small{font-size:10px}
.report-player b{font-size:17px}.report-player span,.report-player p{font-size:11px}
.tournament-leaders{max-width:1120px;margin:0 auto 40px}
.champion-route{max-width:1120px;margin:-18px auto 18px;padding:20px 28px;border:1px solid var(--line);background:white;box-shadow:6px 6px 0 rgba(36,87,245,.12)}.champion-route>div:first-child h3{font-size:22px}.champion-route-summary{margin:12px 0;display:flex;gap:8px;flex-wrap:wrap}.champion-route-summary b,.champion-route-summary span{padding:7px 10px;background:#eef2ff;color:var(--blue);font-size:10px}.champion-route-matches{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.champion-route-matches article{padding:10px;border-left:3px solid var(--gold);background:#f7f8fc}.champion-route-matches small,.champion-route-matches b,.champion-route-matches span{display:block}.champion-route-matches small{color:var(--blue);font-size:8px}.champion-route-matches b{margin:4px 0;font-size:11px}.champion-route-matches span{color:#7b859b;font-size:8px}
.leader-stat h4{font-size:15px}.leader-stat p{font-size:12px}.leader-stat p small{font-size:10px}
.leader-player-name{display:flex;align-items:center;gap:7px}.leader-player-name>span:last-child{min-width:0}.leader-player-flag{flex:0 0 auto;width:25px;height:17px}
.best-xi-section{max-width:1120px;margin:0 auto 18px;padding:22px 30px;background:white;border:1px solid var(--line)}
.final-lineups-section{max-width:1120px;margin:0 auto 18px;padding:22px 30px;border:1px solid var(--line);background:white}.final-lineups-heading{margin-bottom:14px;display:flex;align-items:center;justify-content:space-between;gap:16px}.final-lineups-heading h3{font-size:22px}.final-lineups-heading button{padding:10px 14px;border:0;color:white;background:var(--blue);cursor:pointer;font-weight:900}.my-final-lineup-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.my-final-lineup-grid article{padding:9px;display:grid;grid-template-columns:22px 34px minmax(0,1fr) auto;gap:6px;align-items:center;border:1px solid var(--line);background:#f7f8fc}.my-final-lineup-grid article b{overflow:hidden;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.my-final-lineup-grid article span,.my-final-lineup-grid article small{font-size:8px}.my-final-lineup-grid article span{color:var(--blue);font-weight:900}.my-final-lineup-grid article small{grid-column:3;color:#7c879c}.my-final-lineup-grid article strong{grid-column:4;grid-row:1/3;color:var(--green);font-size:14px}
#tournament-progress-status.confirmation-required{padding:7px 10px;color:white;background:var(--red);font-weight:900}#start-group-matches.confirmation-required{background:var(--red);box-shadow:4px 4px 0 var(--gold);animation:confirmPulse 1.2s ease-in-out infinite alternate}@keyframes confirmPulse{to{transform:translateY(-2px);filter:brightness(1.12)}}
.best-xi-section>h3{font-size:22px}.best-xi-section>p{margin:5px 0 14px;color:#778198;font-size:11px}
#best-xi-grid,#player-best-xi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
#best-xi-grid article,#player-best-xi-grid article{min-width:0;padding:10px;display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:8px;align-items:center;border:1px solid var(--line);background:#f7f8fc}
.best-xi-flag{width:27px;height:18px}.best-xi-section small,.best-xi-section b,.best-xi-section span{display:block}
.best-xi-section small{color:var(--blue);font-size:9px}.best-xi-section b{margin-top:3px;overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.best-xi-section span{margin-top:3px;color:#7b859b;font-size:9px}.best-xi-section article>strong{color:var(--green);font-size:13px}
.match-event-feed .event-penalty{transition:background .25s ease,border-color .25s ease}.match-event-feed .penalty-pending{opacity:.72}.match-event-feed .penalty-scored{background:rgba(21,173,104,.16);border-left:3px solid #22c878}.match-event-feed .penalty-scored b{color:#45e394}.match-event-feed .penalty-missed{background:rgba(242,59,67,.16);border-left:3px solid #f23b43}.match-event-feed .penalty-missed b{color:#ff6670}
@media (max-width:900px){.match-strategy-picker{padding:14px 20px;display:block}.match-strategy-picker>div:last-child{margin-top:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.match-strategy-picker button{min-height:62px}}
@media(max-width:1000px){
  .tournament-results{height:calc(100dvh - 210px);min-height:0;overflow-y:auto}
  .champion-route{margin:-18px 14px 18px}.champion-route-matches{grid-template-columns:repeat(2,minmax(0,1fr))}
  #best-xi-grid,#player-best-xi-grid{grid-template-columns:repeat(2,1fr)}.best-xi-section{margin:0 14px 18px;padding:16px}
  .final-lineups-section{margin:0 14px 18px;padding:16px}.my-final-lineup-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:480px){
  .hero .intro{font-size:16px}
  #tournament-leader-grid{grid-template-columns:1fr}
  .final-ranking-list article{grid-template-columns:32px minmax(0,1fr) auto}
  .final-ranking-list article>em{font-size:13px}
  #best-xi-grid,#player-best-xi-grid{grid-template-columns:1fr}
  .my-final-lineup-grid{grid-template-columns:1fr}.final-lineups-heading{align-items:flex-start;flex-direction:column}
}

/* Private mind arena access */
.mind-arena-entry[hidden],.sanguosha-entry[hidden],.admin-approval-link[hidden]{display:none}
.mind-arena-entry{position:relative;margin:34px clamp(24px,7vw,110px);padding:30px 34px;display:grid;grid-template-columns:150px minmax(0,1fr) auto;gap:28px;align-items:center;overflow:hidden;color:white;background:radial-gradient(circle at 85% 20%,rgba(214,44,56,.34),transparent 34%),linear-gradient(125deg,#090d18,#171629 58%,#271017);box-shadow:10px 10px 0 #b59245}.mind-arena-entry::after{content:"MENTAL GAME";position:absolute;right:-12px;bottom:-19px;color:rgba(255,255,255,.035);font:900 58px Georgia,serif;letter-spacing:.08em}.mind-arena-symbol{position:relative;z-index:1;height:112px;display:grid;grid-template-columns:1fr 1fr;place-items:center;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.05);transform:rotate(-2deg)}.mind-arena-symbol span{font:700 34px Georgia,serif}.mind-arena-symbol span:nth-child(2),.mind-arena-symbol span:nth-child(3){color:#e24b55}.mind-arena-copy,.mind-arena-action{position:relative;z-index:1}.mind-arena-copy h2{margin-top:4px;font-size:38px}.mind-arena-copy>p:last-of-type{max-width:610px;margin-top:9px;color:#c9c9d2;font-size:12px;line-height:1.7}.mind-arena-tags{margin-top:14px;display:flex;gap:7px;flex-wrap:wrap}.mind-arena-tags span{padding:5px 8px;border:1px solid rgba(255,255,255,.18);color:#d7c286;font-size:8px;font-weight:900}.mind-arena-action{min-width:160px;text-align:right}.mind-arena-action>span{display:block;margin-bottom:9px;color:#b8b8c4;font-size:9px}.mind-arena-action button{min-width:150px;padding:13px 16px;border:0;color:#11131c;background:#d7bc73;cursor:pointer;font-weight:900}.mind-arena-action button:disabled{cursor:default;opacity:.55}.mind-access-dialog{width:min(610px,92vw);padding:34px;border:0;color:var(--ink);background:var(--cream);box-shadow:0 28px 90px rgba(4,18,52,.4)}.mind-access-dialog::backdrop{background:rgba(4,10,25,.78)}.mind-access-dialog>.dialog-close{position:absolute;right:18px;top:18px}.mind-access-dialog h2{margin-top:5px;font-size:32px}.mind-access-lead{margin:10px 0 18px;color:#68738a;font-size:11px;line-height:1.7}.mind-access-rules{padding:16px 18px;border-left:4px solid #b59245;background:white}.mind-access-rules strong{font-size:12px}.mind-access-rules ul{margin:9px 0 0;padding-left:18px;color:#58637a;font-size:10px;line-height:1.75}.mind-note{margin-top:18px;display:block}.mind-note>span{display:flex;justify-content:space-between;font-size:10px;font-weight:900}.mind-note small{color:#8c94a5;font-weight:400}.mind-note textarea{width:100%;min-height:76px;margin-top:7px;padding:11px;resize:vertical;border:1px solid var(--line);background:white;font:inherit}.mind-check{margin-top:11px;display:flex;gap:9px;align-items:flex-start;font-size:10px;line-height:1.5}.mind-check input{margin-top:2px}.mind-access-submit{width:100%;margin-top:14px;padding:13px;border:0;color:white;background:var(--ink);cursor:pointer;font-weight:900}.admin-approval-link{display:block;text-align:center;text-decoration:none;background:#8b681c}
@media(max-width:1000px){.mind-arena-entry{grid-template-columns:100px 1fr}.mind-arena-symbol{height:90px}.mind-arena-action{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;text-align:left}.mind-arena-action>span{margin:0}}
@media(max-width:480px){.mind-arena-entry{margin-left:14px;margin-right:14px;padding:24px 20px;grid-template-columns:1fr}.mind-arena-symbol{display:none}.mind-arena-copy h2{font-size:31px}.mind-arena-action{display:block}.mind-arena-action>span{margin-bottom:9px}.mind-arena-action button{width:100%}.mind-access-dialog{width:100vw;max-width:none;height:100vh;max-height:none;margin:0;padding:28px 20px}}
.mind-arena-symbol{display:flex;align-items:center;justify-content:center;gap:6px;background:linear-gradient(135deg,rgba(127,196,255,.13),rgba(255,91,52,.12));clip-path:polygon(50% 0,92% 18%,86% 73%,50% 100%,14% 73%,8% 18%)}.mind-arena-symbol span{position:relative;z-index:2;font:700 31px Georgia,serif}.mind-arena-symbol .ice-rune{color:#9ed9ff;text-shadow:0 0 16px #5ebfff}.mind-arena-symbol .fire-rune{color:#ff8a59;text-shadow:0 0 16px #f44}.mind-arena-symbol i{width:2px;height:58px;display:block;background:linear-gradient(#9ed9ff,#fff,#ff8055);transform:rotate(18deg)}
.mind-arena-entry{border:2px solid #705728;background:radial-gradient(circle at 18% 0,rgba(44,111,145,.35),transparent 28%),radial-gradient(circle at 88% 100%,rgba(151,33,23,.32),transparent 34%),linear-gradient(125deg,#111419,#252019 58%,#17100d);box-shadow:0 0 0 4px #1c1710,0 0 0 6px #8c6b2f,12px 12px 0 rgba(26,17,9,.35)}.mind-arena-entry::before{content:"";position:absolute;inset:7px;pointer-events:none;border:1px solid rgba(224,181,88,.23)}.mind-arena-entry::after{content:"HALL OF GLORY";color:rgba(224,181,88,.05)}.mind-arena-symbol{gap:0;border:2px solid #a78236;background:radial-gradient(circle,#61491f,#1e1a14 62%,#0b0d10);clip-path:polygon(50% 0,92% 18%,86% 73%,50% 100%,14% 73%,8% 18%);filter:drop-shadow(0 8px 9px rgba(0,0,0,.55))}.mind-arena-symbol b{position:relative;z-index:3;color:#f1cc69;font:900 36px Georgia,serif;text-shadow:0 2px #4a2d09,0 0 13px #d28b28}.mind-arena-symbol .crest-wing{color:#a77d30;font-size:27px;text-shadow:0 2px #211508}.mind-arena-symbol i{position:absolute;width:68px;height:68px;border:1px solid rgba(233,188,80,.35);background:transparent;transform:rotate(45deg)}.mind-arena-tags span{border-color:#715924;color:#e0ba5b;background:rgba(0,0,0,.2)}.mind-arena-action button{border:1px solid #f0c866;color:#241707;background:linear-gradient(#e1bb58,#9c7124);box-shadow:inset 0 0 0 2px #6a4615,0 3px 0 #3c250b;text-transform:uppercase}
.arena-rune-band{position:absolute;left:185px;right:215px;top:10px;z-index:1;overflow:hidden;color:rgba(225,184,85,.22);font:700 10px Georgia,serif;letter-spacing:.8em;text-align:center;white-space:nowrap}.mind-arena-symbol small{position:absolute;z-index:3;bottom:21px;color:#c69a43;font:700 6px Georgia,serif;letter-spacing:.22em}.arena-title-line{display:flex;align-items:center;gap:12px}.arena-title-line>span{padding:5px 8px;border-left:2px solid #b68d3d;color:#d3b165;background:rgba(0,0,0,.28);font-size:8px;font-weight:900;letter-spacing:.12em}.mind-arena-tags span{display:flex;align-items:center;gap:5px}.mind-arena-tags i{color:#f4ce69;font-size:11px;font-style:normal}.mind-arena-action{padding:17px 0 17px 22px;border-left:1px solid rgba(212,169,74,.25)}.mind-arena-action>small{display:block;margin-bottom:7px;color:#8f7136;font-size:7px;font-weight:900;letter-spacing:.13em}.mind-arena-action>span{max-width:205px;line-height:1.5}.mind-arena-action button{position:relative;overflow:hidden;letter-spacing:.06em}.mind-arena-action button::after{content:"";position:absolute;inset:3px;border:1px solid rgba(255,239,176,.35);pointer-events:none}.arena-corner{position:absolute;width:25px;height:25px;border-color:#b78b37}.arena-corner.top-left{left:4px;top:4px;border-left:4px solid;border-top:4px solid}.arena-corner.bottom-right{right:4px;bottom:4px;border-right:4px solid;border-bottom:4px solid}@media(max-width:1000px){.arena-rune-band{left:125px;right:20px}.mind-arena-action{padding-left:0;border-left:0;border-top:1px solid rgba(212,169,74,.2);padding-top:14px}.mind-arena-action>small{display:none}}@media(max-width:480px){.arena-rune-band{left:20px;right:20px}.arena-title-line{align-items:flex-start;flex-direction:column;gap:5px}.arena-title-line>span{font-size:7px}.mind-arena-copy{padding-top:8px}}
.mind-arena-entry{min-height:246px!important;padding:48px 42px 44px!important;grid-template-columns:190px minmax(0,1fr) 235px!important;gap:38px!important;background:linear-gradient(90deg,rgba(7,22,31,.94),rgba(28,24,18,.9) 48%,rgba(45,12,10,.92)),radial-gradient(circle at 14% 48%,rgba(42,148,201,.42),transparent 28%),radial-gradient(circle at 88% 50%,rgba(204,55,31,.38),transparent 27%)!important;box-shadow:0 0 0 5px #17110a,0 0 0 8px #9b752f,0 18px 36px rgba(14,8,3,.38)!important}.mind-arena-entry::after{right:24px!important;bottom:-9px!important;font-size:76px!important}.mind-arena-entry .mind-arena-symbol{width:172px;height:172px!important;justify-self:center;border-width:3px}.mind-arena-entry .mind-arena-symbol b{font-size:52px}.mind-arena-entry .mind-arena-symbol .crest-wing{font-size:36px}.mind-arena-entry .mind-arena-symbol i{width:94px;height:94px}.mind-arena-entry .mind-arena-copy h2{font-size:49px;line-height:1}.mind-arena-entry .mind-arena-copy>p:last-of-type{max-width:680px;font-size:13px}.mind-arena-entry .mind-arena-tags span{padding:8px 11px;font-size:9px}.mind-arena-entry .mind-arena-action{padding:24px 0 24px 25px}.mind-arena-entry .mind-arena-action button{width:100%;min-height:49px;font-size:11px}.arena-banner-title{position:absolute;left:50%;top:-17px;z-index:4;min-width:220px;padding:8px 25px 7px;color:#f4d683;background:linear-gradient(#6f5120,#33230e);border:2px solid #b88a37;box-shadow:inset 0 0 0 2px #251708,0 5px 10px rgba(0,0,0,.35);text-align:center;transform:translateX(-50%)}.arena-banner-title span,.arena-banner-title small{display:block}.arena-banner-title span{font:900 14px Georgia,"Songti SC",serif;letter-spacing:.18em}.arena-banner-title small{margin-top:3px;color:#aa8a4c;font-size:6px;letter-spacing:.25em}.arena-flavor{position:absolute;left:235px;right:42px;bottom:12px;z-index:2;display:flex;align-items:center;gap:10px;color:#8f743d;font-size:7px;letter-spacing:.12em}.arena-flavor i{height:1px;flex:1;background:linear-gradient(90deg,#6b5228,transparent)}.arena-flavor b{font:700 7px Georgia,serif;letter-spacing:.2em}@media(max-width:1000px){.mind-arena-entry{min-height:0!important;padding:46px 30px 34px!important;grid-template-columns:130px 1fr!important}.mind-arena-entry .mind-arena-symbol{width:122px;height:122px!important}.mind-arena-entry .mind-arena-copy h2{font-size:40px}.mind-arena-entry .mind-arena-action{grid-column:1/-1}.arena-flavor{left:30px;right:30px;bottom:7px}}@media(max-width:480px){.mind-arena-entry{padding:45px 22px 30px!important;grid-template-columns:1fr!important}.arena-banner-title{min-width:190px}.arena-flavor{display:none}.mind-arena-entry .mind-arena-copy h2{font-size:36px}.mind-arena-entry .mind-arena-tags span{padding:7px 8px}}
.mind-arena-entry{overflow:visible!important}.mind-arena-entry .mind-arena-symbol{border:0!important;background:transparent!important;clip-path:none!important;filter:none!important;transform:none!important}.mind-arena-symbol img{position:relative;z-index:3;width:190px;height:190px;display:block;object-fit:contain;filter:drop-shadow(0 0 12px rgba(226,174,61,.34)) drop-shadow(0 14px 12px rgba(0,0,0,.62))}.arena-banner-title{top:-21px}.arena-rune-band{top:23px}@media(max-width:1000px){.mind-arena-symbol img{width:138px;height:138px}}@media(max-width:480px){.mind-arena-entry .mind-arena-symbol{display:block!important;width:104px!important;height:104px!important;margin:-4px auto -5px}.mind-arena-symbol img{width:112px;height:112px}.arena-banner-title{top:-19px}}

/* 独立的“信義”登录门厅：未登录时不露出任何游戏页面内容。 */
.auth-required>main,.auth-required>.topbar{display:none}.auth-dialog{inset:0;width:100vw;height:100vh;max-width:none;max-height:none;margin:0;padding:0;overflow:hidden;border:0;background:#f4f0e7;box-shadow:none}.auth-dialog::backdrop{background:#0b1815}.auth-dialog[open]{display:grid;grid-template-columns:minmax(420px,1.15fr) minmax(440px,.85fr)}.auth-dialog .auth-close{right:24px;top:20px;z-index:5}
.auth-welcome-banner{position:relative;min-height:100vh;margin:0;padding:clamp(55px,8vh,100px) clamp(48px,7vw,110px);overflow:hidden;color:#f7f1df;background:radial-gradient(circle at 14% 18%,rgba(199,157,75,.2),transparent 25%),linear-gradient(145deg,rgba(8,38,31,.96),rgba(8,25,23,.98)),repeating-linear-gradient(90deg,transparent 0 79px,rgba(255,255,255,.025) 80px)}.auth-welcome-banner::before{content:"義";position:absolute;right:-.08em;bottom:-.28em;color:rgba(224,193,126,.045);font:900 min(55vw,680px)/1 "Songti SC","STSong",serif}.auth-welcome-banner::after{content:"";position:absolute;inset:22px;border:1px solid rgba(224,193,126,.18);pointer-events:none}
.xinyi-seal{position:relative;z-index:1;width:68px;height:68px;padding:7px;display:grid;grid-template-columns:1fr 1fr;gap:3px;border:2px solid #c9a55f;color:#e1c27c;font:700 19px/1 "Songti SC","STSong",serif;transform:rotate(-2deg)}.xinyi-seal span{display:grid;place-items:center;border:1px solid rgba(225,194,124,.45)}.xinyi-edition{position:relative;z-index:1;margin-top:clamp(55px,10vh,120px);color:#c9a55f;font-size:9px;font-weight:900;letter-spacing:.32em}
.auth-welcome-banner>strong{position:relative;z-index:1;margin-top:10px;color:#f8f0dc;font:700 clamp(64px,8vw,118px)/1 "Songti SC","STSong",serif;letter-spacing:.12em}.auth-welcome-banner h1{position:relative;z-index:1;margin-top:18px;font:500 clamp(21px,2.3vw,34px)/1.4 "Songti SC","STSong",serif;letter-spacing:.14em}.auth-welcome-banner blockquote{position:relative;z-index:1;margin:clamp(30px,5vh,55px) 0 0;padding-left:22px;border-left:2px solid #b99551;color:#d8d1c0;font:400 clamp(15px,1.25vw,19px)/2 "Songti SC","STSong",serif}.xinyi-welcome-copy{position:relative;z-index:1;margin-top:25px;color:#9eaaa3;font-size:11px;line-height:2}.auth-welcome-banner footer{position:absolute;left:clamp(48px,7vw,110px);right:clamp(48px,7vw,110px);bottom:50px;z-index:1;display:flex;align-items:center;gap:14px;color:#b79a60;font-size:9px;letter-spacing:.18em}.auth-welcome-banner footer i{height:1px;flex:1;background:linear-gradient(90deg,#9e7c3e,transparent)}
.auth-entry-panel{height:100vh;padding:clamp(45px,9vh,100px) clamp(44px,6vw,86px) 35px;overflow:auto;display:flex;flex-direction:column;justify-content:center;background:#f4f0e7}.auth-entry-panel .auth-brand{margin-bottom:clamp(35px,6vh,65px)}.auth-entry-panel .auth-brand span{border-radius:3px;color:#f2e4bd;background:#143e34}.auth-entry-panel .auth-brand b{font-size:13px}.auth-entry-panel .auth-brand small{display:block;margin-top:4px;color:#9a907e;font-size:7px;letter-spacing:.18em}.auth-entry-panel .auth-copy h2{font:700 34px/1.2 "Songti SC","STSong",serif}.auth-entry-panel .auth-copy>p:last-child{margin-top:10px;color:#7e796f;font-size:10px}.private-test-notice-auth{width:100%;margin:18px 0 22px;padding:9px 12px 9px 9px;border:1px solid #d8c9a7;color:#67583a;background:#eee5d1}.private-test-notice-auth span{color:#f7eac8;background:#143e34}.private-test-notice-auth small{margin-left:auto}.auth-entry-panel .auth-tabs button.active{color:#123c32;border-bottom-color:#b48a42}.auth-entry-panel .auth-form input{background:#fffdf8}.auth-entry-panel .auth-submit{background:#143e34;box-shadow:5px 5px 0 #c6a45e}.auth-entry-footnote{margin-top:24px;color:#a59d8f;font-size:8px;text-align:center}
@media(max-width:820px){.auth-dialog[open]{display:block;overflow:auto;background:#f4f0e7}.auth-welcome-banner{min-height:310px;padding:36px 27px 35px}.auth-welcome-banner::after{inset:12px}.xinyi-seal{width:52px;height:52px;font-size:15px}.xinyi-edition{margin-top:28px}.auth-welcome-banner>strong{font-size:54px}.auth-welcome-banner h1{margin-top:10px;font-size:19px}.auth-welcome-banner blockquote{margin-top:22px;font-size:13px;line-height:1.8}.xinyi-welcome-copy,.auth-welcome-banner footer{display:none}.auth-entry-panel{height:auto;min-height:calc(100vh - 310px);padding:34px 27px 32px;display:block}.auth-entry-panel .auth-brand{margin-bottom:30px}.auth-entry-panel .auth-copy h2{font-size:28px}}

.activity-metrics{grid-template-columns:repeat(5,1fr)}.activity-tabs{margin-top:22px;display:flex;gap:8px;align-items:center}.activity-tabs button{padding:10px 16px;border:1px solid var(--line);background:white;cursor:pointer;font-weight:900}.activity-tabs button.active{color:white;border-color:#143e34;background:#143e34}.activity-tabs input{min-width:260px;margin-left:auto;padding:11px 13px;border:1px solid var(--line);background:white}.activity-table{margin-top:14px;border:1px solid var(--line);background:white}.activity-table header,.activity-table article{padding:12px 15px;display:grid;grid-template-columns:1.2fr .75fr .75fr 1.2fr .5fr;gap:12px;align-items:center}.activity-table header{color:#778277;background:#edf1eb;font-size:9px;font-weight:900}.activity-table article{min-height:64px;border-top:1px solid var(--line);font-size:10px}.activity-table b,.activity-table small{display:block}.activity-table small{margin-top:4px;color:#8a948b;font-size:8px}.activity-table strong{color:#143e34}.activity-table i{padding:6px 8px;color:#7b827e;background:#e8ebe9;font-size:8px;font-style:normal;font-weight:900;text-align:center}.activity-table i.online{color:white;background:#16805f}
@media(max-width:800px){.activity-metrics{grid-template-columns:repeat(2,1fr)}.activity-tabs{align-items:stretch;flex-wrap:wrap}.activity-tabs input{width:100%;min-width:0;margin-left:0}.activity-table{overflow:auto}.activity-table header,.activity-table article{min-width:760px}}

/* 信義管理中心：与学习平台登录门厅保持同一视觉语言。 */
.registration-admin-page{--admin-green:#103c32;--admin-deep:#0a2721;--admin-gold:#bd9550;--admin-paper:#f5f1e7;--admin-line:#d9d1bf;min-height:100vh;color:#172720;background:radial-gradient(circle at 8% 0,rgba(189,149,80,.11),transparent 25%),linear-gradient(180deg,#eee8da 0 240px,var(--admin-paper) 240px)}
.registration-admin-topbar{height:88px;padding:0 clamp(24px,5vw,76px);background:linear-gradient(105deg,var(--admin-deep),#12483b);box-shadow:0 8px 30px rgba(8,35,29,.16)}
.registration-admin-topbar>a>span{width:44px;height:44px;border:1px solid #e0c27f;color:#f0d79d;background:transparent;font:700 21px "Songti SC","STSong",serif;box-shadow:inset 0 0 0 4px rgba(224,194,127,.08)}
.registration-admin-topbar b{font:700 15px "Songti SC","STSong",serif;letter-spacing:.08em}.registration-admin-topbar small{color:#9eb8ae;letter-spacing:.22em}.registration-admin-topbar nav{height:100%;gap:6px;align-items:center}.registration-admin-topbar nav a{position:relative;padding:12px 15px;color:#c9d8d2;font-size:10px;font-weight:800}.registration-admin-topbar nav a:hover,.registration-admin-topbar nav a.active{color:#f4dfa9}.registration-admin-topbar nav a.active::after{content:"";position:absolute;left:15px;right:15px;bottom:1px;height:2px;background:var(--admin-gold)}
.registration-admin-shell{max-width:1240px;padding:54px 30px 90px}.registration-admin-heading{position:relative;min-height:150px;padding:31px 36px 31px 132px;align-items:center;overflow:hidden;border:1px solid rgba(189,149,80,.45);background:linear-gradient(110deg,#fffdf8,#f8f1e2);box-shadow:0 18px 45px rgba(31,45,37,.08)}.registration-admin-heading::after{content:"XIN YI";position:absolute;right:150px;bottom:-18px;color:rgba(16,60,50,.035);font:900 74px Georgia,serif;letter-spacing:.12em}.admin-heading-mark{position:absolute;left:35px;top:31px;width:68px;height:88px;padding:9px;display:grid;place-items:center;border:2px solid var(--admin-gold);color:var(--admin-green);font:700 23px/1.35 "Songti SC","STSong",serif;text-align:center}.registration-admin-heading p{color:#9a742e;font-size:9px;letter-spacing:.25em}.registration-admin-heading h1{margin:8px 0 10px;color:var(--admin-deep);font:700 clamp(34px,4vw,48px) "Songti SC","STSong",serif;letter-spacing:.04em}.registration-admin-heading span{color:#727d75;font-size:11px;line-height:1.7}.registration-admin-heading button{position:relative;z-index:1;min-width:116px;padding:13px 18px;border:1px solid var(--admin-green);color:white;background:var(--admin-green);box-shadow:4px 4px 0 var(--admin-gold);font-size:9px}
.registration-metrics{margin:22px 0 18px;gap:12px}.registration-metrics article{position:relative;min-height:112px;padding:23px 24px;overflow:hidden;border:1px solid var(--admin-line);background:rgba(255,253,248,.94);box-shadow:0 8px 22px rgba(28,48,39,.05)}.registration-metrics article::after{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--admin-gold)}.registration-metrics article:nth-child(2)::after{background:#1c8062}.registration-metrics article:nth-child(3)::after{background:#a6504c}.registration-metrics article:nth-child(4)::after{background:#557967}.registration-metrics article:nth-child(5)::after{background:#8a713e}.registration-metrics span{color:#748078;font-size:9px;font-weight:800;letter-spacing:.08em}.registration-metrics b{margin-top:12px;color:var(--admin-deep);font:700 34px Georgia,"Songti SC",serif}
.registration-toolbar,.activity-tabs{padding:14px;border:1px solid var(--admin-line);background:#fffdf8;box-shadow:0 7px 20px rgba(28,48,39,.04)}.registration-toolbar button,.activity-tabs button{min-height:38px;padding:9px 14px;border-color:#ddd5c3;color:#65736b;background:#faf7ef;font-size:9px;font-weight:900}.registration-toolbar button.active,.activity-tabs button.active{border-color:var(--admin-green);color:#f7e9c2;background:var(--admin-green)}.registration-toolbar input,.activity-tabs input{border-color:#d8cfbc;background:white;outline:none}.registration-toolbar input:focus,.activity-tabs input:focus{border-color:var(--admin-gold);box-shadow:0 0 0 3px rgba(189,149,80,.12)}
.registration-list{margin-top:14px;padding:10px;display:grid;gap:8px;border:1px solid var(--admin-line);background:rgba(255,253,248,.72)}.registration-list article{min-height:86px;padding:15px 17px;border:1px solid #e1dacb;background:white;box-shadow:0 4px 12px rgba(27,46,38,.035)}.registration-list article:last-child{border-bottom:1px solid #e1dacb}.registration-avatar{width:44px;height:44px;border:1px solid #c8a65e;color:#f4e0ad;background:var(--admin-green);font:700 18px "Songti SC","STSong",serif}.registration-list b{color:var(--admin-deep);font-size:12px}.registration-list small{font-size:9px}.registration-list i{border-radius:20px}.registration-actions button{min-height:36px;padding:8px 13px;border-color:var(--admin-green);color:var(--admin-green);font-size:9px}.registration-actions button:hover{color:white;background:var(--admin-green)}.registration-actions button.danger:hover{color:white;background:#a9414b}
.activity-tabs{margin-top:0}.activity-table{margin-top:14px;padding:8px;border-color:var(--admin-line);background:rgba(255,253,248,.76)}.activity-table header{padding:13px 17px;color:#69776f;background:#eae5d8;letter-spacing:.08em}.activity-table article{margin-top:7px;padding:15px 17px;border:1px solid #e2dbcc;background:white;box-shadow:0 4px 12px rgba(27,46,38,.035)}.activity-table article>strong{color:var(--admin-green);font-size:12px}.activity-table i{border-radius:20px}.activity-table i.online{background:#19795e}
@media(max-width:760px){.registration-admin-topbar{height:72px;padding:0 18px}.registration-admin-topbar>a>span{width:38px;height:38px}.registration-admin-shell{padding:24px 14px 55px}.registration-admin-heading{min-height:0;padding:25px 20px 24px 87px;align-items:flex-start;gap:24px}.admin-heading-mark{left:18px;top:25px;width:51px;height:68px;font-size:18px}.registration-admin-heading::after{display:none}.registration-admin-heading h1{font-size:30px}.registration-admin-heading button{width:auto;min-width:100%;grid-column:1/-1}.registration-metrics,.activity-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.registration-metrics article{min-height:94px;padding:18px}.registration-metrics b{font-size:27px}.registration-toolbar{padding:10px}.registration-list{padding:7px}.registration-list article{grid-template-columns:44px minmax(0,1fr);padding:13px 11px}.registration-list i{justify-self:start}.activity-tabs{padding:10px}.activity-table{padding:7px;overflow:visible}.activity-table header{display:none}.activity-table article{min-width:0;padding:15px;display:grid;grid-template-columns:1fr auto;gap:13px}.activity-table article>[data-label]{padding-top:17px;position:relative}.activity-table article>[data-label]::before{content:attr(data-label);position:absolute;left:0;top:0;color:#9a8b6c;font-size:7px;font-weight:900;letter-spacing:.08em}.activity-table article>i{align-self:start}.activity-table article>span:nth-child(4){grid-column:1/-1}.activity-table article>strong{font-size:11px}}
@media(max-width:420px){.registration-admin-heading{padding-left:20px;padding-top:105px}.admin-heading-mark{top:22px}.registration-metrics,.activity-metrics{grid-template-columns:1fr 1fr}.registration-admin-heading button{width:100%}}

/* 赛事进程可读性：完整页面可滚动，淘汰赛采用深色赛事转播风格。 */
.draft-message:empty{display:none}
.tournament-dialog{
  overflow:auto;
  overscroll-behavior:contain;
  scrollbar-gutter:stable;
}
.tournament-dialog::-webkit-scrollbar,
.world-cup-groups::-webkit-scrollbar,
.knockout-board::-webkit-scrollbar{width:12px;height:12px}
.tournament-dialog::-webkit-scrollbar-thumb,
.world-cup-groups::-webkit-scrollbar-thumb,
.knockout-board::-webkit-scrollbar-thumb{
  border:3px solid transparent;
  border-radius:10px;
  background:rgba(19,53,98,.48);
  background-clip:padding-box;
}
.tournament-header{position:sticky;top:0;z-index:12}
.tournament-summary{position:sticky;top:112px;z-index:11;box-shadow:0 5px 18px rgba(5,25,58,.12)}
.world-cup-groups{
  min-height:calc(100dvh - 170px);
  height:auto;
  max-height:calc(100dvh - 170px);
  overflow:auto;
  align-content:stretch;
  scrollbar-gutter:stable;
}
.knockout-board{
  width:100%;
  min-width:0;
  min-height:calc(100dvh - 170px);
  height:auto;
  padding:34px 44px 48px;
  grid-template-columns:repeat(4,minmax(250px,1fr));
  gap:22px;
  color:white;
  background:
    radial-gradient(circle at 50% 0,rgba(45,99,232,.3),transparent 33%),
    linear-gradient(135deg,#07162d,#102d55 48%,#07162d);
}
.knockout-round{
  position:relative;
  min-width:250px;
  padding:14px 10px 18px;
  border:1px solid rgba(255,255,255,.09);
  background:rgba(1,13,32,.22);
}
.knockout-round.current{border-color:rgba(217,184,91,.72);box-shadow:0 0 0 3px rgba(217,184,91,.1)}
.knockout-round>h3{
  margin:0 0 14px;
  padding:13px 10px;
  border-bottom:2px solid var(--gold);
  color:#fff5d8;
  background:rgba(4,20,44,.9);
  font-size:18px;
  letter-spacing:.12em;
}
.knockout-round>div{gap:11px}
.knockout-round article{
  padding:12px;
  border:1px solid rgba(188,207,239,.32);
  border-radius:3px;
  background:rgba(248,251,255,.97);
  box-shadow:0 8px 22px rgba(0,0,0,.2);
}
.knockout-round article p{min-height:38px;padding:8px 9px;align-items:center;font-size:14px}
.knockout-round article p span{font-weight:800}
.knockout-round article p b{font-size:21px}
.knockout-round article p.winner{border-left:4px solid #1e9c67;background:#dff5e9}
.knockout-round article>small{margin-top:7px;color:#b72d3b;font-size:11px;font-weight:900}
.knockout-placeholder{padding:28px 12px;color:#aebedb;background:rgba(255,255,255,.06);font-size:13px}
.knockout-round.pending{opacity:.58}
.tournament-close{
  position:fixed;
  z-index:30;
  width:52px;
  height:52px;
  border:2px solid rgba(255,255,255,.72);
  color:#10223f;
  background:var(--gold);
  box-shadow:0 7px 20px rgba(0,0,0,.28);
  font-size:31px;
}
.tournament-close:hover,.tournament-close:focus-visible{
  color:white;
  background:var(--red);
}
.lineup-bench{height:100%;margin:0;padding:12px;border:1px solid rgba(255,255,255,.55);background:#0b3b31}
.lineup-bench header{margin-bottom:8px;display:flex;align-items:center;justify-content:space-between;color:white}
.lineup-bench header b{color:var(--gold);font-size:13px}.lineup-bench header span{font-size:9px;opacity:.78}
.lineup-bench>div{display:grid;grid-template-columns:1fr;gap:9px}
.lineup-bench>div>p{margin:0;padding:18px 10px;border:1px dashed rgba(255,227,154,.58);color:#ffe39a;background:rgba(255,255,255,.07);font-size:11px;font-weight:900;line-height:1.55;text-align:center}
.lineup-bench button{min-width:0;padding:9px;display:grid;grid-template-columns:24px minmax(0,1fr);gap:7px;align-items:center;border:1px solid rgba(255,255,255,.22);color:white;background:rgba(255,255,255,.1);cursor:pointer;text-align:left}
.lineup-bench button:hover{border-color:var(--gold);background:rgba(216,184,91,.18)}
.lineup-bench button b,.lineup-bench button small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lineup-bench button b{font-size:11px}.lineup-bench button small{margin-top:3px;color:#b7c8c2;font-size:8px}
@media(min-width:1001px){
  .draft-columns{
    grid-template-columns:minmax(520px,1.2fr) minmax(410px,.9fr) minmax(230px,.48fr);
  }
  .draft-columns>.draft-lineup-panel{border-left:1px solid var(--line);background:white}
  .draft-columns>.draft-bench-panel{padding:7px!important;border-left:1px solid var(--line);background:#eef1f5}
  .draft-player-list{grid-template-columns:repeat(3,minmax(0,1fr))}
  .draft-bench-panel .draft-roster,.draft-bench-panel .roster-list-title{display:none}
}
@media(max-width:1000px){
  .draft-lineup-panel{order:-2!important}
  .draft-bench-panel{order:-1!important}
  .lineup-bench{height:auto}
  .lineup-bench>div{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:600px){.lineup-bench>div{grid-template-columns:1fr}.lineup-bench header{align-items:flex-start;flex-direction:column;gap:4px}}
@media(max-width:1000px){
  .tournament-header{position:sticky;top:0}
  .tournament-summary{position:relative;top:auto}
  .world-cup-groups{min-height:0;max-height:none;overflow:visible}
  .knockout-board{min-width:0;height:calc(100dvh - 210px);min-height:520px;padding:20px 18px 30px}
  .knockout-round{min-width:286px}
  .knockout-round>h3{font-size:17px}
  .knockout-round article p{font-size:13px}
}

/* 管理中心紧凑版：增强品牌对比，一屏展示更多有效信息。 */
.registration-admin-topbar{height:66px;padding:0 clamp(20px,4vw,58px);background:#092f27;box-shadow:0 4px 16px rgba(5,29,24,.2)}
.registration-admin-topbar>a{gap:9px}.registration-admin-topbar>a>span{width:36px;height:36px;border:2px solid #e2bd6d;color:#ffe3a2;background:#123f35;font-size:18px;box-shadow:none}.registration-admin-topbar b{color:#fff8e8;font-size:14px;font-weight:900;letter-spacing:.04em;text-shadow:none}.registration-admin-topbar small{margin-top:2px;color:#e3bd6b;font-size:7px;font-weight:900;letter-spacing:.2em}.registration-admin-topbar nav{gap:2px}.registration-admin-topbar nav a{padding:9px 12px;color:#dce9e4;font-size:9px}.registration-admin-topbar nav a.active{color:#ffe09a;background:rgba(255,255,255,.06)}.registration-admin-topbar nav a.active::after{left:12px;right:12px;bottom:0;background:#e2bd6d}
.registration-admin-shell{max-width:1320px;padding:24px 24px 48px}.registration-admin-heading{min-height:96px;padding:18px 24px 18px 94px;box-shadow:0 8px 24px rgba(31,45,37,.06)}.registration-admin-heading::after{right:135px;bottom:-13px;font-size:55px}.admin-heading-mark{left:24px;top:17px;width:48px;height:61px;padding:5px;border-width:1px;font-size:17px}.registration-admin-heading p{font-size:7px}.registration-admin-heading h1{margin:4px 0 5px;font-size:31px;line-height:1.1}.registration-admin-heading span{font-size:9px;line-height:1.45}.registration-admin-heading button{min-width:100px;padding:10px 14px;box-shadow:3px 3px 0 var(--admin-gold);font-size:8px}
.registration-metrics{margin:12px 0 10px;gap:7px}.registration-metrics article{min-height:72px;padding:13px 16px;box-shadow:none}.registration-metrics article::after{width:3px}.registration-metrics span{font-size:8px}.registration-metrics b{margin-top:5px;font-size:24px;line-height:1.1}
.registration-toolbar,.activity-tabs{min-height:50px;padding:7px 8px;box-shadow:none}.registration-toolbar button,.activity-tabs button{min-height:34px;padding:7px 11px;font-size:8px}.registration-toolbar input,.activity-tabs input{height:34px;padding:7px 10px;font-size:9px}
.registration-list{margin-top:8px;padding:6px;gap:5px}.registration-list article{min-height:64px;padding:9px 12px;grid-template-columns:36px minmax(220px,1fr) 78px auto;gap:9px;box-shadow:none}.registration-avatar{width:34px;height:34px;font-size:14px}.registration-list b{font-size:11px}.registration-list small{margin-top:3px;font-size:8px}.registration-list i{padding:5px 7px;font-size:7px}.registration-actions{gap:4px}.registration-actions button{min-height:30px;padding:6px 9px;font-size:7px}
.activity-table{margin-top:8px;padding:5px}.activity-table header,.activity-table article{padding:8px 12px;gap:9px}.activity-table header{font-size:8px}.activity-table article{min-height:50px;margin-top:4px;box-shadow:none;font-size:9px}.activity-table b{font-size:10px}.activity-table small{margin-top:2px;font-size:7px}.activity-table article>strong{font-size:11px}.activity-table i{padding:5px 7px;font-size:7px}
@media(max-width:760px){.registration-admin-topbar{height:62px;padding:0 14px}.registration-admin-topbar>a>span{width:34px;height:34px}.registration-admin-topbar b{font-size:12px}.registration-admin-shell{padding:14px 10px 35px}.registration-admin-heading{padding:15px 13px 15px 72px;gap:14px}.admin-heading-mark{left:13px;top:14px;width:43px;height:55px;font-size:15px}.registration-admin-heading h1{font-size:25px}.registration-admin-heading span{font-size:8px}.registration-admin-heading button{min-width:92px}.registration-metrics{margin-top:8px}.registration-metrics article{min-height:67px;padding:11px 13px}.registration-metrics b{font-size:21px}.registration-list article{grid-template-columns:34px minmax(0,1fr);padding:10px}.activity-table article{padding:11px}.activity-table article>[data-label]{padding-top:15px}}

@media(max-width:650px){.registration-admin-heading{padding-top:15px;flex-direction:row;flex-wrap:wrap}.registration-admin-heading>div:nth-child(2){min-width:0;flex:1}.registration-admin-heading button{width:100%;margin-left:-59px}.registration-toolbar>div{gap:4px}.registration-toolbar button{white-space:nowrap}}
@media(max-width:420px){.registration-admin-heading{padding-left:72px;padding-top:15px}.admin-heading-mark{top:14px}.registration-admin-heading button{margin-left:-59px}}

/* 指标始终单行，列表文字提升清晰度。 */
.registration-metrics:not(.activity-metrics){grid-template-columns:repeat(3,minmax(0,1fr))!important}
.registration-metrics.activity-metrics{grid-template-columns:repeat(5,minmax(0,1fr))!important}
.registration-list b{color:#092f27;font-size:13px;font-weight:900;line-height:1.25}.registration-list small{margin-top:4px;color:#5f6d65;font-size:10px;font-weight:600;line-height:1.4}.registration-list i{font-size:9px;letter-spacing:.02em}.registration-actions button{padding:7px 11px;font-size:9px;font-weight:900}
.activity-table article{font-size:10px}.activity-table b{color:#092f27;font-size:12px;font-weight:900}.activity-table small{margin-top:3px;color:#617068;font-size:9px;font-weight:600}.activity-table article>strong{font-size:13px;font-weight:900}.activity-table article>span{color:#394b43;font-weight:700}.activity-table i{font-size:9px;font-weight:900}
@media(max-width:600px){.registration-metrics{gap:4px}.registration-metrics article{min-width:0;padding:10px 8px}.registration-metrics span{overflow:hidden;font-size:7px;letter-spacing:0;text-overflow:ellipsis;white-space:nowrap}.registration-metrics b{font-size:19px}.registration-list b{font-size:12px}.registration-list small{font-size:9px}.registration-actions button{font-size:8px}.activity-table b{font-size:11px}.activity-table small{font-size:8px}}

/* Attribute-driven positional fit: draft and final-lineup explanations. */
.draft-player .draft-fit-preview{margin-top:5px;color:#14745c;font-size:8px;font-weight:900;line-height:1.35}
.lineup-pitch .lineup-effective-note{margin-top:1px;color:#ffe39b;font-size:7px;font-weight:900}
.pick-position-options em{display:block;margin-top:6px;color:#14745c;font-size:9px;font-style:normal;font-weight:900}
.pick-position-options button.active em{color:#ffe39b}

/* Room-wide player and spectator chat. */
.room-chat{position:fixed;right:18px;bottom:82px;z-index:120;width:292px;color:#13243f;filter:drop-shadow(0 16px 35px rgba(4,15,43,.28))}
.room-chat>section{overflow:hidden;border:1px solid #d4d9e4;background:#fff;border-radius:10px}
.room-chat-toggle{display:none;width:132px;padding:11px 14px;border:0;border-radius:22px;color:#fff;background:#123f35;font-size:11px;font-weight:900;box-shadow:0 8px 22px rgba(4,31,25,.3)}
.room-chat-toggle i{min-width:18px;height:18px;margin-left:8px;display:inline-grid;place-items:center;border-radius:9px;color:#17382f;background:#f3c967;font-size:9px;font-style:normal}
.room-chat.collapsed{width:auto}.room-chat.collapsed>section{display:none}.room-chat.collapsed .room-chat-toggle{display:block}
.room-chat section>header{padding:11px 13px;display:flex;align-items:center;justify-content:space-between;color:#fff;background:#123f35}
.room-chat section>header b,.room-chat section>header small{display:block}.room-chat section>header b{font-size:12px}.room-chat section>header small{margin-top:2px;color:#d5b76b;font-size:7px;letter-spacing:.16em}
.room-chat section>header button{width:25px;height:25px;border:1px solid rgba(255,255,255,.25);border-radius:50%;color:#fff;background:transparent;cursor:pointer}
.room-chat-messages{height:176px;padding:10px;overflow:auto;background:#f6f3ea}
.room-chat-messages>p{color:#818a9b;font-size:9px;text-align:center}
.room-chat-messages article{max-width:86%;margin:0 0 8px}.room-chat-messages article.mine{margin-left:auto}
.room-chat-messages article header{display:flex;gap:7px;align-items:center}.room-chat-messages article header b{font-size:8px}.room-chat-messages article header time{color:#9299a7;font-size:7px}
.room-chat-messages article p{margin:3px 0 0;padding:8px 10px;border-radius:3px 11px 11px 11px;color:#253047;background:#fff;font-size:10px;line-height:1.5;overflow-wrap:anywhere}
.room-chat-messages article.mine p{color:#fff;background:#176b57;border-radius:11px 3px 11px 11px}
.room-chat form{padding:8px;display:grid;grid-template-columns:1fr 58px;gap:6px;border-top:1px solid #e4e5e8}
.room-chat form input{min-width:0;padding:9px;border:1px solid #d8dce5;font-size:10px}.room-chat form button{border:0;color:#fff;background:#176b57;font-size:9px;font-weight:900}
.room-chat-status{padding:0 10px 8px;display:block;color:#8a91a0;font-size:7px}
.room-chat-barrage{position:fixed;left:50%;top:86px;z-index:150;max-width:min(620px,76vw);padding:9px 18px;border:1px solid rgba(243,201,103,.55);border-radius:20px;color:#fff;background:rgba(5,34,28,.88);box-shadow:0 8px 25px rgba(0,0,0,.25);font-size:11px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transform:translateX(-50%)}
.room-chat-barrage.play{animation:chatBarrageIn .4s ease-out}@keyframes chatBarrageIn{from{opacity:0;transform:translate(-50%,-15px)}to{opacity:1;transform:translate(-50%,0)}}
@media(max-width:600px){.room-chat{right:8px;bottom:62px;width:calc(100vw - 16px)}.room-chat-messages{height:145px}.room-chat:not(.collapsed)>section{border-radius:9px}.room-chat.collapsed{right:10px;width:auto}.room-chat-barrage{top:72px;max-width:88vw;font-size:9px}}

/* Match readability pass: live events, post-match review and player grades. */
.match-minute-labels{font-size:11px;font-weight:800}
.match-flow{grid-template-columns:84px 1fr 84px}
.match-flow>b{font-size:10px}.match-flow-labels,.match-flow-labels strong{font-size:9px}
.match-live-copy>span{font-size:15px}.match-live-copy p{font-size:15px;line-height:1.65}
.match-event-column h4{font-size:14px}
.match-event-feed article>span{font-size:16px}
.match-event-feed b{font-size:14px}
.match-event-feed p{font-size:12px;line-height:1.6}
.match-stats-summary{padding:16px}
.match-stats-summary h4{margin:0 0 10px;font-size:16px}
.match-stats-summary p{padding:5px 0;font-size:13px;line-height:1.4}
.match-stats-summary p span{font-size:12px;font-weight:800}
.match-stats-summary>div small{font-size:10px}.match-stats-summary>div strong{font-size:16px}
.matchup-report{margin-top:14px;padding-top:13px}
.matchup-report h4{font-size:15px}
.matchup-report article{padding:10px 12px}
.matchup-report article b{font-size:13px;line-height:1.45}
.matchup-report article span{margin-top:5px;font-size:12px;line-height:1.6}
.match-story{margin-top:14px;padding-top:13px}
.match-story h4{font-size:15px}
.match-story>p{font-size:13px;line-height:1.75}
.match-turning-points{gap:6px}
.match-turning-points span{padding:8px 10px;font-size:11px;line-height:1.55}
.match-player-performance{margin-top:14px;padding-top:13px}
.match-player-performance h4{font-size:15px}
.match-player-performance article{padding:9px}
.match-player-performance article>b{margin-bottom:7px;font-size:11px}
.match-player-performance article>p{padding:7px 0;gap:4px 7px}
.match-player-performance article>p span{font-size:10px}
.match-player-performance article>p small{font-size:9px;line-height:1.45}
.match-player-performance article>p strong{font-size:12px}
.match-dialog.match-finished .match-live-copy h3{font-size:32px}
.match-dialog.match-finished .match-stats-summary{gap:14px;padding:20px}
.match-dialog.match-finished .match-stats-summary h4{font-size:17px}
.match-dialog.match-finished .match-stats-summary p{font-size:14px}
.match-dialog.match-finished .match-stats-summary>div{padding:12px}
@media(max-width:1000px){
  .match-live-copy p{font-size:14px}
  .match-event-feed p{font-size:11px}
  .match-dialog.match-finished .match-stats-summary{padding:15px}
  .matchup-report article span,.match-story>p{font-size:11px}
  .match-player-performance article>p span{font-size:10px}
  .match-player-performance article>p small{font-size:9px}
}
@media(max-width:620px){
  .match-minute-labels{font-size:9px}
  .match-flow{grid-template-columns:68px 1fr 68px}
  .match-flow>b{font-size:8px}.match-flow-labels,.match-flow-labels strong{font-size:8px}
  .match-live-copy>span{font-size:12px}.match-live-copy p{font-size:12px;line-height:1.5}
  .match-event-column h4{font-size:12px}
  .match-event-feed article>span{font-size:14px}
  .match-event-feed b{font-size:12px}.match-event-feed p{font-size:11px}
  .match-stats-summary h4,.matchup-report h4,.match-story h4,.match-player-performance h4{font-size:14px}
  .match-stats-summary p{font-size:12px}.match-stats-summary p span{font-size:10px}
  .matchup-report article b{font-size:11px}.matchup-report article span{font-size:10px}
  .match-story>p{font-size:11px}.match-turning-points span{font-size:10px}
  .match-player-performance>div{grid-template-columns:1fr}
  .match-player-performance article>b{font-size:11px}
  .match-player-performance article>p span{font-size:10px}
  .match-player-performance article>p small{font-size:9px}
  .match-player-performance article>p strong{font-size:12px}
}

.knockout-strategy{margin:10px 30px;padding:13px 16px;display:grid;grid-template-columns:minmax(180px,.8fr) minmax(420px,2fr);gap:12px 18px;align-items:center;border:1px solid #d8dce7;background:#fff}
.knockout-strategy h3{margin:4px 0;font:700 19px Georgia,"Songti SC",serif}.knockout-strategy>div>span{color:#747f94;font-size:9px}
.knockout-strategy>div:nth-child(2){display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}
.knockout-strategy button{min-width:0;padding:8px 9px;border:1px solid #d9deea;color:#26334c;background:#f4f6fa;cursor:pointer;text-align:left}
.knockout-strategy button b,.knockout-strategy button span{display:block}.knockout-strategy button b{font-size:10px}.knockout-strategy button span{margin-top:3px;overflow:hidden;color:#7c879c;font-size:7px;text-overflow:ellipsis;white-space:nowrap}
.knockout-strategy button.active{color:#fff;border-color:#176b57;background:#176b57;box-shadow:3px 3px 0 #d8b85b}.knockout-strategy button.active span{color:#dcebe6}
.knockout-strategy>small{grid-column:1/-1;color:#8a7032;font-size:8px}
@media(max-width:760px){.knockout-strategy{margin:8px 14px;padding:11px;grid-template-columns:1fr}.knockout-strategy>div:nth-child(2){grid-template-columns:repeat(2,minmax(0,1fr))}.knockout-strategy button{padding:9px}.knockout-strategy button b{font-size:11px}.knockout-strategy button span{font-size:8px}}

/* Readability pass: match narrative and pre-match tactics are core gameplay. */
.knockout-strategy>div>span{font-size:13px;line-height:1.55}
.knockout-strategy button{min-height:72px;padding:11px 12px}
.knockout-strategy button b{font-size:14px;line-height:1.35}
.knockout-strategy button span{margin-top:5px;font-size:12px;line-height:1.45;white-space:normal}
.knockout-strategy button em{display:block;margin-top:6px;color:#98751c;font-size:11px;font-style:normal;font-weight:800}
.knockout-strategy button.active em{color:#ffe09a}
.knockout-strategy button.recommended:not(.active){border-color:#caa548;box-shadow:inset 0 3px 0 #d5b455}
.knockout-strategy>small{font-size:12px;line-height:1.6}
.knockout-strategy-member-status{grid-column:1/-1;display:flex!important;flex-wrap:wrap;gap:6px}
.knockout-strategy-member-status span{padding:5px 8px;border:1px solid #d6dbe5;color:#6e788d;background:#f5f6f9;font-size:10px!important;font-weight:800}
.knockout-strategy-member-status span.selected{border-color:#73a991;color:#176b57;background:#edf7f2}
.match-event-column h4{font-size:15px}
.match-event-feed article>span{font-size:17px}
.match-event-feed b{font-size:15px;line-height:1.45}
.match-event-feed p{font-size:13px;line-height:1.7}
.match-live-copy>span{font-size:14px}.match-live-copy p{font-size:15px;line-height:1.65}
.match-stats-summary h4,.matchup-report h4,.match-story h4,.match-player-performance h4{font-size:17px}
.match-stats-summary p{font-size:14px}.match-stats-summary p span{font-size:13px}
.matchup-report article b{font-size:14px}.matchup-report article span{font-size:13px;line-height:1.7}
.match-story>p{font-size:14px;line-height:1.8}.match-turning-points span{font-size:12px;line-height:1.55}
.match-player-performance article>b{font-size:13px}
.match-player-performance article>p span{font-size:12px}
.match-player-performance article>p small{font-size:11px}
.match-player-performance article>p strong{font-size:14px}
@media(max-width:760px){
  .knockout-strategy button b{font-size:13px}.knockout-strategy button span{font-size:11px}
  .knockout-strategy button em,.knockout-strategy>small{font-size:10px}
  .match-event-column h4{font-size:13px}.match-event-feed article>span{font-size:15px}
  .match-event-feed b{font-size:13px}.match-event-feed p{font-size:12px}
  .match-live-copy p{font-size:13px}
  .match-stats-summary h4,.matchup-report h4,.match-story h4,.match-player-performance h4{font-size:15px}
  .matchup-report article span,.match-story>p{font-size:12px}
}
.world-cup-group>div{grid-template-columns:20px 36px minmax(0,1fr) auto;gap:9px;padding:7px 8px}
.world-cup-group>div>b{font-size:13px;line-height:1.35}
.world-cup-group>div>small{font-size:10px;white-space:nowrap}
.world-cup-group>div>.group-flag{width:34px;height:23px;font-size:22px}
.manager-team-mark{width:28px;height:28px;font-size:9px}
.world-cup-group>div>span{font-size:13px}
@media(max-width:760px){
  .world-cup-group>div{grid-template-columns:22px 39px minmax(0,1fr) auto;gap:10px}
  .world-cup-group>div>b{font-size:14px}.world-cup-group>div>small{font-size:10px}
  .world-cup-group>div>.group-flag{width:36px;height:25px;font-size:23px}
}
.group-watch-progress{margin:10px 30px;padding:15px 17px;border:1px solid #d9d4c7;background:#fff}
.group-watch-progress>header{display:flex;align-items:end;justify-content:space-between;gap:16px}
.group-watch-progress h3{margin:3px 0;font:700 20px Georgia,"Songti SC",serif}
.group-watch-progress>header>small{color:#788397;font-size:11px}
.group-watch-progress>div{margin-top:12px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}
.group-watch-progress article{padding:10px 11px;border-left:4px solid #aeb5c0;background:#f4f3ee}
.group-watch-progress article.completed{border-color:#188268}.group-watch-progress article.watching{border-color:#d1a233}
.group-watch-progress article.offline{border-color:#c04c4c}
.group-watch-progress article b,.group-watch-progress article span,.group-watch-progress article small{display:block}
.group-watch-progress article b{font-size:13px}.group-watch-progress article span{margin-top:5px;color:#183b34;font-size:16px;font-weight:900}
.group-watch-progress article small{margin-top:4px;color:#7b8494;font-size:10px}
@media(max-width:760px){
  .group-watch-progress{margin:8px 14px;padding:12px}
  .group-watch-progress>header{align-items:start;flex-direction:column}.group-watch-progress>div{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* 32-team draw readability and phase-aware room chat placement. */
.world-cup-group>div{grid-template-columns:23px 44px minmax(0,1fr) auto;gap:11px;padding:8px 9px}
.world-cup-group>div>b{font-size:16px;line-height:1.35}
.world-cup-group>div>small{font-size:12px}
.world-cup-group>div>span{font-size:15px}
.world-cup-group>div>.group-flag{width:42px;height:29px;font-size:27px}
.manager-team-mark{width:34px;height:34px;font-size:11px}
.room-chat section>header b{font-size:15px}.room-chat section>header small{font-size:10px}
.room-chat-messages>p{font-size:12px}
.room-chat-messages article header b{font-size:12px}.room-chat-messages article header time{font-size:10px}
.room-chat-messages article p{font-size:14px;line-height:1.55}
.room-chat form input{font-size:14px}.room-chat form button{font-size:12px}
.room-chat-status{font-size:10px}.room-chat-toggle{font-size:13px}
body:has(#match-dialog[open]) .room-chat{left:18px;right:auto;bottom:82px}
body:has(#match-dialog[open]) .room-chat-barrage{top:92px}

/* Keep both starting XIs visible when the matchup report contains many cards. */
@media(min-width:1001px){
  .match-lineups-panel{min-height:0}
  .match-lineups-panel .match-lineups-grid{
    grid-template-rows:minmax(190px,1fr) minmax(130px,.78fr);
    overflow:hidden;
  }
  .match-lineups-panel .match-lineup-side{
    min-height:0;
    overscroll-behavior:contain;
    scrollbar-gutter:stable;
  }
  .match-lineups-panel .pre-match-duels{
    min-height:0;
    padding:11px;
    overflow:auto;
    overscroll-behavior:contain;
  }
  .match-lineups-panel .pre-match-duels>div{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  .world-cup-group>div{grid-template-columns:24px 46px minmax(0,1fr) auto}
  .world-cup-group>div>b{font-size:15px}.world-cup-group>div>small{font-size:11px}
  .world-cup-group>div>.group-flag{width:43px;height:30px;font-size:28px}
  body:has(#match-dialog[open]) .room-chat{left:8px;right:8px;bottom:62px;width:calc(100vw - 16px)}
  body:has(#match-dialog[open]) .room-chat.collapsed{left:auto;right:10px;width:auto}
}
.activity-history{margin:18px 0;padding:16px;border:1px solid #c8d0dc;background:#fff}.activity-history header{display:flex;justify-content:space-between}.activity-history header small{color:#69758b}.activity-history>div{height:150px;margin-top:14px;display:flex;align-items:end;gap:3px;overflow-x:auto}.activity-history article{height:100%;min-width:16px;display:flex;flex-direction:column;justify-content:end;align-items:center}.activity-history article i{width:10px;min-height:6px;background:#0b7657}.activity-history article small{margin-top:4px;font-size:7px;writing-mode:vertical-rl}
.theme-system-overlay{width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;border:0}.theme-system-overlay[open]{display:grid}
/* Archived real-player champion squads */
.champion-title-scroll{max-height:1050px;overflow-y:auto;display:grid;gap:14px;padding-right:6px}.champion-title-card{border:1px solid var(--line);background:#f7f4e9}.champion-title-card>header{display:flex;justify-content:space-between;gap:12px;padding:10px 14px}.champion-title-card .champion-pitch{min-height:280px}
.champion-gallery-section{margin:34px clamp(24px,7vw,110px);padding:30px 34px;border:1px solid var(--line);background:#fff;box-shadow:8px 8px 0 rgba(11,63,50,.13)}.champion-gallery-section>header{display:flex;justify-content:space-between;gap:28px;align-items:end}.champion-gallery-section>header>p{max-width:520px;color:#69758b;font-size:11px}.champion-tabs{display:flex;gap:8px;margin:20px 0 14px;overflow:auto;padding-bottom:6px}.champion-tabs button{min-width:130px;padding:10px 14px;border:1px solid var(--line);background:#f7f4e9;text-align:left}.champion-tabs button.active{color:#fff;background:var(--green);border-color:var(--green)}.champion-tabs b,.champion-tabs small{display:block}.champion-tabs small{margin-top:3px}.champion-stage{display:grid;grid-template-columns:230px 1fr;gap:18px}.champion-summary{padding:22px;background:#071f32;color:#fff}.champion-summary h3{margin:12px 0;font-size:27px}.champion-summary b,.champion-summary small{display:block;margin-top:9px}.champion-pitch{min-height:330px;padding:24px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;align-content:center;background:repeating-linear-gradient(90deg,#15794e 0,#15794e 14%,#128b57 14%,#128b57 28%);border:3px solid #e9f0cf}.champion-pitch article{padding:9px;border:1px solid rgba(255,255,255,.55);background:rgba(4,30,29,.84);color:#fff;text-align:center}.champion-pitch article span,.champion-pitch article small{display:block;font-size:9px}.champion-pitch article b{display:block;margin:3px 0;font-size:12px}@media(max-width:760px){.champion-gallery-section{margin:20px;padding:20px 16px}.champion-gallery-section>header{display:block}.champion-stage{grid-template-columns:1fr}.champion-pitch{grid-template-columns:repeat(2,minmax(0,1fr));min-height:0}.champion-summary{padding:16px}}
select{appearance:none;-webkit-appearance:none;padding-right:34px!important;background-image:linear-gradient(45deg,transparent 50%,#d9bb70 50%),linear-gradient(135deg,#d9bb70 50%,transparent 50%)!important;background-position:calc(100% - 16px) 50%,calc(100% - 11px) 50%!important;background-size:5px 5px,5px 5px!important;background-repeat:no-repeat!important}select:focus{border-color:#d9bb70!important;box-shadow:0 0 0 2px rgba(217,187,112,.16)}select:disabled{opacity:.45;cursor:not-allowed}.theme-system-overlay{position:fixed;z-index:10000;inset:0;padding:14px;display:grid;place-items:center;background:rgba(2,7,13,.82);backdrop-filter:blur(6px)}.theme-system-overlay[hidden]{display:none!important}.theme-system-dialog{width:min(480px,calc(100vw - 28px));padding:0;border:1px solid #b68a3c;color:#f2ead7;background:linear-gradient(145deg,#18283b,#09131f);box-shadow:0 24px 90px #000}.theme-system-dialog form{padding:26px}.theme-system-dialog small{color:#d9bb70;font-size:8px;font-weight:900;letter-spacing:.2em}.theme-system-dialog h2{margin:7px 0 14px;font:700 27px Georgia,"Songti SC",serif}.theme-system-dialog p{margin:0;white-space:pre-line;color:#c8d1dc;font-size:13px;line-height:1.75}.theme-system-dialog label{margin-top:18px;display:grid;gap:7px;color:#d9bb70;font-size:10px}.theme-system-dialog label[hidden]{display:none!important}.theme-system-dialog input{width:100%;box-sizing:border-box;padding:12px;border:1px solid #576a7d;color:#fff;background:#07101a;outline:0}.theme-system-dialog input:focus{border-color:#d9bb70}.theme-system-dialog menu{margin:24px 0 0;padding:0;display:flex;justify-content:flex-end;gap:8px}.theme-system-dialog button{padding:10px 16px;border:1px solid #7a6a4c;color:#ddd1b6;background:#111d2a;cursor:pointer}.theme-system-dialog button[value="confirm"]{border-color:#d9bb70;color:#161006;background:#d9bb70;font-weight:900}
.prediction-home-summary{margin-top:14px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.prediction-home-summary>span{padding:8px;border:1px solid rgba(228,199,126,.25);background:rgba(255,255,255,.045)}.prediction-home-summary small,.prediction-home-summary b{display:block}.prediction-home-summary small{color:#8facaa;font-size:7px}.prediction-home-summary b{margin-top:4px;color:#f0d98b;font-size:12px}
@media(max-width:620px){.topbar{height:auto;min-height:62px;padding:8px 10px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px 9px}.brand{min-width:0;gap:8px}.brand-mark{width:30px;height:30px;flex:0 0 auto}.brand>span:last-child{min-width:0}.brand>span:last-child b{overflow:hidden;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.brand>span:last-child small{display:none}.server-identity{grid-column:1;margin:0;width:max-content;max-width:100%;font-size:8px!important}.top-actions{grid-column:2;grid-row:1/3;gap:5px}.account-button{max-width:96px;padding:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.prediction-home-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}
.sanguosha-entry{margin:34px clamp(24px,7vw,110px);padding:32px 38px;display:grid;grid-template-columns:130px minmax(0,1fr) auto;gap:30px;align-items:center;color:#f5ead4;background:radial-gradient(circle at 82% 16%,rgba(164,49,38,.55),transparent 30%),linear-gradient(115deg,#18100d,#352019 60%,#1a100d);border:2px solid #9c6c2f;box-shadow:9px 9px 0 #3e2118}.sanguosha-seal{width:112px;height:112px;padding:10px;display:grid;grid-template-columns:1fr 1fr;gap:5px;transform:rotate(3deg);border:2px solid #c4954b;background:#110d0b}.sanguosha-seal span{display:grid;place-items:center;color:#fff;font:900 25px Georgia,"Songti SC",serif}.sanguosha-seal span:nth-child(1){background:#31475b}.sanguosha-seal span:nth-child(2){background:#9b3429}.sanguosha-seal span:nth-child(3){background:#3e7452}.sanguosha-seal span:nth-child(4){background:#6b6258}.sanguosha-entry h2{margin:3px 0 8px;font:700 42px Georgia,"Songti SC",serif}.sanguosha-entry p:last-of-type{color:#cdbfa8;font-size:12px}.sanguosha-tags{margin-top:13px;display:flex;gap:7px;flex-wrap:wrap}.sanguosha-tags span{padding:5px 8px;border:1px solid #8a693d;color:#d9b66b;font-size:8px}.sanguosha-action{text-align:right}.sanguosha-action small{display:block;margin-bottom:10px;color:#c1ad8d;font-size:9px}.sanguosha-action a{display:inline-block;padding:13px 18px;color:#24140e;background:#d0a254;text-decoration:none;font-size:10px;font-weight:900}@media(max-width:800px){.sanguosha-entry{grid-template-columns:92px 1fr}.sanguosha-seal{width:84px;height:84px}.sanguosha-seal span{font-size:19px}.sanguosha-action{grid-column:1/-1;text-align:left}}@media(max-width:480px){.sanguosha-entry{margin-left:14px;margin-right:14px;padding:26px 22px;grid-template-columns:1fr}.sanguosha-seal{display:none}.sanguosha-entry h2{font-size:35px}.sanguosha-action a{width:100%;text-align:center}}
