:root {
  --mastery-ink:#071018;
  --mastery-panel:rgba(8,18,27,.88);
  --mastery-panel-strong:rgba(6,14,21,.96);
  --mastery-blue:#5e9fff;
  --mastery-gold:#f2b84b;
  --mastery-green:#55d49a;
  --mastery-line:rgba(151,178,204,.16);
}

body.mastery-page {
  background:
    radial-gradient(900px 540px at 12% -5%,rgba(221,145,33,.16),transparent 62%),
    radial-gradient(1100px 650px at 92% 22%,rgba(57,116,205,.14),transparent 60%),
    linear-gradient(180deg,#081018 0,#0b1117 50%,#080d12 100%);
}
body.mastery-dialog-open { overflow:hidden; }

.mastery-shell { width:min(1380px,calc(100% - 32px)); }
.mastery-main { display:grid; gap:14px; }

.mastery-preview-bar {
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:12px;
  margin:-6px 0 14px;
  padding:10px 12px;
  border:1px solid rgba(255,187,72,.34);
  border-radius:12px;
  background:linear-gradient(90deg,rgba(61,38,7,.94),rgba(18,28,37,.96));
  box-shadow:0 14px 38px rgba(0,0,0,.24);
}
.mastery-preview-pulse { width:9px;height:9px;border-radius:50%;background:#ffbd4a;box-shadow:0 0 0 5px rgba(255,189,74,.1),0 0 18px rgba(255,189,74,.58); }
.mastery-preview-bar strong { display:block;color:#ffd887;font-size:11px;letter-spacing:.13em; }
.mastery-preview-bar span:not(.mastery-preview-pulse) { display:block;margin-top:2px;color:#b9c3cd;font-size:11px; }
.mastery-preview-actions { display:flex;gap:6px; }
.mastery-preview-actions a { padding:7px 9px;border:1px solid rgba(255,255,255,.11);border-radius:7px;color:#bbc5cf;font-size:10px;font-weight:900; }
.mastery-preview-actions a.is-active { border-color:rgba(255,193,80,.45);background:rgba(255,193,80,.12);color:#ffe1a2; }

.mastery-hero {
  position:relative;
  isolation:isolate;
  min-height:320px;
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(330px,.75fr);
  align-items:center;
  overflow:hidden;
  padding:36px 38px;
  border:1px solid rgba(113,151,189,.22);
  border-radius:20px;
  background:
    linear-gradient(90deg,rgba(4,11,17,.98) 0%,rgba(5,15,23,.94) 49%,rgba(8,22,33,.87) 100%),
    #071018;
  box-shadow:0 28px 70px rgba(0,0,0,.32),inset 0 1px rgba(255,255,255,.03);
}
.mastery-hero::before {
  content:"";position:absolute;inset:0;z-index:-3;
  background:radial-gradient(circle at 68% 42%,rgba(70,137,225,.19),transparent 32%),linear-gradient(115deg,transparent 47%,rgba(255,255,255,.025) 47.2%,transparent 47.5%);
}
.mastery-hero::after {
  content:"";position:absolute;inset:auto 0 0;height:2px;z-index:4;
  background:linear-gradient(90deg,transparent,#d79b35 22%,#5a9df5 72%,transparent);
  opacity:.7;
}
.mastery-hero-grid { position:absolute;inset:0;z-index:-2;opacity:.17;background-image:linear-gradient(rgba(120,172,216,.18) 1px,transparent 1px),linear-gradient(90deg,rgba(120,172,216,.18) 1px,transparent 1px);background-size:34px 34px;mask-image:linear-gradient(90deg,transparent 38%,#000); }
.mastery-hero-weapon { position:absolute;z-index:-1;right:25%;top:50%;width:min(43vw,570px);height:330px;object-fit:contain;transform:translate(20%,-50%) rotate(-2deg);opacity:.15;filter:grayscale(1) contrast(1.18) drop-shadow(0 25px 24px rgba(0,0,0,.9)); }
.mastery-hero-copy { position:relative;z-index:2;max-width:660px; }
.mastery-eyebrow { color:#78aefe;font-size:11px;font-weight:950;letter-spacing:.22em; }
.mastery-hero h1 { margin:8px 0 6px;color:#f7f9fc;font-size:clamp(44px,7vw,82px);line-height:.92;letter-spacing:-.055em;text-transform:uppercase;text-shadow:0 8px 34px rgba(0,0,0,.5); }
.mastery-hero-copy>p { max-width:590px;margin:13px 0 23px;color:#aebbc7;font-size:14px;line-height:1.6; }
.mastery-player-search { max-width:520px; }
.mastery-player-search>label { display:block;margin:0 0 6px;color:#7f8e9d;font-size:9px;font-weight:950;letter-spacing:.13em;text-transform:uppercase; }
.mastery-player-search>span { display:flex;min-height:43px;padding:4px;border:1px solid rgba(147,173,198,.19);border-radius:10px;background:rgba(0,0,0,.34);box-shadow:inset 0 1px 8px rgba(0,0,0,.32); }
.mastery-player-search input { flex:1;min-width:0;border:0;outline:0;padding:0 12px;background:transparent;color:#eef3f8;font:inherit;font-size:12px; }
.mastery-player-search button { border:1px solid rgba(99,151,221,.38);border-radius:7px;padding:0 14px;background:linear-gradient(180deg,#315f99,#234b79);color:white;font-size:10px;font-weight:950;letter-spacing:.05em;text-transform:uppercase;cursor:pointer; }

.mastery-dossier {
  position:relative;z-index:3;
  padding:18px;
  border:1px solid rgba(146,174,199,.19);
  border-radius:16px;
  background:linear-gradient(145deg,rgba(17,32,45,.9),rgba(5,13,20,.94));
  box-shadow:0 24px 55px rgba(0,0,0,.36),inset 0 1px rgba(255,255,255,.035);
  backdrop-filter:blur(12px);
}
.mastery-dossier::before { content:"";position:absolute;inset:6px;border:1px solid rgba(255,255,255,.025);border-radius:12px;pointer-events:none; }
.mastery-dossier-head { display:flex;align-items:center;gap:13px;padding-bottom:15px;border-bottom:1px solid rgba(255,255,255,.08); }
.mastery-rank-mark { position:relative;display:grid;place-items:center;width:58px;height:66px;clip-path:polygon(50% 0,94% 23%,84% 78%,50% 100%,16% 78%,6% 23%);background:linear-gradient(145deg,#ffc85c,#77440f 60%,#d89225);box-shadow:0 0 25px rgba(237,169,58,.3); }
.mastery-rank-mark::before { content:"";position:absolute;inset:3px;clip-path:inherit;background:#101922; }
.mastery-rank-mark i { position:absolute;width:23px;height:23px;border:2px solid #e5ab43;border-radius:50%;box-shadow:0 0 0 4px rgba(229,171,67,.09); }
.mastery-rank-mark b { position:relative;color:#ffd474;font-size:10px; }
.mastery-dossier-head small,.mastery-dossier-head strong,.mastery-dossier-head em { display:block;font-style:normal; }
.mastery-dossier-head small { color:#6f8293;font-size:9px;font-weight:950;letter-spacing:.1em; }
.mastery-dossier-head strong { max-width:220px;margin:3px 0;color:#f4f7fa;font-size:18px;line-height:1.05;white-space:nowrap;overflow:hidden;text-overflow:ellipsis; }
.mastery-dossier-head em { color:#e6b755;font-size:10px;font-weight:900;text-transform:uppercase; }
.mastery-founding-mini { display:inline-flex;margin-top:6px;padding:4px 7px;border:1px solid rgba(239,190,83,.38);border-radius:999px;background:rgba(239,190,83,.09);color:#f3c66d;font-size:8px;font-weight:950;letter-spacing:.08em;line-height:1;text-transform:uppercase; }
.mastery-dossier-stats { display:grid;grid-template-columns:repeat(3,1fr);gap:6px;padding:16px 0 13px; }
.mastery-dossier-stats div { min-width:0;padding:0 7px;border-right:1px solid rgba(255,255,255,.07); }
.mastery-dossier-stats div:first-child { padding-left:0; }
.mastery-dossier-stats div:last-child { border:0; }
.mastery-dossier-stats strong,.mastery-dossier-stats span { display:block; }
.mastery-dossier-stats strong { color:#f3f6fa;font-size:20px;line-height:1; }
.mastery-dossier-stats span { margin-top:5px;color:#708292;font-size:9px;font-weight:850;text-transform:uppercase; }
.mastery-dossier-foot>span { display:block;height:5px;overflow:hidden;border-radius:99px;background:rgba(255,255,255,.07); }
.mastery-dossier-foot>span i { display:block;width:var(--progress);height:100%;background:linear-gradient(90deg,#b77014,#ffd36b);box-shadow:0 0 10px rgba(255,196,75,.4); }
.mastery-dossier-foot small { display:block;margin-top:7px;color:#8494a3;font-size:9px;text-align:right; }

.mastery-tabs { display:flex;align-items:center;gap:4px;min-height:52px;padding:5px;border:1px solid var(--mastery-line);border-radius:13px;background:rgba(7,16,24,.86);box-shadow:0 12px 34px rgba(0,0,0,.2); }
.mastery-tabs a { display:flex;align-items:center;justify-content:center;gap:6px;min-height:42px;padding:0 17px;border:1px solid transparent;border-radius:8px;color:#8493a2;font-size:11px;font-weight:950;letter-spacing:.05em;text-transform:uppercase;touch-action:manipulation; }
.mastery-tabs a:hover { color:#d9e1e8;background:rgba(255,255,255,.035); }
.mastery-tabs a.is-active { border-color:rgba(224,165,62,.32);background:linear-gradient(180deg,rgba(224,165,62,.17),rgba(224,165,62,.07));color:#f4cf84; }
.mastery-tabs .mastery-profile-link { margin-left:auto;color:#7aaaf0; }
.mastery-tab-icon { display:none;font-size:15px;line-height:1; }

.mastery-section-block { min-width:0;padding:18px;border:1px solid var(--mastery-line);border-radius:16px;background:linear-gradient(180deg,rgba(14,27,38,.8),rgba(6,15,23,.86));box-shadow:0 18px 44px rgba(0,0,0,.2); }
.mastery-section-head { display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:14px; }
.mastery-section-head span { color:#cf9c43;font-size:9px;font-weight:950;letter-spacing:.11em; }
.mastery-section-head h2 { margin:3px 0 0;color:#edf2f6;font-size:18px;letter-spacing:-.02em; }
.mastery-section-head>a { color:#81aee9;font-size:10px;font-weight:900; }
.mastery-section-head>p { max-width:480px;margin:0;color:#7f8f9e;font-size:10px;line-height:1.45;text-align:right; }
.mastery-overview-grid { display:grid;grid-template-columns:minmax(0,1.35fr) minmax(330px,.65fr);gap:14px; }

.mastery-pursuit-list { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px; }
.mastery-pursuit { --tier-color:#617486;display:grid;grid-template-columns:88px minmax(0,1fr);align-items:center;min-height:114px;overflow:hidden;border:1px solid color-mix(in srgb,var(--tier-color) 35%,transparent);border-radius:12px;background:rgba(0,0,0,.2);text-decoration:none;cursor:pointer;transition:border-color .16s ease,background .16s ease,transform .16s ease,box-shadow .16s ease; }
.mastery-pursuit:hover { border-color:color-mix(in srgb,var(--tier-color) 70%,#fff 8%);background:color-mix(in srgb,var(--tier-color) 7%,rgba(0,0,0,.2));box-shadow:0 10px 25px rgba(0,0,0,.18);transform:translateY(-2px); }
.mastery-pursuit:focus-visible { outline:2px solid #79afe7;outline-offset:3px; }
.mastery-pursuit-art { position:relative;align-self:stretch;display:grid;place-items:center;background:radial-gradient(circle, color-mix(in srgb,var(--tier-color) 20%,transparent),transparent 65%); }
.mastery-pursuit-art::after { content:"";position:absolute;right:0;top:15%;height:70%;width:1px;background:linear-gradient(transparent,color-mix(in srgb,var(--tier-color) 50%,transparent),transparent); }
.mastery-pursuit-art img { width:95px;height:80px;object-fit:contain;filter:drop-shadow(0 12px 9px rgba(0,0,0,.6)); }
.mastery-pursuit-art>span { color:var(--tier-color);font-size:31px;text-shadow:0 0 18px color-mix(in srgb,var(--tier-color) 45%,transparent); }
.mastery-pursuit-copy { min-width:0;padding:11px 11px 11px 6px; }
.mastery-pursuit-copy small,.mastery-pursuit-copy strong,.mastery-pursuit-copy>span { display:block; }
.mastery-pursuit-copy small { color:#748493;font-size:8px;font-weight:900;text-transform:uppercase; }
.mastery-pursuit-copy strong { margin:4px 0 9px;color:#edf2f6;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis; }
.mastery-pursuit-copy>span { margin-top:6px;color:#8f9da9;font-size:9px; }
.mastery-pursuit-open { display:block;margin-top:7px;color:#79aee4;font-size:8px;font-style:normal;font-weight:950;letter-spacing:.04em;text-transform:uppercase; }
.mastery-progress { height:5px;overflow:hidden;border-radius:99px;background:rgba(255,255,255,.07); }
.mastery-progress i { display:block;width:var(--progress);height:100%;border-radius:inherit;background:linear-gradient(90deg,color-mix(in srgb,var(--tier-color,#6d89a2) 75%,#21313f),var(--tier-color,#6d89a2));box-shadow:0 0 8px color-mix(in srgb,var(--tier-color,#6d89a2) 45%,transparent); }

.mastery-empty-state { grid-column:1/-1;display:grid;place-items:center;min-height:170px;padding:25px;border:1px dashed rgba(135,157,177,.18);border-radius:12px;text-align:center; }
.mastery-empty-state>span { color:#4c6478;font-size:32px; }
.mastery-empty-state strong { margin:7px 0 3px;color:#ccd6df; }
.mastery-empty-state p { max-width:430px;margin:0;color:#788896;font-size:11px; }
.mastery-rule-list { display:grid;gap:8px;margin:0;padding:0;list-style:none; }
.mastery-rule-list li { display:grid;grid-template-columns:28px 1fr;align-items:center;gap:9px;padding:9px;border:1px solid rgba(255,255,255,.055);border-radius:9px;background:rgba(0,0,0,.18); }
.mastery-rule-list b { display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:rgba(83,159,228,.09);color:#79aee4;font-size:11px; }
.mastery-rule-list span { color:#a6b1bb;font-size:10px;line-height:1.45; }
.mastery-admin-status { display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:11px;padding-top:10px;border-top:1px solid rgba(255,255,255,.07); }
.mastery-admin-status span { padding:7px;border-radius:7px;background:rgba(255,255,255,.025);color:#778897;font-size:9px;text-align:center; }
.mastery-admin-status b { display:block;color:#d7e0e8;font-size:13px; }
.mastery-admin-status em { grid-column:1/-1;color:#d2a650;font-size:9px;font-style:normal;text-align:center; }

.mastery-explosive-review { border-color:rgba(73,158,221,.24);background:radial-gradient(circle at 92% 0,rgba(50,138,207,.1),transparent 35%),linear-gradient(180deg,rgba(12,27,39,.94),rgba(6,15,23,.94)); }
.mastery-shadow-mode { flex:none;padding:7px 9px;border:1px solid rgba(87,176,237,.28);border-radius:7px;background:rgba(48,134,194,.08);color:#78bce8;font-size:9px;letter-spacing:.07em; }
.mastery-shadow-intro { max-width:920px;margin:-3px 0 13px;color:#8e9daa;font-size:9px;line-height:1.55; }
.mastery-shadow-metrics { display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:7px;margin-bottom:10px; }
.mastery-shadow-metrics span { padding:9px;border:1px solid rgba(255,255,255,.055);border-radius:8px;background:rgba(0,0,0,.2);color:#7f909e;font-size:8px;text-align:center;text-transform:uppercase; }
.mastery-shadow-metrics b { display:block;margin-bottom:3px;color:#dce7ef;font-size:15px; }
.mastery-shadow-warning { margin-bottom:10px;padding:9px 11px;border:1px solid rgba(236,83,83,.42);border-radius:8px;background:rgba(165,35,35,.13);color:#ff9a9a;font-size:9px;font-weight:800; }
.mastery-shadow-list { display:grid;gap:6px; }
.mastery-shadow-list article { display:grid;grid-template-columns:78px minmax(0,1fr) auto;align-items:center;gap:11px;padding:10px;border:1px solid rgba(255,255,255,.055);border-radius:9px;background:rgba(0,0,0,.17); }
.mastery-shadow-kind { display:grid;place-items:center;min-height:29px;padding:0 6px;border:1px solid rgba(132,156,175,.22);border-radius:6px;background:rgba(87,111,130,.09);color:#aebdca;font-size:8px;font-weight:950;letter-spacing:.06em; }
.mastery-shadow-kind.is-frag { border-color:rgba(217,166,72,.3);background:rgba(180,119,24,.1);color:#deb45f; }
.mastery-shadow-kind.is-claymore,.mastery-shadow-kind.is-landmine,.mastery-shadow-kind.is-ied { border-color:rgba(93,174,226,.3);background:rgba(47,129,185,.1);color:#83c2e9; }
.mastery-shadow-list article>div { min-width:0; }
.mastery-shadow-list article>div strong,.mastery-shadow-list article>div span,.mastery-shadow-list article>div em { display:block; }
.mastery-shadow-list article>div strong { overflow:hidden;color:#dce5ec;font-size:10px;text-overflow:ellipsis;white-space:nowrap; }
.mastery-shadow-list article>div strong i { color:#5e778a;font-style:normal; }
.mastery-shadow-list article>div span { margin-top:3px;color:#8293a1;font-size:9px;text-transform:capitalize; }
.mastery-shadow-list article>div em { margin-top:3px;color:#dc8b8b;font-size:8px;font-style:normal;text-transform:capitalize; }
.mastery-shadow-list article>div em.mastery-candidate-owners { color:#d8ae61;text-transform:none; }
.mastery-shadow-list footer { display:grid;justify-items:end;gap:3px;min-width:112px;color:#718493;font-size:8px; }
.mastery-shadow-list footer b { padding:3px 7px;border-radius:99px;background:rgba(117,135,151,.1);color:#95a5b2;font-size:8px;text-transform:uppercase; }
.mastery-shadow-list footer b.is-pending { background:rgba(59,147,204,.12);color:#7bbce4; }
.mastery-shadow-list footer b.is-applied { background:rgba(53,174,111,.14);color:#77d9a5; }
.mastery-shadow-list footer b.is-ambiguous { background:rgba(190,128,34,.13);color:#d9aa5a; }
.mastery-shadow-list footer b.is-excluded { background:rgba(176,57,57,.13);color:#dc8989; }
.mastery-shadow-empty { padding:25px;border:1px dashed rgba(114,151,178,.2);border-radius:9px;color:#718695;font-size:9px;text-align:center; }

.mastery-legacy-section { position:relative;overflow:hidden;border-color:rgba(222,170,69,.23);background:radial-gradient(circle at 96% 0,rgba(220,165,61,.11),transparent 34%),linear-gradient(180deg,rgba(18,29,38,.9),rgba(7,15,22,.92)); }
.mastery-legacy-section::after { content:"";position:absolute;right:-68px;bottom:-105px;width:245px;height:245px;border:1px solid rgba(227,180,85,.07);border-radius:50%;box-shadow:0 0 0 35px rgba(227,180,85,.018);pointer-events:none; }
.mastery-founding-badge { position:relative;z-index:1;display:flex;align-items:center;gap:9px;padding:8px 11px;border:1px solid rgba(239,190,83,.33);border-radius:10px;background:linear-gradient(135deg,rgba(239,190,83,.13),rgba(127,84,17,.06));box-shadow:inset 0 1px rgba(255,255,255,.035); }
.mastery-founding-badge>i { display:grid;place-items:center;width:31px;height:31px;border:1px solid rgba(245,205,118,.32);border-radius:50%;background:rgba(245,196,88,.09);color:#f4c96e;font-size:15px;font-style:normal; }
.mastery-founding-badge span,.mastery-founding-badge b,.mastery-founding-badge em { display:block; }
.mastery-founding-badge b { color:#f4d28b;font-size:9px;letter-spacing:.08em;text-transform:uppercase; }
.mastery-founding-badge em { margin-top:2px;color:#95815b;font-size:8px;font-style:normal;text-transform:uppercase; }
.mastery-legacy-metrics { position:relative;z-index:1;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:7px; }
.mastery-legacy-metrics>div { min-width:0;padding:12px 10px;border:1px solid rgba(255,255,255,.06);border-radius:9px;background:rgba(0,0,0,.18); }
.mastery-legacy-metrics strong,.mastery-legacy-metrics span { display:block; }
.mastery-legacy-metrics strong { overflow:hidden;color:#e2e8ed;font-size:16px;line-height:1.1;text-overflow:ellipsis;white-space:nowrap; }
.mastery-legacy-metrics span { margin-top:5px;color:#748593;font-size:8px;line-height:1.35;text-transform:uppercase; }
.mastery-legacy-foot { position:relative;z-index:1;display:flex;align-items:center;flex-wrap:wrap;gap:7px 18px;margin-top:10px;padding-top:10px;border-top:1px solid rgba(255,255,255,.055); }
.mastery-legacy-foot span { color:#778895;font-size:9px; }
.mastery-legacy-foot b { color:#b2c0ca; }
.mastery-legacy-foot em { flex:1;min-width:360px;color:#c5a35f;font-size:9px;font-style:normal;line-height:1.45;text-align:right; }

.mastery-class-section { padding-bottom:16px; }
.mastery-class-grid { display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px; }
.mastery-class-card { --tier-color:#526474;position:relative;min-height:174px;display:flex;flex-direction:column;overflow:hidden;padding:13px;border:1px solid color-mix(in srgb,var(--tier-color) 30%,transparent);border-radius:11px;background:radial-gradient(circle at 100% 0,color-mix(in srgb,var(--tier-color) 14%,transparent),transparent 45%),rgba(3,10,15,.45); }
.mastery-class-card::after { content:"";position:absolute;right:-16px;top:-20px;width:72px;height:72px;border:1px solid color-mix(in srgb,var(--tier-color) 24%,transparent);transform:rotate(45deg); }
.mastery-class-icon { display:grid;place-items:center;width:32px;height:32px;border:1px solid color-mix(in srgb,var(--tier-color) 38%,transparent);border-radius:8px;background:color-mix(in srgb,var(--tier-color) 9%,transparent);color:var(--tier-color);font-size:17px; }
.mastery-class-card>div { margin-top:10px; }
.mastery-class-card small { color:#687989;font-size:8px;font-weight:950; }
.mastery-class-card h3 { min-height:30px;margin:3px 0 0;color:#e7edf2;font-size:12px;line-height:1.15; }
.mastery-class-card>strong { margin:7px 0 3px;color:var(--tier-color);font-size:9px;text-transform:uppercase; }
.mastery-class-card>p { flex:1;margin:0;color:#758593;font-size:9px;line-height:1.4; }
.mastery-class-card footer { display:flex;justify-content:space-between;gap:4px;margin-top:8px;padding-top:7px;border-top:1px solid rgba(255,255,255,.055);color:#697a88;font-size:8px; }

.mastery-overview-lower { display:grid;grid-template-columns:1fr 1fr;gap:14px; }
.mastery-special-mini-grid { display:grid;grid-template-columns:1fr 1fr;gap:8px; }
.mastery-special-mini-grid article { --tier-color:#526474;display:flex;align-items:center;gap:9px;padding:10px;border:1px solid rgba(255,255,255,.06);border-radius:9px;background:rgba(0,0,0,.18); }
.mastery-special-mini-grid article>span { display:grid;place-items:center;width:34px;height:34px;border-radius:8px;background:color-mix(in srgb,var(--tier-color) 11%,transparent);color:var(--tier-color); }
.mastery-special-mini-grid small,.mastery-special-mini-grid strong,.mastery-special-mini-grid p { display:block;margin:0; }
.mastery-special-mini-grid small { color:var(--tier-color);font-size:8px;font-weight:900;text-transform:uppercase; }
.mastery-special-mini-grid strong { margin:2px 0;color:#e2e9ef;font-size:10px; }
.mastery-special-mini-grid p { color:#758693;font-size:9px; }
.mastery-mini-leaderboard { display:grid;gap:5px;margin:0;padding:0;list-style:none;counter-reset:none; }
.mastery-mini-leaderboard li { min-height:34px;display:grid;grid-template-columns:35px minmax(0,1fr) auto;align-items:center;gap:8px;padding:0 9px;border:1px solid rgba(255,255,255,.055);border-radius:8px;background:rgba(0,0,0,.16); }
.mastery-mini-leaderboard b { color:#d8a64d;font-size:9px; }
.mastery-mini-leaderboard a { color:#dce4eb;font-size:10px;font-weight:800; }
.mastery-mini-leaderboard span { color:#7f91a0;font-size:9px; }
.mastery-mini-leaderboard .mastery-empty-row { display:block;padding:20px;color:#738391;font-size:10px;text-align:center; }

.tier-0 { --tier-color:#526474; }
.tier-1 { --tier-color:#c88345; }
.tier-2 { --tier-color:#b9c6d2; }
.tier-3 { --tier-color:#efbf4e; }
.tier-4 { --tier-color:#e25560; }
.tier-5 { --tier-color:#b77cff; }

.mastery-armory-section,.mastery-specialist-section,.mastery-ranking-section { padding:20px; }
.mastery-armory-head { align-items:center; }
.mastery-armory-tools { display:flex;align-items:center;gap:8px; }
.mastery-armory-summary { display:flex;gap:8px; }
.mastery-armory-summary span { min-width:90px;padding:8px 10px;border:1px solid rgba(255,255,255,.07);border-radius:8px;background:rgba(0,0,0,.16);color:#788a99;font-size:9px;text-align:center; }
.mastery-armory-summary b { display:block;color:#e4ebf1;font-size:15px; }
.mastery-view-toggle { display:flex;padding:3px;border:1px solid rgba(255,255,255,.07);border-radius:9px;background:rgba(0,0,0,.2); }
.mastery-view-toggle button { display:flex;align-items:center;justify-content:center;gap:5px;min-height:40px;padding:0 10px;border:1px solid transparent;border-radius:6px;background:transparent;color:#718493;font:inherit;font-size:9px;font-weight:900;text-transform:uppercase;cursor:pointer;touch-action:manipulation; }
.mastery-view-toggle button.is-active { border-color:rgba(101,158,225,.27);background:rgba(67,123,190,.13);color:#a8c7ed; }
.mastery-range-guide { display:grid;grid-template-columns:repeat(6,1fr);gap:6px;margin-bottom:10px;padding:10px;border:1px solid rgba(91,153,231,.1);border-radius:10px;background:rgba(20,61,91,.08); }
.mastery-range-guide span { padding:7px;border-radius:7px;background:rgba(255,255,255,.025);color:#8293a1;font-size:9px;text-align:center; }
.mastery-range-guide b { display:block;margin-bottom:2px;color:#b8c8d5;font-size:9px;text-transform:uppercase; }
.mastery-range-guide em { grid-column:1/-1;color:#647989;font-size:8px;font-style:normal;text-align:center; }
.mastery-filters { display:grid;grid-template-columns:minmax(180px,1.4fr) repeat(3,minmax(130px,.7fr));gap:8px;margin-bottom:14px;padding:10px;border:1px solid rgba(255,255,255,.065);border-radius:11px;background:rgba(0,0,0,.16); }
.mastery-filters label>span { display:block;margin:0 0 4px 2px;color:#647788;font-size:8px;font-weight:950;letter-spacing:.07em;text-transform:uppercase; }
.mastery-filters input,.mastery-filters select { width:100%;height:36px;border:1px solid rgba(132,158,181,.15);border-radius:7px;outline:0;padding:0 10px;background:#09131c;color:#cfd8e0;font:inherit;font-size:10px; }
.mastery-filters input:focus,.mastery-filters select:focus { border-color:rgba(91,153,231,.55);box-shadow:0 0 0 3px rgba(91,153,231,.08); }
.mastery-filter-status { grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:8px;border-top:1px solid rgba(255,255,255,.05); }
.mastery-filter-status span { color:#768998;font-size:9px;font-weight:800; }
.mastery-filter-status button,.mastery-no-results button { min-height:36px;border:1px solid rgba(103,155,218,.24);border-radius:7px;padding:0 11px;background:rgba(60,111,173,.1);color:#9abce5;font:inherit;font-size:9px;font-weight:900;text-transform:uppercase;cursor:pointer;touch-action:manipulation; }
.mastery-filter-status button:disabled { opacity:.38;cursor:default; }
.mastery-weapon-grid { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px; }
.mastery-weapon-card { --tier-color:#526474;position:relative;display:flex;flex-direction:column;min-width:0;overflow:hidden;padding:0;border:1px solid color-mix(in srgb,var(--tier-color) 31%,rgba(255,255,255,.04));border-radius:12px;background:linear-gradient(160deg,color-mix(in srgb,var(--tier-color) 7%,#0b1721) 0%,#071018 72%);color:inherit;text-align:left;cursor:pointer;box-shadow:0 15px 30px rgba(0,0,0,.16);transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease; }
.mastery-weapon-card[hidden] { display:none; }
.mastery-weapon-card[data-mastered="1"] { --tier-color:#e8b84d; }
.mastery-weapon-card:hover { transform:translateY(-3px);border-color:color-mix(in srgb,var(--tier-color) 58%,transparent);box-shadow:0 18px 38px rgba(0,0,0,.28),0 0 20px color-mix(in srgb,var(--tier-color) 7%,transparent); }
.mastery-weapon-card:focus-visible { outline:2px solid #75aefa;outline-offset:2px; }
.mastery-card-top { display:flex;align-items:center;justify-content:space-between;min-height:31px;padding:0 10px;border-bottom:1px solid rgba(255,255,255,.055); }
.mastery-card-top em,.mastery-card-top b { font-style:normal;font-size:8px;font-weight:950;letter-spacing:.06em;text-transform:uppercase; }
.mastery-card-top em { color:#637788; }
.mastery-card-top b { color:var(--tier-color); }
.mastery-weapon-stage { position:relative;isolation:isolate;display:grid;place-items:center;height:145px;overflow:hidden;background:radial-gradient(ellipse at center,color-mix(in srgb,var(--tier-color) 14%,transparent),transparent 65%); }
.mastery-weapon-stage::before { content:"";position:absolute;inset:15px;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:18px 18px;mask-image:radial-gradient(circle,#000,transparent 70%); }
.mastery-weapon-stage i { position:absolute;width:76%;height:76%;border:1px solid color-mix(in srgb,var(--tier-color) 14%,transparent);border-radius:50%;transform:scaleY(.46); }
.mastery-weapon-stage img { position:relative;width:88%;height:128px;object-fit:contain;filter:grayscale(.82) saturate(.55) brightness(.72) drop-shadow(0 18px 10px rgba(0,0,0,.72));transition:filter .2s ease,transform .2s ease; }
.mastery-camo-surface,.mastery-card-camo-overlay { -webkit-mask-image:var(--weapon-mask);mask-image:var(--weapon-mask);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;mix-blend-mode:hard-light;pointer-events:none; }
.mastery-card-camo-overlay { position:absolute;z-index:2;width:88%;height:128px;opacity:.82;transition:opacity .2s ease,transform .2s ease; }
.camo-spray { background-color:#657050;background-image:radial-gradient(circle at 20% 32%,#b9b18c 0 7%,transparent 8%),radial-gradient(circle at 73% 66%,#263326 0 9%,transparent 10%),radial-gradient(circle at 55% 18%,#8d9568 0 11%,transparent 12%),linear-gradient(125deg,#4d5e42,#888965);background-size:21px 18px,27px 24px,33px 29px,100% 100%; }
.camo-woodland { background-color:#39452b;background-image:radial-gradient(ellipse at 22% 34%,#7f7446 0 20%,transparent 22%),radial-gradient(ellipse at 75% 68%,#171f18 0 23%,transparent 25%),radial-gradient(ellipse at 65% 18%,#6b442d 0 16%,transparent 18%),radial-gradient(ellipse at 34% 81%,#597044 0 21%,transparent 23%);background-size:67px 51px,76px 57px,58px 63px,82px 54px; }
.camo-deadzone { background-color:#41515e;background-image:linear-gradient(90deg,rgba(122,164,187,.82) 25%,transparent 25% 75%,rgba(22,35,45,.92) 75%),linear-gradient(0deg,rgba(103,128,142,.72) 25%,transparent 25% 75%,rgba(16,26,35,.85) 75%),linear-gradient(135deg,transparent 42%,rgba(191,211,218,.38) 43% 57%,transparent 58%);background-size:18px 18px,18px 18px,36px 36px; }
.camo-hunter { background-color:#4a3b28;background-image:repeating-linear-gradient(116deg,transparent 0 12px,rgba(28,42,28,.82) 13px 18px,transparent 19px 30px),radial-gradient(ellipse at 24% 36%,#9b6130 0 17%,transparent 19%),radial-gradient(ellipse at 76% 68%,#263824 0 20%,transparent 22%),radial-gradient(ellipse at 64% 15%,#b08b4c 0 12%,transparent 14%);background-size:auto,54px 48px,68px 56px,49px 63px; }
.camo-carbon { background-color:#151a1e;background-image:linear-gradient(45deg,rgba(104,119,128,.58) 25%,transparent 25% 75%,rgba(0,0,0,.62) 75%),linear-gradient(-45deg,rgba(47,56,63,.75) 25%,transparent 25% 75%,rgba(132,145,151,.25) 75%);background-position:0 0,4px 4px;background-size:8px 8px; }
.camo-obsidian { background-color:#090a10;background-image:linear-gradient(118deg,#030409 0 14%,#291039 25%,#090b12 39%,#6b2586 50%,#11101b 61%,#361347 76%,#030409 91%);background-size:110px 100%; }
.camo-gold { background-color:#bd7918;background-image:linear-gradient(110deg,#5d3500 0,#f7d66d 16%,#95600b 31%,#fff1a1 46%,#b56f0b 63%,#f7ca52 80%,#683900 100%);background-size:150px 100%; }
.mastery-camo-surface.camo-gold,.mastery-card-camo-overlay.camo-gold { opacity:.95; }
.mastery-weapon-card:not(.tier-0) .mastery-weapon-stage img { filter:saturate(.88) brightness(.92) drop-shadow(0 18px 11px rgba(0,0,0,.7)); }
.mastery-weapon-card:hover .mastery-weapon-stage img { transform:scale(1.035);filter:saturate(1) brightness(1.02) drop-shadow(0 20px 12px rgba(0,0,0,.7)); }
.mastery-weapon-card:hover .mastery-card-camo-overlay { transform:scale(1.035);opacity:.94; }
.mastery-weapon-card.is-objective { border-color:color-mix(in srgb,var(--tier-color) 76%,#fff 10%);box-shadow:0 0 0 3px color-mix(in srgb,var(--tier-color) 17%,transparent),0 14px 34px rgba(0,0,0,.28); }
.mastery-card-name { display:flex;align-items:baseline;justify-content:space-between;gap:7px;padding:10px 11px 8px; }
.mastery-card-name strong { min-width:0;color:#edf2f6;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis; }
.mastery-card-name em { color:var(--tier-color);font-size:9px;font-style:normal;font-weight:900;text-transform:uppercase; }
.mastery-weapon-card>.mastery-progress { margin:0 11px; }
.mastery-card-progress { display:flex;align-items:center;justify-content:space-between;gap:5px;padding:8px 11px 11px; }
.mastery-card-progress b,.mastery-card-progress em { font-size:9px;font-style:normal; }
.mastery-card-progress b { color:#b6c1cb; }
.mastery-card-progress em { color:#657887; }
.mastery-weapon-grid.is-list { grid-template-columns:1fr; }
.mastery-weapon-grid.is-list .mastery-weapon-card { display:grid;grid-template-columns:minmax(180px,28%) minmax(0,1fr);grid-template-rows:32px auto 5px auto;grid-template-areas:"stage top" "stage name" "stage bar" "stage progress"; }
.mastery-weapon-grid.is-list .mastery-weapon-card[hidden] { display:none; }
.mastery-weapon-grid.is-list .mastery-card-top { grid-area:top; }
.mastery-weapon-grid.is-list .mastery-weapon-stage { grid-area:stage;height:150px;border-right:1px solid rgba(255,255,255,.055); }
.mastery-weapon-grid.is-list .mastery-card-name { grid-area:name;align-self:end; }
.mastery-weapon-grid.is-list .mastery-weapon-card>.mastery-progress { grid-area:bar;align-self:center; }
.mastery-weapon-grid.is-list .mastery-card-progress { grid-area:progress;align-self:start; }
.mastery-no-results { display:grid;place-items:center;min-height:220px;padding:40px;border:1px dashed rgba(124,153,179,.18);border-radius:12px;color:#778a99;text-align:center; }
.mastery-no-results[hidden] { display:none; }
.mastery-no-results>span { color:#516b80;font-size:34px; }
.mastery-no-results strong { margin-top:8px;color:#cad5de;font-size:14px; }
.mastery-no-results p { margin:4px 0 13px;color:#748694;font-size:10px; }

.mastery-specialist-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px; }
.mastery-specialist-card { --tier-color:#526474;position:relative;overflow:hidden;padding:17px;border:1px solid color-mix(in srgb,var(--tier-color) 31%,transparent);border-radius:13px;background:radial-gradient(circle at 0 0,color-mix(in srgb,var(--tier-color) 12%,transparent),transparent 35%),rgba(4,12,18,.52); }
.mastery-specialist-card::after { content:"";position:absolute;right:-45px;top:-45px;width:135px;height:135px;border:1px solid color-mix(in srgb,var(--tier-color) 12%,transparent);border-radius:50%;box-shadow:0 0 0 24px color-mix(in srgb,var(--tier-color) 3%,transparent); }
.mastery-specialist-card header { position:relative;z-index:2;display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:11px; }
.mastery-specialist-card header>span { display:grid;place-items:center;width:46px;height:46px;border:1px solid color-mix(in srgb,var(--tier-color) 35%,transparent);border-radius:11px;background:color-mix(in srgb,var(--tier-color) 9%,transparent);color:var(--tier-color);font-size:22px; }
.mastery-specialist-card small { color:#687c8c;font-size:8px;font-weight:950;letter-spacing:.06em; }
.mastery-specialist-card h2 { margin:3px 0 0;color:#eaf0f5;font-size:15px; }
.mastery-specialist-card header>strong { color:var(--tier-color);font-size:9px;text-transform:uppercase; }
.mastery-specialist-card>p { min-height:30px;margin:13px 0;color:#8292a0;font-size:10px;line-height:1.45; }
.mastery-special-track { display:grid;grid-template-columns:repeat(5,1fr);gap:5px;padding:10px;border:1px solid rgba(255,255,255,.055);border-radius:10px;background:rgba(0,0,0,.18); }
.mastery-special-track span { position:relative;display:grid;place-items:center;gap:4px;color:#5f7180; }
.mastery-special-track span:not(:last-child)::after { content:"";position:absolute;left:64%;top:12px;width:73%;height:1px;background:rgba(255,255,255,.07); }
.mastery-special-track i { position:relative;z-index:1;display:grid;place-items:center;width:25px;height:25px;border:1px solid rgba(255,255,255,.1);border-radius:50%;background:#0a151e;font-size:8px;font-style:normal; }
.mastery-special-track b { font-size:9px; }
.mastery-special-track .is-reached { color:var(--tier-color); }
.mastery-special-track .is-reached i { border-color:color-mix(in srgb,var(--tier-color) 50%,transparent);background:color-mix(in srgb,var(--tier-color) 11%,#0a151e);box-shadow:0 0 12px color-mix(in srgb,var(--tier-color) 16%,transparent); }
.mastery-specialist-card footer { display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px;margin-top:11px; }
.mastery-specialist-card footer span { color:#7c8e9c;font-size:9px; }
.mastery-specialist-card:target { scroll-margin-top:86px;border-color:color-mix(in srgb,var(--tier-color) 72%,#fff 9%);box-shadow:0 0 0 3px color-mix(in srgb,var(--tier-color) 16%,transparent),0 16px 38px rgba(0,0,0,.24); }
.mastery-career-head { margin-top:28px;padding-top:22px;border-top:1px solid rgba(255,255,255,.07); }
.mastery-career-grid .mastery-specialist-card { background:radial-gradient(circle at 100% 0,color-mix(in srgb,var(--tier-color) 10%,transparent),transparent 38%),rgba(4,12,18,.52); }
.mastery-career-standings { margin-top:16px;padding:16px;border:1px solid rgba(255,255,255,.06);border-radius:12px;background:rgba(0,0,0,.14); }
.mastery-career-standings>header small { color:#658096;font-size:8px;font-weight:950;letter-spacing:.08em; }
.mastery-career-standings>header h2 { margin:3px 0 13px;color:#dfe7ed;font-size:14px; }
.mastery-career-standings>div { display:grid;grid-template-columns:repeat(5,1fr);gap:7px; }
.mastery-career-standings article { min-width:0;padding:9px;border:1px solid rgba(255,255,255,.055);border-radius:9px;background:rgba(6,16,23,.65); }
.mastery-career-standings h3 { display:flex;align-items:center;gap:6px;min-height:26px;margin:0 0 7px;color:#cbd6df;font-size:9px; }
.mastery-career-standings h3 span { color:#d7a84f;font-size:13px; }
.mastery-career-standings ol { display:grid;gap:4px;margin:0;padding:0;list-style:none; }
.mastery-career-standings li { display:grid;grid-template-columns:24px minmax(0,1fr) auto;gap:5px;padding:5px 3px;border-top:1px solid rgba(255,255,255,.045);font-size:8px; }
.mastery-career-standings li b { color:#a77c32; }
.mastery-career-standings li a { overflow:hidden;color:#aebcc7;font-weight:750;text-overflow:ellipsis;white-space:nowrap; }
.mastery-career-standings li strong { color:#dce5ec; }
.mastery-career-standings li.is-empty { display:block;padding:11px 3px;color:#687b89;text-align:center; }
.mastery-telemetry-note { display:grid;grid-template-columns:180px 1fr;gap:16px;margin-top:14px;padding:14px 16px;border:1px solid rgba(219,168,75,.18);border-radius:11px;background:rgba(126,83,18,.08); }
.mastery-telemetry-note strong { color:#deb45f;font-size:9px;text-transform:uppercase; }
.mastery-telemetry-note span { color:#8f9daa;font-size:9px;line-height:1.5; }

.mastery-ranking-podium { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:10px;max-width:820px;margin:22px auto 18px; }
.mastery-ranking-podium article { position:relative;display:flex;flex-direction:column;align-items:center;min-height:145px;padding:20px 10px 15px;border:1px solid rgba(145,166,185,.16);border-radius:12px;background:linear-gradient(180deg,rgba(18,34,47,.78),rgba(5,14,21,.9));text-align:center; }
.mastery-ranking-podium article.place-1 { order:2;min-height:175px;border-color:rgba(237,183,74,.34);background:radial-gradient(circle at 50% 0,rgba(237,183,74,.16),transparent 48%),rgba(8,18,27,.92); }
.mastery-ranking-podium article.place-2 { order:1; }
.mastery-ranking-podium article.place-3 { order:3; }
.mastery-ranking-podium article>span { color:#d9a744;font-size:24px; }
.mastery-ranking-podium small { margin:3px 0;color:#738596;font-size:9px;font-weight:900; }
.mastery-ranking-podium strong { color:#edf2f6;font-size:14px; }
.mastery-ranking-podium b { margin-top:8px;color:#f1bd5c;font-size:11px; }
.mastery-ranking-podium em { margin-top:3px;color:#708291;font-size:9px;font-style:normal; }
.mastery-ranking-table-wrap { overflow:auto;border:1px solid rgba(255,255,255,.065);border-radius:12px; }
.mastery-ranking-table { width:100%;border-collapse:collapse;min-width:680px;background:rgba(0,0,0,.14); }
.mastery-ranking-table th { height:38px;padding:0 12px;border-bottom:1px solid rgba(255,255,255,.07);color:#647888;font-size:8px;letter-spacing:.07em;text-align:left;text-transform:uppercase; }
.mastery-ranking-table td { height:48px;padding:0 12px;border-bottom:1px solid rgba(255,255,255,.045);color:#8999a6;font-size:10px; }
.mastery-ranking-table tr:last-child td { border-bottom:0; }
.mastery-ranking-table td:first-child b { color:#d6a64e; }
.mastery-ranking-table td a { color:#e0e7ed;font-weight:850; }
.mastery-ranking-table td strong { color:#b7c8d7; }
.mastery-table-progress { display:inline-block;width:58px;height:4px;margin-right:7px;overflow:hidden;border-radius:99px;background:rgba(255,255,255,.07);vertical-align:middle; }
.mastery-table-progress i { display:block;width:var(--progress);height:100%;background:linear-gradient(90deg,#8c5c15,#f0bb53); }
.mastery-ranking-table .mastery-empty-row { height:120px;color:#718391;text-align:center; }

.mastery-dialog { width:min(720px,calc(100% - 28px));padding:0;overflow:hidden;border:1px solid rgba(138,169,196,.24);border-radius:16px;background:#08131c;color:#e9eef3;box-shadow:0 34px 100px rgba(0,0,0,.65); }
.mastery-dialog::backdrop { background:rgba(0,5,9,.82);backdrop-filter:blur(5px); }
.mastery-dialog-close { position:absolute;right:11px;top:11px;z-index:4;width:40px;height:40px;border:1px solid rgba(255,255,255,.12);border-radius:50%;background:rgba(0,0,0,.52);color:#cbd5de;font-size:23px;cursor:pointer;touch-action:manipulation; }
.mastery-dialog-stage { position:relative;isolation:isolate;display:grid;place-items:center;height:260px;overflow:hidden;background:radial-gradient(circle at center,color-mix(in srgb,var(--dialog-color,#6d8396) 17%,transparent),transparent 56%),linear-gradient(180deg,#0c1c28,#071018); }
.mastery-dialog-stage::before { content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:25px 25px;mask-image:radial-gradient(circle,#000,transparent 70%); }
.mastery-dialog-stage img { position:relative;z-index:2;width:78%;height:230px;object-fit:contain;filter:drop-shadow(0 25px 15px rgba(0,0,0,.7)); }
.mastery-dialog-camo-overlay { position:absolute;z-index:3;width:78%;height:230px;opacity:.9; }
.mastery-dialog-stage i { position:absolute;width:50%;height:50%;border:1px solid color-mix(in srgb,var(--dialog-color,#6d8396) 20%,transparent);border-radius:50%;transform:scaleY(.45); }
.mastery-dialog-camo-label { position:absolute;left:14px;bottom:12px;z-index:4;min-width:148px;padding:8px 10px;border:1px solid rgba(255,255,255,.11);border-radius:9px;background:rgba(3,9,14,.76);box-shadow:0 8px 22px rgba(0,0,0,.32);backdrop-filter:blur(8px); }
.mastery-dialog-camo-label small,.mastery-dialog-camo-label strong,.mastery-dialog-camo-label em { display:block; }
.mastery-dialog-camo-label small { color:#7b90a2;font-size:8px;font-weight:950;letter-spacing:.1em; }
.mastery-dialog-camo-label strong { margin-top:2px;color:#edf2f6;font-size:11px; }
.mastery-dialog-camo-label em { margin-top:2px;color:#8c9ba7;font-size:8px;font-style:normal; }
.mastery-dialog-copy { padding:22px; }
.mastery-dialog-copy small { color:#70879a;font-size:9px;font-weight:950;letter-spacing:.08em;text-transform:uppercase; }
.mastery-dialog-copy h2 { margin:4px 0 2px;font-size:25px; }
.mastery-dialog-copy>strong { color:var(--dialog-color,#8aa0b4);font-size:10px;text-transform:uppercase; }
.mastery-dialog-copy>p { margin:13px 0 0;color:#8394a2;font-size:10px; }
.mastery-dialog-completion { --completion:0%;display:grid;grid-template-columns:1fr auto;align-items:end;gap:4px 12px;margin-top:16px;padding:11px 13px;border:1px solid rgba(83,211,149,.18);border-radius:10px;background:linear-gradient(100deg,rgba(27,125,85,.13),rgba(4,12,18,.35)); }
.mastery-dialog-completion span b,.mastery-dialog-completion span em { display:block; }
.mastery-dialog-completion span b { color:#dff7eb;font-size:12px; }
.mastery-dialog-completion span em { margin-top:2px;color:#62c997;font-size:8px;font-style:normal;font-weight:950;letter-spacing:.07em; }
.mastery-dialog-completion>strong { color:#68d69e;font-size:16px; }
.mastery-dialog-completion>i { grid-column:1/-1;display:block;height:5px;margin-top:5px;overflow:hidden;border-radius:99px;background:rgba(255,255,255,.07); }
.mastery-dialog-completion>i b { display:block;width:var(--completion);height:100%;border-radius:inherit;background:linear-gradient(90deg,#238a60,#68d69e);box-shadow:0 0 12px rgba(74,222,155,.28);transition:width .25s ease; }
.mastery-dialog-completion.is-complete { border-color:rgba(232,184,77,.34);background:linear-gradient(100deg,rgba(172,116,25,.17),rgba(4,12,18,.35)); }
.mastery-dialog-completion.is-complete span em,.mastery-dialog-completion.is-complete>strong { color:#efc663; }
.mastery-dialog-completion.is-complete>i b { background:linear-gradient(90deg,#a66f18,#f0ca6a); }
.mastery-dialog-camos { display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:18px; }
.mastery-dialog-camos button { display:grid;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:9px;min-height:84px;padding:9px;border:1px solid rgba(119,139,155,.13);border-radius:9px;background:rgba(2,8,13,.44);color:#667989;font:inherit;text-align:left;cursor:pointer;touch-action:manipulation;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease,transform .16s ease; }
.mastery-dialog-camos button>i { display:grid;place-items:center;width:36px;height:36px;border:1px solid rgba(255,255,255,.14);border-radius:8px;color:#eef2f5;font-size:11px;font-style:normal;font-weight:950;text-shadow:0 1px 4px #000;box-shadow:inset 0 0 0 1px rgba(0,0,0,.22); }
.mastery-dialog-camos button:not(.is-reached) { opacity:.72;filter:saturate(.56); }
.mastery-dialog-camos button.is-reached { border-color:rgba(78,211,146,.31);color:#69d69f;background:linear-gradient(110deg,rgba(30,130,88,.15),rgba(4,12,18,.34)); }
.mastery-dialog-camos button.is-reached>i { border-color:rgba(91,224,159,.44);box-shadow:inset 0 0 0 1px rgba(0,0,0,.22),0 0 14px rgba(62,207,139,.13); }
.mastery-dialog-camos button.is-selected { z-index:1;opacity:1;filter:none;border-color:#a96cf3;background:linear-gradient(110deg,rgba(123,65,190,.22),rgba(24,10,38,.35));box-shadow:0 0 0 2px rgba(163,99,240,.16),0 8px 24px rgba(0,0,0,.18);transform:translateY(-1px); }
.mastery-dialog-camos button.is-gold { grid-column:1/-1;border-color:rgba(232,184,77,.32);background:linear-gradient(100deg,rgba(232,184,77,.12),rgba(102,68,12,.04)); }
.mastery-dialog-camos button.is-gold>i { border-color:rgba(232,184,77,.48);color:#fff2b8; }
.mastery-dialog-camos b,.mastery-dialog-camos em,.mastery-dialog-camos small { display:block;font-style:normal; }
.mastery-camo-copy { display:block;min-width:0; }
.mastery-camo-title { display:flex;align-items:center;justify-content:space-between;gap:7px; }
.mastery-dialog-camos b { color:#dce5ec;font-size:9px; }
.mastery-camo-status { flex:none;padding:3px 7px;border:1px solid rgba(129,148,163,.2);border-radius:99px;color:#718492;font-size:8px;letter-spacing:.05em; }
.mastery-dialog-camos button.is-reached .mastery-camo-status { border-color:rgba(86,217,153,.3);background:rgba(38,148,100,.12);color:#6bdda5; }
.mastery-dialog-camos button.is-selected .mastery-camo-status { border-color:rgba(189,131,255,.42);background:rgba(143,79,218,.18);color:#d1a7ff; }
.mastery-dialog-camos em { margin-top:2px;color:#748695;font-size:8px;line-height:1.35; }
.mastery-dialog-camos small { margin-top:5px;color:#8498a8;font-size:8px;font-weight:900; }
.mastery-dialog-camos button.is-reached small { color:#65d39c; }
.mastery-camo-progress { display:block;height:3px;margin-top:6px;overflow:hidden;border-radius:99px;background:rgba(255,255,255,.07); }
.mastery-camo-progress>i { display:block;width:var(--camo-progress);height:100%;border:0;border-radius:inherit;background:#718493;box-shadow:none; }
.mastery-dialog-camos button.is-reached .mastery-camo-progress>i { background:linear-gradient(90deg,#278d63,#64d49d); }
.mastery-dialog-camos button.is-selected .mastery-camo-progress>i { background:linear-gradient(90deg,#7f46bd,#c18aff); }

@media (min-width:851px) {
  .mastery-dialog { width:min(700px,calc(100% - 28px));height:min(800px,calc(100dvh - 28px));max-height:calc(100dvh - 28px); }
  .mastery-dialog[open] { display:grid;grid-template-rows:210px minmax(0,1fr); }
  .mastery-dialog-stage { height:210px; }
  .mastery-dialog-stage img,.mastery-dialog-camo-overlay { height:188px; }
  .mastery-dialog-copy { min-height:0;padding:17px 18px 18px;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:#40586a transparent; }
  .mastery-dialog-copy::-webkit-scrollbar { width:7px; }
  .mastery-dialog-copy::-webkit-scrollbar-track { background:transparent; }
  .mastery-dialog-copy::-webkit-scrollbar-thumb { border-radius:99px;background:#40586a; }
  .mastery-dialog-copy h2 { font-size:22px; }
  .mastery-dialog-completion { margin-top:12px;padding:9px 11px; }
  .mastery-dialog-camos { gap:6px;margin-top:12px; }
  .mastery-dialog-camos button { grid-template-columns:34px minmax(0,1fr);gap:8px;min-height:70px;padding:7px 8px; }
  .mastery-dialog-camos button>i { width:32px;height:32px; }
  .mastery-dialog-copy>p { margin-top:9px; }
}

@media (max-width:1180px) {
  .mastery-overview-grid { grid-template-columns:1fr; }
  .mastery-pursuit-list { grid-template-columns:repeat(3,1fr); }
  .mastery-class-grid { grid-template-columns:repeat(4,1fr); }
  .mastery-weapon-grid { grid-template-columns:repeat(3,1fr); }
  .mastery-career-standings>div { grid-template-columns:repeat(3,1fr); }
}

@media (max-width:850px) {
  .mastery-shell { width:calc(100% - 20px); }
  .mastery-preview-bar { grid-template-columns:auto 1fr; }
  .mastery-preview-actions { grid-column:1/-1;justify-content:flex-end; }
  .mastery-hero { grid-template-columns:1fr;gap:24px;padding:28px; }
  .mastery-hero-weapon { right:0;top:23%;width:80vw;transform:translate(23%,-50%); }
  .mastery-dossier { width:100%;max-width:520px; }
  .mastery-tabs { position:sticky;top:8px;z-index:55;background:rgba(7,16,24,.94);box-shadow:0 12px 34px rgba(0,0,0,.4);backdrop-filter:blur(14px); }
  .mastery-pursuit-list { grid-template-columns:1fr; }
  .mastery-pursuit { grid-template-columns:105px 1fr; }
  .mastery-pursuit:hover { transform:none; }
  .mastery-class-grid { grid-template-columns:repeat(3,1fr); }
  .mastery-overview-lower { grid-template-columns:1fr; }
  .mastery-weapon-grid { grid-template-columns:repeat(2,1fr); }
  .mastery-filters { grid-template-columns:1fr 1fr; }
  .mastery-range-guide { grid-template-columns:repeat(3,1fr); }
  .mastery-legacy-metrics { grid-template-columns:repeat(3,1fr); }
  .mastery-career-standings>div { grid-template-columns:1fr 1fr; }
}

@media (max-width:620px) {
  body.mastery-page { background:radial-gradient(520px 360px at 25% 0,rgba(221,145,33,.12),transparent 65%),linear-gradient(180deg,#081018,#080d12); }
  .mastery-shell { width:calc(100% - 14px);padding-top:7px; }
  .mastery-main { gap:9px;padding-bottom:10px; }
  .mastery-preview-bar { grid-template-columns:auto minmax(0,1fr);gap:9px;margin:0 0 9px;padding:9px;border-radius:10px; }
  .mastery-preview-bar strong { font-size:9px;letter-spacing:.09em; }
  .mastery-preview-bar span:not(.mastery-preview-pulse) { margin-top:3px;font-size:9px;line-height:1.4; }
  .mastery-preview-actions { display:grid;grid-template-columns:1fr 1fr;gap:6px; }
  .mastery-preview-actions a { display:grid;place-items:center;min-height:42px;padding:0 8px;text-align:center; }
  .mastery-hero { min-height:0;gap:17px;padding:20px 14px 14px;border-radius:14px; }
  .mastery-hero-weapon { right:-6%;top:14%;width:84vw;height:190px;opacity:.09;transform:translate(23%,-50%); }
  .mastery-eyebrow { font-size:9px;letter-spacing:.18em; }
  .mastery-hero h1 { margin-top:6px;font-size:44px; }
  .mastery-hero-copy>p { margin:10px 0 15px;font-size:11px;line-height:1.5; }
  .mastery-player-search>label { font-size:9px; }
  .mastery-player-search>span { display:grid;grid-template-columns:minmax(0,1fr) auto;min-height:52px;padding:4px; }
  .mastery-player-search input { min-width:0;padding:0 9px;font-size:16px; }
  .mastery-player-search button { min-width:94px;padding:0 9px;font-size:9px;touch-action:manipulation; }
  .mastery-dossier { padding:13px;border-radius:13px; }
  .mastery-dossier-head { gap:10px;padding-bottom:12px; }
  .mastery-rank-mark { width:50px;height:57px; }
  .mastery-dossier-head strong { max-width:calc(100vw - 125px);font-size:16px; }
  .mastery-dossier-stats { padding:13px 0 11px; }
  .mastery-dossier-stats div { padding:0 5px; }
  .mastery-dossier-stats strong { font-size:17px; }
  .mastery-dossier-stats span { font-size:8px;line-height:1.3; }
  .mastery-tabs { top:5px;display:grid;grid-template-columns:repeat(auto-fit,minmax(54px,1fr));gap:3px;min-height:0;padding:4px;border-radius:11px;overflow:visible; }
  .mastery-tabs a { display:flex;flex-direction:column;gap:3px;min-width:0;min-height:48px;padding:5px 2px;border-radius:7px;font-size:0;line-height:1; }
  .mastery-tabs .mastery-profile-link { margin-left:0; }
  .mastery-tab-icon { display:block;font-size:15px; }
  .mastery-tab-label { max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
  .mastery-tab-label::after { content:attr(data-mobile);font-size:9px;letter-spacing:.02em; }
  .mastery-section-block,.mastery-armory-section,.mastery-specialist-section,.mastery-ranking-section { padding:12px;border-radius:12px; }
  .mastery-section-head { align-items:center;gap:9px;margin-bottom:11px; }
  .mastery-section-head span { font-size:8px; }
  .mastery-section-head h2 { font-size:16px; }
  .mastery-section-head>p { display:none; }
  .mastery-section-head>a { display:flex;align-items:center;justify-content:flex-end;min-height:42px;font-size:9px;text-align:right; }
  .mastery-pursuit { grid-template-columns:88px 1fr;min-height:104px; }
  .mastery-pursuit-art img { width:82px;height:70px; }
  .mastery-pursuit-copy { padding-left:5px; }
  .mastery-rule-list { gap:6px; }
  .mastery-rule-list li { align-items:start;padding:9px; }
  .mastery-rule-list span { font-size:10.5px;line-height:1.48; }
  .mastery-admin-status { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .mastery-admin-status span { padding:7px 3px; }
  .mastery-explosive-review .mastery-section-head { align-items:flex-start; }
  .mastery-shadow-mode { padding:6px;font-size:8px;text-align:center; }
  .mastery-shadow-intro { margin-top:0;font-size:9px; }
  .mastery-shadow-metrics { grid-template-columns:repeat(3,minmax(0,1fr));gap:5px; }
  .mastery-shadow-metrics span { padding:8px 3px;font-size:8px; }
  .mastery-shadow-metrics b { font-size:14px; }
  .mastery-shadow-list article { grid-template-columns:65px minmax(0,1fr);align-items:start;gap:8px;padding:9px; }
  .mastery-shadow-list footer { grid-column:1/-1;display:flex;align-items:center;justify-content:flex-start;gap:8px;min-width:0;padding-top:6px;border-top:1px solid rgba(255,255,255,.05); }
  .mastery-shadow-list article>div strong { white-space:normal; }
  .mastery-shadow-list article>div span { line-height:1.4; }
  .mastery-founding-badge { padding:6px 7px; }
  .mastery-founding-badge>i { width:28px;height:28px; }
  .mastery-founding-badge b { font-size:8px; }
  .mastery-legacy-metrics { grid-template-columns:1fr 1fr;gap:6px; }
  .mastery-legacy-metrics>div { padding:10px 8px; }
  .mastery-legacy-metrics strong { font-size:15px; }
  .mastery-legacy-metrics span { font-size:8px; }
  .mastery-legacy-foot { display:grid;gap:6px; }
  .mastery-legacy-foot span,.mastery-legacy-foot em { font-size:9px; }
  .mastery-legacy-foot em { min-width:0;text-align:left; }
  .mastery-class-grid { grid-template-columns:repeat(2,minmax(0,1fr));gap:6px; }
  .mastery-class-card { min-height:158px;padding:11px; }
  .mastery-class-card h3 { min-height:27px;font-size:11px; }
  .mastery-class-card>p { font-size:9px; }
  .mastery-special-mini-grid { grid-template-columns:1fr; }
  .mastery-special-mini-grid article { min-height:54px; }
  .mastery-mini-leaderboard li { min-height:44px; }
  .mastery-armory-head { display:grid;grid-template-columns:1fr;align-items:start; }
  .mastery-armory-tools { width:100%;justify-content:space-between;gap:6px; }
  .mastery-armory-summary { flex:1; }
  .mastery-armory-summary span { flex:1;min-width:0;padding:7px 8px; }
  .mastery-view-toggle { flex:none; }
  .mastery-view-toggle button { min-width:54px;min-height:43px;padding:0 7px; }
  .mastery-range-guide { grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;margin-bottom:8px;padding:7px; }
  .mastery-range-guide span { padding:7px 3px;font-size:8px; }
  .mastery-range-guide b { font-size:8px; }
  .mastery-range-guide em { padding:4px 2px 0;font-size:8px;line-height:1.4; }
  .mastery-filters { grid-template-columns:1fr 1fr;gap:7px;margin-bottom:9px;padding:8px; }
  .mastery-filters label:first-child,.mastery-filters label:nth-of-type(4) { grid-column:1/-1; }
  .mastery-filters label>span { margin-bottom:5px;font-size:8px; }
  .mastery-filters input,.mastery-filters select { height:46px;padding:0 9px;font-size:16px; }
  .mastery-filter-status { gap:8px;padding-top:7px; }
  .mastery-filter-status span { font-size:9px; }
  .mastery-filter-status button,.mastery-no-results button { min-height:42px; }
  .mastery-weapon-grid { grid-template-columns:1fr 1fr;gap:7px; }
  .mastery-weapon-card { border-radius:10px;touch-action:manipulation; }
  .mastery-weapon-card:hover { transform:none; }
  .mastery-card-top { min-height:30px;padding:0 7px; }
  .mastery-card-top em { max-width:88px;overflow:hidden;font-size:8px;text-overflow:ellipsis;white-space:nowrap; }
  .mastery-card-top b { font-size:8px; }
  .mastery-weapon-stage { height:102px; }
  .mastery-weapon-stage img { width:92%;height:92px; }
  .mastery-card-camo-overlay { width:92%;height:92px; }
  .mastery-card-name { display:block;padding:8px 8px 6px; }
  .mastery-card-name strong,.mastery-card-name em { display:block; }
  .mastery-card-name strong { font-size:12px; }
  .mastery-card-name em { margin-top:3px;font-size:8px; }
  .mastery-weapon-card>.mastery-progress { margin:0 8px; }
  .mastery-card-progress { display:block;padding:7px 8px 9px; }
  .mastery-card-progress b,.mastery-card-progress em { display:block;font-size:9px; }
  .mastery-card-progress em { margin-top:3px; }
  .mastery-weapon-grid.is-list { grid-template-columns:1fr;gap:7px; }
  .mastery-weapon-grid.is-list .mastery-weapon-card { grid-template-columns:105px minmax(0,1fr);grid-template-rows:30px auto 5px auto; }
  .mastery-weapon-grid.is-list .mastery-weapon-stage { height:126px; }
  .mastery-weapon-grid.is-list .mastery-weapon-stage img { height:112px; }
  .mastery-weapon-grid.is-list .mastery-card-camo-overlay { width:92%;height:112px; }
  .mastery-weapon-grid.is-list .mastery-card-name { display:flex;align-items:baseline;padding:9px 9px 6px; }
  .mastery-weapon-grid.is-list .mastery-card-name strong,.mastery-weapon-grid.is-list .mastery-card-name em { display:block; }
  .mastery-weapon-grid.is-list .mastery-card-progress { display:flex;padding:7px 9px 9px; }
  .mastery-weapon-grid.is-list .mastery-card-progress em { margin-top:0; }
  .mastery-no-results { min-height:180px;padding:28px 15px; }
  .mastery-specialist-grid { grid-template-columns:1fr;gap:7px; }
  .mastery-specialist-card { padding:13px; }
  .mastery-specialist-card header { grid-template-columns:42px minmax(0,1fr) auto;gap:8px; }
  .mastery-specialist-card header>span { width:40px;height:40px; }
  .mastery-specialist-card h2 { font-size:14px; }
  .mastery-specialist-card>p { min-height:0;font-size:10px; }
  .mastery-special-track { padding:8px 5px; }
  .mastery-special-track i { width:29px;height:29px; }
  .mastery-special-track span:not(:last-child)::after { top:14px; }
  .mastery-specialist-card footer { grid-template-columns:1fr;gap:7px; }
  .mastery-career-standings { margin-top:11px;padding:10px; }
  .mastery-career-standings>div { grid-template-columns:1fr;gap:6px; }
  .mastery-career-standings article { padding:9px; }
  .mastery-career-standings li { min-height:30px;align-items:center;font-size:9px; }
  .mastery-telemetry-note { grid-template-columns:1fr;gap:5px;padding:11px; }
  .mastery-telemetry-note span { font-size:9px; }
  .mastery-ranking-podium { grid-template-columns:1fr 1fr;gap:7px;margin:12px auto; }
  .mastery-ranking-podium article { min-height:112px;padding:13px 7px 10px; }
  .mastery-ranking-podium article.place-1 { order:1;grid-column:1/-1;min-height:130px; }
  .mastery-ranking-podium article.place-2 { order:2; }
  .mastery-ranking-podium article.place-3 { order:3; }
  .mastery-ranking-podium strong { max-width:100%;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
  .mastery-ranking-table-wrap { overflow:visible;border:0;background:transparent; }
  .mastery-ranking-table { display:block;min-width:0;background:transparent; }
  .mastery-ranking-table thead { display:none; }
  .mastery-ranking-table tbody { display:grid;gap:7px; }
  .mastery-ranking-table tr { display:grid;grid-template-columns:44px minmax(0,1fr) auto auto;grid-template-rows:auto auto auto;gap:7px 9px;padding:10px;border:1px solid rgba(255,255,255,.07);border-radius:10px;background:rgba(0,0,0,.18); }
  .mastery-ranking-table td { display:block;height:auto;padding:0;border:0;font-size:10px; }
  .mastery-ranking-table td::before { display:block;margin-bottom:2px;color:#5e7282;font-size:8px;font-weight:900;letter-spacing:.05em;text-transform:uppercase;content:attr(data-label); }
  .mastery-ranking-table td:nth-child(1) { grid-column:1;grid-row:1/3;display:grid;place-items:center;border-right:1px solid rgba(255,255,255,.06); }
  .mastery-ranking-table td:nth-child(1)::before { display:none; }
  .mastery-ranking-table td:nth-child(2) { grid-column:2;grid-row:1; }
  .mastery-ranking-table td:nth-child(3) { grid-column:3/5;grid-row:1;text-align:right; }
  .mastery-ranking-table td:nth-child(4) { grid-column:2;grid-row:2; }
  .mastery-ranking-table td:nth-child(5) { grid-column:3;grid-row:2; }
  .mastery-ranking-table td:nth-child(6) { grid-column:4;grid-row:2; }
  .mastery-ranking-table td:nth-child(7) { grid-column:1/-1;grid-row:3;padding-top:8px;border-top:1px solid rgba(255,255,255,.05); }
  .mastery-ranking-table td a { display:block;max-width:100%;overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap; }
  .mastery-ranking-table .mastery-empty-row { grid-column:1/-1;display:grid;place-items:center;min-height:130px;padding:18px;line-height:1.5; }
  .mastery-ranking-table .mastery-empty-row::before { display:none; }
  .mastery-table-progress { width:calc(100% - 42px);height:5px; }
  .mastery-dialog { inset:auto 0 0;width:100%;max-width:none;height:92dvh;max-height:92dvh;margin:0;border-width:1px 0 0;border-radius:18px 18px 0 0; }
  .mastery-dialog-close { right:10px;top:10px;width:44px;height:44px;background:rgba(0,0,0,.68); }
  .mastery-dialog-stage { height:176px; }
  .mastery-dialog-stage::after { content:"";position:absolute;left:50%;top:7px;z-index:5;width:42px;height:4px;border-radius:99px;background:rgba(255,255,255,.25);transform:translateX(-50%); }
  .mastery-dialog-stage img { width:80%;height:160px; }
  .mastery-dialog-camo-overlay { width:80%;height:160px; }
  .mastery-dialog-camo-label { left:10px;bottom:9px;min-width:132px;padding:6px 8px; }
  .mastery-dialog-copy { height:calc(92dvh - 176px);overflow-y:auto;overscroll-behavior:contain;padding:17px 13px calc(22px + env(safe-area-inset-bottom)); }
  .mastery-dialog-copy h2 { font-size:22px; }
  .mastery-dialog-completion { margin-top:13px;padding:10px 11px; }
  .mastery-dialog-copy>p { font-size:10px;line-height:1.45; }
  .mastery-dialog-camos { grid-template-columns:1fr;gap:6px;margin-top:13px; }
  .mastery-dialog-camos button { min-height:88px;padding:10px; }
  .mastery-dialog-camos button.is-gold { grid-column:auto; }
  .mastery-dialog-camos b { font-size:10px; }
  .mastery-dialog-camos em,.mastery-dialog-camos small { font-size:9px; }
}

@media (max-width:390px) {
  .mastery-shell { width:calc(100% - 10px); }
  .mastery-hero { padding-inline:12px; }
  .mastery-hero h1 { font-size:40px; }
  .mastery-player-search button { min-width:84px;font-size:9px; }
  .mastery-tabs a { min-height:46px; }
  .mastery-tab-icon { font-size:14px; }
  .mastery-tab-label::after { font-size:8px; }
  .mastery-section-block,.mastery-armory-section,.mastery-specialist-section,.mastery-ranking-section { padding:10px; }
  .mastery-founding-badge { gap:5px; }
  .mastery-founding-badge>i { display:none; }
  .mastery-weapon-stage { height:90px; }
  .mastery-weapon-stage img { height:82px; }
  .mastery-card-camo-overlay { height:82px; }
  .mastery-card-top em { max-width:82px; }
  .mastery-card-name strong { font-size:11px; }
  .mastery-weapon-grid.is-list .mastery-weapon-card { grid-template-columns:94px minmax(0,1fr); }
  .mastery-weapon-grid.is-list .mastery-weapon-stage { height:124px; }
  .mastery-weapon-grid.is-list .mastery-card-name { display:block; }
  .mastery-weapon-grid.is-list .mastery-card-progress { display:block; }
  .mastery-weapon-grid.is-list .mastery-card-progress em { margin-top:3px; }
  .mastery-special-track { gap:2px; }
  .mastery-special-track i { width:27px;height:27px; }
  .mastery-ranking-table tr { grid-template-columns:39px minmax(0,1fr) auto auto;padding:9px;gap:6px; }
}

@media (prefers-reduced-motion:reduce) {
  .mastery-weapon-card,.mastery-weapon-stage img { transition:none; }
}
