.ac-body{height:100dvh;overflow:hidden}.ac-page{height:calc(100dvh - var(--nav-height));max-width:1320px;width:calc(100% - 40px);margin:0 auto;padding:6px 0 14px;box-sizing:border-box;display:flex;flex-direction:column;overflow:hidden}.ac-workspace{width:100%;flex:none;margin-block:auto}.ac-page>h1{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.ac-body .nav-active-title{white-space:normal;text-align:center}.ac-intro{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.ac-controls{display:flex;gap:10px;align-items:center;justify-content:center;margin:0 auto 7px;flex:none}.ac-controls>label,.ac-selector-label{font:650 calc((9px) * var(--desktop-font-scale, 1))/1.3 var(--mono);letter-spacing:.1em;color:var(--muted)}.ac-controls form{margin:0}.ac-page select{font:600 calc((12px) * var(--desktop-font-scale, 1))/1.3 var(--font);color:var(--text);background:var(--surface-raised);border:1px solid var(--line);border-radius:7px;padding:7px 27px 7px 10px;max-width:100%;min-width:0;cursor:pointer}.ac-controls select{min-width:145px}.ac-page :focus-visible{outline:2px solid var(--accent);outline-offset:2px}.ac-pair{position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;flex:none;min-height:0;align-items:stretch}.ac-vs{position:absolute;left:50%;top:88px;transform:translate(-50%,-50%);z-index:1;border:1px solid var(--line);border-radius:50%;background:var(--surface-page);color:var(--accent);font:700 calc((11px) * var(--desktop-font-scale, 1)) var(--mono);width:29px;height:29px;display:grid;place-items:center}.ac-card{min-width:0;min-height:0;border:1px solid var(--line);border-radius:13px;background:var(--surface-panel);padding:11px 14px;display:flex;flex-direction:column;align-items:stretch;overflow:hidden}.ac-selector-label{display:block;margin:0 0 4px}.ac-card select{width:100%;font-size:calc((11px) * var(--desktop-font-scale, 1));padding:8px 28px 8px 9px}.ac-art{flex:none;aspect-ratio:1;width:144px;height:144px;max-width:100%;display:grid;place-items:center;align-self:center;margin:7px auto 6px;border:1px solid #ffffff08;border-radius:9px;background:var(--surface-raised)}.ac-art img{width:100%;height:100%;object-fit:contain;min-width:0;display:block}.ac-name{font:700 calc((clamp(14px,calc(1.4 * var(--type-reference-vw, 1vw)),18px)) * var(--desktop-font-scale, 1))/1.2 var(--font);margin:0 0 8px;min-height:2.4em;max-height:2.4em;overflow:hidden;overflow-wrap:anywhere;letter-spacing:-.015em}.ac-stats{display:grid;gap:5px;margin:0}.ac-stat{display:flex;justify-content:space-between;align-items:center;gap:8px;min-height:32px;border:1px solid var(--line);border-radius:8px;padding:6px 10px;background:var(--surface-raised)}.ac-stat dt{font:600 calc((9px) * var(--desktop-font-scale, 1))/1.3 var(--mono);color:var(--muted);overflow-wrap:anywhere;min-width:0}.ac-stat dd{margin:0;font:650 calc((14px) * var(--desktop-font-scale, 1))/1.2 var(--font);font-variant-numeric:tabular-nums;text-align:right;flex-shrink:0}.ac-stat dd.ac-win{color:#8fd8a0}.ac-help{position:relative;align-self:center;flex:none;width:fit-content;max-width:100%;margin:4px auto 0;color:var(--muted);text-align:center}.ac-help summary{font:550 calc((8px) * var(--desktop-font-scale, 1))/1.35 var(--mono);list-style:none;text-decoration:none;border-bottom:1px dotted var(--accent);cursor:pointer;display:inline}.ac-help summary::-webkit-details-marker{display:none}.ac-help p{position:absolute;bottom:calc(100% + 5px);left:50%;transform:translateX(-50%);z-index:5;width:min(420px,85vw);padding:9px 11px;border:1px solid var(--line);border-radius:7px;background:var(--surface-raised);font-size:calc((10px) * var(--desktop-font-scale, 1));line-height:1.45;margin:0}.ac-page>.workspace-bottom{flex:none;margin-top:0;padding-top:4px;padding-bottom:0}.ac-body [aria-busy=true]{opacity:.65;pointer-events:none}
@media(max-width:760px){.ac-page{width:calc(100% - 16px);padding:5px 0 14px}.ac-controls{margin-bottom:5px;gap:7px}.ac-controls>label{font-size:calc((8px) * var(--desktop-font-scale, 1))}.ac-page select{font-size:calc((10px) * var(--desktop-font-scale, 1));padding:6px 21px 6px 8px}.ac-controls select{min-width:120px}.ac-pair{gap:9px}.ac-vs{top:69px;width:23px;height:23px;font-size:calc((9px) * var(--desktop-font-scale, 1))}.ac-card{padding:8px 7px;border-radius:10px}.ac-selector-label{font-size:calc((8px) * var(--desktop-font-scale, 1));margin-bottom:3px}.ac-card select{font-size:calc((10px) * var(--desktop-font-scale, 1));padding:7px 17px 7px 6px}.ac-art{width:96px;height:96px;margin:5px auto 5px;border-radius:7px}.ac-name{font-size:calc((13px) * var(--desktop-font-scale, 1));line-height:1.18;min-height:2.36em;max-height:2.36em;margin-bottom:6px}.ac-stats{gap:4px}.ac-stat{min-height:28px;padding:5px 6px;gap:3px;border-radius:7px}.ac-stat dt{font-size:calc((7px) * var(--desktop-font-scale, 1));letter-spacing:0}.ac-stat dd{font-size:calc((11px) * var(--desktop-font-scale, 1));flex-shrink:1;overflow-wrap:anywhere}.ac-help{margin-top:3px}.ac-help summary{font-size:calc((7px) * var(--desktop-font-scale, 1))}.ac-page>.workspace-bottom{padding-top:3px}}
@media(max-width:380px){.ac-page{padding-left:6px;padding-right:6px}.ac-pair{gap:7px}.ac-card{padding-left:6px;padding-right:6px}.ac-art{width:84px;height:84px}.ac-name{font-size:calc((12px) * var(--desktop-font-scale, 1))}.ac-stat{padding-left:5px;padding-right:5px}.ac-stat dt{font-size:calc((6.5px) * var(--desktop-font-scale, 1))}.ac-stat dd{font-size:calc((10px) * var(--desktop-font-scale, 1))}.ac-card select{font-size:calc((9px) * var(--desktop-font-scale, 1))}}
@media(max-height:700px){.ac-page{padding-top:3px;padding-bottom:17px}.ac-controls{margin-bottom:3px}.ac-vs{top:64px}.ac-card{padding-top:6px;padding-bottom:6px}.ac-art{width:118px;height:118px;margin:4px auto}.ac-name{margin-bottom:5px}.ac-stat{min-height:28px;padding-top:4px;padding-bottom:4px}.ac-stats{gap:3px}.ac-help{margin-top:2px}}
@media(max-width:760px) and (max-height:700px){.ac-art{width:80px;height:80px}.ac-card{padding:6px 5px}.ac-name{font-size:calc((11px) * var(--desktop-font-scale, 1));margin-bottom:4px}.ac-stat{min-height:25px;padding:3px 4px}.ac-stat dt{font-size:calc((6px) * var(--desktop-font-scale, 1))}.ac-stat dd{font-size:calc((9px) * var(--desktop-font-scale, 1))}.ac-vs{top:59px}.ac-controls{margin-bottom:2px}.ac-page>.workspace-bottom{padding-top:1px}}

.ac-category-icon{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-width:64px;min-height:48px;padding:4px 10px;border:1px solid var(--line);border-radius:8px;background:var(--surface-panel);color:var(--muted);text-decoration:none;transition:background .15s,border-color .15s}.ac-category-icon img{width:28px;height:28px;display:block}.ac-category-icon span{font:600 calc((10px) * var(--desktop-font-scale, 1))/1.2 var(--mono);text-transform:uppercase}.ac-category-icon:hover,.ac-category-icon[aria-selected=true]{border-color:var(--accent);background:var(--surface-raised);color:var(--accent)}.ac-category-icon[aria-selected=true] img{filter:brightness(0) saturate(100%) invert(48%) sepia(95%) saturate(3260%) hue-rotate(359deg) brightness(100%) contrast(104%)}#ac-form{margin:0}@media(max-width:760px){.ac-category-icon{min-width:54px;min-height:44px;padding:3px 8px}.ac-category-icon img{width:25px;height:25px}.ac-category-icon span{font-size:calc((9px) * var(--desktop-font-scale, 1))}}

.ac-identity{display:contents}
@media (min-width:1100px) and (hover:hover) and (pointer:fine){
 .ac-page{max-width:1400px;width:calc(100% - 80px);padding:12px 0 20px}
 .ac-workspace{max-width:1200px;margin-inline:auto}
 .ac-controls{gap:12px;margin-bottom:18px}
 .ac-category-icon{min-width:92px;min-height:54px;padding:6px 14px}
 .ac-category-icon span{font-size:calc((12px) * var(--desktop-font-scale, 1))}
 .ac-pair{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,24%) minmax(0,1fr);grid-template-rows:clamp(160px,25vh,240px);gap:8px 12px;border:1px solid var(--line);border-radius:16px;padding:24px;background:var(--surface-panel);overflow:hidden}
 .ac-card,.ac-stats,.ac-stat{display:contents}
 .ac-card:first-of-type>*{grid-column:1}
 .ac-card:last-of-type>*{grid-column:3}
 .ac-selector-label{grid-row:1;margin:0;font-size:calc((12px) * var(--desktop-font-scale, 1));line-height:1.3;align-self:start}
 .ac-card select{grid-row:2;align-self:start;width:100%;font-size:calc((14px) * var(--desktop-font-scale, 1));padding:10px 32px 10px 12px;height:42px}
 .ac-identity{grid-row:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;min-width:0;padding:18px 20px;box-sizing:border-box;border:1px solid var(--line);border-radius:12px;background:var(--surface-raised);cursor:pointer;transition:border-color .15s,background .15s}
 .ac-identity:hover{border-color:var(--accent);background:var(--surface-raised)}
 .ac-art{width:104px;height:104px;aspect-ratio:1;max-width:104px;align-self:center;margin:0;border:0;background:transparent;flex-shrink:1;min-height:0}
 .ac-art img{max-height:104px}
 .ac-name{flex:none;text-align:center;font-size:calc((18px) * var(--desktop-font-scale, 1));line-height:1.2;margin:0;min-height:0;max-height:2.4em;padding:0;width:100%;box-sizing:border-box}
 .ac-vs{position:relative;grid-column:2;grid-row:1;left:auto;top:auto;transform:none;justify-self:center;align-self:center;width:44px;height:44px;font-size:calc((14px) * var(--desktop-font-scale, 1));border-color:var(--accent)}
 .ac-stat dt,.ac-stat dd{display:flex;align-items:center;justify-content:center;min-height:46px;box-sizing:border-box;padding:10px 12px;border:1px solid var(--line);border-radius:9px;background:var(--surface-panel);text-align:center}
 .ac-card:first-of-type .ac-stat dt{grid-column:2;background:var(--surface-page);font-size:calc((12px) * var(--desktop-font-scale, 1));letter-spacing:.06em}
 .ac-card:last-of-type .ac-stat dt{display:none}
 .ac-card:first-of-type .ac-stat dd{grid-column:1}
 .ac-card:last-of-type .ac-stat dd{grid-column:3}
 .ac-stat dd{font-size:calc((18px) * var(--desktop-font-scale, 1));color:var(--text);font-weight:700;font-variant-numeric:tabular-nums}
 .ac-stat dd.ac-win{color:var(--accent);border-color:var(--accent);background:color-mix(in srgb,var(--accent) 13%,#141618)}
 .ac-stat:nth-child(1)>*{grid-row:2}
 .ac-stat:nth-child(2)>*{grid-row:3}
 .ac-stat:nth-child(3)>*{grid-row:4}
 .ac-stat:nth-child(4)>*{grid-row:5}
 .ac-stat:nth-child(5)>*{grid-row:6}
 .ac-stat:nth-child(6)>*{grid-row:7}
 .ac-help{margin:12px auto 0}
 .ac-help summary{font-size:calc((12px) * var(--desktop-font-scale, 1));line-height:1.4}
 .ac-help p{font-size:calc((14px) * var(--desktop-font-scale, 1));line-height:1.5}
}
@media (min-width:1100px) and (hover:hover) and (pointer:fine) and (max-height:760px){
 .ac-controls{margin-bottom:10px}
 .ac-category-icon{min-height:46px;padding:4px 12px}
 .ac-pair{padding:16px 20px;grid-template-rows:160px;gap:6px 10px}
 .ac-card select{height:38px;padding-block:8px}
 .ac-identity{padding:14px 16px;gap:8px}
 .ac-art{width:80px;height:80px;max-width:80px}
 .ac-name{font-size:calc((16px) * var(--desktop-font-scale, 1))}
 .ac-stat dt,.ac-stat dd{min-height:36px;padding:7px 10px}
 .ac-stat dd{font-size:calc((16px) * var(--desktop-font-scale, 1))}
 .ac-help{margin-top:8px}
}
@media (min-width:1100px) and (hover:hover) and (pointer:fine) and (max-height:620px){
 .ac-page{padding-top:4px;padding-bottom:14px}
 .ac-controls{margin-bottom:6px}
 .ac-category-icon{min-height:38px;flex-direction:row;gap:6px}
 .ac-category-icon img{width:24px;height:24px}
 .ac-pair{padding:12px 18px;grid-template-rows:112px;gap:5px 10px}
 .ac-card select{height:34px;font-size:calc((13px) * var(--desktop-font-scale, 1));padding-block:6px}
 .ac-selector-label{font-size:calc((11px) * var(--desktop-font-scale, 1))}
 .ac-identity{padding:10px 12px;gap:6px}
 .ac-art{width:54px;height:54px;max-width:54px}
 .ac-name{font-size:calc((14px) * var(--desktop-font-scale, 1))}
 .ac-vs{width:34px;height:34px;font-size:calc((12px) * var(--desktop-font-scale, 1))}
 .ac-stat dt,.ac-stat dd{min-height:28px;padding:4px 8px}
 .ac-stat dd{font-size:calc((15px) * var(--desktop-font-scale, 1))}
 .ac-help summary{font-size:calc((11px) * var(--desktop-font-scale, 1))}
}

@media (min-width:1100px) and (hover:hover) and (pointer:fine){
 .ac-selector-label,.ac-card select{position:absolute;width:1px;height:1px;min-height:0;padding:0;margin:0;border:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;opacity:0}
 .ac-name{color:var(--accent)}
 .ac-card:first-of-type .ac-stat dt{border-radius:0}
 .ac-stat dd.ac-win{box-shadow:0 0 12px color-mix(in srgb,var(--accent) 25%,transparent),inset 0 0 12px color-mix(in srgb,var(--accent) 8%,transparent)}
}

/* Keep the shared footer at the viewport bottom on every attachment route. */
.ac-page{position:relative;padding-bottom:54px}
.ac-page>.workspace-bottom{position:absolute;left:0;right:0;bottom:max(14px,env(safe-area-inset-bottom,0px));width:100%;margin:0}

.ac-toolbar{display:flex;flex-direction:column;width:max-content;max-width:100%;margin:0 auto 12px;gap:8px}
.ac-toolbar .ac-controls{margin:0}
.ac-weapon-control{display:flex;align-items:center;gap:10px;width:100%;box-sizing:border-box;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:var(--surface-panel)}
.ac-weapon-control>span{font:600 calc((10px) * var(--desktop-font-scale, 1)) var(--mono);color:var(--muted)}
.ac-page .ac-weapon-control select{flex:1;width:0;min-width:0;margin:0;border:0;border-radius:0;background-color:transparent;color:var(--accent);padding:4px 24px 4px 4px}
.ac-empty{padding:24px;text-align:center;color:var(--muted);font-size:calc((14px) * var(--desktop-font-scale, 1))}
@media(min-width:1100px) and (hover:hover) and (pointer:fine){.ac-toolbar{margin-bottom:18px}}

/* One rounded trigger; menu rows use the Weapon Compare picker styles. */
.ac-weapon-control.weapon-picker{position:relative;display:block;width:100%;margin:0;padding:0;border:0;background:transparent}
.ac-weapon-control .weapon-picker-trigger{position:relative;justify-content:center;min-height:60px;padding:12px 36px;border:1px solid var(--line);border-radius:var(--surface-radius,14px);background:var(--surface-panel);font:500 calc((24px) * var(--desktop-font-scale, 1))/1.2 var(--font);letter-spacing:0;text-align:center;color:var(--accent)}
.ac-weapon-control .weapon-picker-trigger:hover{background:var(--surface-raised)}
.ac-weapon-control .weapon-picker-caret{position:absolute;right:16px;margin:0;width:8px;height:8px}
.ac-weapon-control .weapon-picker-menu[hidden]{display:none}
.ac-weapon-control .weapon-picker-menu{z-index:45}
.ac-weapon-control select{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;opacity:0;pointer-events:none}
.ac-page{overflow:visible}

/* Reserve footer space in the attachment layout; never alter official pages. */
.ac-page{max-width:1440px;width:100%;padding-left:28px;padding-right:28px;padding-bottom:12px;overflow:visible}
.ac-workspace{flex:1 1 auto;min-height:0;margin-block:0;display:flex;flex-direction:column;justify-content:center}
.ac-page>.workspace-bottom{position:static;left:auto;right:auto;bottom:auto;width:100%;flex:none;margin:0;padding:0}
@media(max-width:760px){.ac-page{padding:8px 10px}}

/* Comparison overview, scoped to attachment pages. */
.ac-workspace{justify-content:flex-start;overflow-y:auto;overflow-x:clip;padding-bottom:12px;scrollbar-width:thin;scrollbar-color:#45494e transparent}
.ac-workspace>h1{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
#ac-tool{width:100%;min-width:0}
.ac-overview{margin-top:16px;padding:16px;border:1px solid var(--line);border-radius:16px;background:var(--surface-panel);min-width:0}
.ac-overview-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.ac-overview-heading h2{margin:0;font:600 calc((14px) * var(--desktop-font-scale, 1))/1.3 var(--mono);color:var(--text)}
.ac-overview-heading>span{font:400 calc((12px) * var(--desktop-font-scale, 1))/1.3 var(--mono);color:var(--muted)}
.ac-matrix-viewport{overflow-x:auto;scrollbar-width:thin;scrollbar-color:#45494e transparent;border-radius:8px}
.ac-matrix{width:100%;border-collapse:separate;border-spacing:4px;table-layout:fixed;min-width:max-content;font-variant-numeric:tabular-nums}
.ac-matrix th,.ac-matrix td{box-sizing:border-box;text-align:center;vertical-align:middle}
.ac-matrix thead th{width:100px;padding:6px 4px 10px;font:500 calc((12px) * var(--desktop-font-scale, 1))/1.25 var(--font);color:var(--text)}
.ac-matrix thead th img{display:block;width:48px;height:48px;object-fit:contain;margin:0 auto 6px}
.ac-matrix thead th span{display:block;overflow-wrap:anywhere}
.ac-matrix th:first-child{width:136px;position:sticky;left:0;z-index:1;background:var(--surface-panel);text-align:left;padding:8px;font:500 calc((11px) * var(--desktop-font-scale, 1))/1.25 var(--mono);color:var(--muted)}
.ac-matrix tbody td{padding:8px 5px;border:1px solid color-mix(in srgb,var(--accent) var(--heat,0%),var(--line));border-radius:7px;background:color-mix(in srgb,var(--accent) calc(var(--heat,0%)*.22),#141618);color:color-mix(in srgb,var(--accent) var(--heat,0%),var(--text));font:600 calc((13px) * var(--desktop-font-scale, 1))/1.2 var(--font);white-space:nowrap}
.ac-matrix [hidden],.ac-matrix[hidden]{display:none!important}
.ac-matrix-empty{color:var(--muted);font-size:calc((14px) * var(--desktop-font-scale, 1));text-align:center}
@media(min-width:1100px) and (hover:hover) and (pointer:fine){
 .ac-toolbar{margin-bottom:12px}
 .ac-weapon-control .weapon-picker-trigger{min-height:48px;padding-block:8px}
 .ac-pair{padding:14px 18px;grid-template-rows:112px;gap:5px 10px}
 .ac-identity{padding:10px 14px;gap:6px}
 .ac-art{width:64px;height:64px;max-width:64px}
 .ac-name{font-size:calc((16px) * var(--desktop-font-scale, 1))}
 .ac-stat dt,.ac-stat dd{min-height:30px;padding:5px 8px}
 .ac-stat dd{font-size:calc((16px) * var(--desktop-font-scale, 1))}
}
@media(max-width:760px){.ac-overview{padding:10px;margin-top:12px}.ac-overview-heading{align-items:flex-start}.ac-overview-heading h2{font-size:calc((12px) * var(--desktop-font-scale, 1))}.ac-overview-heading>span{font-size:calc((11px) * var(--desktop-font-scale, 1))}.ac-matrix th:first-child{width:106px;font-size:calc((10px) * var(--desktop-font-scale, 1))}.ac-matrix thead th{width:88px}}

/* Use document scrolling like Features; header remains the shared fixed header. */
html:has(.ac-body){height:auto;overflow-y:auto}
.ac-body{height:auto;min-height:100dvh;overflow:visible}
.ac-page{height:auto;min-height:calc(100dvh - var(--nav-height));overflow:visible}
.ac-workspace{flex:1 0 auto;min-height:auto;overflow:visible;padding-bottom:20px}
.ac-page>.workspace-bottom{position:static;margin-top:auto;flex:none}

/* Full-width catalog overview. */
.ac-page{max-width:none;width:100%;padding-inline:28px}
.ac-workspace{max-width:none;width:100%;margin-inline:0}
.ac-overview{margin-top:0;padding:20px}
.ac-matrix{table-layout:auto;min-width:100%}
.ac-matrix thead th{min-width:100px}
.ac-matrix tbody td[data-tone=bonus]{--cell-color:#00ff66}
.ac-matrix tbody td[data-tone=malus]{--cell-color:#ff2020}
.ac-matrix tbody td[data-tone=cost]{--cell-color:var(--accent)}
.ac-matrix tbody td{border-color:color-mix(in srgb,var(--cell-color,var(--line)) var(--heat,0%),#303438);background:color-mix(in srgb,var(--cell-color,#141618) calc(var(--heat,0%)*.3),#141618);color:color-mix(in srgb,var(--cell-color,var(--text)) var(--heat,0%),#91989e)}
.ac-matrix tbody td.ac-best-bonus{border-color:#52d98a;color:#84ffb4;background:#1d4930;box-shadow:0 0 12px #52d98a42,inset 0 0 8px #52d98a15;text-shadow:0 0 8px #52d98a80}
.ac-matrix tr[hidden]{display:none}
@media(max-width:760px){.ac-page{padding-inline:10px}.ac-overview{padding:10px}}

/* Saturated endpoints, shared by every numeric row. */
.ac-matrix tbody td[data-tone=cost]{--cell-color:var(--text)}
.ac-matrix tbody td.ac-best-bonus{border-color:#00ff66;color:#00ff66;background:#073b1b;box-shadow:0 0 14px #00ff6655,inset 0 0 8px #00ff661a;text-shadow:0 0 8px #00ff6680}
.ac-matrix tbody td[data-tone=neutral]{color:var(--muted);background:#141618;border-color:var(--line);box-shadow:none;text-shadow:none}

/* GRIP desktop presentation. Mobile and other categories retain their existing UI. */
.ac-catalog-heading{display:none}
@media(min-width:1100px) and (hover:hover) and (pointer:fine){
 #ac-tool .ac-overview{padding:18px 14px 14px;border-radius:12px;background:var(--surface-panel)}
 #ac-tool .ac-overview-heading{padding:0 6px;margin-bottom:16px;min-height:28px}
 #ac-tool .ac-overview-title{display:none}
 #ac-tool .ac-catalog-heading{display:inline;font:600 calc((19px) * var(--desktop-font-scale, 1))/1.3 var(--mono)}
 #ac-tool .ac-catalog-count{color:var(--accent);font-size:calc((15px) * var(--desktop-font-scale, 1))}
 #ac-tool .ac-overview-heading>span{font-size:calc((11px) * var(--desktop-font-scale, 1));text-align:right}
 #ac-tool .ac-matrix-viewport{max-width:100%;overflow-x:auto;overflow-y:hidden;padding-bottom:8px;scrollbar-color:#50565b #25292d}
 #ac-tool .ac-matrix{table-layout:fixed;width:100%;min-width:calc(158px + var(--ac-columns,10)*132px);border-spacing:4px}
 #ac-tool .ac-matrix th:first-child{width:158px;min-width:158px}
 #ac-tool .ac-matrix thead th:first-child{visibility:hidden}
 #ac-tool .ac-matrix thead th[data-part]{height:148px;min-width:0;padding:18px 8px 14px;background:var(--surface-raised);border:1px solid var(--line);border-radius:7px;font:500 calc((13px) * var(--desktop-font-scale, 1))/1.35 var(--font)}
 #ac-tool .ac-matrix thead th img{width:48px;height:48px;margin:0 auto 14px}
 #ac-tool .ac-matrix thead th[data-part] .ac-part-choice span{min-height:36px;display:flex;align-items:center;justify-content:center;overflow-wrap:normal}
 #ac-tool .ac-matrix tbody th{height:48px;padding:10px 12px;border:1px solid var(--line);border-radius:5px;background:var(--surface-raised);color:#ccd1d4;font:500 calc((11px) * var(--desktop-font-scale, 1))/1.3 var(--mono)}
 #ac-tool .ac-matrix tbody td{height:48px;padding:11px 8px;font:600 calc((15px) * var(--desktop-font-scale, 1))/1.3 var(--font);border-radius:5px;border-color:color-mix(in srgb,var(--cell-color,var(--line)) calc(var(--heat,0%)*.62),#303438);background:color-mix(in srgb,var(--cell-color,#141618) calc(var(--heat,0%)*.18),#141618);color:color-mix(in srgb,var(--cell-color,var(--text)) calc(var(--heat,0%)*.75),#b0b8bd)}
 #ac-tool .ac-matrix tbody td.ac-best-bonus{border-color:#44bd77;color:#80efa9;background:#163c27;box-shadow:0 0 9px #44bd7738,inset 0 0 6px #44bd7712;text-shadow:none}
 #ac-tool .ac-matrix tbody td[data-tone=neutral]{color:var(--muted);background:#171b1e;border-color:#30363a;box-shadow:none}
}

.ac-stat-icon{width:18px;height:18px;display:inline-block;vertical-align:middle;margin-right:9px;flex:none;color:#d4dadd}
.ac-matrix tbody th>span{vertical-align:middle}
.ac-legend{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px 20px;font:400 calc((11px) * var(--desktop-font-scale, 1))/1.4 var(--font);color:#c2c9cd}
.ac-legend>span{display:inline-flex;align-items:center;gap:7px;white-space:nowrap}
.ac-legend-dot{width:9px;height:9px;border-radius:50%;display:inline-block;flex:none}
.ac-legend-0{background:#69dc72}.ac-legend-1{background:#357d3d}.ac-legend-2{background:#555b5f}.ac-legend-3{background:#e34a40}.ac-legend-4{background:#933329}
.ac-category-icon{cursor:pointer}
@media(max-width:760px){.ac-legend{gap:6px 10px;font-size:calc((10px) * var(--desktop-font-scale, 1))}.ac-stat-icon{width:14px;height:14px;margin-right:5px}}

/* Keep the absolute row winners visibly luminous at every viewport size. */
#ac-tool .ac-matrix tbody td.ac-best-bonus{position:relative;z-index:1;border-color:#00ff66;color:#a2ffc7;background:#104326;box-shadow:0 0 7px #00ff66cc,0 0 18px #00ff6673,inset 0 0 14px #00ff663d;text-shadow:0 0 5px #00ff66,0 0 11px #00ff6699}

/* Choose a weapon and transfer the complete build to Lab. */
.ac-toolbar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:"weapon lab" "controls controls";max-width:min(780px,100%);width:100%;align-items:stretch;gap:8px}
.ac-toolbar .ac-weapon-control{grid-area:weapon;min-width:0}
.ac-toolbar .ac-controls{grid-area:controls;width:100%;align-items:stretch}
.ac-toolbar .ac-to-lab{grid-area:lab;align-self:stretch}
.ac-controls{margin-bottom:0}
.ac-category-icon{flex:1;min-width:0;flex-direction:column!important}
.ac-category-icon .ac-chosen-name{font:500 calc((10px) * var(--desktop-font-scale, 1))/1.3 var(--font);max-width:145px;overflow-wrap:anywhere;color:var(--text);text-transform:none}
.ac-to-lab{display:block;max-width:none;width:100%;margin:0;padding:10px 14px;border:1px solid var(--accent);border-radius:0;background:var(--accent);color:#151719;font:700 calc((13px) * var(--desktop-font-scale, 1))/1.4 var(--mono);cursor:pointer}
.ac-to-lab:disabled{border-color:var(--line);background:var(--surface-panel);color:var(--muted);cursor:default}
.ac-part-choice{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%;padding:0;border:0;background:transparent;color:inherit;font:inherit;cursor:pointer}
.ac-matrix [data-part]{cursor:pointer}
.ac-matrix thead th.ac-selected-part{border-color:var(--accent)!important;box-shadow:inset 0 0 0 1px var(--accent)}
.ac-matrix thead th.ac-selected-part span{color:var(--accent)}
@media(max-width:760px){.ac-toolbar{gap:6px}.ac-weapon-control .weapon-picker-trigger{min-height:48px;padding:8px 22px;font-size:calc((15px) * var(--desktop-font-scale, 1))}.ac-to-lab{padding:7px 5px;font-size:calc((9px) * var(--desktop-font-scale, 1))}.ac-category-icon{padding:5px 3px}.ac-category-icon .ac-chosen-name{font-size:calc((9px) * var(--desktop-font-scale, 1))}.ac-toolbar .ac-controls{gap:5px}}

/* Secondary cost row, and a clear two-build comparison sequence. */
#ac-tool .ac-matrix tr[data-key=price] th,#ac-tool .ac-matrix tr[data-key=price] td{height:30px;padding:5px 8px;font-size:calc((11px) * var(--desktop-font-scale, 1));box-shadow:none;text-shadow:none}
#ac-tool .ac-matrix tr[data-key=price] td.ac-best-bonus{box-shadow:none;text-shadow:none;color:#a8b9af;border-color:#3b5445;background:#1b2720;z-index:auto}
#ac-tool .ac-matrix tr[data-key=price] .ac-stat-icon{width:13px;height:13px}

.ac-to-lab small{display:block;margin-top:5px;font:500 calc((9px) * var(--desktop-font-scale, 1))/1.3 var(--mono);opacity:.8}
@media(max-width:760px){.ac-to-lab small{font-size:calc((7px) * var(--desktop-font-scale, 1));margin-top:4px}}

/* Keep the statistic-label column fixed; only attachment columns share remaining width. */
#ac-tool .ac-matrix{table-layout:fixed;width:100%;min-width:calc(158px + var(--ac-columns,10)*100px)}
#ac-tool .ac-matrix th:first-child{width:158px;min-width:158px;max-width:158px}
#ac-tool .ac-matrix thead th[data-part]{width:auto;min-width:0}
@media(max-width:760px){
 #ac-tool .ac-matrix{min-width:calc(158px + var(--ac-columns,10)*88px)}
 #ac-tool .ac-matrix th:first-child{width:158px;min-width:158px;max-width:158px}
}

#ac-tool .ac-matrix tbody th:first-child{white-space:nowrap}

/* Fit the full attachment catalog without a horizontal scrollbar. */
#ac-tool .ac-overview-heading h2{display:flex;align-items:center;gap:12px;min-width:0}
#ac-tool .ac-catalog-heading{display:inline;font:600 calc((19px) * var(--desktop-font-scale, 1))/1.3 var(--mono);white-space:nowrap}
#ac-tool .ac-catalog-count{color:var(--accent);font-size:calc((15px) * var(--desktop-font-scale, 1))}
#ac-tool .ac-reset-hidden{padding:5px 9px;border:1px solid #444b50;border-radius:6px;background:#202427;color:#c2c9cd;font:600 calc((10px) * var(--desktop-font-scale, 1))/1.2 var(--mono);cursor:pointer}
#ac-tool .ac-reset-hidden:disabled{opacity:.42;cursor:default}
#ac-tool .ac-matrix-viewport{max-width:100%;overflow-x:hidden;overflow-y:visible;padding:0;scrollbar-width:none}
#ac-tool .ac-matrix{width:100%;min-width:0;table-layout:fixed;border-spacing:3px}
#ac-tool .ac-matrix th:first-child{width:158px;min-width:158px;max-width:158px}
#ac-tool .ac-matrix thead th[data-part]{width:auto;min-width:0;padding:10px 5px 8px;height:auto;vertical-align:top}
#ac-tool .ac-matrix thead th[data-part] .ac-part-choice{min-width:0;height:auto;min-height:118px;gap:5px}
#ac-tool .ac-matrix thead th[data-part] img{width:min(48px,100%);height:48px;margin:0 auto 4px}
#ac-tool .ac-matrix thead th[data-part] .ac-part-choice span{min-height:34px;overflow-wrap:anywhere;word-break:normal;hyphens:auto;font-size:calc((12px) * var(--desktop-font-scale, 1))}
#ac-tool .ac-hide-part{display:block;margin:4px auto 0;padding:4px 8px;border:1px solid #444b50;border-radius:5px;background:#202427;color:#aeb5ba;font:600 calc((9px) * var(--desktop-font-scale, 1))/1.2 var(--mono);letter-spacing:.04em;cursor:pointer}
#ac-tool .ac-hide-part:hover,#ac-tool .ac-reset-hidden:not(:disabled):hover{border-color:var(--accent);color:var(--accent)}
#ac-tool .ac-matrix [hidden],#ac-tool .ac-mobile-part[hidden],#ac-tool .ac-mobile-stat[hidden],#ac-tool .ac-matrix[hidden],#ac-tool .ac-mobile-catalog[hidden]{display:none!important}
#ac-tool .ac-mobile-catalog{display:none}
#ac-tool .ac-mobile-value[data-tone=bonus]{--cell-color:#00ff66}
#ac-tool .ac-mobile-value[data-tone=malus]{--cell-color:#ff2020}
#ac-tool .ac-mobile-value[data-tone=cost]{--cell-color:var(--text)}
#ac-tool .ac-mobile-value{border:1px solid color-mix(in srgb,var(--cell-color,var(--line)) var(--heat,0%),#303438);border-radius:6px;background:color-mix(in srgb,var(--cell-color,#141618) calc(var(--heat,0%)*.24),#141618);color:color-mix(in srgb,var(--cell-color,var(--text)) var(--heat,0%),#b0b8bd);padding:7px 9px;font:600 calc((13px) * var(--desktop-font-scale, 1))/1.2 var(--font);font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}
#ac-tool .ac-mobile-value[data-tone=neutral]{color:var(--muted);background:#171b1e;border-color:#30363a;box-shadow:none}
#ac-tool .ac-mobile-value.ac-best-bonus{border-color:#00ff66;color:#a2ffc7;background:#104326;box-shadow:0 0 7px #00ff66aa,0 0 16px #00ff6655,inset 0 0 12px #00ff6630}
@media(min-width:761px){
 #ac-tool .ac-toolbar{max-width:780px}
 #ac-tool .ac-to-lab{margin-top:0}
}
@media(max-width:760px){
 #ac-tool .ac-overview-heading{align-items:center;flex-wrap:wrap}
 #ac-tool .ac-overview-heading h2{font-size:calc((13px) * var(--desktop-font-scale, 1));gap:8px}
 #ac-tool .ac-catalog-heading{font-size:calc((14px) * var(--desktop-font-scale, 1))}
 #ac-tool .ac-catalog-count{font-size:calc((12px) * var(--desktop-font-scale, 1))}
 #ac-tool .ac-reset-hidden{font-size:calc((9px) * var(--desktop-font-scale, 1));padding:5px 7px}
 #ac-tool .ac-matrix-viewport{display:none}
 #ac-tool .ac-mobile-catalog{display:grid;gap:9px}
 #ac-tool .ac-mobile-part{min-width:0;padding:9px;border:1px solid var(--line);border-radius:10px;background:var(--surface-raised)}
 #ac-tool .ac-mobile-part.ac-selected-part{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}
 #ac-tool .ac-mobile-part>header{margin-bottom:8px}
 #ac-tool .ac-mobile-part-heading{display:flex;align-items:center;gap:8px}
 #ac-tool .ac-mobile-part-heading .ac-part-choice{flex:1;min-width:0;display:grid;grid-template-columns:44px minmax(0,1fr);gap:8px;text-align:left}
 #ac-tool .ac-mobile-part-heading .ac-part-choice img{width:44px;height:44px;margin:0;grid-row:1}
 #ac-tool .ac-mobile-part-heading .ac-part-choice span{min-height:0;display:block;text-align:left;font:600 calc((12px) * var(--desktop-font-scale, 1))/1.25 var(--font);overflow-wrap:anywhere}
 #ac-tool .ac-mobile-part-heading .ac-hide-part{flex:none;margin:0}
 #ac-tool .ac-mobile-stats{display:grid;gap:4px}
 #ac-tool .ac-mobile-stat{display:grid;grid-template-columns:minmax(0,158px) minmax(0,1fr);align-items:center;gap:8px;min-width:0}
 #ac-tool .ac-mobile-label{display:flex;align-items:center;gap:6px;min-width:0;white-space:nowrap;color:#ccd1d4;font:500 calc((10px) * var(--desktop-font-scale, 1))/1.2 var(--mono)}
 #ac-tool .ac-mobile-label .ac-stat-icon{width:14px;height:14px;margin:0}
 #ac-tool .ac-mobile-value{min-width:0;padding:6px 8px;font-size:calc((11px) * var(--desktop-font-scale, 1))}
}

/* Integrate the upper controls into the catalog panel. */
#ac-tool .ac-overview>.ac-toolbar{max-width:none;width:100%;margin:0 0 8px;box-sizing:border-box}
@media(min-width:761px){
 .ac-page{padding-top:8px;padding-bottom:8px}
 .ac-workspace{padding-bottom:8px}
 #ac-tool .ac-overview{padding:12px}
 #ac-tool .ac-overview-heading{padding:0 3px;margin-bottom:8px;min-height:28px}
 #ac-tool .ac-toolbar{gap:6px}
 #ac-tool .ac-weapon-control .weapon-picker-trigger{min-height:44px;height:44px;padding:6px 36px}
 #ac-tool .ac-to-lab{min-height:44px;padding:5px 12px;border-radius:0}
 #ac-tool .ac-to-lab small{margin-top:2px}
 #ac-tool .ac-controls{gap:8px}
 #ac-tool .ac-category-icon{display:grid!important;grid-template-columns:24px minmax(0,auto);grid-template-rows:18px 12px;justify-content:center;align-content:center;align-items:center;column-gap:8px;row-gap:1px;height:48px;min-height:48px;padding:6px 10px;box-sizing:border-box}
 #ac-tool .ac-category-icon>img{grid-column:1;grid-row:1 / -1;width:24px;height:24px;margin:0}
 #ac-tool .ac-category-icon>span{grid-column:2;text-align:left}
 #ac-tool .ac-category-icon .ac-chosen-name{grid-row:2;max-width:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 #ac-tool .ac-toolbar>form{display:contents}
}

/* Keep attachment visibility controls in the final compact row. */
#ac-tool .ac-matrix tfoot th,#ac-tool .ac-matrix tfoot td{height:28px;padding:2px 4px;background:transparent;border-bottom:0}
#ac-tool .ac-matrix tfoot .ac-hide-part{margin:0 auto;padding:3px 8px}
#ac-tool .ac-mobile-hide-row{padding:4px 0}
#ac-tool .ac-mobile-hide-row .ac-hide-part{margin:0 auto;padding:3px 8px}

/* Keep the tool centered and bounded on ultrawide desktop displays. */
@media(min-width:761px){.ac-workspace{max-width:1920px;margin-inline:auto}}

/* Weapon identity and Lab transfer action follow the compact reference. */
#ac-tool .ac-weapon-control{display:grid;grid-template-columns:70px minmax(0,1fr);align-items:center;gap:8px}
#ac-tool .ac-weapon-caption{font:600 calc((13px) * var(--desktop-font-scale, 1))/1 var(--mono);color:var(--muted);text-align:left}
#ac-tool .ac-weapon-control .weapon-picker-trigger{display:grid;grid-template-columns:96px minmax(0,1fr) 12px;gap:16px;align-items:center;min-height:48px;height:48px;padding:3px 14px;border-radius:6px;text-align:left}
#ac-tool .ac-weapon-image{width:96px;height:40px;object-fit:contain}
#ac-tool .ac-weapon-control .weapon-picker-label{color:var(--accent);font-size:calc((22px) * var(--desktop-font-scale, 1));text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#ac-tool .ac-weapon-control .weapon-picker-caret{position:static;justify-self:end;width:7px;height:7px}
#ac-tool .ac-weapon-control .weapon-picker-menu{left:78px;right:0;width:auto}
#ac-tool .ac-to-lab{display:grid;grid-template-columns:24px minmax(0,1fr) 12px;align-items:center;gap:18px;min-height:48px;padding:6px 18px;border-radius:6px;text-align:left}
#ac-tool .ac-to-lab:disabled{background:linear-gradient(120deg,#25292d,#1d2023);border-color:#444b50;color:#aeb5ba}
#ac-tool .ac-lab-icon{width:24px;height:24px}
#ac-tool .ac-lab-copy{display:flex;flex-direction:column;min-width:0}
#ac-tool .ac-lab-copy>span{font-size:calc((14px) * var(--desktop-font-scale, 1));line-height:1.2;letter-spacing:.04em}
#ac-tool .ac-lab-copy small{font-size:calc((9px) * var(--desktop-font-scale, 1));font-weight:400;line-height:1.2;margin-top:3px}
#ac-tool .ac-lab-arrow{width:12px;height:20px;color:var(--accent)}
#ac-tool .ac-to-lab:not(:disabled) .ac-lab-arrow{color:inherit}
@media(max-width:760px){
 #ac-tool .ac-weapon-control{grid-template-columns:38px minmax(0,1fr);gap:4px}
 #ac-tool .ac-weapon-caption{font-size:calc((9px) * var(--desktop-font-scale, 1))}
 #ac-tool .ac-weapon-control .weapon-picker-trigger{grid-template-columns:36px minmax(0,1fr) 6px;gap:5px;padding:3px 6px}
 #ac-tool .ac-weapon-image{width:36px;height:30px}
 #ac-tool .ac-weapon-control .weapon-picker-label{font-size:calc((14px) * var(--desktop-font-scale, 1))}
 #ac-tool .ac-weapon-control .weapon-picker-menu{left:0}
 #ac-tool .ac-to-lab{grid-template-columns:18px minmax(0,1fr) 8px;gap:6px;padding:5px 8px}
 #ac-tool .ac-lab-icon{width:18px;height:18px}
 #ac-tool .ac-lab-copy>span{font-size:calc((10px) * var(--desktop-font-scale, 1))}
 #ac-tool .ac-lab-copy small{font-size:calc((7px) * var(--desktop-font-scale, 1))}
 #ac-tool .ac-lab-arrow{width:8px;height:14px}
}


/* One viewport, with the actual shared footer in the normal bottom flex slot. */
html:has(.ac-body){height:100%;overflow:hidden}
.ac-body{height:100dvh;min-height:0;overflow:hidden;box-sizing:border-box}
html:not(.wardogs-ipad) .ac-page{height:calc(100dvh - var(--nav-height));min-height:0;max-height:calc(100dvh - var(--nav-height));padding:8px 28px 12px;overflow:visible}
.ac-workspace{flex:1 1 0;min-height:0;padding-bottom:8px;overflow:visible}
html:not(.wardogs-ipad) .ac-page>.workspace-bottom{position:static;transform:none;flex:none;align-self:center;width:100%;max-width:1384px;height:auto;margin:0;padding:0}
@media(min-width:761px) and (max-height:800px){
 #ac-tool .ac-matrix thead th[data-part]{padding:6px 4px}
 #ac-tool .ac-matrix thead th[data-part] .ac-part-choice{min-height:88px;gap:3px}
 #ac-tool .ac-matrix thead th[data-part] img{height:36px;width:36px;margin:0 auto 3px}
 #ac-tool .ac-matrix tbody td,#ac-tool .ac-matrix tbody th{height:clamp(26px,5.4dvh,42px);padding:5px 6px}
}
/* Phone comparison matrix: all attachments share the same statistic columns. */
@media(max-width:760px){
 html:not(.wardogs-ipad) .ac-page{padding:8px 10px;gap:4px}
 .ac-workspace{padding:0}
 #ac-tool{height:100%;min-height:0}
 #ac-tool .ac-overview{height:100%;min-height:0;box-sizing:border-box;display:flex;flex-direction:column;padding:6px;border-radius:10px;gap:5px}
 #ac-tool .ac-overview-heading{flex:none;flex-wrap:nowrap;gap:4px;margin:0;min-height:21px;padding:0}
 #ac-tool .ac-overview-heading h2{gap:5px;flex:1}
 #ac-tool .ac-catalog-heading{font-size:calc((clamp(8px,calc(2.5 * var(--type-reference-vw, 1vw)),11px)) * var(--desktop-font-scale, 1));white-space:normal;line-height:1.1}
 #ac-tool .ac-catalog-count{font-size:inherit;white-space:nowrap}
 #ac-tool .ac-reset-hidden{padding:4px;font-size:calc((8px) * var(--desktop-font-scale, 1))}
 #ac-tool .ac-legend{gap:2px;flex:none;display:flex}
 #ac-tool .ac-legend>span{font-size:0;gap:0}
 #ac-tool .ac-legend-dot{width:7px;height:7px;margin:0}
 #ac-tool .ac-overview>.ac-toolbar{margin:0;gap:4px;flex:none}
 #ac-tool .ac-toolbar>form{display:contents}
 #ac-tool .ac-weapon-control{grid-template-columns:30px minmax(0,1fr);gap:3px}
 #ac-tool .ac-weapon-caption{font-size:calc((8px) * var(--desktop-font-scale, 1))}
 #ac-tool .ac-weapon-control .weapon-picker-trigger{height:34px;min-height:34px;grid-template-columns:30px minmax(0,1fr) 6px;padding:2px 5px;gap:3px}
 #ac-tool .ac-weapon-image{width:30px;height:26px}
 #ac-tool .ac-weapon-control .weapon-picker-label{font-size:calc((14px) * var(--desktop-font-scale, 1))}
 #ac-tool .ac-to-lab{height:34px;min-height:34px;grid-template-columns:14px minmax(0,1fr);padding:3px 5px;gap:4px}
 #ac-tool .ac-lab-icon{width:14px;height:14px}
 #ac-tool .ac-lab-arrow{display:none}
 #ac-tool .ac-lab-copy>span{font-size:calc((8px) * var(--desktop-font-scale, 1));letter-spacing:0;white-space:nowrap}
 #ac-tool .ac-lab-copy small{font-size:calc((6px) * var(--desktop-font-scale, 1));margin-top:2px}
 #ac-tool .ac-controls{gap:0;border:1px solid var(--line);border-radius:6px;overflow:hidden;background:var(--surface-panel)}
 #ac-tool .ac-category-icon{display:grid;grid-template-columns:16px minmax(0,1fr);grid-template-rows:12px 10px;gap:1px 4px;align-content:center;justify-content:center;height:34px;min-height:34px;padding:3px 4px;border:0;border-right:1px solid var(--line);border-radius:0;background:transparent}
 #ac-tool .ac-category-icon:last-child{border-right:0}
 #ac-tool .ac-category-icon[aria-selected=true]{background:var(--surface-raised);box-shadow:inset 0 -2px var(--accent)}
 #ac-tool .ac-category-icon>img{grid-row:1 / 3;width:16px;height:16px;align-self:center}
 #ac-tool .ac-category-icon>span{grid-column:2;min-width:0;text-align:left;font-size:calc((8px) * var(--desktop-font-scale, 1));white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 #ac-tool .ac-category-icon .ac-chosen-name{max-width:none;font-size:calc((7px) * var(--desktop-font-scale, 1));line-height:10px}
 #ac-tool .ac-matrix-viewport{display:none}
 #ac-tool .ac-mobile-catalog{--ac-mobile-columns:minmax(92px,2.7fr) repeat(var(--ac-visible-stats,6),minmax(0,1fr));display:grid;grid-template-rows:20px minmax(0,1fr);gap:3px;flex:1 1 0;min-height:0;width:100%;border:0;border-spacing:0;container-type:size}
 #ac-tool .ac-mobile-catalog thead,#ac-tool .ac-mobile-catalog tbody{display:grid;min-height:0}
 #ac-tool .ac-mobile-catalog tbody{grid-template-rows:repeat(var(--ac-visible-rows,1),minmax(0,1fr));gap:3px}
 #ac-tool .ac-mobile-catalog tr{--ac-row-size:calc((100cqh - 20px)/var(--ac-visible-rows,1) - 3px);display:grid;grid-template-columns:var(--ac-mobile-columns);gap:3px;min-height:0;align-items:stretch;padding:0;border:0;border-radius:0;background:transparent}
 #ac-tool .ac-mobile-catalog thead th{display:flex;align-items:center;justify-content:center;padding:0;min-width:0;font:500 calc((8px) * var(--desktop-font-scale, 1))/1 var(--mono);color:var(--muted)}
 #ac-tool .ac-mobile-catalog thead th:first-child{font-size:0}
 #ac-tool .ac-mobile-part>th{padding:0;min-width:0;min-height:0;border-radius:4px;background:var(--surface-raised);border:1px solid var(--line);overflow:hidden}
 #ac-tool .ac-mobile-part.ac-selected-part{box-shadow:none}
 #ac-tool .ac-mobile-part.ac-selected-part>th{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}
 #ac-tool .ac-mobile-part-heading{height:100%;min-height:0;gap:1px;display:flex}
 #ac-tool .ac-mobile-part-heading .ac-part-choice{display:flex;flex-direction:row;justify-content:flex-start;gap:3px;min-width:0;min-height:0;height:100%;padding:1px 2px;box-sizing:border-box}
 #ac-tool .ac-mobile-part-heading .ac-part-choice img{flex:none;object-fit:contain;width:clamp(14px,calc(var(--ac-row-size)*.7),28px);height:clamp(14px,calc(var(--ac-row-size)*.7),28px);margin:0}
 #ac-tool .ac-mobile-part-heading .ac-part-choice span{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-width:0;min-height:0;text-align:left;overflow-wrap:anywhere;font:500 calc((clamp(7px,calc(var(--ac-row-size)*.3),11px)) * var(--desktop-font-scale, 1))/1.12 var(--font)}
 #ac-tool .ac-mobile-part-heading .ac-hide-part{margin:0;padding:0 2px;align-self:stretch;min-width:12px;max-width:12px;border:0;background:transparent;color:#818990;font:400 calc((12px) * var(--desktop-font-scale, 1))/1 var(--font)}
 #ac-tool .ac-mobile-stat{display:flex;align-items:stretch;min-height:0;min-width:0;padding:0;gap:0}
 #ac-tool .ac-mobile-value{display:flex;justify-content:center;align-items:center;flex:1;min-width:0;min-height:0;box-sizing:border-box;padding:0 1px;border-radius:4px;font:600 calc((clamp(7px,calc(var(--ac-row-size)*.33),12px)) * var(--desktop-font-scale, 1))/1 var(--font);letter-spacing:-.03em;text-align:center;overflow:visible}
 #ac-tool .ac-mobile-stat[data-key=price] .ac-mobile-value{font-size:calc((clamp(6px,calc(var(--ac-row-size)*.29),9px)) * var(--desktop-font-scale, 1));box-shadow:none;text-shadow:none}
 #ac-tool .ac-mobile-catalog [hidden]{display:none!important}
 #ac-tool .ac-mobile-catalog[hidden]+*{display:none}
 #ac-tool:has(.ac-mobile-catalog[hidden]) .ac-matrix-viewport{display:block}
}
@media(min-width:761px) and (max-height:680px){
 #ac-tool .ac-overview{padding:8px}
 #ac-tool .ac-overview-heading{min-height:22px;margin-bottom:5px}
 #ac-tool .ac-weapon-control .weapon-picker-trigger,#ac-tool .ac-to-lab{height:36px;min-height:36px;padding-block:2px}
 #ac-tool .ac-weapon-image{height:30px}
 #ac-tool .ac-category-icon{height:36px;min-height:36px;padding-block:2px}
 #ac-tool .ac-matrix thead th[data-part] .ac-part-choice{min-height:64px}
 #ac-tool .ac-matrix thead th[data-part] img{height:28px;width:28px}
 #ac-tool .ac-matrix thead th[data-part] .ac-part-choice span{font-size:calc((10px) * var(--desktop-font-scale, 1));min-height:26px}
 #ac-tool .ac-matrix tbody td,#ac-tool .ac-matrix tbody th{height:28px;padding:3px 5px}
 #ac-tool .ac-matrix tr[data-key=price] th,#ac-tool .ac-matrix tr[data-key=price] td{height:24px;padding:3px}
 #ac-tool .ac-matrix tfoot th,#ac-tool .ac-matrix tfoot td{height:22px}
}

/* Compact contextual help uses the same dotted orange affordance on both devices. */
#ac-tool .ac-weapon-control{grid-template-columns:max-content minmax(0,1fr);gap:10px}
#ac-tool .ac-weapon-control .weapon-picker-menu{left:0}
.ac-hint{position:relative;display:inline-flex;align-items:center}
.ac-hint-trigger{padding:3px 0;border:0;background:transparent;color:var(--muted);font:600 calc((10px) * var(--desktop-font-scale, 1))/1.2 var(--mono);cursor:pointer}
.ac-how-to>.ac-hint-trigger{border-bottom:1px dotted var(--accent);white-space:nowrap}
.ac-tooltip{display:none;position:absolute;top:calc(100% + 7px);left:0;z-index:70;width:350px;max-width:calc(100vw - 40px);box-sizing:border-box;padding:12px;border:1px solid var(--line);border-radius:7px;background:var(--surface-raised);color:var(--text);font:400 calc((12px) * var(--desktop-font-scale, 1))/1.5 var(--font);text-align:left;letter-spacing:normal;white-space:normal}
.ac-hint-trigger[aria-expanded=true]+.ac-tooltip,.ac-hint-trigger:focus-visible+.ac-tooltip{display:block}
@media(hover:hover){.ac-hint:hover>.ac-tooltip{display:block}}
#ac-tool .ac-legend-item>.ac-hint-trigger{display:inline-flex;align-items:center;gap:7px;padding:0;font:inherit;color:inherit}
#ac-tool .ac-legend-item>.ac-tooltip{left:auto;right:0;width:max-content;max-width:180px;padding:7px 9px;font-size:calc((11px) * var(--desktop-font-scale, 1))}
#ac-tool .ac-level-filter{grid-area:filters;min-width:0;border:1px solid var(--line);border-radius:6px;background:var(--surface-raised);color:var(--muted);font:600 calc((11px) * var(--desktop-font-scale, 1))/1.2 var(--mono);padding:6px 8px;cursor:pointer}
#ac-tool .ac-level-filter strong{color:var(--text)}
#ac-tool .ac-level-filter[aria-pressed=true] strong{color:var(--accent)}
#ac-tool .ac-level-filter:disabled{opacity:.6;cursor:wait}
@media(min-width:761px){
 #ac-tool .ac-toolbar{grid-template-columns:minmax(0,1fr) minmax(0,.72fr) minmax(0,.28fr);grid-template-areas:"weapon lab filters" "controls controls controls"}
 #ac-tool .ac-matrix tfoot th,#ac-tool .ac-matrix tfoot td{height:28px;padding:4px;vertical-align:middle}
 #ac-tool .ac-matrix tfoot .ac-hide-part{display:inline-block;margin:0;padding:3px 8px;vertical-align:middle}
}
@media(max-width:760px){
 #ac-tool .ac-level-filter{display:none}
 #ac-tool .ac-weapon-control{grid-template-columns:max-content minmax(0,1fr);gap:4px}
 #ac-tool .ac-how-to>.ac-hint-trigger{font-size:calc((7px) * var(--desktop-font-scale, 1));padding:3px 0}
 #ac-tool .ac-weapon-control .weapon-picker-trigger{grid-template-columns:24px minmax(0,1fr) 6px}
 #ac-tool .ac-weapon-image{width:24px}
 #ac-tool .ac-legend-item>.ac-hint-trigger{padding:6px 2px;gap:0}
 #ac-tool .ac-legend-text{display:none}
 #ac-tool .ac-legend-item>.ac-tooltip{max-width:150px;font-size:calc((11px) * var(--desktop-font-scale, 1))}
 .ac-how-to>.ac-tooltip{max-width:calc(100vw - 42px);font-size:calc((11px) * var(--desktop-font-scale, 1));padding:9px}
}

/* Dark weapon trigger and a legend matching the comparison's heat endpoints. */
#ac-tool .ac-weapon-control .weapon-picker-trigger{background:var(--surface-panel)}
#ac-tool .ac-weapon-control .weapon-picker-trigger:hover{background:var(--surface-raised)}
#ac-tool .ac-legend-0{background:#00ff66}
#ac-tool .ac-legend-1{background:#267544}
#ac-tool .ac-legend-2{background:#555b5f}
#ac-tool .ac-legend-3{background:#842b2b}
#ac-tool .ac-legend-4{background:#ff2020}
@media(min-width:761px){
 #ac-tool .ac-overview{display:grid;grid-template-columns:minmax(150px,.48fr) minmax(0,1fr) minmax(0,.65fr) minmax(105px,.28fr);gap:8px;align-items:center}
 #ac-tool .ac-overview-heading,#ac-tool .ac-overview>.ac-toolbar{display:contents}
 #ac-tool .ac-overview-heading h2{grid-row:1;grid-column:1;margin:0;padding:0;display:flex;align-items:center;gap:8px;min-width:0}
 #ac-tool .ac-catalog-heading{font-size:calc((clamp(12px,calc(1.05 * var(--type-reference-vw, 1vw)),17px)) * var(--desktop-font-scale, 1));white-space:normal;line-height:1.2}
 #ac-tool .ac-catalog-count{font-size:inherit;white-space:nowrap}
 #ac-tool .ac-weapon-control{grid-area:auto;grid-row:1;grid-column:2}
 #ac-tool .ac-to-lab{grid-area:auto;grid-row:1;grid-column:3;align-self:stretch;gap:8px;padding-inline:10px}
 #ac-tool .ac-level-filter{grid-area:auto;grid-row:1;grid-column:4;align-self:stretch}
 #ac-tool .ac-controls{grid-area:auto;grid-row:2;grid-column:1 / -1}
 #ac-tool .ac-matrix-viewport{grid-row:3;grid-column:1 / -1}
 #ac-tool .ac-legend{grid-row:4;grid-column:1 / -1;justify-content:center;gap:8px 20px;margin:0;padding:2px 0;font-size:calc((11px) * var(--desktop-font-scale, 1))}
 #ac-tool .ac-legend-item>.ac-tooltip{top:auto;bottom:calc(100% + 7px)}
 #ac-tool .ac-lab-copy>span{font-size:calc((clamp(10px,calc(.9 * var(--type-reference-vw, 1vw)),14px)) * var(--desktop-font-scale, 1))}
}

/* Center the desktop tool in its existing header-to-footer working area. */
@media(min-width:761px){
 .ac-workspace{justify-content:safe center;padding-bottom:0}
}
#ac-tool .ac-how-to>.ac-tooltip{width:300px;padding:11px 13px;border-radius:10px;font:400 calc((12px) * var(--desktop-font-scale, 1))/1.4 var(--font)}
#ac-tool .ac-how-to .ac-help-line{display:block;margin:0 0 6px}
#ac-tool .ac-how-to .ac-help-line:last-child{margin-bottom:0}
@media(max-width:760px){#ac-tool .ac-how-to>.ac-tooltip{width:280px;font-size:calc((11px) * var(--desktop-font-scale, 1));padding:10px 12px}}

@media(min-width:761px){
 #ac-tool .ac-overview{grid-template-columns:max-content minmax(0,1fr) minmax(0,.65fr) minmax(105px,.28fr)}
 #ac-tool .ac-weapon-control{grid-template-columns:minmax(100px,.3fr) minmax(0,1fr)}
 #ac-tool .ac-how-to{justify-self:center;align-self:center;justify-content:center}
 #ac-tool .ac-how-to>.ac-hint-trigger{font-weight:700}
}

/* Desktop: the same 1440px outer width and 28px gutters as Weapon Compare. */
@media(min-width:761px){html:not(.wardogs-ipad) .ac-page{max-width:1440px;margin-inline:auto}html:not(.wardogs-ipad) .ac-workspace{max-width:100%}}

/* One compact ranking row, reusing the existing active orange. */
#ac-tool .ac-sort-bar{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:4px;padding:3px 0}
#ac-tool .ac-sort-bar>strong{font:700 calc((10px) * var(--desktop-font-scale, 1)) var(--mono);color:var(--muted);margin-right:5px}
#ac-tool .ac-sort-bar>button{border:1px solid var(--line);border-radius:4px;background:var(--surface-page);color:var(--muted);padding:4px 7px;font:600 calc((10px) * var(--desktop-font-scale, 1))/1 var(--mono);cursor:pointer}
#ac-tool .ac-sort-bar>button[aria-pressed="true"]{color:var(--accent);border-color:var(--accent)}
#ac-tool .ac-part-choice{position:relative}
#ac-tool .ac-rank-badge{position:absolute;top:2px;right:2px;color:var(--accent);font:700 calc((9px) * var(--desktop-font-scale, 1))/1 var(--mono);padding:2px;background:var(--surface-page);border-radius:3px}
@media(min-width:761px){#ac-tool .ac-sort-bar{grid-row:3;grid-column:1 / -1}#ac-tool .ac-matrix-viewport{grid-row:4}#ac-tool .ac-legend{grid-row:5}}
@media(max-width:760px){#ac-tool .ac-sort-bar{gap:3px;padding:1px 0}#ac-tool .ac-sort-bar>strong{font-size:calc((8px) * var(--desktop-font-scale, 1))}#ac-tool .ac-sort-bar>button{font-size:calc((8px) * var(--desktop-font-scale, 1));padding:3px 4px}#ac-tool .ac-mobile-part .ac-rank-badge{font-size:calc((7px) * var(--desktop-font-scale, 1));top:0;right:0}}

/* Compact phone controls and a more readable desktop ranking strip. */
#ac-tool .ac-sort-short{display:none}
@media(min-width:761px){
 #ac-tool .ac-sort-bar{gap:8px;padding:7px 0;flex-wrap:nowrap}
 #ac-tool .ac-sort-bar>strong{font-size:calc((12px) * var(--desktop-font-scale, 1));margin-right:8px;white-space:nowrap}
 #ac-tool .ac-sort-bar>button{flex:1;max-width:145px;padding:8px 10px;font-size:calc((12px) * var(--desktop-font-scale, 1));font-weight:700}
}
@media(max-width:760px){
 #ac-tool .ac-legend{display:none}
 #ac-tool .ac-toolbar{grid-template-columns:minmax(0,1fr) max-content;grid-template-areas:"weapon lab" "controls controls";column-gap:10px}
 #ac-tool .ac-weapon-control{grid-template-columns:max-content minmax(0,1fr);gap:10px}
 #ac-tool .ac-how-to{justify-self:center}
 #ac-tool .ac-to-lab{width:max-content;justify-self:end;padding:3px 6px;gap:4px}
 #ac-tool .ac-sort-full{display:none}#ac-tool .ac-sort-short{display:inline}
}


/* One compact live build summary beside the weapon selector. */
#ac-tool .ac-build-stats{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));align-items:center;min-width:0;margin:0;padding:7px 4px;border:1px solid var(--line);border-radius:6px;background:var(--surface-panel);box-sizing:border-box}
#ac-tool .ac-build-stats>div{min-width:0;text-align:center;padding:0 3px;border-right:1px solid var(--line)}
#ac-tool .ac-build-stats>div:last-child{border:0}
#ac-tool .ac-build-stats dt{margin:0 0 4px;color:var(--muted);font:600 calc((8px) * var(--desktop-font-scale, 1))/1.1 var(--mono);white-space:nowrap}
#ac-tool .ac-build-stats dd{margin:0;color:var(--text);font:700 calc((10px) * var(--desktop-font-scale, 1))/1.2 var(--mono);white-space:nowrap;letter-spacing:-.03em}
#ac-tool .ac-build-stats dd[data-tone=good]{color:#00ff66}
#ac-tool .ac-build-stats dd[data-tone=bad]{color:#ff2020}
#ac-tool .ac-build-stats[aria-busy=true] dd{opacity:.55}
@media(min-width:761px){
 #ac-tool .ac-overview{grid-template-columns:minmax(135px,.6fr) minmax(240px,1fr) minmax(360px,1.5fr) minmax(155px,.75fr) minmax(90px,.35fr)}
 #ac-tool .ac-weapon-control{grid-template-columns:max-content minmax(0,1fr);gap:9px}
 #ac-tool .ac-how-to>.ac-hint-trigger{font-size:calc((9px) * var(--desktop-font-scale, 1))}
 #ac-tool .ac-weapon-control .weapon-picker-trigger{grid-template-columns:48px minmax(0,1fr) 7px;gap:7px;padding-inline:8px}
 #ac-tool .ac-weapon-image{width:48px}
 #ac-tool .ac-weapon-control .weapon-picker-label{font-size:calc((19px) * var(--desktop-font-scale, 1))}
 #ac-tool .ac-build-stats{grid-row:1;grid-column:3;align-self:stretch}
 #ac-tool .ac-to-lab{grid-column:4}
 #ac-tool .ac-level-filter{grid-column:5;padding-inline:5px;font-size:calc((10px) * var(--desktop-font-scale, 1))}
}
@media(min-width:761px) and (max-width:1199px){
 #ac-tool .ac-overview{grid-template-columns:minmax(120px,.6fr) minmax(220px,1fr) minmax(155px,.8fr) minmax(90px,.4fr)}
 #ac-tool .ac-build-stats{grid-row:2;grid-column:1 / -1;padding-block:5px}
 #ac-tool .ac-build-stats dt{display:inline;margin:0 6px 0 0;font-size:calc((9px) * var(--desktop-font-scale, 1))}
 #ac-tool .ac-build-stats dd{display:inline;font-size:calc((12px) * var(--desktop-font-scale, 1))}
 #ac-tool .ac-to-lab{grid-column:3}
 #ac-tool .ac-level-filter{grid-column:4}
 #ac-tool .ac-controls{grid-row:3}
 #ac-tool .ac-sort-bar{grid-row:4}
 #ac-tool .ac-matrix-viewport{grid-row:5}
 #ac-tool .ac-legend{grid-row:6}
}
@media(max-width:760px){
 #ac-tool .ac-toolbar{grid-template-areas:"weapon lab" "stats stats" "controls controls"}
 #ac-tool .ac-build-stats{grid-area:stats;padding:4px 2px;min-height:32px}
 #ac-tool .ac-build-stats>div{padding:0 2px}
 #ac-tool .ac-build-stats dt{font-size:calc((7px) * var(--desktop-font-scale, 1));margin-bottom:3px}
 #ac-tool .ac-build-stats dd{font-size:calc((clamp(7px,calc(2.15 * var(--type-reference-vw, 1vw)),9px)) * var(--desktop-font-scale, 1));letter-spacing:-.05em}
}


/* Unlock levels sit above desktop cards and beneath each phone attachment. */
#ac-tool .ac-unlock-level{display:block;margin:0 0 4px;color:var(--muted);font:500 calc((8px) * var(--desktop-font-scale, 1))/1.1 var(--mono);text-align:center;white-space:nowrap}
#ac-tool .ac-unlock-level .season2-change-dot{display:inline-block;inline-size:6px;block-size:6px;min-inline-size:6px;min-block-size:6px;margin-inline-start:3px;vertical-align:middle;flex:0 0 auto}
@media(min-width:761px){
 #ac-tool .ac-matrix thead th[data-part] .ac-part-choice{min-height:105px}
}
@media(min-width:761px) and (max-height:800px){
 #ac-tool .ac-matrix thead th[data-part] .ac-part-choice{min-height:75px}
}
@media(min-width:761px) and (max-height:680px){
 #ac-tool .ac-matrix thead th[data-part] .ac-part-choice{min-height:51px}
}
@media(max-width:760px){
 #ac-tool .ac-mobile-part>th{display:flex;flex-direction:column}
 #ac-tool .ac-mobile-part-heading{flex:1 1 0;height:auto}
 #ac-tool .ac-mobile-part .ac-unlock-level{flex:none;margin:0;padding:1px 2px;font-size:calc((clamp(6px,calc(var(--ac-row-size)*.18),8px)) * var(--desktop-font-scale, 1));line-height:1.1}
}

/* Transfers accept stock or partial setups. */
#ac-tool .ac-transfer-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;min-width:0}
#ac-tool .ac-transfer-actions :is(.ac-to-lab,.ac-to-compare){display:flex;align-items:center;justify-content:center;gap:5px;grid-area:auto;grid-row:auto;grid-column:auto;width:100%;height:auto;min-height:36px;box-sizing:border-box;padding:5px 6px;border:1px solid var(--line);border-radius:6px;background:var(--surface-raised);color:var(--accent);font:700 calc((10px) * var(--desktop-font-scale, 1))/1.2 var(--mono);text-align:center;white-space:normal}
#ac-tool .ac-transfer-actions svg{width:17px;height:17px;flex:none}
#ac-tool .ac-transfer-actions .ac-lab-copy>span{font:inherit;white-space:normal;letter-spacing:0}
#ac-tool .ac-transfer-actions .ac-lab-arrow{display:none}
#ac-tool .ac-transfer-actions button:hover,#ac-tool .ac-transfer-actions button:focus-visible{border-color:var(--accent)}
@media(min-width:761px){
 #ac-tool .ac-overview{grid-template-columns:minmax(100px,.5fr) minmax(180px,.8fr) minmax(320px,1.2fr) minmax(240px,1fr) minmax(80px,.3fr)}
 #ac-tool .ac-transfer-actions{grid-row:1;grid-column:4;align-self:stretch}
}
@media(min-width:761px) and (max-width:1199px){
 #ac-tool .ac-overview{grid-template-columns:minmax(100px,.5fr) minmax(190px,1fr) minmax(240px,1fr) minmax(80px,.3fr)}
 #ac-tool .ac-transfer-actions{grid-column:3}
}
@media(max-width:760px){
 #ac-tool .ac-toolbar{grid-template-columns:minmax(0,1fr) max-content;grid-template-areas:"weapon filters" "stats stats" "controls controls" "actions actions"}
 #ac-tool .ac-transfer-actions{grid-area:actions;justify-self:stretch}
 #ac-tool .ac-transfer-actions :is(.ac-to-lab,.ac-to-compare){min-height:30px;font-size:calc((10px) * var(--desktop-font-scale, 1))}
 #ac-tool .ac-weapon-control{width:100%;max-width:250px;min-width:0}
 #ac-tool .ac-weapon-control .weapon-profile-micro{display:none}
 #ac-tool .ac-weapon-control .weapon-profile-selector-row{gap:0}
}
