/* UI 3 — Lò Rèn Rune. Chỉ áp cho Lên đồ, Trận và Sau trận. */
#stage #Shop.fg,
#stage #Match,
#stage #Summary,
#stage #PostChat{
  --u3-bg:#0d0f12;--u3-panel:#171b21;--u3-panel2:#121519;--u3-edge:#2a3139;
  --u3-edge2:#46505a;--u3-amber:#f3a33a;--u3-light:#ffc46b;--u3-cyan:#46c9d6;
  --u3-r:#6cd48f;--u3-d:#e86a59;--u3-text:#ece6da;--u3-sub:#b6afa3;
  --u3-display:'FG Display',sans-serif;--u3-body:'FG Body',sans-serif;
  --radiant:#6cd48f;--dire:#e86a59;--ally:#6cd48f;--enemy:#e86a59;
  font-family:var(--u3-body);font-size:17px;line-height:1.45;color:var(--u3-text);
  font-variant-numeric:tabular-nums;
}
#stage #Shop.fg,
#stage #Match,
#stage #Summary{
  background:radial-gradient(ellipse at 45% -20%,#f3a33a18,transparent 60%),
    repeating-linear-gradient(135deg,#ffffff02 0 1px,transparent 1px 6px),var(--u3-bg);
}
#stage #Shop.fg :is(button,input),
#stage #Match button,
#stage #Summary button,
#stage #PostChat :is(button,input){font-family:var(--u3-body);color:var(--u3-text);transition:background 120ms,border-color 120ms,box-shadow 120ms}
#stage #Shop.fg :is(button,input):focus-visible,
#stage #Match button:focus-visible,
#stage #Summary button:focus-visible,
#stage #PostChat :is(button,input):focus-visible{outline:3px solid var(--u3-light);outline-offset:3px}
#stage #Shop.fg .dim,
#stage #Match .dim,
#stage #Summary .dim,
#stage #PostChat .dim{color:var(--u3-sub)}
#stage #Shop.fg .Btn,
#stage #Summary .Btn,
#stage #PostChat .Btn,
#stage #Match .Btn{min-height:46px;padding:10px 18px;background:linear-gradient(#262a30,#1a1e24);border:1px solid #616366;border-radius:2px;box-shadow:inset 0 1px #ffffff13;font-size:16px;letter-spacing:0}
#stage #Shop.fg .Btn.green,
#stage #Summary .Btn.green,
#stage #PostChat .Btn.green,
#stage #Match .Btn.green{color:#211407;background:linear-gradient(#ffbd59,#e38a1f);border-color:#e9ac54;box-shadow:0 5px 22px #f3a33a24;clip-path:polygon(0 0,calc(100% - 13px) 0,100% 50%,calc(100% - 13px) 100%,0 100%);padding-right:30px;font-weight:700}
#stage #Shop.fg button:hover,
#stage #Match button:hover,
#stage #Summary button:hover,
#stage #PostChat button:hover{border-color:var(--u3-light);filter:brightness(1.08)}
#stage #Shop.fg button:active,
#stage #Match button:active,
#stage #Summary button:active,
#stage #PostChat button:active{transform:translateY(1px)}
#stage #Shop.fg button:disabled,
#stage #Match button:disabled,
#stage #Summary button:disabled,
#stage #PostChat button:disabled{opacity:1;color:#b3aea5;background:#1d2127;border-color:#40464d;cursor:default;filter:none;box-shadow:none}

/* 1. Xưởng trang bị: mỗi cột có vùng cuộn riêng, không sticky. */
#stage #Shop.fg .sh-head{left:28px;right:28px;top:24px;height:96px;gap:18px;padding:0 100px 16px 0;border-bottom:1px solid #493722}
#stage #Shop.fg .sh-head .sm-title{font:700 43px/1.2 var(--u3-display);letter-spacing:.5px;color:var(--u3-text);text-transform:none}
#stage #Shop.fg .sh-head .sm-title::before{content:'LÒ RÈN RUNE / LOADOUT';display:block;font:600 13px/1.5 var(--u3-body);letter-spacing:2px;color:var(--u3-light);margin-bottom:5px}
#stage #Shop.fg .stages{gap:0}
#stage #Shop.fg .stages span{min-height:42px;display:flex;align-items:center;font-size:15px;padding:8px 13px;background:#111419;border-color:#42474c;color:var(--u3-sub)}
#stage #Shop.fg .stages span.on{color:#201508;background:#ffc46b;border-color:#ffc46b;box-shadow:0 0 20px #f3a33a20}
#stage #Shop.fg .stages span.done{color:var(--u3-r);border-color:#4f8461}
#stage #Shop.fg #ShopTimer{gap:9px;margin-left:auto}
#stage #Shop.fg #ShopTimer span{font:600 14px var(--u3-body);color:var(--u3-sub);letter-spacing:0}
#stage #Shop.fg #ShopTimer b{font:700 45px/1.1 var(--u3-display);color:var(--u3-light)}
#stage #Shop.fg #ShopTimer b.hot{color:var(--u3-d)}
#stage #Shop.fg .sh-head .sh-btns{padding:0;gap:10px;flex:none}
#stage #Shop.fg .sh-head .Btn{font-size:16px;min-height:52px;white-space:nowrap}
/* Grid cũ dùng !important, cần đè đúng ba cột. */
#stage #Shop.fg .sh-grid{left:28px;right:28px;top:142px;bottom:24px;grid-template-columns:338px 708px minmax(0,1fr)!important;grid-template-rows:minmax(0,1fr);gap:20px;overflow:visible;align-items:stretch}
#stage #Shop.fg :is(.sh-team,.sh-sel,.sh-shop){position:relative;grid-column:auto;grid-row:auto;height:auto;min-height:0;max-height:none;overflow:auto;padding:22px;background:linear-gradient(145deg,#1b2027,#121519);border:1px solid #41464c;border-radius:0;box-shadow:inset 0 1px #ffffff12,0 14px 35px #0005;clip-path:polygon(0 0,calc(100% - 16px) 0,100% 16px,100% 100%,0 100%);scrollbar-width:thin;scrollbar-color:#807158 #121519}
#stage #Shop.fg .sh-shop{display:flex;flex-direction:column}
/* Nhãn cũ bị khóa font bằng !important trong ad_forge.css. */
#stage #Shop.fg :is(.sh-team>h4,.sh-sel .lbl,.sh-shop .lbl){font:600 18px/1.35 var(--u3-display)!important;color:#d8cfc0!important;letter-spacing:1.2px!important;margin:20px 0 11px}
#stage #Shop.fg .sh-team>h4{margin-top:0;flex-wrap:wrap}
#stage #Shop.fg .sh-team>h4 .dim{flex-basis:100%;font:400 13px/1.5 var(--u3-body);color:var(--u3-sub)}
#stage #Shop.fg :is(.sh-team>h4,.sh-sel .lbl,.sh-shop .lbl)::before{width:8px;height:8px;background:var(--u3-light);box-shadow:0 0 12px #f3a33a55}
#stage #Shop.fg :is(.sh-team>h4,.sh-sel .lbl,.sh-shop .lbl)::after{background:linear-gradient(90deg,#77613d,transparent)}
#stage #Shop.fg .sh-sel .lbl .dim{font:400 13px/1.4 var(--u3-body);color:var(--u3-sub);letter-spacing:0;text-transform:none}

/* Đội bạn: nét hổ phách dành cho người đang lên đồ. */
#stage #Shop.fg .sc-card{padding:13px;margin-bottom:14px;background:#101419;border:1px solid #3b4149;box-shadow:inset 0 1px #ffffff07}
#stage #Shop.fg .sc-card.sel{background:linear-gradient(105deg,#3c2a15,#161a20 75%);border-color:var(--u3-amber);box-shadow:inset 3px 0 var(--u3-amber),0 0 22px #f3a33a16}
#stage #Shop.fg .sc-card .h{gap:12px}
#stage #Shop.fg .sc-card .h>img{width:60px;height:80px;object-fit:cover;border-color:#71614a}
#stage #Shop.fg .sc-card .n{font-size:16px;line-height:1.4}
#stage #Shop.fg .sc-card .PlanTag{font-size:12px;line-height:1.4;padding:3px 6px;border-color:#726650;color:#ece6da;background:#1c2229}
#stage #Shop.fg .sc-card .ab{gap:5px;margin-top:9px}
#stage #Shop.fg .sc-card .ab img{width:31px;height:31px;box-shadow:0 2px 8px #0005}
#stage #Shop.fg .sc-card .pp{gap:4px;margin:11px 0 9px;flex-wrap:wrap}
#stage #Shop.fg .sc-card .pp button{width:42px;height:42px;opacity:1;background:#181d23;border-color:#51575d}
#stage #Shop.fg .sc-card .pp button.on{background:#48341b;border-color:var(--u3-amber)}
#stage #Shop.fg .sc-card .pp button em{font:600 14px var(--u3-display)}
#stage #Shop.fg .sc-card .pn{font-size:14px;color:var(--u3-light)}
#stage #Shop.fg .sc-card .who{font-size:13px;color:var(--u3-sub)}
#stage #Shop.fg .sc-card .lnr button{font-size:13px;min-height:34px;color:#ddd3c2;border-color:#4a5159}
#stage #Shop.fg .sc-card .lnr button.on{color:#ece6da;border-color:var(--lc);background:#24303a}
#stage #Shop.fg.st-build .sc-card .pp button.on{width:36px;height:36px}
#stage #Shop.fg .sc-card .slots{margin-top:9px;gap:4px}
#stage #Shop.fg .sc-card .slots .sl{width:41px;height:30px}

/* Nhân vật RPG: chân dung lớn, kỹ năng độc lập và chỉ số mô phỏng xanh rune. */
#stage #Shop.fg .fg-hero{position:relative;display:grid;grid-template-columns:138px minmax(0,1fr);gap:19px;align-items:center;padding:18px;background:radial-gradient(at 10% 10%,#79512655,transparent 70%),linear-gradient(110deg,#2d241b,#151b22);border:1px solid #806744;box-shadow:inset 0 0 0 4px #0e1216,0 8px 22px #0005;min-height:220px}
#stage #Shop.fg .fg-hero>img{width:138px;height:184px;border:1px solid #b98d50;object-fit:cover;box-shadow:0 6px 15px #0008}
#stage #Shop.fg .fg-hi{min-width:0;gap:12px;padding-right:0}
/* H4 của Forge dùng important; chỉ đè kiểu chữ của thẻ tướng. */
#stage #Shop.fg .fg-hi h4{font:700 29px/1.35 var(--u3-display)!important;color:var(--u3-text)!important;white-space:normal;overflow:visible;letter-spacing:0!important}
#stage #Shop.fg .fg-hi h4 span{display:block;font:500 16px/1.5 var(--u3-body);margin-left:0;color:var(--u3-sub)}
#stage #Shop.fg .fg-chip{height:30px;padding:4px 9px;font-size:13px;line-height:1.3;color:#e8dfd0;border-color:#686052;background:#171c22}
#stage #Shop.fg .fg-hi .ab{gap:7px}
#stage #Shop.fg .fg-hi .ab img{width:42px;height:42px;border-color:#76828a;box-shadow:0 3px 8px #0007}
#stage #Shop.fg .fg-wr{grid-column:1/-1;flex-direction:row;align-items:baseline;justify-content:space-between;border-top:1px solid #665239;padding-top:12px;margin-top:0;gap:12px}
#stage #Shop.fg .fg-wr em{font:500 13px var(--u3-body);letter-spacing:.5px;color:var(--u3-sub)}
#stage #Shop.fg .fg-wr b{font:700 43px/1 var(--u3-display);color:var(--u3-cyan)}
#stage #Shop.fg .fg-wr i{font-size:14px;color:#c6e5de}
#stage #Shop.fg .slots.big{gap:9px;width:100%;margin-bottom:5px}
#stage #Shop.fg .slots.big .sl{background:linear-gradient(#0b0e12,#1c242c);border-color:#75644a;aspect-ratio:88/64;min-height:58px;box-shadow:inset 0 0 15px #0008}
#stage #Shop.fg .slots.big .sl.empty{border-color:#545c65}
#stage #Shop.fg .slots.big .sl.empty::after{content:'+';position:absolute;inset:0;display:grid;place-items:center;font:500 25px var(--u3-display);color:#b8b1a3}

/* Ba mốc là trục chính. Đồ dùng ETA hiện có, xếp theo cột phút. */
#stage #Shop.fg .fg-bands{gap:12px;position:relative}
#stage #Shop.fg .fg-band{grid-template-columns:112px minmax(0,1fr);border-color:#47525d;background:#10151b;box-shadow:inset 0 1px #ffffff08;cursor:pointer;min-height:112px}
#stage #Shop.fg .fg-band.on{border-color:var(--u3-light);background:linear-gradient(90deg,#523715,#1b2024 50%,#171c21);box-shadow:0 0 0 1px #f3a33a40,0 0 25px #f3a33a24}
#stage #Shop.fg .fb-h{padding:15px 12px;border-right-color:#58472d;gap:8px}
#stage #Shop.fg .fb-h b{font:700 30px/1.1 var(--u3-display);color:var(--u3-text)}
#stage #Shop.fg .fb-h em{font:500 13px/1.5 var(--u3-body);color:var(--u3-sub)}
#stage #Shop.fg .fb-its{position:relative;display:grid;grid-template-columns:repeat(15,minmax(0,1fr));grid-auto-flow:row;align-content:start;align-items:start;gap:6px 0;min-height:110px;padding:28px 10px 8px;background:repeating-linear-gradient(90deg,transparent 0 calc(33.333% - 1px),#77818b20 calc(33.333% - 1px) 33.333%)}
#stage #Shop.fg .fb-its::before{content:attr(data-axis);position:absolute;left:10px;right:10px;top:7px;white-space:pre;font:500 12px/1 var(--u3-display);word-spacing:18px;color:#c3bfb6;border-bottom:1px solid #5a626d60;padding-bottom:6px}
#stage #Shop.fg .fb-it{grid-column:var(--u3-col,1)/span var(--u3-span,3);width:auto;min-width:0;position:relative;align-self:start;margin-right:5px;padding:3px 3px 19px;border:1px solid #b79456;background:#101820;box-shadow:0 3px 10px #0005}
#stage #Shop.fg .fb-it img{width:100%;aspect-ratio:88/64}
#stage #Shop.fg .fb-it i{position:absolute;right:3px;bottom:1px;left:3px;text-align:center;font:600 15px/19px var(--u3-display);color:var(--u3-light);background:#101820}
#stage #Shop.fg .fb-it.late{border-color:var(--u3-d)}
#stage #Shop.fg .fb-it.late i{color:#ffb2a3}
#stage #Shop.fg .fb-add{grid-column:span 4;min-width:0;height:67px;padding:6px;font-size:12px;color:var(--u3-sub);white-space:normal;text-align:center;border-color:#6d7278;background:#1c242c50}
#stage #Shop.fg .fb-its::before{display:none}
#stage #Shop.fg .u3-axis{position:absolute;top:6px;left:10px;right:10px;display:flex;justify-content:space-between;padding-bottom:5px;border-bottom:1px solid #77818b66;font:500 13px var(--u3-display);color:var(--u3-sub);pointer-events:none}
#stage #Shop.fg .fb-it{width:86px;max-width:100%}
#stage #Shop.fg .fg-hero{grid-template-columns:118px minmax(0,1fr) 116px;gap:15px;min-height:210px;padding:18px}
#stage #Shop.fg .fg-hero>img{width:118px;height:157px}
#stage #Shop.fg .fg-wr{grid-column:auto;align-items:center;justify-content:center;flex-direction:column;padding:14px 5px;border:1px solid #577985;border-radius:4px;background:radial-gradient(ellipse at center,#46c9d61c,#101a21);gap:7px;margin:0;text-align:center}
#stage #Shop.fg .fg-wr em{font-size:12px;letter-spacing:0}
#stage #Shop.fg .fg-wr i{font-size:12px}
#stage #Shop.fg .fg-band.on .fb-add{color:var(--u3-light);border-color:#b78a4b}
#stage #Shop.fg .needs .nb{font-size:15px;grid-template-columns:190px 1fr;margin:9px 0;color:var(--u3-sub)}
#stage #Shop.fg .needs .nb i{height:7px;background:linear-gradient(90deg,#227b8b,#46c9d6);box-shadow:0 0 12px #46c9d610}
#stage #Shop.fg .chain .ch{padding:12px;background:#10151b;border-color:#414a53}
#stage #Shop.fg .chain .ch :is(.t,.n,.v){font-size:14px;color:var(--u3-sub)}
#stage #Shop.fg .lnb-row{border-color:#3d4853;background:#10151b;min-height:76px}
#stage #Shop.fg .lnb-n{font-size:14px;color:var(--u3-sub)}
#stage #Shop.fg .lnb-n em{font-size:13px;color:var(--u3-sub)}
#stage #Shop.fg .lnb-h b{font-size:14px}
#stage #Shop.fg .lnb>.dim{font-size:14px;color:var(--u3-sub)}
#stage #Shop.fg .enemies .er{border-left-color:var(--u3-d);background:#191b20;padding:8px}

/* Shop: khung theo nhóm có sẵn, giữ giá thật và vùng cuộn. */
#stage #Shop.fg .shop-search{display:flex;align-items:center;gap:18px;font:600 19px var(--u3-display);letter-spacing:.7px;color:#dcd3c3;padding-bottom:15px;border-bottom-color:#614c30;margin-bottom:14px}
#stage #Shop.fg #shopQ{flex:1;min-width:0;width:auto;min-height:46px;font:400 15px var(--u3-body);border-color:#687077;background:#0d1116;color:var(--u3-text);padding:11px 14px}
#stage #Shop.fg #shopQ::placeholder{color:#b6afa3;opacity:1}
#stage #Shop.fg .sh-shop .stabs{margin-bottom:17px;border-color:#515a63;gap:0}
#stage #Shop.fg .sh-shop .stabs button{font:600 21px var(--u3-display);letter-spacing:.4px;min-height:50px;color:var(--u3-sub)}
#stage #Shop.fg .sh-shop .stabs button.on{background:#3a2b18;color:var(--u3-light);box-shadow:inset 0 -3px var(--u3-amber)}
#stage #Shop.fg .sh-shop .cols{min-height:0;flex:1;gap:10px;overflow:auto}
#stage #Shop.fg .sh-shop .col{padding:10px 6px;border-color:#3d4650;background:linear-gradient(#17212a,#10151c)}
#stage #Shop.fg .sh-shop .col h5{font:600 16px/1.3 var(--u3-display);color:#d4bc93;letter-spacing:.6px;white-space:normal;min-height:44px;margin:0 0 10px}
#stage #Shop.fg .sh-shop .ci{gap:9px}
#stage #Shop.fg .sh-shop .it{position:relative;display:flex;flex-direction:column;min-width:0;overflow:hidden;background:#111922;border:1px solid #5f6973;box-shadow:inset 0 1px #ffffff10,0 4px 10px #0004}
#stage #Shop.fg .sh-shop .it.part{border-color:#756b55}
/* Ba mức giá thật; không gán độ hiếm cho item Dota. */
#stage #Shop.fg .sh-shop .it.u3-cost-low{border-color:#657782}
#stage #Shop.fg .sh-shop .it.u3-cost-mid{border-color:#779a99;box-shadow:inset 0 2px #46c9d622}
#stage #Shop.fg .sh-shop .it.u3-cost-high{border-color:#c49b58;box-shadow:inset 0 2px #ffc46b44,0 0 12px #ffc46b0c}
#stage #Shop.fg .sh-shop .it.fit{border-color:var(--u3-cyan);box-shadow:0 0 0 1px #46c9d650}
#stage #Shop.fg .sh-shop .it img{width:100%;aspect-ratio:88/64;object-fit:cover}
#stage #Shop.fg .sh-shop .it .item-name{display:block;position:static;width:100%;padding:7px 6px 3px;font:500 13px/1.35 var(--u3-body);color:var(--u3-text);white-space:normal;overflow:visible;min-height:41px}
#stage #Shop.fg .sh-shop .it .c{position:static;display:flex;justify-content:center;min-height:27px;font:600 17px/1.4 var(--u3-display);color:var(--u3-light);background:#0d1319;padding:3px 6px;border-top:1px solid #69717b40}
#stage #Shop.fg .sh-shop .it .c .ui-icon{width:15px;height:15px}
#stage #Shop.fg .sh-shop .it.no{opacity:1;border-style:dashed;border-color:#49515a}
#stage #Shop.fg .sh-shop .it.no img{filter:grayscale(.8) brightness(.65)}
#stage #Shop.fg .sh-shop>.dim{font-size:13px;color:var(--u3-sub);padding-top:12px}
#stage #Shop.fg .sh-shop .ana{padding:17px;border-color:#4d626e;background:#112029;font-size:15px;color:var(--u3-sub)}
#stage #Shop.fg .sh-shop .ana .an-big{font:600 27px var(--u3-display);color:var(--u3-cyan)}
#stage #Shop.fg .dplus .dp-st{grid-template-columns:100px minmax(0,1fr);margin-bottom:17px;gap:12px}
#stage #Shop.fg .dplus .dp-h{font:600 18px var(--u3-display);color:var(--u3-sub)}
#stage #Shop.fg .dplus .dp-it{background:#111d25;border-color:#596876;padding-bottom:5px}
#stage #Shop.fg .dplus .dp-it :is(b,span,em){font-family:var(--u3-display);color:var(--u3-cyan);font-size:17px}
#stage #Shop.fg .dplus .dp-it em{font:500 13px var(--u3-body);color:var(--u3-sub)}
/* Forge gốc đặt shadow important cho tap2; ghi đè đúng trạng thái chạm. */
#stage #Shop.fg .tap2{outline:4px solid #ffc46b;outline-offset:2px;box-shadow:0 0 0 2px #151515,0 0 28px #f3a33a88!important;filter:brightness(1.16)}
#stage #Shop.fg .tap2::after{content:'CHẠM LẦN 2';position:absolute;left:0;right:0;top:0;z-index:5;background:#ffc46b;color:#211407;font:700 12px/1.5 var(--u3-body);padding:4px;text-align:center;pointer-events:none}

/* 2. Bàn xem trận: bản đồ ở trung tâm, hai đội hai cánh. */
#stage #Match .mt-top{left:28px;right:28px;top:24px;height:144px;display:grid;grid-template-columns:1fr 530px 1fr;gap:25px;align-items:center;padding:15px 28px;background:linear-gradient(110deg,#183025,#151b20 38%,#151b20 62%,#38221d);border:1px solid #59636b;box-shadow:inset 0 1px #ffffff20,0 12px 35px #0006;clip-path:polygon(0 0,calc(100% - 16px) 0,100% 16px,100% 100%,0 100%)}
#stage #Match .mt-top::before{display:none}
#stage #Match .mt-top .tm{display:flex;align-items:center;gap:18px;min-width:0}
#stage #Match .mt-top .tm.R{justify-content:flex-start;color:var(--u3-r)}
#stage #Match .mt-top .tm.D{justify-content:flex-end;color:var(--u3-d)}
#stage #Match .mt-top .tm.D{padding-right:100px}
#stage #Match .mt-top .tm>img{width:54px;height:62px;object-fit:contain;filter:drop-shadow(0 3px 8px #0008)}
#stage #Match .mt-top .sc{font:700 76px/1 var(--u3-display);text-shadow:0 0 22px currentColor}
#stage #Match .u3-faction{font:600 23px var(--u3-display);letter-spacing:2px}
#stage #Match .u3-side-head{display:flex;flex-direction:column;gap:9px;min-width:0}
#stage #Match .tm.D .u3-side-head{text-align:right;align-items:flex-end}
#stage #Match .u3-roster{display:flex;gap:5px}
#stage #Match .u3-roster img{width:34px;height:45px;object-fit:cover;border:1px solid #829087;box-shadow:0 3px 8px #0005}
#stage #Match .tm.D .u3-roster img{border-color:#95766e}
#stage #Match .mt-top .mid{display:flex;align-items:center;flex-direction:column;gap:9px;min-width:0}
#stage #Match .mt-top .mid::before{content:'TRẬN MÔ PHỎNG';font:600 12px var(--u3-body);letter-spacing:2px;color:var(--u3-sub)}
#stage #Match .mt-top .clk{font:600 49px/1 var(--u3-display);color:var(--u3-text);text-shadow:0 0 20px #ffc46b14}
#stage #Match .mt-top .ctl{gap:5px;display:flex;justify-content:center;flex-wrap:nowrap}
#stage #Match .mt-top .ctl button{min-height:34px;padding:5px 10px;font:600 15px var(--u3-body);background:#202730;border:1px solid #5e6770;border-radius:2px;color:var(--u3-text)}
#stage #Match .mt-top .ctl button.on{background:#503918;border-color:var(--u3-light);color:var(--u3-light)}
#stage #Match .mt-cast{top:176px;left:28px;right:28px;height:32px;font:500 16px/1.5 var(--u3-body);color:var(--u3-sub);text-align:center;padding:4px;background:linear-gradient(90deg,transparent,#4e392233,transparent);overflow:hidden}
#stage #Match .mt-cast b.al{color:var(--u3-r)}
#stage #Match .mt-cast b.en{color:var(--u3-d)}
#stage #Match .mt-map{left:calc((100% - 830px)/2);right:auto;top:222px;bottom:auto;width:830px;height:830px;aspect-ratio:1;overflow:hidden;background:#121a20;border:1px solid #88958b;padding:8px;box-shadow:0 0 0 5px #171e25,0 20px 55px #0008,inset 0 0 40px #0008}
#stage #Match .mt-map::before{content:'RADIANT ↙  /  DIRE ↗';position:absolute;left:20px;top:15px;z-index:2;font:600 13px var(--u3-body);padding:5px 9px;color:var(--u3-text);background:#11191be6;border:1px solid #81948b60}
#stage #Match .mt-svg{width:100%;height:100%;border:0;display:block}
#stage #Match .mt-svg .ring{stroke-width:.5;filter:drop-shadow(0 0 .5px #000)}
#stage #Match .mt-svg .me .ring{stroke:#ffc46b;stroke-width:.8}
#stage #Match .mt-svg .boom{stroke-width:.4;filter:drop-shadow(0 0 1px #ffc46b);animation-duration:1.5s}
#stage #Match .mt-team{top:222px;bottom:auto;width:calc((100% - 934px)/2);height:550px;padding:36px 0 0;background:transparent;border:0}
#stage #Match .mt-team.R{left:28px;right:auto}
#stage #Match .mt-team.D{right:28px;left:auto}
#stage #Match .mt-team::before{position:absolute;left:0;right:0;top:0;height:29px;display:block;content:'RADIANT';font:600 22px/1 var(--u3-display);letter-spacing:1.5px;color:var(--u3-r);border-bottom:1px solid #446850}
#stage #Match .mt-team.D::before{content:'DIRE';color:var(--u3-d);border-color:#7d4c42}
#stage #Match .mt-row{position:relative;height:96px;margin:0 0 10px;padding:11px;display:grid;grid-template-columns:58px minmax(0,1fr);gap:13px;border:1px solid #4b565e;border-left:3px solid #5fbd7f;background:linear-gradient(110deg,#1b2724,#141a20);border-radius:0;box-shadow:inset 0 1px #ffffff09}
#stage #Match .mt-team.D .mt-row{border-left-color:var(--u3-d);background:linear-gradient(110deg,#30211f,#141a20)}
#stage #Match .mt-row .pt img{width:58px;height:73px;object-fit:cover;border:1px solid #7d8a82}
#stage #Match .mt-row .nm{font:600 17px/1.45 var(--u3-body);max-width:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-right:0;color:var(--u3-text)}
#stage #Match .mt-row .st{position:absolute;left:84px;bottom:13px;font:600 19px/1.1 var(--u3-display);display:flex;gap:12px;align-items:center;color:var(--u3-cyan)}
#stage #Match .mt-row .nw{color:var(--u3-cyan)}
#stage #Match .mt-row .its{position:absolute;bottom:12px;right:10px;display:flex;gap:3px}
#stage #Match .mt-row .its i{width:30px;height:23px;background-color:#0d141b;border:1px solid #5c6973;border-radius:0}
#stage #Match .mt-row .its i.new{border-color:var(--u3-light);animation:u3-purchase 1.2s ease-out}
#stage #Match .mt-row.me{border-color:var(--u3-light);background:linear-gradient(105deg,#513819,#17232a);box-shadow:inset 3px 0 var(--u3-light),0 0 18px #f3a33a1a}
#stage #Match .mt-row.isdead{border-left-color:#a98278;background:#211d20}
#stage #Match .mt-row.isdead .pt img{filter:grayscale(1) brightness(.6)}
#stage #Match .mt-row .dead{font:700 32px var(--u3-display);color:#ffd5cb;background:#261518c9;border:1px solid #b88273}
#stage #Match .mt-feed{left:auto;right:28px;top:800px;bottom:28px;width:calc((100% - 934px)/2);height:auto;display:flex;flex-direction:column;padding:18px;background:linear-gradient(#1b2028,#12161d);border:1px solid #4b565e;clip-path:polygon(0 0,calc(100% - 16px) 0,100% 16px,100% 100%,0 100%)}
#stage #Match .mt-feed h4,
#stage #Match .mt-bot h4{font:600 17px/1.2 var(--u3-display);letter-spacing:1px;color:var(--u3-sub);margin:0 0 12px;display:flex;align-items:center;gap:9px}
#stage #Match .mt-feed h4::before,
#stage #Match .mt-bot h4::before{content:'';width:7px;height:7px;background:var(--u3-light);transform:rotate(45deg);flex:none}
#stage #Match #feed{font:400 14px/1.6 var(--u3-body);overflow:auto;min-height:0;padding-right:4px;color:var(--u3-text)}
#stage #Match #feed>div{padding:9px 8px;margin-bottom:6px;border-left:2px solid #72777d;background:#0e151d}
#stage #Match #feed>div.kill:has(.fi.R:first-of-type){border-left-color:var(--u3-r)}
#stage #Match #feed>div.kill:has(.fi.D:first-of-type){border-left-color:var(--u3-d)}
#stage #Match #feed>div.big{background:#3f2d18;border-color:var(--u3-light)}
#stage #Match #feed .u3-first-blood{display:inline-block;margin-right:6px;padding:2px 5px;font-size:11px;color:#241608;background:#ffc46b}
#stage #Match #feed .t{font:600 14px var(--u3-display);color:var(--u3-sub);width:47px;display:inline-block}
#stage #Match #feed .fi{width:24px;height:24px;border-radius:2px;border:1px solid #748184}
#stage #Match #feed .fit{width:29px;height:22px;border:1px solid #a48856}
#stage #Match .mt-bot{left:28px;right:auto;top:800px;bottom:28px;width:calc((100% - 934px)/2);height:auto;display:flex;flex-direction:column;gap:10px;background:linear-gradient(#1b2028,#12161d);border:1px solid #4b565e;padding:18px;clip-path:polygon(0 0,calc(100% - 16px) 0,100% 16px,100% 100%,0 100%)}
#stage #Match .mt-bot .gw{min-height:0;flex:1}
#stage #Match .mt-bot svg{width:100%;height:100px;display:block;overflow:visible}
#stage #Match .mt-bot svg text{font-family:var(--u3-display);fill:var(--u3-text);font-size:19px}
#stage #Match .u3-lead-area{opacity:.22}
#stage #Match .mt-bot .tp{width:100%;flex:none;max-width:none}
#stage #Match .mt-bot .tp h4{margin-bottom:5px;font-size:14px}
#stage #Match .mt-bot .tbar{height:8px;border-radius:0;border:1px solid #6c6861}
#stage #Match .mt-bot .tl{font:500 12px var(--u3-body);color:var(--u3-sub);margin-top:4px}
#stage #Match .mt-end{backdrop-filter:blur(6px);background:radial-gradient(ellipse,#231d14d9,#080b0fe8)}
#stage #Match .mt-end .box{width:980px;padding:65px 75px;position:relative;background:radial-gradient(ellipse at 50% 0,#56724050,transparent 60%),linear-gradient(#222b28,#11191d);border:1px solid #a7c28d;border-radius:0;clip-path:polygon(0 0,calc(100% - 28px) 0,100% 28px,100% 100%,28px 100%,0 calc(100% - 28px));box-shadow:0 30px 90px #000b}
#stage #Match .mt-end .box::before{content:'ABILITY DRAFT / BÁO CÁO TRẬN';display:block;font:500 15px var(--u3-body);letter-spacing:2px;color:var(--u3-sub);margin-bottom:24px}
#stage #Match .mt-end .box.l{background:radial-gradient(ellipse at 50% 0,#783a3055,transparent 60%),linear-gradient(#2b2222,#11191d);border-color:#e09a87}
#stage #Match .mt-end .big{font:700 105px/1.1 var(--u3-display);letter-spacing:1px;color:var(--u3-r);text-shadow:0 0 55px #6cd48f30}
#stage #Match .mt-end .box.l .big{color:#ffa993;text-shadow:0 0 55px #e86a5928}
#stage #Match .mt-end .sub{font:500 24px var(--u3-body);color:var(--u3-text);margin:24px 0 32px}
#stage #Match .mt-end .Btn{min-height:60px;font-size:21px;padding:14px 30px}

/* 3. Báo cáo: banner, chỉ số thật, bài học; vùng cuộn tách khỏi nút cuối. */
#stage #Summary .sm-wrap{left:28px;right:28px;top:24px;bottom:24px;padding:0;display:flex;flex-direction:column;gap:0;overflow:hidden;border:1px solid #4d565f;background:linear-gradient(#191e25,#11151b);box-shadow:0 15px 45px #0005}
#stage #Summary:has(+ #PostChat.show) .sm-wrap{right:568px}
#stage #Summary .sm-head{flex:none;min-height:82px;padding:16px 24px;gap:24px;background:linear-gradient(#22262c,#181e25);border-bottom:1px solid #625036}
#stage #Summary .sm-title{font:700 35px/1.3 var(--u3-display);letter-spacing:0;color:var(--u3-text)}
#stage #Summary .sm-tabs{gap:8px}
#stage #Summary .sm-tabs button{padding:11px 18px;min-height:44px;background:#171f28;border-color:#667079;font-size:15px;color:var(--u3-sub)}
#stage #Summary .sm-tabs button.on{background:#4e391c;border-color:var(--u3-amber);color:var(--u3-light)}
#stage #Summary .u3-report-scroll{flex:1;min-height:0;overflow:auto;padding:22px 24px;display:flex;flex-direction:column;gap:19px}
#stage #Summary .report-banner{position:relative;flex:none;min-height:170px;padding:22px 24px;gap:24px;margin:0;border:1px solid #71a687;display:flex;align-items:center;background:radial-gradient(at 5% 40%,#6cd48f35,transparent 60%),linear-gradient(100deg,#213e32,#14202b);overflow:hidden;clip-path:polygon(0 0,calc(100% - 16px) 0,100% 16px,100% 100%,0 100%)}
#stage #Summary .report-banner::after{content:'';position:absolute;width:250px;height:250px;right:60px;top:-125px;border:1px solid #dcd8a61f;transform:rotate(45deg);pointer-events:none}
#stage #Summary .report-banner.loss{background:radial-gradient(at 5% 40%,#e86a5930,transparent 60%),linear-gradient(100deg,#43251e,#14202b);border-color:#b77c6c}
#stage #Summary .report-banner.art{background-size:cover;min-height:170px;text-align:left;justify-content:flex-start;box-shadow:inset 0 0 100px #000b}
/* Phủ lớp tối lên banner cosmetic để chữ không phụ thuộc màu ảnh. */
#stage #Summary .report-banner.art::before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#152b24eb,#141d26e6);pointer-events:none}
#stage #Summary .report-banner .result{font:700 64px/1.1 var(--u3-display);letter-spacing:1px;color:#b0f1c4;position:relative;z-index:1}
#stage #Summary .report-banner.loss .result{color:#ffc1b1}
#stage #Summary .report-banner .score{font:700 44px/1 var(--u3-display);color:var(--u3-text);position:relative;z-index:1}
#stage #Summary .report-banner .report-detail{font:400 14px/1.7 var(--u3-body);color:#d3d8d1;position:relative;z-index:1}
#stage #Summary .u3-personal{margin-left:auto;display:flex;align-items:center;gap:14px;padding-left:18px;border-left:1px solid #e0e9d13b;position:relative;z-index:1;min-width:0}
#stage #Summary .u3-personal img{width:65px;height:88px;object-fit:cover;border:1px solid var(--u3-light);box-shadow:0 6px 16px #0008}
#stage #Summary .u3-personal span{display:block;font:500 12px var(--u3-body);color:#d4dacd;letter-spacing:.6px}
#stage #Summary .u3-personal b{display:block;font:600 21px/1.3 var(--u3-display);color:#fff0d3}
#stage #Summary .u3-personal em{display:block;font:400 13px var(--u3-body);color:#d4dacd;font-style:normal;margin-top:4px}
#stage #Summary .u3-stat-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;flex:none}
#stage #Summary .u3-stat{padding:16px 14px;background:linear-gradient(#202b32,#141e25);border:1px solid #4a626c;box-shadow:inset 0 1px #ffffff0c;min-width:0}
#stage #Summary .u3-stat span{display:block;font:500 12px/1.4 var(--u3-body);letter-spacing:.3px;color:var(--u3-sub);min-height:34px}
#stage #Summary .u3-stat b{display:block;font:600 34px/1.15 var(--u3-display);color:var(--u3-cyan);margin-top:7px;white-space:nowrap}
#stage #Summary .u3-stat.gold b{color:var(--u3-light)}
/* Tài sản do mô phỏng là xanh rune; vàng thưởng thực nhận giữ hổ phách. */
#stage #Summary .u3-stat:nth-child(4) b{color:var(--u3-cyan)}
#stage #Summary .u3-stat small{display:block;font-size:12px;color:var(--u3-sub);margin-top:6px}
#stage #Summary .u3-stat.mm b{color:var(--u3-r)}
#stage #Summary .u3-stat.mm.loss b{color:#ffb5a6}
#stage #Summary .u3-lessons{flex:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
#stage #Summary .u3-lessons h3{grid-column:1/-1;margin:0;font:600 23px var(--u3-display);color:var(--u3-light);letter-spacing:.7px;display:flex;align-items:center;gap:10px}
#stage #Summary .u3-lessons h3::before{content:'';width:8px;height:8px;background:var(--u3-amber);transform:rotate(45deg)}
#stage #Summary .u3-lesson{border:1px solid #665235;border-top:2px solid var(--u3-amber);background:linear-gradient(#28251e,#171d24);padding:16px;min-width:0}
#stage #Summary .u3-lesson b{font:600 19px var(--u3-display);color:#ffe0ad}
#stage #Summary .u3-lesson p{font:400 14px/1.7 var(--u3-body);color:#ddd6c9;margin:8px 0 0}
#stage #Summary .match-line{font:600 23px var(--u3-display);letter-spacing:0;margin:0}
#stage #Summary .sim-top{gap:17px;flex-wrap:wrap;border:1px solid #3a5966;background:#101f28;padding:16px}
#stage #Summary .sim-top .big{font:600 29px var(--u3-display);color:var(--u3-cyan)}
#stage #Summary .sim-top .wbar{width:220px;height:9px}
/* Theme trước khóa ghi chú bằng important; giữ độ tương phản dễ đọc. */
#stage #Summary .sim-grid .dim{font:400 13px/1.5 var(--u3-body)!important;color:var(--u3-sub)!important}
#stage #Summary .sim-grid{display:grid;grid-template-columns:1.15fr 1fr;grid-template-rows:auto;gap:14px;min-height:0;flex:none}
#stage #Summary .sim-grid>.col{min-height:0;max-height:none;overflow:visible;border:1px solid #3e4e59;background:#131e26;padding:17px}
#stage #Summary .sim-grid>.col.story{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px}
#stage #Summary .sim-grid h4{font:600 18px var(--u3-display);letter-spacing:.6px;color:#d8d0c2;margin:0 0 10px}
#stage #Summary .sim-grid>.col.story h4{grid-column:1/-1}
#stage #Summary .pts{gap:13px}
#stage #Summary .pt table{font:400 13px/1.5 var(--u3-body);width:100%}
#stage #Summary .pt :is(td,th){padding:5px 3px}
#stage #Summary .pt th{font-size:12px;color:var(--u3-sub)}
#stage #Summary .pt img.mini{width:29px;height:39px;border:1px solid #6c7b7e}
#stage #Summary .pt tr.me td{background:#4d391a}
#stage #Summary .ln{font-size:14px;margin-bottom:12px;grid-template-columns:155px minmax(0,1fr)}
#stage #Summary .ln em{font-size:13px;color:var(--u3-sub)}
#stage #Summary .fac{font:400 14px/1.8 var(--u3-body);color:var(--u3-text)}
#stage #Summary .story div{font:400 14px/1.7 var(--u3-body);color:var(--u3-text);border-left-color:#ad8648;padding:10px 0 10px 12px}
#stage #Summary svg text{font-family:var(--u3-display);font-size:15px;fill:#c1c6c5}
#stage #Summary .legend{font-size:13px;margin-top:10px}
#stage #Summary .model-source,
#stage #Summary .lb-note,
#stage #Summary .sm-notes{font:400 13px/1.7 var(--u3-body);color:var(--u3-sub);margin:0}
/* Theme trước khóa số cột bằng important; đè đúng lưới báo cáo. */
#stage #Summary .sm-teams{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px;flex:none}
#stage #Summary .sm-team{padding:16px;background:#141e26;border-color:#526370}
#stage #Summary .sm-team h3{font:600 24px var(--u3-display);letter-spacing:1px;margin:0 0 12px}
#stage #Summary .sm-row{grid-template-columns:54px minmax(0,1fr)!important;padding:10px;margin:9px 0;gap:12px;background:#1a252e;border-color:#4f606d}
#stage #Summary .sm-row .p :is(img,video){width:54px;height:75px;object-fit:cover}
#stage #Summary .sm-row .n{font:400 14px/1.6 var(--u3-body);color:var(--u3-sub)}
/* Đè màu tên inline để đạt tương phản; màu phe giữ ở viền và tiêu đề. */
#stage #Summary .sm-row .n>b{color:var(--u3-text)!important;font-weight:600}
#stage #Summary .sm-row .n .bio{display:none}
#stage #Summary .sm-row .ab{gap:4px;display:flex;align-items:center;flex-wrap:wrap;margin:8px 0}
#stage #Summary .sm-row .ab>span img{width:33px;height:33px;border:1px solid #71838d}
#stage #Summary .sm-row .ab .itm img{width:30px;height:23px;border-color:#a38c60}
#stage #Summary .sm-row .meta{font:400 12px/1.6 var(--u3-body);color:var(--u3-sub)}
#stage #Summary .sm-row.local{background:linear-gradient(90deg,#47351a,#1b2930);border-color:var(--u3-amber);box-shadow:inset 2px 0 var(--u3-amber)}
#stage #Summary .sm-cnt{border:1px solid #665337;background:#2d251b;padding:16px;font:400 14px/1.6 var(--u3-body);color:var(--u3-text)}
#stage #Summary .sm-cnt-l{gap:8px;margin-top:10px}
#stage #Summary .sm-saved{font:400 13px var(--u3-body);color:#cae6d0;margin:0;padding:0}
#stage #Summary .sm-actions{position:relative;bottom:auto;flex:none;margin:0;padding:15px 22px;border-top:1px solid #6a5436;background:#1c2229;display:flex;flex-wrap:wrap;gap:9px;z-index:auto}
#stage #Summary .sm-actions .Btn{font-size:14px;min-height:44px;padding:10px 13px}

/* All chat: giữ giọng/sticker, ô nhập chiếm trọn một dòng. */
#stage #PostChat.show{position:absolute;left:auto;right:28px;top:24px;bottom:24px;width:516px;height:auto;display:flex;flex-direction:column;gap:12px;padding:20px;background:linear-gradient(#20272e,#121920);border:1px solid #67747e;box-shadow:inset 0 1px #ffffff13,0 16px 40px #0005;clip-path:polygon(0 0,calc(100% - 16px) 0,100% 16px,100% 100%,0 100%);z-index:35}
#stage #PostChat .pg-head{padding-bottom:14px;border-bottom:1px solid #826440;font:400 14px var(--u3-body);gap:9px;flex-wrap:wrap}
#stage #PostChat .pg-head>b{font:700 31px var(--u3-display);letter-spacing:.8px;color:#b0f1c4}
#stage #PostChat .pg-head>b.bad{color:#ffc1b1}
#stage #PostChat .pg-head>span{color:var(--u3-sub);white-space:normal}
#stage #PostChat .pg-head .Btn{font-size:14px;min-height:39px;padding:8px 13px}
#stage #PostChat #PgBar{height:3px;background:#323e46}
#stage #PostChat #PgBar i{background:linear-gradient(90deg,#c58022,#ffc46b)}
#stage #PostChat #PgLog{flex:1;min-height:0;overflow:auto;padding:12px 2px;margin:0}
#stage #PostChat #PgLog .pl{padding:11px 12px;background:#1a242d;border:1px solid #3c5363;border-radius:0;margin-bottom:12px;font:400 15px/1.6 var(--u3-body);color:var(--u3-text);overflow-wrap:anywhere}
#stage #PostChat #PgLog .pl em{color:var(--u3-sub);font-style:normal;font-size:13px}
#stage #PostChat #PgLog .pl .pl-emo{width:85px;height:85px;display:block;margin:8px 0 0;filter:drop-shadow(0 5px 6px #0005)}
#stage #PostChat .pg-in{display:flex;flex-wrap:wrap;gap:9px;flex:none}
#stage #PostChat .cw-btn{min-height:42px;padding:8px 12px;background:#403017;border:1px solid #ba9655;font:600 15px var(--u3-body);border-radius:2px;color:var(--u3-light)}
#stage #PostChat .pg-quick{flex:1;min-width:0;overflow:auto;gap:5px}
#stage #PostChat .pg-quick button{font-size:13px;padding:7px 9px;min-height:40px;white-space:nowrap;color:var(--u3-text);border-color:#596976;background:#1c2731}
#stage #PostChat #PgInput{flex:0 0 100%;order:3;min-height:46px;padding:12px 14px;background:#0d151d;border:1px solid #6a8290;border-radius:2px;font:400 15px var(--u3-body);color:var(--u3-text)}
#stage #PostChat #PgInput::placeholder{color:var(--u3-sub);opacity:1}
#stage #PostChat .pg-chips{gap:6px;max-height:116px;overflow:auto}
#stage #PostChat .pg-chips button{font:400 13px/1.4 var(--u3-body);padding:7px 10px;min-height:36px;border:1px solid #5c7282;background:#1b2731;color:var(--u3-text);border-radius:2px}
#stage #PostChat .pg-emo{flex:none;display:flex;gap:8px;flex-wrap:wrap;padding-top:10px;border-top:1px solid #4b5d67}
#stage #PostChat .pg-emo button{width:66px;height:66px;border:1px solid #927347;background:#282219;border-radius:2px;padding:5px}
#stage #PostChat .cw-i{font:500 16px var(--u3-body);background:#172530;border-color:#9b7842;min-height:60px}
/* Giữ wheel phủ sân khấu; clip ở panel sẽ cắt các lựa chọn. */
#stage #PostChat.show{clip-path:none;overflow:visible}
#stage #PostChat.show::before{content:'';position:absolute;right:-1px;top:-1px;width:17px;height:17px;background:#0d0f12;clip-path:polygon(0 0,100% 0,100% 100%);pointer-events:none}
#stage #PostChat .cw-ov{background:radial-gradient(ellipse,#0d0f12c9,#080b10ee);backdrop-filter:blur(3px)}
#stage #PostChat .cw{width:900px;height:720px;display:grid;grid-template-columns:1fr 220px 1fr;grid-template-rows:repeat(3,1fr);gap:20px;transform:translate(-50%,-50%)}
#stage #PostChat .cw-c{position:static;grid-area:2/2;width:200px;height:200px;transform:none;align-self:center;justify-self:center;background:radial-gradient(#473019,#111922);border-color:#c49a55}
/* Tọa độ wheel cũ viết inline; đè transform để chia tám ô không chồng chữ. */
#stage #PostChat .cw-i{position:static;min-width:180px;max-width:220px;padding:18px;transform:none!important;justify-self:center;align-self:center;border-radius:2px;box-shadow:0 8px 22px #0007}
#stage #PostChat .cw-i:nth-of-type(1){grid-area:1/2}
#stage #PostChat .cw-i:nth-of-type(2){grid-area:1/3}
#stage #PostChat .cw-i:nth-of-type(3){grid-area:2/3}
#stage #PostChat .cw-i:nth-of-type(4){grid-area:3/3}
#stage #PostChat .cw-i:nth-of-type(5){grid-area:3/2}
#stage #PostChat .cw-i:nth-of-type(6){grid-area:3/1}
#stage #PostChat .cw-i:nth-of-type(7){grid-area:2/1}
#stage #PostChat .cw-i:nth-of-type(8){grid-area:1/1}
#stage #PostChat .cw-tab{font:600 24px var(--u3-display);color:var(--u3-light)}
#stage #PostChat .cw-arr button{min-width:50px;min-height:40px;color:var(--u3-light);background:#161f28;border:1px solid #917440}
#stage #PostChat .cw-c .dim{font-size:14px}

/* Cảm ứng 2340×1080: ba cột thoáng, chữ ít nhất 20px, nút 64px trở lên. */
html.touch #stage #Shop.fg,
html.touch #stage #Match,
html.touch #stage #Summary,
html.touch #stage #PostChat{font-size:24px}
html.touch #stage #Shop.fg :is(button,input),
html.touch #stage #Match button,
html.touch #stage #Summary button,
html.touch #stage #PostChat :is(button,input){min-height:64px;font-size:24px}
html.touch #stage #Shop.fg .sh-head{height:108px;padding-right:150px}
html.touch #stage #Shop.fg .sh-head .sm-title{font-size:49px}
html.touch #stage #Shop.fg .sh-head .sm-title::before{font-size:20px}
html.touch #stage #Shop.fg .stages span{font-size:22px;min-height:64px;padding:12px 17px}
html.touch #stage #Shop.fg #ShopTimer span{font-size:22px}
html.touch #stage #Shop.fg #ShopTimer b{font-size:55px}
html.touch #stage #Shop.fg .sh-head .Btn{font-size:24px;min-height:72px}
/* Theme cũ khóa lưới cảm ứng bằng important. */
html.touch #stage #Shop.fg .sh-grid{top:152px;grid-template-columns:390px 860px minmax(0,1fr)!important;grid-template-rows:minmax(0,1fr);overflow:visible}
html.touch #stage #Shop.fg :is(.sh-team,.sh-sel,.sh-shop){padding:23px;overflow:auto;height:auto;min-height:0;max-height:none}
html.touch #stage #Shop.fg .sh-team>h4 .dim{font-size:20px}
html.touch #stage #Shop.fg :is(.sh-team>h4,.sh-sel .lbl,.sh-shop .lbl){font-size:26px!important}
html.touch #stage #Shop.fg .sh-sel .lbl .dim{font-size:20px;line-height:1.4}
html.touch #stage #Shop.fg .sc-card{padding:15px}
html.touch #stage #Shop.fg .sc-card .h>img{width:70px;height:94px}
html.touch #stage #Shop.fg .sc-card .n{font-size:24px;line-height:1.35}
/* Dùng cùng độ ưu tiên selector với nhãn Forge cũ. */
html.touch #stage #Shop.fg .sc-card .n .PlanTag{font-size:20px}
html.touch #stage #Shop.fg .sc-card .ab img{width:41px;height:41px}
html.touch #stage #Shop.fg .sc-card .pp button{min-width:54px;height:64px;min-height:64px;flex:1}
html.touch #stage #Shop.fg .sc-card .pp button em{font-size:24px}
html.touch #stage #Shop.fg .sc-card :is(.pn,.who){font-size:20px;line-height:1.45}
html.touch #stage #Shop.fg .sc-card .lnr{flex-wrap:wrap}
html.touch #stage #Shop.fg .sc-card .lnr button{min-height:64px;font-size:20px;flex:1 1 40%;padding:8px}
/* Forge khóa chiều cao lane ở bước lên đồ. */
html.touch #stage #Shop.fg.st-build .sc-card .lnr button.on{min-height:64px!important;height:64px}
html.touch #stage #Shop.fg.st-build .sc-card .pp button.on{min-width:60px;height:64px}
html.touch #stage #Shop.fg .sc-card .slots .sl{width:47px;height:35px}
html.touch #stage #Shop.fg .fg-hero{grid-template-columns:154px minmax(0,1fr);gap:23px;padding:22px;min-height:270px}
html.touch #stage #Shop.fg .fg-hero>img{width:154px;height:205px}
html.touch #stage #Shop.fg .fg-hi h4{font-size:40px!important}
html.touch #stage #Shop.fg .fg-hi h4 span{font-size:24px}
html.touch #stage #Shop.fg .fg-chip{font-size:22px;height:auto;min-height:43px;padding:6px 10px}
html.touch #stage #Shop.fg .fg-chip .posI{width:28px;height:28px}
html.touch #stage #Shop.fg .fg-hi .ab img{width:57px;height:57px}
html.touch #stage #Shop.fg .fg-wr em{font-size:22px}
html.touch #stage #Shop.fg .fg-wr b{font-size:55px}
html.touch #stage #Shop.fg .fg-wr i{font-size:23px}
html.touch #stage #Shop.fg .slots.big .sl{min-height:76px;height:76px;aspect-ratio:auto}
html.touch #stage #Shop.fg .slots.big .sl.empty::after{font-size:38px}
html.touch #stage #Shop.fg .fg-band{grid-template-columns:140px minmax(0,1fr);min-height:140px}
html.touch #stage #Shop.fg .fb-h b{font-size:39px}
html.touch #stage #Shop.fg .fb-h em{font-size:21px}
html.touch #stage #Shop.fg .fb-its{padding-top:37px;min-height:140px}
html.touch #stage #Shop.fg .fb-its::before{font-size:20px;top:10px;padding-bottom:8px}
html.touch #stage #Shop.fg .fb-it{padding-bottom:30px}
html.touch #stage #Shop.fg .fb-it i{font-size:24px;line-height:28px}
html.touch #stage #Shop.fg .fb-add{height:98px;font-size:20px}
html.touch #stage #Shop.fg .needs .nb{font-size:24px;grid-template-columns:300px 1fr;line-height:1.4}
html.touch #stage #Shop.fg .chain .ch :is(.t,.n,.v){font-size:22px}
html.touch #stage #Shop.fg .chain .ch{grid-template-columns:210px minmax(0,1fr) 90px;gap:10px}
html.touch #stage #Shop.fg .chain .ch :is(.l,b){font-size:22px}
html.touch #stage #Shop.fg .lnb-row{grid-template-columns:220px 1fr auto;min-height:110px}
html.touch #stage #Shop.fg .lnb-n,
html.touch #stage #Shop.fg .lnb-n em,
html.touch #stage #Shop.fg .lnb-h b,
html.touch #stage #Shop.fg .lnb>.dim{font-size:22px;color:var(--u3-sub)}
html.touch #stage #Shop.fg .lnb-h{width:70px;height:85px}
html.touch #stage #Shop.fg .lnb-row .lw{font-size:24px}
html.touch #stage #Shop.fg .shop-search{font-size:27px;gap:20px}
html.touch #stage #Shop.fg #shopQ{font-size:23px;min-height:66px}
html.touch #stage #Shop.fg .sh-shop .stabs button{font-size:30px;min-height:68px}
/* Forge khóa shop sáu cột; cảm ứng dùng ba nhóm, hai món mỗi hàng. */
html.touch #stage #Shop.fg .sh-shop .cols.c6{grid-template-columns:repeat(3,minmax(0,1fr))!important}
html.touch #stage #Shop.fg .sh-shop .cols.c6 .ci{grid-template-columns:repeat(2,minmax(0,1fr))}
html.touch #stage #Shop.fg .sh-shop .col h5{font-size:24px;min-height:35px}
html.touch #stage #Shop.fg .sh-shop .it .item-name{font-size:20px;line-height:1.5;min-height:62px;padding:9px 6px}
html.touch #stage #Shop.fg .sh-shop .it .c{font-size:25px;min-height:40px}
html.touch #stage #Shop.fg .sh-shop .it .c .ui-icon{width:23px;height:23px}
html.touch #stage #Shop.fg .sh-shop>.dim{font-size:20px}
html.touch #stage #Shop.fg .ana{font-size:23px}
html.touch #stage #Shop.fg .ana .an-big{font-size:35px}
html.touch #stage #Shop.fg .dplus .dp-st{grid-template-columns:135px 1fr}
html.touch #stage #Shop.fg .dplus .dp-row{grid-template-columns:repeat(3,minmax(0,1fr))}
html.touch #stage #Shop.fg .dplus .dp-h{font-size:25px}
html.touch #stage #Shop.fg .dplus .dp-it :is(b,span){font-size:28px}
html.touch #stage #Shop.fg .dplus .dp-it em{font-size:20px}
html.touch #stage #Shop.fg .tap2::after{font-size:20px}
html.touch #stage #Shop.fg .fg-hero{grid-template-columns:134px minmax(0,1fr) 155px;min-height:220px;padding:18px;gap:18px}
html.touch #stage #Shop.fg .fg-hero>img{width:134px;height:179px}
html.touch #stage #Shop.fg .fg-hi{gap:8px}
html.touch #stage #Shop.fg .fg-hi h4{font-size:34px!important}
html.touch #stage #Shop.fg .fg-hi h4 span{font-size:22px}
html.touch #stage #Shop.fg .fg-chip{font-size:20px;min-height:36px;padding:4px 8px}
html.touch #stage #Shop.fg .fg-hi .ab img{width:48px;height:48px}
html.touch #stage #Shop.fg .fg-wr em,
html.touch #stage #Shop.fg .fg-wr i{font-size:20px}
html.touch #stage #Shop.fg .fb-it{width:96px}
html.touch #stage #Shop.fg .u3-axis{font-size:20px}
/* Thu gọn khoảng trống để thấy cả ba mốc ở khung đầu tiên. */
html.touch #stage #Shop.fg .sh-sel .lbl{margin:14px 0 8px}
html.touch #stage #Shop.fg .fg-bands{gap:10px}

html.touch #stage #Match .mt-top{grid-template-columns:1fr 630px 1fr;height:150px;padding:10px 28px}
html.touch #stage #Match .u3-faction{font-size:31px}
html.touch #stage #Match .u3-roster img{width:43px;height:55px}
html.touch #stage #Match .mt-top .mid{gap:5px}
html.touch #stage #Match .mt-top .mid::before{display:none}
html.touch #stage #Match .mt-top .clk{font-size:56px}
html.touch #stage #Match .mt-top .ctl button{font-size:22px;min-height:64px;padding:7px 15px}
html.touch #stage #Match .mt-cast{font-size:23px;height:36px;top:180px}
html.touch #stage #Match .mt-row{height:97px;grid-template-columns:63px minmax(0,1fr);padding:9px 12px;gap:14px}
html.touch #stage #Match .mt-row .pt img{width:63px;height:77px}
html.touch #stage #Match .mt-row .nm{font-size:25px;line-height:1.35}
html.touch #stage #Match .mt-row .st{left:92px;font-size:25px;bottom:13px;gap:20px}
html.touch #stage #Match .mt-row .its{display:flex;gap:5px;bottom:12px;right:12px}
html.touch #stage #Match .mt-row .its i{width:38px;height:28px}
html.touch #stage #Match .mt-team::before{font-size:29px}
html.touch #stage #Match .mt-feed h4,
html.touch #stage #Match .mt-bot h4{font-size:25px}
html.touch #stage #Match #feed{font-size:22px;line-height:1.55}
html.touch #stage #Match #feed>div{font-size:22px;line-height:1.55}
html.touch #stage #Match #feed .t{font-size:23px;width:70px}
html.touch #stage #Match #feed .u3-first-blood{font-size:20px}
html.touch #stage #Match .mt-map::before{font-size:20px}
html.touch #stage #Match .mt-bot .tp h4,
html.touch #stage #Match .mt-bot .tl{font-size:20px}
/* SVG lead cao 100px, chữ nguồn 32px cho cỡ hiển thị ít nhất 20px. */
html.touch #stage #Match .mt-bot svg text{font-size:32px}
html.touch #stage #Match .mt-end .box{width:1200px}
html.touch #stage #Match .mt-end .box::before{font-size:24px}
html.touch #stage #Match .mt-end .sub{font-size:30px}
html.touch #stage #Match .mt-end .Btn{font-size:28px;min-height:76px}

html.touch #stage #Summary:has(+ #PostChat.show) .sm-wrap{right:638px}
html.touch #stage #Summary .sm-head{min-height:102px;flex-wrap:nowrap}
html.touch #stage #Summary .sm-title{font-size:44px;white-space:nowrap}
html.touch #stage #Summary .sm-tabs button{font-size:24px;min-height:64px}
html.touch #stage #Summary .report-banner{min-height:208px;padding:25px;gap:28px}
html.touch #stage #Summary .report-banner .result{font-size:76px}
html.touch #stage #Summary .report-banner .score{font-size:53px}
html.touch #stage #Summary .report-banner .report-detail{font-size:22px;line-height:1.6}
html.touch #stage #Summary .u3-personal img{width:83px;height:112px}
html.touch #stage #Summary .u3-personal span,
html.touch #stage #Summary .u3-personal em{font-size:20px}
html.touch #stage #Summary .u3-personal b{font-size:28px}
html.touch #stage #Summary .u3-stat-grid{gap:12px}
html.touch #stage #Summary .u3-stat{padding:18px}
html.touch #stage #Summary .u3-stat span{font-size:20px;min-height:52px}
html.touch #stage #Summary .u3-stat b{font-size:43px}
html.touch #stage #Summary .u3-stat small{font-size:20px}
html.touch #stage #Summary .u3-lessons h3{font-size:31px}
html.touch #stage #Summary .u3-lesson b{font-size:27px}
html.touch #stage #Summary .u3-lesson p{font-size:22px}
html.touch #stage #Summary .match-line{font-size:28px}
html.touch #stage #Summary .sim-top{font-size:24px}
html.touch #stage #Summary .sim-top .big{font-size:37px}
html.touch #stage #Summary .sim-grid{min-height:0;grid-template-columns:1.1fr 1fr}
html.touch #stage #Summary .sim-grid>.col{max-height:none;overflow:visible;padding:20px}
html.touch #stage #Summary .sim-grid>.col.story{grid-template-columns:1fr 1fr}
html.touch #stage #Summary .sim-grid h4{font-size:28px}
html.touch #stage #Summary .sim-grid .dim{font-size:20px!important}
html.touch #stage #Summary .pts{grid-template-columns:1fr}
html.touch #stage #Summary .pt table{font-size:22px;line-height:1.6}
html.touch #stage #Summary .pt :is(th,h4){font-size:23px}
html.touch #stage #Summary .pt img.mini{width:45px;height:60px}
html.touch #stage #Summary .ln{font-size:23px;grid-template-columns:220px minmax(0,1fr)}
html.touch #stage #Summary .ln em{font-size:20px}
html.touch #stage #Summary .fac,
html.touch #stage #Summary .story div{font-size:23px}
html.touch #stage #Summary :is(.model-source,.lb-note,.sm-notes,.legend){font-size:20px}
/* Nhãn chú thích và đội hình có cỡ chữ inline từ renderer cũ. */
html.touch #stage #Summary .u3-report-scroll>.dim,
html.touch #stage #Summary .pt :is(.ok,.bad){font-size:20px!important}
html.touch #stage #Summary svg text{font-size:32px}
html.touch #stage #Summary .sm-teams{grid-template-columns:repeat(2,minmax(0,1fr))!important}
html.touch #stage #Summary .sm-team h3{font-size:31px}
html.touch #stage #Summary .sm-row{grid-template-columns:68px minmax(0,1fr)!important;padding:13px}
html.touch #stage #Summary .sm-row .p :is(img,video){width:68px;height:92px}
html.touch #stage #Summary .sm-row .n{font-size:22px}
/* Nhãn rank có font inline 13px trong markup gốc. */
html.touch #stage #Summary .sm-row .n>span{font-size:20px!important}
html.touch #stage #Summary .sm-row .PlanTag{font-size:20px;padding:4px 7px}
html.touch #stage #Summary .sm-row .ab>span img{width:44px;height:44px}
html.touch #stage #Summary .sm-row .ab .itm img{width:39px;height:29px}
html.touch #stage #Summary .sm-row .meta{font-size:20px}
html.touch #stage #Summary .sm-row .meta .ytb{font-size:20px}
html.touch #stage #Summary .sm-cnt{font-size:23px}
html.touch #stage #Summary .sm-saved{font-size:22px}
html.touch #stage #Summary .sm-actions .Btn{font-size:22px;min-height:64px;padding:12px 16px}

html.touch #stage #PostChat.show{width:582px;padding:24px;gap:14px}
html.touch #stage #PostChat .pg-head{font-size:22px}
html.touch #stage #PostChat .pg-head>b{font-size:41px}
html.touch #stage #PostChat .pg-head .Btn{font-size:22px;min-height:64px}
html.touch #stage #PostChat .pg-t{font-size:20px}
html.touch #stage #PostChat .pg-t b{font-size:24px}
html.touch #stage #PostChat #PgLog .pl{font-size:24px;line-height:1.5;padding:15px}
html.touch #stage #PostChat #PgLog .pl em{font-size:20px}
html.touch #stage #PostChat #PgLog .pl .pl-emo{width:110px;height:110px}
html.touch #stage #PostChat .pg-quick button{font-size:20px;min-height:64px;padding:10px}
html.touch #stage #PostChat .cw-btn{font-size:24px;min-height:64px}
html.touch #stage #PostChat .cw-btn kbd{font-size:20px}
html.touch #stage #PostChat #PgInput{font-size:24px;min-height:70px}
html.touch #stage #PostChat .pg-chips{max-height:164px}
html.touch #stage #PostChat .pg-chips button{font-size:20px;min-height:64px;padding:10px}
html.touch #stage #PostChat .pg-emo button{width:82px;height:82px}
html.touch #stage #PostChat .cw-i{font-size:24px;min-height:74px}
html.touch #stage #PostChat .cw-i i,
html.touch #stage #PostChat .cw-c .dim{font-size:20px}
html.touch #stage #PostChat .cw-tab{font-size:30px}
html.touch #stage #PostChat .cw-arr button{min-width:64px;min-height:64px;font-size:24px}
@keyframes u3-purchase{0%{opacity:.55;transform:scale(.94)}100%{opacity:1;transform:scale(1)}}
/* Đè animation có sẵn khi người dùng bật giảm chuyển động. */
@media(prefers-reduced-motion:reduce){
  #stage #Shop.fg *,#stage #Match *,#stage #Summary *,#stage #PostChat *{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}

