:root{color-scheme:dark;--bg:#08151c;--ink:#f1eddf;--muted:#a6babd;--gold:#e1b86b;--cyan:#69e7ed;--red:#fb727e;--edge:#b89a5f55;font-family:"PingFang SC","Microsoft YaHei",system-ui,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);overflow:hidden}button{font:inherit;color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation}button:focus-visible{outline:2px solid var(--cyan);outline-offset:5px}button:active{filter:brightness(1.3)}button:disabled{cursor:default;opacity:.45}[hidden]{display:none!important}#app{width:100%;height:100dvh;min-height:320px;position:relative;overflow:hidden;background:#07151d}canvas{display:block;width:100%;height:100%;touch-action:none}.vignette{position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 160px #02090e88}.lobby{position:absolute;inset:0;background:linear-gradient(90deg,#06121df5 0%,#07151ce8 25%,#07151c48 58%,transparent 85%)}.lobby-head{display:flex;align-items:center;gap:12px;padding:30px 4.5%;padding-top:max(24px,env(safe-area-inset-top));height:96px}.brand-mark{color:var(--gold);font-size:42px}.brand{font-size:17px;line-height:1;letter-spacing:4px;font-weight:800}.brand span{display:block;letter-spacing:7px;font-size:12px;margin-top:7px}.edition{font-size:11px;color:#91a4ad;border-left:1px solid #ffffff24;padding:8px 18px;letter-spacing:2px}.lobby-head .icon-button:first-of-type{margin-left:auto}.icon-button{width:44px;height:44px;border:1px solid #a7b7b62a;background:#10222c99;font-size:20px;color:#c8d0c8;border-radius:50%}.sound.off{opacity:.5;text-decoration:line-through}.lobby-content{position:absolute;left:8%;top:25%;max-width:480px}.eyebrow{font-size:12px;letter-spacing:4px;color:var(--gold);display:flex;align-items:center;gap:12px}.eyebrow span{width:23px;height:1px;background:var(--gold)}h1{font-size:clamp(58px,7.4vw,106px);font-weight:900;letter-spacing:8px;line-height:1.12;margin:20px 0 14px;text-shadow:0 3px 25px #0008}h1 span{display:block;color:var(--gold)}.tagline{font-size:20px;letter-spacing:3px;margin:14px 0 20px}.intro{font-size:13px;line-height:2;color:#8ea7af;letter-spacing:1px}.mode-line{display:flex;align-items:center;gap:13px;font-size:11px;color:#adbdc0;margin:25px 0}.mode-line b{color:var(--gold);font-size:13px;letter-spacing:2px}.mode-line i{height:3px;width:3px;background:#637f89}.gold-button{height:58px;width:290px;border:1px solid #ffe2a9;background:linear-gradient(110deg,#e8c481,#ba8b43);color:#1a2528;display:inline-flex;align-items:center;justify-content:space-between;padding:0 25px;font-weight:800;letter-spacing:4px;box-shadow:0 5px 35px #d2a25c22;clip-path:polygon(0 0,calc(100% - 12px) 0,100% 12px,100% 100%,12px 100%,0 calc(100% - 12px))}.arrow{font-size:25px}.mobile-note{margin-top:16px;color:#81949b;font-size:10px;letter-spacing:1px}.mobile-note span{margin:0 6px;color:#526a73}.hero-callout{position:absolute;right:8%;bottom:15%;display:flex;flex-direction:column;border-left:2px solid var(--gold);padding:0 22px;gap:8px;background:linear-gradient(90deg,#07151cbd,transparent);text-shadow:0 2px 8px #000}.tiny{font-size:10px;letter-spacing:3px;color:var(--gold)}.hero-callout strong{font-size:24px;letter-spacing:3px}.hero-callout>span:last-of-type{font-size:11px;color:#aec3c6}.hero-callout button{align-self:start;background:none;border:0;padding:10px 0;font-size:12px;color:var(--gold)}.hero-callout button b{padding-left:24px}.lobby-foot{position:absolute;bottom:max(22px,env(safe-area-inset-bottom));left:4.5%;right:4.5%;display:flex;justify-content:space-between;color:#708a97;font-size:10px;letter-spacing:2px}.line{display:inline-block;width:48px;height:1px;background:#526e77;vertical-align:middle;margin:0 12px}#hud{position:absolute;inset:0;pointer-events:none}#hud button,#hud .joystick{pointer-events:auto}.match-head{position:absolute;top:0;left:50%;transform:translateX(-50%);display:flex;gap:24px;align-items:center;padding:10px 38px 14px;background:linear-gradient(#08161eeb,#08161eaa);border-bottom:1px solid var(--edge);clip-path:polygon(0 0,100% 0,94% 100%,6% 100%)}.team{display:flex;align-items:center;gap:9px}.team b{font-size:27px}.team span{font-size:10px;white-space:nowrap}.blue{color:var(--cyan)}.red{color:var(--red)}.match-clock{text-align:center;min-width:74px}.match-clock small{font-size:9px;letter-spacing:2px;color:#a7b5b4;display:block;margin-bottom:3px}.match-clock b{font-size:19px;letter-spacing:2px;font-variant-numeric:tabular-nums}.top-left{position:absolute;top:max(18px,env(safe-area-inset-top));left:max(22px,env(safe-area-inset-left))}.objective{font-size:11px;letter-spacing:2px;color:#acbec3;margin-bottom:12px}.shop-button{background:#0b202de8;color:var(--gold);border:1px solid var(--edge);padding:10px 13px;height:44px;min-width:120px;text-align:left}.shop-button small{margin-left:14px;font-size:10px;color:#b9c9cc}.top-right{position:absolute;right:max(20px,env(safe-area-inset-right));top:max(16px,env(safe-area-inset-top));display:flex;gap:8px}.bottom-info{position:absolute;bottom:22px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:10px;background:#081820cc;border:1px solid #5c7b7d55;padding:9px 14px;min-width:230px}.portrait{width:42px;height:42px;background:#163b48;border:1px solid var(--gold);display:grid;place-items:center;color:var(--cyan);font-size:30px}.vitals{flex:1}.vitals>div:first-child{display:flex;justify-content:space-between;font-size:11px;gap:55px}.vitals>div:first-child span{color:var(--gold);font-size:10px}.hp-track{height:13px;background:#081219;margin-top:6px;position:relative;border:1px solid #4b7278}.hp-track i{display:block;background:linear-gradient(90deg,#21818e,#65d7ce);height:100%;transition:width .2s}.hp-track>span{position:absolute;inset:0;text-align:center;font-size:8px;color:white}.augment-slots{display:flex;gap:5px;margin-top:5px;min-height:5px}.augment-slots span{font-size:9px;color:var(--gold)}.joystick{position:absolute;left:max(36px,env(safe-area-inset-left));bottom:max(40px,env(safe-area-inset-bottom));width:138px;height:138px;border:1px solid #9bc9d344;border-radius:50%;background:#0c223b48;touch-action:none;display:grid;place-items:center;user-select:none}.joystick-ring{width:102px;height:102px;border:1px dashed #c4dcdb38;border-radius:50%}.stick{position:absolute;width:59px;height:59px;border:1px solid #b7d8d28a;border-radius:50%;background:radial-gradient(circle at 35% 30%,#4d7c8c88,#163649b3);box-shadow:0 4px 18px #0008}.joystick>span{position:absolute;bottom:-23px;letter-spacing:4px;font-size:10px;color:#9cb4bc}.combat-controls{position:absolute;right:max(28px,env(safe-area-inset-right));bottom:max(30px,env(safe-area-inset-bottom));width:245px;height:205px}.skill,.attack{position:absolute;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-direction:column;user-select:none;touch-action:none;border:2px solid #79afb0aa;background:radial-gradient(circle at 35% 20%,#234756,#0a202d);box-shadow:0 0 0 4px #09172099,0 7px 18px #0005;overflow:hidden}.skill{width:64px;height:64px}.skill b{font-size:25px;line-height:1.1;color:var(--cyan)}.skill span{font-size:8px;color:#d3e0df}.skill em,.attack em{font-style:normal;font-size:8px;opacity:.5}.skill i{display:none;position:absolute;inset:0;align-items:center;justify-content:center;background:#06121dda;font-size:20px;font-style:normal;color:#f4d291}.skill.cooling i{display:flex}.skill.q{left:0;bottom:18px}.skill.e{left:34px;bottom:100px}.skill.r{left:113px;bottom:140px;border-color:var(--gold)}.skill.r b{color:var(--gold)}.attack{width:99px;height:99px;right:0;bottom:0;border-color:var(--gold);background:radial-gradient(circle at 40% 30%,#586655,#172b30)}.attack b{font-size:43px;color:#f7d69a;line-height:.9}.attack span{font-size:11px;letter-spacing:3px;margin:5px}.keyboard-hint{position:absolute;bottom:5px;left:50%;transform:translateX(-50%);font-size:9px;color:#7c9ba6;white-space:nowrap}.match-progress{position:absolute;bottom:0;left:0;right:0;height:2px;background:#1f3540}.match-progress i{height:100%;background:var(--gold);display:block}.announce{position:absolute;top:100px;left:50%;transform:translateX(-50%);font-size:22px;color:#f1d09a;letter-spacing:4px;text-shadow:0 2px 10px #000;white-space:nowrap}.respawn{position:absolute;left:50%;top:40%;transform:translate(-50%,-50%);text-align:center;padding:20px 35px;background:#07151cdd;border:1px solid var(--edge);color:var(--gold);font-size:20px}.overlay{position:absolute;inset:0;z-index:10;display:grid;place-items:center;padding:max(18px,env(safe-area-inset-top)) max(20px,env(safe-area-inset-right)) max(18px,env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left));background:#030d17c9;backdrop-filter:blur(12px)}.panel{width:min(860px,100%);max-height:100%;overflow-y:auto;text-align:center;padding:25px}.panel .eyebrow{justify-content:center;font-size:10px}.panel h2{font-size:30px;letter-spacing:5px;margin:13px 0}.panel .subtitle{font-size:12px;line-height:1.8;color:#9bb1ba;margin:0 0 24px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:20px}.card{text-align:left;border:1px solid #617f8955;background:linear-gradient(140deg,#19343e,#0b1d2b);padding:24px 20px;min-height:230px;position:relative;transition:transform .2s,border-color .2s;display:flex;flex-direction:column}.card:hover,.card.selected{border-color:var(--gold);transform:translateY(-4px)}.card-icon{display:block;font-size:40px;margin:8px 0 25px;color:var(--cyan)}.card .rarity{font-size:9px;color:var(--gold);letter-spacing:3px}.card h3{margin:0 0 8px;font-size:18px;letter-spacing:2px}.card p{color:#a6c0c7;font-size:11px;line-height:1.8;margin:0 0 16px}.card .card-bottom{margin-top:auto;color:var(--gold);font-size:10px;letter-spacing:2px;padding-top:14px;border-top:1px solid #65878b33}.text-button{border:1px solid #7e9a9b55;background:#102631;color:#bdcecc;padding:12px 22px;min-height:44px;font-size:12px;letter-spacing:2px;margin:0 5px}.panel .gold-button{justify-content:center;width:240px}.rules{text-align:left;max-width:560px;margin:20px auto;font-size:13px;line-height:2.1;color:#b6cbcf}.rules b{color:var(--gold)}.result-stats{display:flex;justify-content:center;gap:45px;margin:30px 0}.result-stats b{display:block;font-size:30px;color:var(--gold)}.result-stats span{font-size:11px;color:#a6bdc4}.rotate-hint{display:none}.shop-items .card{min-height:200px}.shop-items .card-icon{margin:5px 0 12px}.toast{position:absolute;bottom:150px;left:50%;transform:translateX(-50%);font-size:12px;background:#0b202dee;border:1px solid var(--edge);padding:12px 20px;z-index:30;pointer-events:none;white-space:nowrap}
@media(min-aspect-ratio:1.6/1) and (max-height:700px){.lobby-head{height:68px;padding:15px 4.5%}.brand-mark{font-size:32px}.brand{font-size:12px}.brand span{font-size:9px;margin-top:4px}.edition{font-size:9px}.lobby-content{top:24%;left:8%}h1{font-size:clamp(42px,9vh,66px);display:flex;gap:8px;margin:12px 0}.tagline{font-size:14px;margin:10px 0}.intro{font-size:10px;line-height:1.7;margin:6px 0}.eyebrow{font-size:9px}.mode-line{margin:14px 0;font-size:9px;gap:10px}.gold-button{height:47px;width:240px;font-size:13px}.mobile-note{margin-top:10px;font-size:9px}.hero-callout{bottom:20%;right:8%}.hero-callout strong{font-size:18px}.lobby-foot{bottom:14px;font-size:8px}.joystick{width:114px;height:114px;bottom:34px;left:32px}.joystick-ring{width:88px;height:88px}.stick{width:49px;height:49px}.combat-controls{transform:scale(.88);transform-origin:bottom right;right:22px;bottom:22px}.match-head{gap:18px;padding:7px 30px 9px}.team b{font-size:22px}.match-clock b{font-size:15px}.top-left{top:12px;left:20px}.top-right{top:12px}.objective{font-size:9px;margin-bottom:7px}.bottom-info{bottom:17px;padding:6px 10px;min-width:200px}.announce{top:75px;font-size:18px}.panel{padding:8px 18px}.panel h2{font-size:23px;margin:9px 0}.panel .subtitle{margin-bottom:14px;font-size:11px}.cards{gap:12px;margin-bottom:12px}.card{min-height:185px;padding:15px}.card-icon{font-size:28px;margin:6px 0 12px}.card h3{font-size:16px}.card p{font-size:10px;margin-bottom:8px}.card .card-bottom{padding-top:9px;font-size:9px}.result-stats{margin:20px 0}.rules{font-size:11px;line-height:1.8;margin:12px auto}.shop-items .card{min-height:170px}}
@media(orientation:portrait){.lobby-content{left:8%;top:20%;max-width:88%}h1{font-size:68px;display:flex;gap:4px}.tagline{font-size:16px}.hero-callout{bottom:13%;left:8%;right:auto}.hero-callout strong{font-size:19px}.lobby-head{padding:20px 6%;gap:8px}.edition{display:none}.lobby-foot>span:last-child{display:none}.cards{gap:10px}.card{padding:16px 12px;min-height:220px}.panel{padding:10px}.panel h2{font-size:23px}.card h3{font-size:15px}.card p{font-size:10px}.card-icon{font-size:30px}.card .rarity{font-size:8px;letter-spacing:1px}.card .card-bottom{font-size:9px;letter-spacing:0}.joystick{width:108px;height:108px;left:20px;bottom:50px}.joystick-ring{width:84px;height:84px}.combat-controls{transform:scale(.76);transform-origin:bottom right;right:16px;bottom:45px}.bottom-info{bottom:200px;min-width:180px;padding:7px 9px}.keyboard-hint{display:none}.match-head{gap:12px;padding:8px 20px}.team span,.match-clock small{display:none}.team b{font-size:20px}.match-clock b{font-size:14px}.top-left{top:68px;left:16px}.top-right{top:12px;right:12px;gap:6px}.top-right .sound{display:none}.objective{font-size:9px}.announce{top:150px;font-size:16px;letter-spacing:1px}.rotate-hint{display:flex;position:absolute;z-index:20;bottom:0;left:0;right:0;align-items:center;gap:10px;background:#102c39f5;border-top:1px solid var(--edge);padding:12px 16px;font-size:11px;min-height:56px}.rotate-hint>span{font-size:27px;color:var(--gold)}.rotate-hint button{margin-left:auto;background:none;border:0;color:var(--gold);font-size:10px;min-height:44px}.rotate-hint.dismissed{display:none}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
/* Champion collection and hextech build system */
.lobby-links{display:flex;gap:20px;margin-top:22px}.lobby-links button{background:none;border:0;border-bottom:1px solid #687d7e66;min-height:44px;padding:5px 0;color:#bdc9c5;font-size:11px;letter-spacing:2px}.lobby-links b{font-size:10px;color:var(--gold);margin-left:7px}.lobby-foot{color:#a1a7a0}.portrait{overflow:hidden}.portrait img{width:100%;height:100%;object-fit:cover}.panel.wide{width:min(1050px,100%);background:linear-gradient(135deg,#10212bf5,#07131df5);border:1px solid #9a895c55;padding:28px;box-shadow:0 30px 100px #0009}.picker-top{display:flex;align-items:center;justify-content:space-between;text-align:left;margin-bottom:20px}.picker-top .eyebrow{justify-content:flex-start}.picker-top h2{font-size:26px;margin-bottom:0}.hero-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.hero-tile{padding:0;position:relative;height:140px;overflow:hidden;border:1px solid #7b92974a;background:#182c35;text-align:left}.hero-tile img{height:100%;width:100%;object-fit:cover;object-position:70% 35%;transition:transform .25s}.hero-tile:hover img{transform:scale(1.08)}.hero-tile.selected{border-color:#f2cd87;box-shadow:0 0 15px #e5b66433}.hero-tile>span{position:absolute;bottom:0;left:0;right:0;padding:25px 12px 10px;background:linear-gradient(transparent,#030d16f5)}.hero-tile b{font-size:16px;letter-spacing:2px}.hero-tile small{display:block;color:#bdc8bd;font-size:9px;margin-top:3px}.hero-detail{display:grid;grid-template-columns:.8fr 1.2fr;gap:30px;margin-top:24px;text-align:left;border-top:1px solid #8b9a8b33;padding-top:18px}.hero-summary{display:flex;gap:14px;padding-top:12px}.hero-summary>img{width:70px;height:70px;object-fit:cover;border:1px solid var(--gold)}.hero-summary small{color:var(--gold);font-size:10px;letter-spacing:2px}.hero-summary h3{font-size:24px;letter-spacing:3px;margin:5px 0 10px}.hero-summary p{font-size:11px;line-height:1.9;color:#b0c1c3;max-width:240px}.hero-summary span{font-size:10px}.skill-list{display:flex;flex-direction:column;gap:9px}.skill-list>div{display:flex;gap:9px;align-items:center}.skill-list img{width:32px;height:32px;border:1px solid #ab9c6e77}.skill-list p{margin:0;flex:1}.skill-list b{font-size:11px;display:block;color:#e7d6ac;font-weight:500}.skill-list p span{font-size:10px;line-height:1.6;color:#adc1c6;display:block;margin-top:2px}.picker-bottom{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:22px}.picker-bottom>span{color:#94a7ad;font-size:9px}.picker-bottom .gold-button{font-size:12px;letter-spacing:2px;height:48px}.synergy-strip{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin:10px 0 20px;min-height:23px}.synergy-strip>span:not(.synergy-badge){font-size:11px;color:#99b1ba}.synergy-badge{display:inline-flex;align-items:center;gap:5px;border:1px solid #68879444;background:#112735c9;font-size:9px;color:#94a9b1;padding:5px 7px;white-space:nowrap}.synergy-badge.active{color:var(--path);border-color:var(--path);background:#1d3442}.synergy-badge.new{box-shadow:0 0 14px color-mix(in srgb,var(--path) 20%,transparent)}.synergy-badge b{font-size:9px;font-weight:500}.augment-cards .card{min-height:300px;background:radial-gradient(ellipse at 50% 0%,color-mix(in srgb,var(--path) 16%,transparent),transparent 60%),linear-gradient(150deg,#19303c,#091927);border-top:2px solid var(--path);box-shadow:inset 0 0 40px #0003}.augment-cards .card-icon{margin:24px auto 26px;width:80px;height:80px;border:1px solid color-mix(in srgb,var(--path) 50%,transparent);transform:rotate(45deg);color:var(--path);display:grid;place-items:center;background:radial-gradient(color-mix(in srgb,var(--path) 16%,transparent),transparent);font-family:Georgia,serif;font-size:40px}.augment-cards .rarity{color:var(--path)}.augment-cards .card p{min-height:55px;font-size:12px;line-height:1.8;color:#c0d0d1}.augment-preview{display:flex;gap:5px;flex-wrap:wrap;margin:0 0 18px}.augment-cards .card h3{font-size:20px}.book-tools{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:20px}.book-tools label{font-size:10px;color:#aabcc0;display:flex;align-items:center;gap:12px}.book-tools input,.book-tools select{background:#091824;border:1px solid #67868a77;color:#e2dfcf;min-height:44px;padding:9px 14px;font:inherit;font-size:12px;max-width:100%;border-radius:0}.book-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;text-align:left;max-height:53vh;overflow:auto;padding-right:5px}.book-grid article{display:flex;gap:14px;border:1px solid #59777e3b;border-left:2px solid var(--path);padding:16px 12px;background:#102734}.book-grid article>span{font-size:28px;color:var(--path);padding-top:13px;min-width:25px;text-align:center}.book-grid small{font-size:8px;color:var(--path)}.book-grid h3{font-size:14px;letter-spacing:1px;margin:8px 0}.book-grid p{font-size:10px;line-height:1.7;color:#adc2c7;margin:0}.path-description{display:flex;align-items:center;gap:20px;padding:14px;margin-bottom:15px;border:1px solid var(--path);text-align:left}.path-description b{font-size:14px;color:var(--path)}.path-description span{font-size:10px;color:#c8d7da}.build-paths{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;text-align:left;margin:20px 0}.build-paths article{padding:14px 20px;border:1px solid #647b7b55;border-left:2px solid var(--path);background:#102837}.build-paths h3{font-size:15px;color:var(--path);margin:0 0 10px}.build-paths h3 b{float:right;font-size:11px}.build-paths p{font-size:11px;color:#799099;line-height:1.8;margin:4px 0}.build-paths .unlocked{color:#e1ded0}.owned-augments{display:grid;grid-template-columns:repeat(2,1fr);text-align:left;gap:0 20px;margin:15px 0 25px}.owned-augments b{display:block;font-size:12px;color:var(--gold);margin-bottom:5px}.owned-augments span{font-size:11px;color:#a4bac0;line-height:1.8}.build-button{position:absolute;bottom:112px;left:50%;transform:translateX(-50%);height:44px;padding:0 16px;border:1px solid #b99f6f66;background:#0a1c2bd9;color:var(--gold);font-size:12px}.build-button span{font-size:10px;margin-left:4px;letter-spacing:2px}.combat-controls{width:300px;height:240px}.skill{background-image:linear-gradient(#10202b22,#07131d99),var(--skill-art);background-size:cover;background-position:center}.skill b{visibility:hidden}.skill span{position:absolute;bottom:10px;white-space:nowrap;text-shadow:0 1px 4px #000,0 1px 4px #000;font-size:8px;letter-spacing:0}.skill em{position:absolute;top:5px;right:10px;opacity:1;font-size:9px;text-shadow:0 1px 4px #000}.skill.q{left:10px;bottom:4px}.skill.w{left:0;bottom:87px}.skill.e{left:59px;bottom:153px}.skill.r{left:146px;bottom:160px;width:72px;height:72px}.skill.r span{font-size:8px}.attack{width:108px;height:108px}.skill.cooling{border-color:#597382}.skill:disabled:not(.cooling){filter:grayscale(.6);opacity:.6}.skill i{background:#051221d9;z-index:2}.skill.q,.skill.w,.skill.e{width:68px;height:68px}
@media(min-aspect-ratio:1.6/1) and (max-height:700px){.lobby-links{position:absolute;left:270px;bottom:1px;gap:14px;white-space:nowrap;margin:0}.lobby-links button{font-size:9px;min-height:44px}.lobby-content{top:24%}.hero-callout{bottom:20%;right:6%}.panel.wide{padding:14px 20px}.picker-top{margin-bottom:12px}.picker-top h2{font-size:20px}.hero-grid{gap:6px}.hero-tile{height:75px}.hero-tile>span{padding:20px 8px 6px}.hero-tile b{font-size:12px}.hero-tile small{display:none}.hero-detail{margin-top:12px;padding-top:8px;gap:16px;grid-template-columns:1fr 1.5fr}.hero-summary{padding-top:6px;gap:10px}.hero-summary>img{width:48px;height:48px}.hero-summary h3{font-size:17px;margin:3px 0 5px}.hero-summary p{font-size:9px;line-height:1.6;margin:6px 0}.hero-summary small,.hero-summary span{font-size:9px}.skill-list{display:grid;grid-template-columns:1fr 1fr;gap:5px 12px}.skill-list img{width:26px;height:26px}.skill-list b{font-size:9px}.skill-list p span{font-size:8px;line-height:1.5}.skill-list>div{align-items:start;gap:6px}.picker-bottom{margin-top:12px}.picker-bottom .gold-button{height:42px}.picker-bottom>span{font-size:8px}.augment-cards .card{min-height:200px;padding:13px 16px}.augment-cards .card-icon{width:42px;height:42px;margin:13px auto 16px;font-size:26px}.augment-cards .card h3{font-size:16px}.augment-cards .card p{font-size:10px;min-height:36px}.augment-preview{margin-bottom:8px}.synergy-badge{font-size:8px;padding:3px 5px}.synergy-strip{margin:5px 0 12px;min-height:15px}.panel .subtitle{margin-bottom:10px}.build-button{bottom:105px;font-size:10px;height:36px}.combat-controls{transform:scale(.8);right:18px;bottom:20px}.book-grid{max-height:48vh}.book-grid article{padding:11px;gap:8px}.book-grid p{font-size:9px}.book-tools{margin-bottom:12px}.build-paths{margin:12px 0;gap:8px}.build-paths article{padding:9px 14px}.build-paths p{font-size:9px}.owned-augments{margin:8px 0 15px}.owned-augments p{margin:5px 0}.owned-augments span{font-size:9px}.path-description{padding:9px;gap:12px}}
@media(orientation:portrait){.lobby-content{top:19%}.lobby-links{margin-top:12px}.panel.wide{padding:15px}.picker-top{gap:5px}.picker-top h2{font-size:19px;letter-spacing:2px}.picker-top .eyebrow{font-size:8px;letter-spacing:2px}.picker-top .text-button{padding:9px 12px;margin:0}.hero-grid{gap:6px}.hero-tile{height:100px}.hero-tile>span{padding:25px 5px 8px}.hero-tile b{font-size:11px;letter-spacing:0}.hero-tile small{display:none}.hero-tile img{object-position:65% 40%}.hero-detail{display:block;margin-top:16px;padding-top:13px}.hero-summary{padding:0;margin-bottom:16px}.hero-summary p{max-width:none;margin:5px 0;font-size:10px}.hero-summary h3{font-size:19px;margin:4px 0}.hero-summary>img{width:58px;height:58px}.skill-list{gap:7px}.skill-list p span{font-size:10px}.picker-bottom{flex-direction:column;align-items:stretch}.picker-bottom .gold-button{width:100%}.picker-bottom>span{text-align:center}.augment-cards{gap:7px}.augment-cards .card{padding:15px 9px;min-height:330px}.augment-cards .card-icon{width:45px;height:45px;font-size:26px;margin:22px auto 26px}.augment-cards .card h3{font-size:15px;letter-spacing:0}.augment-cards .card p{font-size:11px;min-height:105px;line-height:1.8}.augment-preview{margin-bottom:10px;gap:4px}.synergy-badge{padding:4px;font-size:8px}.synergy-badge b{font-size:8px}.augment-cards .card-bottom{font-size:8px}.augment-cards .card-bottom>span{display:none}.panel .subtitle{font-size:10px}.book-grid{grid-template-columns:1fr 1fr;gap:8px;max-height:58vh}.book-grid article{display:block;padding:12px}.book-grid article>span{font-size:24px}.book-tools{align-items:stretch;gap:8px}.book-tools label{display:block;font-size:9px;max-width:60%}.book-tools input{margin-top:5px;width:100%;font-size:11px}.book-tools select{margin-top:18px;min-width:100px;max-width:40%;font-size:11px}.path-description{display:block}.path-description span{display:block;margin-top:6px;line-height:1.8}.combat-controls{transform:scale(.68);right:12px;bottom:42px}.skill.q,.skill.w,.skill.e{width:72px;height:72px}.build-button{bottom:282px}.bottom-info{bottom:205px}.build-paths{grid-template-columns:1fr}.owned-augments{grid-template-columns:1fr}.build-paths p{font-size:10px}.hero-callout{bottom:14%;background:linear-gradient(90deg,#05101cde,transparent)}}
.hero-tile b{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.picker-bottom .gold-button{min-height:44px}.build-button{min-height:44px}
@media(pointer:coarse){.keyboard-hint,.attack em{display:none}.top-left{left:max(20px,env(safe-area-inset-left))}.top-right{right:max(20px,env(safe-area-inset-right))}.combat-controls{right:max(18px,env(safe-area-inset-right));bottom:max(20px,env(safe-area-inset-bottom))}.joystick{left:max(28px,env(safe-area-inset-left));bottom:max(34px,env(safe-area-inset-bottom))}.lobby-foot{bottom:max(16px,env(safe-area-inset-bottom))}}
/* Preserve card hit bounds: moving a hovered card can oscillate at its lower edge. */
.card:hover,.card.selected{transform:none;box-shadow:0 0 24px #a5cdd419}
@media(orientation:portrait){.lobby h1{font-size:44px;letter-spacing:3px}.brand span{letter-spacing:8px}}

/* Equipment ownership and touch-safe sell controls. */
.equipment-bar{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin:16px 0}.equipment-slot{min-width:0;background:#102331;border:1px solid #657d8166;padding:10px 5px;display:flex;flex-direction:column;align-items:center;gap:7px;border-radius:8px}.equipment-slot img{width:42px;height:42px;border-radius:5px;border:1px solid #bda778}.equipment-slot b{font-size:12px;text-align:center;min-height:16px}.equipment-slot button{min-height:44px;padding:5px 8px;border:1px solid #c49f6966;background:#3a3023;color:#f0ce8e;font-size:12px;border-radius:5px;cursor:pointer}.equipment-slot.empty{justify-content:center;color:#718b99;min-height:120px;border-style:dashed}.equipment-slot.empty span{font-size:24px}.shop-note{font-size:12px;line-height:1.7;color:#a2b8c4}.shop-summary{padding:10px 12px;background:#13323b;color:#c3e6df;font-size:12px;border-left:2px solid #80c8b9;line-height:1.8}.shop-tabs{display:flex;gap:8px;margin:16px 0}.shop-tabs button{min-width:64px;min-height:44px;background:#112634;border:1px solid #506878;color:#b7c9d1;border-radius:5px;cursor:pointer}.shop-tabs button.active{background:#b89a5d;color:#10212c;border-color:#e4c585}.shop-catalog{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.shop-item{display:flex;gap:11px;align-items:flex-start;padding:14px;background:linear-gradient(140deg,#1c3442,#0e1f2c);border:1px solid #49606b;text-align:left;color:#e5e3d7;min-height:134px;border-radius:8px;cursor:pointer}.shop-item:disabled{opacity:.5;cursor:default}.shop-item img{width:48px;height:48px;flex-shrink:0;border-radius:6px;border:1px solid #9d8f70}.shop-item span{display:flex;min-width:0;flex-direction:column;gap:8px}.shop-item b{font-size:15px}.shop-item small{font-size:12px;line-height:1.6;color:#afc3cf}.shop-item em{font-size:12px;color:#e9c784;font-style:normal}.shop-item:not(:disabled):hover{border-color:#dec17f}.shop-item:not(:disabled):active,.equipment-slot button:active{filter:brightness(1.25)}#hero-preview{width:100%;height:210px;object-fit:contain;border:1px solid #536f7e55;border-radius:8px;background:#0c1d2a;margin-bottom:16px}.hero-grid{max-height:290px;overflow-y:auto;padding-right:6px}.hero-tile{min-height:86px}.hero-detail{min-width:0}.hero-picker .subtitle{margin-bottom:14px}
@media(max-width:700px){.shop-catalog{grid-template-columns:repeat(2,minmax(0,1fr))}.equipment-bar{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.equipment-slot{padding:8px 4px}.equipment-slot.empty{min-height:115px}.shop-item{padding:10px;gap:8px}.shop-item img{width:36px;height:36px}.shop-item b{font-size:13px}.shop-tabs{gap:6px}.shop-tabs button{min-width:0;flex:1}#hero-preview{height:180px}.hero-grid{max-height:260px}}
@media(max-height:500px) and (min-width:650px){.equipment-bar{grid-template-columns:repeat(6,minmax(0,1fr))}.equipment-slot{padding:6px}.equipment-slot img{width:32px;height:32px}.equipment-slot.empty{min-height:110px}.shop-catalog{grid-template-columns:repeat(3,minmax(0,1fr))}.hero-grid{max-height:200px}#hero-preview{height:165px}}

.hero-profile{min-width:0}.hero-picker .picker-bottom{position:sticky;bottom:-1px;background:#0c1d29f5;padding:12px 0 0;z-index:2}.hero-detail .skill-list{min-width:0}.hero-picker .hero-detail{align-items:start}

.hero-profile{display:flex;flex-direction:column}.hero-profile .hero-summary{order:-1;margin-bottom:14px}
