.comp-hub{padding-top:15px}.hub-heading{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:28px 0 22px}.hub-heading h1{font-size:68px;margin-bottom:17px}.hub-heading .eyebrow{margin-bottom:10px}.hub-heading>div>p:last-child{font-size:13px;margin-bottom:0}.hub-count{display:flex;align-items:center;gap:15px;border-left:1px solid var(--line);padding-left:30px}.hub-count b{font-family:'Barlow Condensed',Impact,sans-serif;font-size:65px;line-height:1;color:var(--accent)}.hub-count span{color:var(--muted);font-size:9px;line-height:1.8;letter-spacing:1.5px}.hub-patch{display:flex;gap:23px;align-items:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:14px 0;font-size:10px;color:var(--muted)}.hub-patch .live{font-size:9px;letter-spacing:1px}.hub-patch>a{margin-left:auto;color:var(--accent)}.catalogue-layout{display:grid;grid-template-columns:195px minmax(0,1fr);gap:30px;margin-top:26px;align-items:start}.comp-sidebar{position:sticky;top:20px;padding:12px 0}.comp-sidebar label,.filter-label{font-size:8px;font-weight:700;letter-spacing:1.5px;color:var(--muted)}.comp-sidebar>input{border:1px solid #434c44;background:var(--panel);padding:11px;width:100%;min-width:0;border-radius:5px;font-size:11px;margin-top:10px}.comp-sidebar .filter-label{display:block;margin:26px 0 12px}.strategy-filters{display:flex;flex-direction:column;gap:4px}.strategy-filters button{border:0;background:transparent;border-radius:5px;text-align:left;font-size:11px;color:var(--muted);padding:10px 12px;display:flex;justify-content:space-between}.strategy-filters button.selected{background:#bdf29a15;color:var(--accent);box-shadow:inset 2px 0 var(--accent)}.strategy-filters button span{font-size:9px;background:#bdf29a15;border-radius:4px;padding:0 5px}.comp-sidebar select{width:100%;background:var(--panel);border:1px solid var(--line);color:var(--text);padding:10px 7px;border-radius:5px;font:inherit;font-size:11px}.comp-sidebar>button{width:100%;border:1px solid var(--line);background:transparent;padding:10px;border-radius:5px;font-size:11px;margin-top:15px}.comp-sidebar>button[aria-pressed=true]{color:var(--accent);border-color:var(--accent)}#clear-team-filters{border:0;color:var(--muted);margin-top:5px;font-size:10px}.sidebar-help{border:1px solid #bdf29a25;background:#bdf29a06;border-radius:7px;padding:17px;margin-top:25px}.sidebar-help>span{color:var(--accent);font-size:25px;display:block}.sidebar-help>b{display:block;font-size:11px;margin:8px 0}.sidebar-help p{font-size:10px;line-height:1.8}.sidebar-help a{font-size:9px;color:var(--accent)}.results-toolbar{display:flex;align-items:center;gap:20px;font-size:10px;color:var(--muted);padding:10px 0 16px}.results-toolbar>span:first-child{font-weight:700;color:var(--text)}.results-toolbar>span:nth-child(2){margin-left:auto;font-size:9px}.results-toolbar button{font-size:9px;border:1px solid var(--line);background:transparent;padding:5px 9px;border-radius:4px;color:var(--muted)}.catalogue-note{font-size:10px;line-height:1.7;border-left:2px solid #59684d;padding-left:11px;margin-bottom:20px}.team-card{border:1px solid var(--line);background:#171d23;border-radius:8px;margin-bottom:13px;position:relative;overflow:hidden}.team-card:has(details[open]){border-color:#6e835b}.team-summary{display:grid;grid-template-columns:205px minmax(0,1fr) 15px;gap:15px;align-items:center;padding:21px 44px 22px 20px;cursor:pointer;list-style:none}.team-summary:after{display:none}.team-summary::-webkit-details-marker{display:none}.team-identity{display:flex;gap:11px;align-items:center}.team-symbol{width:30px;height:35px;border:1px solid #a9c68c45;background:#bdf29a0c;color:var(--accent);font-size:10px;font-weight:700;display:grid;place-items:center;border-radius:5px;flex-shrink:0}.team-identity h2{font-size:23px;font-weight:600;margin:0 0 9px}.team-style{font-size:9px;color:var(--muted);font-weight:400;display:block}.team-style>span{margin:0 4px;color:#6e786b}.team-roster{display:flex;gap:7px;align-items:start;flex-wrap:nowrap;padding-top:3px}.roster-unit{width:calc((100% - 56px)/9);max-width:53px;min-width:36px;display:flex;flex-direction:column;align-items:center;position:relative;flex:1}.unit-avatar{width:100%;aspect-ratio:1;position:relative;display:block;border:1px solid #999;border-bottom-width:3px;border-radius:5px;overflow:visible}.unit-avatar>img{width:100%;height:100%;display:block;object-fit:cover;border-radius:4px 4px 2px 2px}.cost-1{--cost:#9ca4a7}.cost-2{--cost:#69b785}.cost-3{--cost:#6fa5df}.cost-4{--cost:#bd87e5}.cost-5{--cost:#e4b765}.unit-avatar,.hex-cell.occupied{border-color:var(--cost)}.unit-stars{position:absolute;top:-11px;left:0;right:0;text-align:center;font-size:8px;letter-spacing:-1px;color:#e4c36e;text-shadow:0 1px 3px #000}.unit-name{display:block;font-size:7px;font-weight:400;white-space:nowrap;max-width:100%;text-overflow:ellipsis;overflow:hidden;margin-top:5px;color:#d5d9d8;line-height:1.4}.unit-items{display:flex;justify-content:center;margin-top:3px;gap:1px;min-height:15px;flex-wrap:nowrap}.mini-item{width:15px;height:15px;border:1px solid #bdac6b88;border-radius:2px}.team-save{position:absolute;right:10px;top:13px;border:0;background:transparent;color:#879187;font-size:24px;line-height:1;padding:4px;z-index:1}.team-save[aria-pressed=true]{color:var(--accent)}.expand-icon{font-size:20px;font-weight:400;color:var(--accent)}details[open]>.team-summary .expand-icon{transform:rotate(180deg)}.comp-detail{border-top:1px solid var(--line);padding:22px;background:linear-gradient(140deg,#1b2520,#141a20 65%)}.board-and-items{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(225px,1fr);gap:24px;align-items:start}.detail-title{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:18px}.detail-title h3{font-size:24px;margin:0;font-weight:500}.micro-label{font-size:7px;letter-spacing:1px;color:#adb7a9;white-space:nowrap}.hex-board{max-width:570px;margin:0 auto;padding:10px 10px 15px 0;isolation:isolate}.hex-row{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;margin-top:-2px}.hex-row:nth-child(even){transform:translateX(3.4%)}.hex-cell{position:relative;aspect-ratio:.9;min-width:0;border:1px solid #4c594a;background:#1f2c23;clip-path:polygon(25% 0,75% 0,100% 25%,100% 75%,75% 100%,25% 100%,0 75%,0 25%);padding:0;color:var(--text);overflow:hidden;display:block;transition:filter .15s,background .15s}.hex-cell:hover,.hex-cell:focus-visible{background:#49623e;filter:brightness(1.4);outline:0}.hex-cell.chosen{background:var(--accent);filter:brightness(1.4);box-shadow:inset 0 0 0 5px var(--accent)}.hex-cell>img{width:100%;height:100%;object-fit:cover;display:block;opacity:.88;position:absolute;inset:0}.hex-cell:after{content:'';position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 -4px var(--cost,transparent)}.empty-dot{display:block;color:#52664c;font-size:28px}.board-name{font-size:6px;background:#101419c9;position:absolute;left:0;right:0;bottom:20%;line-height:1.2;padding:2px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;z-index:1}.hex-cell small{position:absolute;right:28%;top:3%;font-size:5px;color:#e2e8dc;background:#101419a9;padding:0 2px;line-height:1.3}.board-mini-items{position:absolute;left:0;right:0;bottom:5%;display:flex;justify-content:center;gap:1px;z-index:2}.board-mini-items img{width:14px;height:14px;object-fit:cover;border-radius:2px;border:1px solid #b9a457}.board-controls{display:flex;gap:6px;flex-wrap:wrap;margin-top:12px}.board-controls button,.detail-footer button{font-size:9px;border:1px solid #57644c;background:#bdf29a06;border-radius:4px;padding:7px 10px;color:#c5d7bb}.board-controls button[aria-pressed=true]{background:var(--accent);color:#172017}.board-status{font-size:9px;line-height:1.7;margin:12px 0;min-height:30px;color:#aeb9ab}.unit-inspector{padding:10px 12px;border:1px solid #44503f;border-radius:4px;margin-bottom:13px;background:#10181077;line-height:1.7}.unit-inspector>b{font-size:10px;display:block;color:var(--accent)}.unit-inspector>span{display:block;font-size:9px;color:#b1bbaf}.unit-inspector label{font-size:10px}.unit-inspector input{display:block;width:100%;font-size:10px;min-width:0;padding:8px;margin-top:8px;border:1px solid #68745e}.trait-list{display:flex;gap:5px;flex-wrap:wrap}.trait-chip{display:inline-flex;align-items:center;gap:5px;border:1px solid #65705477;background:#263124;padding:4px 7px;border-radius:4px;font-size:8px;color:#ccd9be;font-weight:400}.trait-chip img{width:13px;height:13px;object-fit:contain}.trait-chip b{font-size:9px;background:#101b13;border-radius:2px;padding:0 3px;color:var(--accent)}.trait-chip.off{opacity:.55}.position-note{font-size:10px;line-height:1.8;margin:16px 0 0}.special-note{font-size:9px;line-height:1.7;border-left:2px solid #cdbd73;padding-left:10px;color:#c2bea0;margin-top:14px}.item-build{padding:14px;background:#11181f88;border:1px solid var(--line);border-radius:6px;margin-bottom:12px}.item-owner{display:flex;align-items:center;gap:10px;padding-bottom:10px;margin-bottom:5px;border-bottom:1px solid var(--line)}.item-owner>img{width:35px;height:35px;object-fit:cover;border-radius:5px}.item-owner b{font-size:12px;display:block;font-weight:600}.item-owner small{font-size:8px;color:var(--accent);display:block}.build-item{display:flex;gap:10px;align-items:center;padding-top:10px}.build-item>img{width:29px;height:29px;border-radius:4px;border:1px solid #a68c4c;flex-shrink:0}.build-item b{font-size:9px;font-weight:500;line-height:1.5;display:block}.build-item small{font-size:7px;color:#9ea89d;display:block;line-height:1.6}.gameplan{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;border-top:1px solid var(--line);padding-top:20px;margin-top:20px}.step-label{font-size:8px;color:var(--accent);letter-spacing:1px}.gameplan h3{font-size:23px;margin:8px 0 10px;font-weight:500}.gameplan p{font-size:10px;line-height:1.9;margin:0}.detail-footer{display:flex;align-items:center;gap:15px;margin-top:22px;border-top:1px solid var(--line);padding-top:15px;flex-wrap:wrap}.detail-footer>span{font-size:8px;color:#96a293}.detail-footer a{font-size:9px;color:var(--accent);margin-left:auto}.detail-footer button{font-size:8px}.team-page .team-summary{grid-template-columns:230px minmax(0,1fr) 15px}.team-page .comp-detail{padding:30px}.team-page .board-and-items{grid-template-columns:minmax(0,1.5fr) minmax(260px,1fr);gap:40px}.team-page .board-name{font-size:9px}.team-page .hex-cell small{font-size:8px}.team-page .board-mini-items img{width:21px;height:21px}.team-page .gameplan p{font-size:12px}.team-page .trait-chip{font-size:11px}.team-page .build-item b{font-size:12px}.team-page .build-item small{font-size:10px}.team-page .item-owner b{font-size:15px}.team-page .build-item>img{width:39px;height:39px}.team-page .board-status{font-size:11px}.team-page .position-note{font-size:12px}.team-page{margin:10px 0 60px}#team-empty{padding:45px;text-align:center;border:1px solid var(--line);border-radius:8px}#team-empty button{background:var(--accent);border:0;padding:10px 20px;color:#152015;border-radius:5px}.catalogue-cta{display:flex;gap:30px;align-items:center;background:#1d2920;padding:30px;border:1px solid #bdf29a33;border-radius:9px}.catalogue-cta b{font:600 50px 'Barlow Condensed',sans-serif;color:var(--accent)}.catalogue-cta h2{margin:0 0 10px;font-size:34px}.catalogue-cta p{font-size:12px;margin:0}.catalogue-cta .button{margin-left:auto;white-space:nowrap}
@media(min-width:1500px){.team-summary{grid-template-columns:220px minmax(0,1fr) 15px}.roster-unit{max-width:58px}.unit-name{font-size:8px}.mini-item{width:17px;height:17px}.team-identity h2{font-size:25px}.board-name{font-size:8px}.hex-cell small{font-size:7px}.board-mini-items img{width:17px;height:17px}}
@media(max-width:1100px){.catalogue-layout{grid-template-columns:160px minmax(0,1fr);gap:20px}.team-summary{grid-template-columns:1fr 15px;padding:19px 36px 19px 17px}.team-identity{grid-column:1;grid-row:1}.team-roster{grid-column:1/-1;grid-row:2;gap:8px;padding-top:11px}.expand-icon{grid-column:2;grid-row:1}.roster-unit{max-width:65px;min-width:35px}.team-identity h2{font-size:25px}.unit-name{font-size:8px}.mini-item{width:17px;height:17px}.team-symbol{height:32px}.board-and-items{grid-template-columns:1fr}.items-section{display:grid;grid-template-columns:1fr 1fr;gap:10px}.items-section>.detail-title{grid-column:1/-1;margin-bottom:3px}.board-name{font-size:9px}.hex-cell small{font-size:8px}.board-mini-items img{width:19px;height:19px}.team-page .team-summary{grid-template-columns:1fr 15px}.team-page .board-and-items{grid-template-columns:1fr}.position-note{font-size:12px}.gameplan{gap:13px}.gameplan h3{font-size:22px}.catalogue-cta{flex-wrap:wrap}.catalogue-cta .button{margin-left:0}}
@media(max-width:760px){.hub-heading{padding-top:20px;gap:15px}.hub-heading h1{font-size:52px}.hub-heading .eyebrow{font-size:8px}.hub-heading>div>p:last-child{font-size:12px}.hub-count{display:none}.hub-patch{font-size:8px;flex-wrap:wrap;gap:10px 20px}.hub-patch>a{margin-left:0}.hub-patch .live{font-size:8px}.catalogue-layout{grid-template-columns:1fr;gap:10px;margin-top:15px}.comp-sidebar{position:static;padding:10px 0;border-bottom:1px solid var(--line)}.comp-sidebar label:first-child{font-size:8px}.comp-sidebar>input{font-size:12px;padding:11px}.comp-sidebar .filter-label{margin:18px 0 10px}.strategy-filters{flex-direction:row;flex-wrap:wrap;gap:6px}.strategy-filters button{padding:7px 10px;border:1px solid var(--line);font-size:9px}.strategy-filters button.selected{box-shadow:none;border-color:#bdf29a77}.strategy-filters button span{margin-left:8px}.comp-sidebar select{font-size:12px}.comp-sidebar>button{width:auto;margin:14px 10px 7px 0;font-size:10px;padding:7px 10px}.sidebar-help{display:none}.results-toolbar{gap:10px;flex-wrap:wrap;font-size:10px}.results-toolbar>span:nth-child(2){font-size:8px}.results-toolbar button{font-size:8px}.team-summary{padding:18px 30px 17px 13px;gap:13px}.team-identity h2{font-size:25px}.team-style{font-size:9px}.team-roster{gap:5px;overflow:visible;padding-top:8px}.roster-unit{min-width:0;max-width:53px}.unit-name{font-size:6px;margin-top:5px;max-width:40px}.unit-stars{font-size:7px;top:-9px}.mini-item{width:11px;height:11px}.unit-items{min-height:12px}.team-save{font-size:22px;right:7px;top:11px}.comp-detail{padding:16px 12px}.board-name{font-size:6px}.hex-cell small{font-size:5px}.board-mini-items img{width:12px;height:12px}.hex-board{padding-right:8px}.hex-row{gap:3px}.board-controls{gap:5px}.board-controls button{font-size:8px;padding:7px 8px}.board-status{font-size:9px}.items-section{gap:8px}.item-build{padding:10px 9px}.item-owner>img{width:30px;height:30px}.item-owner b{font-size:11px}.item-owner small{font-size:8px}.build-item{gap:7px}.build-item>img{width:25px;height:25px}.build-item b{font-size:8px}.build-item small{font-size:6px}.gameplan{grid-template-columns:1fr;gap:20px}.gameplan h3{font-size:24px;margin-bottom:8px}.gameplan p{font-size:11px}.detail-footer{gap:12px}.detail-footer>span{font-size:7px;width:100%}.detail-footer a{margin-left:0}.team-page .comp-detail{padding:16px 12px}.team-page .board-name{font-size:6px}.team-page .hex-cell small{font-size:5px}.team-page .board-mini-items img{width:12px;height:12px}.team-page .build-item b{font-size:9px}.team-page .build-item small{font-size:7px}.team-page .build-item>img{width:27px;height:27px}.team-page .item-owner b{font-size:12px}.team-page .trait-chip{font-size:9px}.team-page .board-status{font-size:9px}.team-page .position-note{font-size:11px}.catalogue-cta{padding:22px;gap:15px}.catalogue-cta b{font-size:43px}.catalogue-cta h2{font-size:30px}.catalogue-cta p{font-size:11px}}
/* Pointed hexagons, staggered by half a cell. */
.hex-board{padding-right:7.2%}.hex-row:nth-child(even){transform:translateX(7.14%)}.hex-cell{clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%)}.hex-row+.hex-row{margin-top:-10px}.hex-cell small{top:15%;right:42%}.board-name{bottom:31%}.board-mini-items{bottom:17%}.requirement-note{border:1px solid #c9a65e;background:#b08c2e12;padding:13px 16px;border-radius:5px;color:#e6c983;font-size:11px;margin-bottom:22px}
@media(max-width:760px){.hex-row+.hex-row{margin-top:-6px}.team-page .hex-cell small{top:15%;right:42%}.requirement-note{font-size:10px}}
@media(max-width:500px){.team-roster{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px 12px}.roster-unit{width:100%;max-width:58px;justify-self:center}.unit-name{font-size:9px;max-width:64px}.mini-item{width:16px;height:16px}.unit-items{min-height:16px}.team-summary{padding-right:27px}.items-section{grid-template-columns:1fr}.build-item b{font-size:11px}.build-item small{font-size:9px}.build-item>img{width:32px;height:32px}.team-page .build-item b{font-size:11px}.team-page .build-item small{font-size:9px}.team-page .build-item>img{width:32px;height:32px}}
