:root{color-scheme:dark;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#0f1115;color:#f0ede6;font-synthesis:none;line-height:1.4;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:linear-gradient(180deg,#1c1f27f2,#0c0d11),#0f1115}button,input{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh;padding:18px}.team-builder{display:grid;grid-template-columns:minmax(220px,280px) minmax(560px,1fr) minmax(280px,420px);gap:16px;align-items:stretch;max-width:1520px;margin:0 auto}.trait-panel,.board-panel,.champion-panel{min-height:calc(100vh - 36px);border:1px solid #323844;background:#13161ceb;box-shadow:0 20px 60px #00000047}.trait-panel,.champion-panel{overflow:hidden}.board-panel{display:flex;flex-direction:column;justify-content:space-between;padding:20px}.panel-title,.champion-panel-header{padding:16px;border-bottom:1px solid #323844;background:#181c23}.eyebrow{margin:0 0 4px;color:#c8a75a;font-size:.76rem;font-weight:700;letter-spacing:0;text-transform:uppercase}h1,h2,h3{margin:0;letter-spacing:0}h1{font-size:1.55rem}h2{font-size:1.05rem}.board-header{display:flex;gap:16px;align-items:center;justify-content:space-between;margin-bottom:16px}.board-summary{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;color:#d9d0bd;font-size:.88rem}.board-summary span{border:1px solid #3d4554;background:#141820;padding:6px 9px}.hex-board{--slot-height: clamp(64px, 8.2vw, 104px);--slot-width: calc(var(--slot-height) * .866);display:grid;grid-template-columns:repeat(7,var(--slot-width));grid-auto-rows:calc(var(--slot-height) * .75);justify-content:center;align-content:center;gap:0;flex:1;min-height:430px;overflow:hidden;padding:34px calc(var(--slot-width) / 2 + 24px) 52px 24px;border:1px solid #3a4250;background:linear-gradient(135deg,#3239446b,#151a23db),#171b23}.board-slot{position:relative;width:var(--slot-width);height:var(--slot-height);border:1px solid #495568;clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%);background:linear-gradient(180deg,#2d3643d6,#161b23eb),#202632;color:#f5efe2;overflow:hidden;transition:transform .12s ease,border-color .12s ease,background .12s ease}.board-slot.is-offset{transform:translate(calc(var(--slot-width) / 2))}.board-slot:hover,.board-slot.is-drop-target{border-color:#d1aa52;background:linear-gradient(180deg,#4a442bd9,#1e2020eb),#262a2d}.board-slot.has-unit img{width:100%;height:100%;object-fit:cover}.board-unit-name{position:absolute;right:11%;bottom:13%;left:11%;overflow:hidden;padding:2px 4px;background:#05070ab8;color:#fff7e8;font-size:.68rem;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.remove-unit{position:absolute;top:12%;right:15%;display:none;width:18px;height:18px;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.35);background:#000000b8;color:#fff;font-size:.7rem;line-height:1}.board-slot.has-unit:hover .remove-unit{display:flex}.empty-hex{display:block;width:100%;height:100%;background:linear-gradient(135deg,transparent 0 45%,rgba(255,255,255,.08) 45% 55%,transparent 55%),#ffffff05}.search-field{display:grid;gap:8px;color:#cfc8b9;font-size:.82rem;font-weight:700}.search-field span{color:#d7c399}.search-field input{width:100%;min-height:40px;border:1px solid #414a5a;background:#0f1218;color:#f4efe6;padding:8px 10px;outline:none}.search-field input:focus{border-color:#c8a75a}.champion-groups{display:flex;flex-direction:column;gap:12px;height:calc(100vh - 122px);overflow:auto;padding:12px}.cost-group{display:grid;padding-bottom:4px}.champion-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(38px,1fr));gap:7px}.champion-button{position:relative;aspect-ratio:1;min-width:0;border:1px solid #8c919b;background:#161a22;color:#f4efe6;overflow:hidden;padding:0}.champion-button:hover,.champion-button:focus-visible,.champion-button.is-selected{z-index:1;outline:none;transform:translateY(-1px);box-shadow:0 0 0 2px #d1aa5259}.champion-button.is-selected{box-shadow:0 0 0 2px #d1aa5275,0 8px 18px #00000047}.champion-button img{width:100%;height:100%;object-fit:cover}.champion-button.cost-1{border-color:#8c919b}.champion-button.cost-2{border-color:#4caf70}.champion-button.cost-3{border-color:#4aa3d8}.champion-button.cost-4{border-color:#b36fe4}.champion-button.cost-5{border-color:#d6a647}.trait-list{display:grid;gap:8px;height:calc(100vh - 98px);overflow:auto;padding:14px}.trait-row{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:10px;align-items:center;min-height:48px;border:1px solid #333b49;background:#141820;padding:7px}.trait-row.is-active{border-color:#c8a75a;background:#1d1d19}.trait-icon{display:grid;width:34px;height:34px;place-items:center;border:1px solid #465062;background:#0d1016;color:#d9c78f;font-size:.72rem;font-weight:800;overflow:hidden}.trait-icon img{width:100%;height:100%;object-fit:contain}.trait-copy{min-width:0}.trait-copy strong,.trait-copy span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trait-copy strong{color:#f2ebde;font-size:.88rem}.trait-copy span{color:#b9b1a4;font-size:.74rem}.trait-count{color:#f5d57d;font-size:.82rem;font-weight:800}.unit-tooltip{position:fixed;z-index:20;display:grid;grid-template-columns:112px minmax(0,1fr);width:min(430px,calc(100vw - 32px));min-height:178px;border:1px solid #c8a75a;background:#11151c;box-shadow:0 18px 48px #00000075;pointer-events:none}.unit-tooltip[hidden]{display:none}.tooltip-portrait{display:grid;min-height:178px;place-items:center;background:#0a0d12;border-right:1px solid #4a5260;color:#e8c66d;font-weight:900;overflow:hidden}.tooltip-portrait.cost-1{border-color:#8c919b}.tooltip-portrait.cost-2{border-color:#4caf70}.tooltip-portrait.cost-3{border-color:#4aa3d8}.tooltip-portrait.cost-4{border-color:#b36fe4}.tooltip-portrait.cost-5{border-color:#d6a647}.tooltip-portrait img{width:100%;height:100%;object-fit:cover}.tooltip-copy{display:grid;gap:9px;align-content:start;max-height:min(430px,calc(100vh - 40px));overflow:auto;padding:12px}.tooltip-title{display:flex;gap:8px;align-items:start;justify-content:space-between}.tooltip-title h3{min-width:0;color:#fff4df;font-size:1rem}.tooltip-title span{flex:0 0 auto;color:#f2cd72;font-size:.8rem;font-weight:800}.tooltip-traits{display:flex;gap:5px;flex-wrap:wrap}.tooltip-traits span{display:inline-flex;gap:5px;align-items:center;border:1px solid #445061;background:#1a2029;color:#dcd2bf;padding:3px 6px;font-size:.74rem}.tooltip-traits img{width:16px;height:16px;object-fit:contain}.tooltip-note{margin:0;color:#a9a193;font-size:.76rem}.tooltip-ability{display:grid;gap:6px;border-top:1px solid #303845;padding-top:8px}.tooltip-ability-title{display:flex;gap:7px;align-items:center;color:#fff4df;font-size:.84rem}.tooltip-ability-title img{width:22px;height:22px;border:1px solid #485263;object-fit:cover}.tooltip-ability p{margin:0;color:#c9c0b0;font-size:.76rem;line-height:1.35}.tooltip-stats{display:flex;gap:5px;flex-wrap:wrap}.tooltip-stats span{border:1px solid #35404d;background:#151a22;color:#d9d0bd;padding:2px 5px;font-size:.7rem;font-weight:700}.empty-state,.empty-cost,.load-state,.load-error{color:#b8afa1}.load-state,.load-error{display:grid;min-height:calc(100vh - 36px);place-items:center;border:1px solid #323844;background:#151922}@media(max-width:1120px){.team-builder{grid-template-columns:220px minmax(520px,1fr)}.champion-panel{grid-column:1 / -1;min-height:360px}.champion-groups{height:300px}}@media(max-width:760px){.app-shell{padding:10px}.team-builder{grid-template-columns:1fr}.trait-panel,.board-panel,.champion-panel{min-height:auto}.hex-board{--slot-height: min(13.2vw, 64px);min-height:270px;padding:18px calc(var(--slot-width) / 2 + 10px) 34px 10px}.board-header{align-items:start;flex-direction:column}.trait-list{max-height:260px}.champion-groups{height:340px}}
